mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-01-30 23:10:14 -05:00
Lus updates (#2822)
* Changes for LUS renames in ResourceManager and Archive. * Moves WriteSaveFile and ReadSaveFile to SaveManager. * Removes ImGui namespace. * Bump LUS * Update soh/soh/GameMenuBar.cpp * Bump LUS --------- Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
This commit is contained in:
parent
859bf856b8
commit
4980ae8dcc
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@ -1 +1 @@
|
||||
Subproject commit 2ddffdb5b60377a09a4a198a8fd67726951bbb27
|
||||
Subproject commit 7fe0c076a8261d7e878b196d2b5de57beccf1177
|
@ -229,7 +229,7 @@ void AudioCollection::RemoveFromShufflePool(SequenceInfo* seqInfo) {
|
||||
excludedSequences.insert(seqInfo);
|
||||
includedSequences.erase(seqInfo);
|
||||
CVarSetInteger(cvarKey.c_str(), 1);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
void AudioCollection::AddToShufflePool(SequenceInfo* seqInfo) {
|
||||
@ -237,7 +237,7 @@ void AudioCollection::AddToShufflePool(SequenceInfo* seqInfo) {
|
||||
includedSequences.insert(seqInfo);
|
||||
excludedSequences.erase(seqInfo);
|
||||
CVarClear(cvarKey.c_str());
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
void AudioCollection::InitializeShufflePool() {
|
||||
|
@ -158,7 +158,7 @@ void Draw_SfxTab(const std::string& tabId, SeqType type) {
|
||||
const std::string randomizeAllButton = "Randomize All" + hiddenTabId;
|
||||
if (ImGui::Button(resetAllButton.c_str())) {
|
||||
ResetGroup(map, type);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
if (type == SEQ_BGM_WORLD) {
|
||||
ReplayCurrentBGM();
|
||||
}
|
||||
@ -166,7 +166,7 @@ void Draw_SfxTab(const std::string& tabId, SeqType type) {
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(randomizeAllButton.c_str())) {
|
||||
RandomizeGroup(type);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
if (type == SEQ_BGM_WORLD) {
|
||||
ReplayCurrentBGM();
|
||||
}
|
||||
@ -205,7 +205,7 @@ void Draw_SfxTab(const std::string& tabId, SeqType type) {
|
||||
|
||||
if (ImGui::Selectable(seqData.label.c_str())) {
|
||||
CVarSetInteger(cvarKey.c_str(), value);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
UpdateCurrentBGM(defaultValue, type);
|
||||
}
|
||||
}
|
||||
@ -219,7 +219,7 @@ void Draw_SfxTab(const std::string& tabId, SeqType type) {
|
||||
ImGui::PushItemWidth(-FLT_MIN);
|
||||
if (ImGui::Button(resetButton.c_str())) {
|
||||
CVarSetInteger(cvarKey.c_str(), defaultValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
UpdateCurrentBGM(defaultValue, seqData.category);
|
||||
}
|
||||
ImGui::SameLine();
|
||||
@ -236,7 +236,7 @@ void Draw_SfxTab(const std::string& tabId, SeqType type) {
|
||||
auto it = validSequences.begin();
|
||||
const auto& seqData = *std::next(it, rand() % validSequences.size());
|
||||
CVarSetInteger(cvarKey.c_str(), seqData->sequenceId);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
UpdateCurrentBGM(seqData->sequenceId, type);
|
||||
}
|
||||
}
|
||||
@ -378,7 +378,7 @@ void DrawSfxEditor(bool& open) {
|
||||
const std::string resetButton = "Reset##linkVoiceFreqMultiplier";
|
||||
if (ImGui::Button(resetButton.c_str())) {
|
||||
CVarSetFloat("gLinkVoiceFreqMultiplier", 1.0f);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
ImGui::NewLine();
|
||||
@ -552,7 +552,7 @@ void DrawSfxEditor(bool& open) {
|
||||
|
||||
void InitAudioEditor() {
|
||||
//Draw the bar in the menu.
|
||||
SohImGui::AddWindow("Enhancements", "Audio Editor", DrawSfxEditor);
|
||||
Ship::AddWindow("Enhancements", "Audio Editor", DrawSfxEditor);
|
||||
}
|
||||
|
||||
std::vector<SeqType> allTypes = { SEQ_BGM_WORLD, SEQ_BGM_EVENT, SEQ_BGM_BATTLE, SEQ_OCARINA, SEQ_FANFARE, SEQ_INSTRUMENT, SEQ_SFX };
|
||||
@ -562,7 +562,7 @@ void AudioEditor_RandomizeAll() {
|
||||
RandomizeGroup(type);
|
||||
}
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ReplayCurrentBGM();
|
||||
}
|
||||
|
||||
@ -571,6 +571,6 @@ void AudioEditor_ResetAll() {
|
||||
ResetGroup(AudioCollection::Instance->GetAllSequences(), type);
|
||||
}
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ReplayCurrentBGM();
|
||||
}
|
||||
|
@ -88,7 +88,7 @@ namespace GameControlEditor {
|
||||
void DrawUI(bool&);
|
||||
|
||||
void Init() {
|
||||
SohImGui::AddWindow("Enhancements", "Game Control Editor", DrawUI);
|
||||
Ship::AddWindow("Enhancements", "Game Control Editor", DrawUI);
|
||||
|
||||
addButtonName(BTN_A, "A");
|
||||
addButtonName(BTN_B, "B");
|
||||
@ -136,7 +136,7 @@ namespace GameControlEditor {
|
||||
}
|
||||
if (ImGui::Selectable(i->second, i->first == currentButton)) {
|
||||
CVarSetInteger(mapping.cVarName, i->first);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
ImGui::EndCombo();
|
||||
@ -172,7 +172,7 @@ namespace GameControlEditor {
|
||||
ImGui::TableSetupColumn("Modifiers##CustomOcaranaModifiers", PANEL_TABLE_COLUMN_FLAGS);
|
||||
TableHelper::InitHeader(false);
|
||||
|
||||
SohImGui::BeginGroupPanel("Notes", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Notes", ImGui::GetContentRegionAvail());
|
||||
labelWidth = ImGui::CalcTextSize("D5").x + 10;
|
||||
DrawMapping(ocarinaD5, labelWidth, disableMask);
|
||||
DrawMapping(ocarinaB4, labelWidth, disableMask);
|
||||
@ -181,16 +181,16 @@ namespace GameControlEditor {
|
||||
DrawMapping(ocarinaD4, labelWidth, disableMask);
|
||||
ImGui::Dummy(ImVec2(0, 5));
|
||||
float cursorY = ImGui::GetCursorPosY();
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
|
||||
TableHelper::NextCol();
|
||||
|
||||
SohImGui::BeginGroupPanel("Modifiers", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Modifiers", ImGui::GetContentRegionAvail());
|
||||
labelWidth = ImGui::CalcTextSize(ocarinaSongDisable.label).x + 10;
|
||||
DrawMapping(ocarinaSongDisable, labelWidth, disableMask);
|
||||
DrawMapping(ocarinaSharp, labelWidth, disableMask);
|
||||
DrawMapping(ocarinaFlat, labelWidth, disableMask);
|
||||
SohImGui::EndGroupPanel(cursorY - ImGui::GetCursorPosY() + 2);
|
||||
Ship::EndGroupPanel(cursorY - ImGui::GetCursorPosY() + 2);
|
||||
|
||||
ImGui::EndTable();
|
||||
}
|
||||
@ -201,7 +201,7 @@ namespace GameControlEditor {
|
||||
UIWidgets::Spacer(0);
|
||||
}
|
||||
|
||||
SohImGui::BeginGroupPanel("Alternate controls", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Alternate controls", ImGui::GetContentRegionAvail());
|
||||
if (ImGui::BeginTable("tableOcarinaAlternateControls", 2, ImGuiTableFlags_SizingFixedSame)) {
|
||||
ImGui::TableSetupColumn("D-pad", PANEL_TABLE_COLUMN_FLAGS);
|
||||
ImGui::TableSetupColumn("Right stick", PANEL_TABLE_COLUMN_FLAGS);
|
||||
@ -213,7 +213,7 @@ namespace GameControlEditor {
|
||||
UIWidgets::Spacer(0);
|
||||
ImGui::EndTable();
|
||||
}
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
|
||||
ImGui::EndTable();
|
||||
}
|
||||
@ -221,10 +221,10 @@ namespace GameControlEditor {
|
||||
// CurrentPort is indexed started at 1 here due to the Generic tab, instead of 0 like in InputEditor
|
||||
// Therefore CurrentPort - 1 must always be used inside this function instead of CurrentPort
|
||||
void DrawCustomButtons() {
|
||||
SohImGui::GetInputEditor()->DrawControllerSelect(CurrentPort - 1);
|
||||
Ship::GetInputEditor()->DrawControllerSelect(CurrentPort - 1);
|
||||
|
||||
SohImGui::GetInputEditor()->DrawButton("Modifier 1", BTN_MODIFIER1, CurrentPort - 1, &BtnReading);
|
||||
SohImGui::GetInputEditor()->DrawButton("Modifier 2", BTN_MODIFIER2, CurrentPort - 1, &BtnReading);
|
||||
Ship::GetInputEditor()->DrawButton("Modifier 1", BTN_MODIFIER1, CurrentPort - 1, &BtnReading);
|
||||
Ship::GetInputEditor()->DrawButton("Modifier 2", BTN_MODIFIER2, CurrentPort - 1, &BtnReading);
|
||||
}
|
||||
|
||||
void DrawCameraControlPanel() {
|
||||
@ -233,7 +233,7 @@ namespace GameControlEditor {
|
||||
}
|
||||
|
||||
UIWidgets::Spacer(0);
|
||||
SohImGui::BeginGroupPanel("Aiming/First-Person Camera", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Aiming/First-Person Camera", ImGui::GetContentRegionAvail());
|
||||
UIWidgets::PaddedEnhancementCheckbox("Right Stick Aiming", "gRightStickAiming");
|
||||
DrawHelpIcon("Allows for aiming with the right stick in:\n-First-Person/C-Up view\n-Weapon Aiming");
|
||||
UIWidgets::PaddedEnhancementCheckbox("Invert Aiming X Axis", "gInvertAimingXAxis");
|
||||
@ -252,10 +252,10 @@ namespace GameControlEditor {
|
||||
CVarSetFloat("gFirstPersonCameraSensitivity", 1.0f);
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
|
||||
UIWidgets::Spacer(0);
|
||||
SohImGui::BeginGroupPanel("Third-Person Camera", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Third-Person Camera", ImGui::GetContentRegionAvail());
|
||||
|
||||
UIWidgets::PaddedEnhancementCheckbox("Free Camera", "gFreeCamera");
|
||||
DrawHelpIcon("Enables free camera control\nNote: You must remap C buttons off of the right stick in the "
|
||||
@ -273,7 +273,7 @@ namespace GameControlEditor {
|
||||
"gFreeCameraDistMax", 100, 900, "", 185, true, false, true);
|
||||
UIWidgets::PaddedEnhancementSliderInt("Camera Transition Speed: %d", "##CamTranSpeed",
|
||||
"gFreeCameraTransitionSpeed", 0, 900, "", 25, true, false, true);
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
}
|
||||
|
||||
void DrawDpadControlPanel() {
|
||||
@ -283,7 +283,7 @@ namespace GameControlEditor {
|
||||
|
||||
ImVec2 cursor = ImGui::GetCursorPos();
|
||||
ImGui::SetCursorPos(ImVec2(cursor.x + 5, cursor.y + 5));
|
||||
SohImGui::BeginGroupPanel("D-Pad Options", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("D-Pad Options", ImGui::GetContentRegionAvail());
|
||||
UIWidgets::PaddedEnhancementCheckbox("D-pad Support on Pause Screen", "gDpadPause");
|
||||
DrawHelpIcon("Navigate Pause with the D-pad\nIf used with D-pad as Equip Items, you must hold C-Up to equip instead of navigate\n"
|
||||
"To make the cursor only move a single space no matter how long a direction is held, manually set gDpadHoldChange to 0");
|
||||
@ -292,7 +292,7 @@ namespace GameControlEditor {
|
||||
"To make the cursor only move a single space during name entry no matter how long a direction is held, manually set gDpadHoldChange to 0");
|
||||
UIWidgets::PaddedEnhancementCheckbox("D-pad as Equip Items", "gDpadEquips");
|
||||
DrawHelpIcon("Equip items and equipment on the D-pad\nIf used with D-pad on Pause Screen, you must hold C-Up to equip instead of navigate");
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
}
|
||||
|
||||
void DrawMiscControlPanel() {
|
||||
@ -302,7 +302,7 @@ namespace GameControlEditor {
|
||||
|
||||
ImVec2 cursor = ImGui::GetCursorPos();
|
||||
ImGui::SetCursorPos(ImVec2(cursor.x + 5, cursor.y + 5));
|
||||
SohImGui::BeginGroupPanel("Misc Controls", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Misc Controls", ImGui::GetContentRegionAvail());
|
||||
UIWidgets::PaddedText("Allow the cursor to be on any slot");
|
||||
static const char* cursorOnAnySlot[3] = { "Only in Rando", "Always", "Never" };
|
||||
UIWidgets::EnhancementCombobox("gPauseAnyCursor", cursorOnAnySlot, PAUSE_ANY_CURSOR_RANDO_ONLY);
|
||||
@ -313,16 +313,16 @@ namespace GameControlEditor {
|
||||
DrawHelpIcon("Hold the assigned button to change the maximum walking speed\nTo change the assigned button, go into the Ports tabs above");
|
||||
if (CVarGetInteger("gEnableWalkModify", 0)) {
|
||||
UIWidgets::Spacer(5);
|
||||
SohImGui::BeginGroupPanel("Walk Modifier", ImGui::GetContentRegionAvail());
|
||||
Ship::BeginGroupPanel("Walk Modifier", ImGui::GetContentRegionAvail());
|
||||
UIWidgets::PaddedEnhancementCheckbox("Toggle modifier instead of holding", "gWalkSpeedToggle", true, false);
|
||||
UIWidgets::PaddedEnhancementSliderFloat("Modifier 1: %d %%", "##WalkMod1", "gWalkModifierOne", 0.0f, 5.0f, "", 1.0f, true, true, false, true);
|
||||
UIWidgets::PaddedEnhancementSliderFloat("Modifier 2: %d %%", "##WalkMod2", "gWalkModifierTwo", 0.0f, 5.0f, "", 1.0f, true, true, false, true);
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
UIWidgets::PaddedEnhancementCheckbox("Answer Navi Prompt with L Button", "gNaviOnL");
|
||||
DrawHelpIcon("Speak to Navi with L but enter first-person camera with C-Up");
|
||||
SohImGui::EndGroupPanel();
|
||||
Ship::EndGroupPanel();
|
||||
|
||||
}
|
||||
|
||||
|
@ -1413,7 +1413,7 @@ void Draw_Placements(){
|
||||
void DrawSillyTab() {
|
||||
if (CVarGetInteger("gLetItSnow", 0)) {
|
||||
if (UIWidgets::EnhancementCheckbox("Let It Snow", "gLetItSnow")) {
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
if (UIWidgets::EnhancementSliderFloat("Link Body Scale: %f", "##Link_BodyScale", "gCosmetics.Link_BodyScale.Value", 0.001f, 0.025f, "", 0.01f, false)) {
|
||||
@ -1423,7 +1423,7 @@ void DrawSillyTab() {
|
||||
if (ImGui::Button("Reset##Link_BodyScale")) {
|
||||
CVarClear("gCosmetics.Link_BodyScale.Value");
|
||||
CVarClear("gCosmetics.Link_BodyScale.Changed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
static Player* player = GET_PLAYER(gPlayState);
|
||||
player->actor.scale.x = 0.01f;
|
||||
player->actor.scale.y = 0.01f;
|
||||
@ -1436,7 +1436,7 @@ void DrawSillyTab() {
|
||||
if (ImGui::Button("Reset##Link_HeadScale")) {
|
||||
CVarClear("gCosmetics.Link_HeadScale.Value");
|
||||
CVarClear("gCosmetics.Link_HeadScale.Changed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
if (UIWidgets::EnhancementSliderFloat("Link Sword Scale: %f", "##Link_SwordScale", "gCosmetics.Link_SwordScale.Value", 1.0f, 2.5f, "", 1.0f, false)) {
|
||||
CVarSetInteger("gCosmetics.Link_SwordScale.Changed", 1);
|
||||
@ -1445,44 +1445,44 @@ void DrawSillyTab() {
|
||||
if (ImGui::Button("Reset##Link_SwordScale")) {
|
||||
CVarClear("gCosmetics.Link_SwordScale.Value");
|
||||
CVarClear("gCosmetics.Link_SwordScale.Changed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementSliderFloat("Bunny Hood Length: %f", "##BunnyHood_EarLength", "gCosmetics.BunnyHood_EarLength", -300.0f, 1000.0f, "", 0.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##BunnyHood_EarLength")) {
|
||||
CVarClear("gCosmetics.BunnyHood_EarLength");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementSliderFloat("Bunny Hood Spread: %f", "##BunnyHood_EarSpread", "gCosmetics.BunnyHood_EarSpread", -300.0f, 500.0f, "", 0.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##BunnyHood_EarSpread")) {
|
||||
CVarClear("gCosmetics.BunnyHood_EarSpread");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementSliderFloat("Goron Neck Length: %f", "##Goron_NeckLength", "gCosmetics.Goron_NeckLength", 0.0f, 1000.0f, "", 0.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##Goron_NeckLength")) {
|
||||
CVarClear("gCosmetics.Goron_NeckLength");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementCheckbox("Unfix Goron Spin", "gUnfixGoronSpin");
|
||||
UIWidgets::EnhancementSliderFloat("Fairies Size: %f", "##Fairies_Size", "gCosmetics.Fairies_Size", 0.25f, 5.0f, "", 1.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##Fairies_Size")) {
|
||||
CVarClear("gCosmetics.Fairies_Size");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementSliderFloat("N64 Logo Spin Speed: %f", "##N64Logo_SpinSpeed", "gCosmetics.N64Logo_SpinSpeed", 0.25f, 5.0f, "", 1.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##N64Logo_SpinSpeed")) {
|
||||
CVarClear("gCosmetics.N64Logo_SpinSpeed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::EnhancementSliderFloat("Moon Size: %f", "##Moon_Size", "gCosmetics.Moon_Size", 0.5f, 2.0f, "", 1.0f, false);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset##Moon_Size")) {
|
||||
CVarClear("gCosmetics.Moon_Size");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
if (UIWidgets::EnhancementSliderFloat("Kak Windmill Speed: %f", "##Kak_Windmill_Speed", "gCosmetics.Kak_Windmill_Speed.Value", 100.0f, 6000.0f, "", 100.0f, false)) {
|
||||
CVarSetInteger("gCosmetics.Kak_Windmill_Speed.Changed", 1);
|
||||
@ -1491,7 +1491,7 @@ void DrawSillyTab() {
|
||||
if (ImGui::Button("Reset##Kak_Windmill_Speed")) {
|
||||
CVarClear("gCosmetics.Kak_Windmill_Speed.Value");
|
||||
CVarClear("gCosmetics.Kak_Windmill_Speed.Changed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
|
||||
@ -1599,7 +1599,7 @@ void DrawCosmeticRow(CosmeticOption& cosmeticOption) {
|
||||
CVarSetInteger((cosmeticOption.rainbowCvar), 0);
|
||||
CVarSetInteger((cosmeticOption.changedCvar), 1);
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::Text(cosmeticOption.label.c_str());
|
||||
@ -1607,7 +1607,7 @@ void DrawCosmeticRow(CosmeticOption& cosmeticOption) {
|
||||
if (ImGui::Button(("Random##" + cosmeticOption.label).c_str())) {
|
||||
RandomizeColor(cosmeticOption);
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
bool isRainbow = (bool)CVarGetInteger((cosmeticOption.rainbowCvar), 0);
|
||||
@ -1615,20 +1615,20 @@ void DrawCosmeticRow(CosmeticOption& cosmeticOption) {
|
||||
CVarSetInteger((cosmeticOption.rainbowCvar), isRainbow);
|
||||
CVarSetInteger((cosmeticOption.changedCvar), 1);
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
bool isLocked = (bool)CVarGetInteger((cosmeticOption.lockedCvar), 0);
|
||||
if (ImGui::Checkbox(("Locked##" + cosmeticOption.label).c_str(), &isLocked)) {
|
||||
CVarSetInteger((cosmeticOption.lockedCvar), isLocked);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
if (CVarGetInteger((cosmeticOption.changedCvar), 0)) {
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(("Reset##" + cosmeticOption.label).c_str())) {
|
||||
ResetColor(cosmeticOption);
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1644,7 +1644,7 @@ void DrawCosmeticGroup(CosmeticGroup cosmeticGroup) {
|
||||
}
|
||||
}
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(("Reset##" + label).c_str())) {
|
||||
@ -1654,7 +1654,7 @@ void DrawCosmeticGroup(CosmeticGroup cosmeticGroup) {
|
||||
}
|
||||
}
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
for (auto& [id, cosmeticOption] : cosmeticOptions) {
|
||||
if (cosmeticOption.group == cosmeticGroup && (!cosmeticOption.advancedOption || CVarGetInteger("gCosmetics.AdvancedMode", 0))) {
|
||||
@ -1691,7 +1691,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
CVarSetInteger(cosmeticOption.lockedCvar, 1);
|
||||
}
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Unlock All Advanced", ImVec2(ImGui::GetContentRegionAvail().x, 30.0f))) {
|
||||
@ -1700,7 +1700,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
CVarSetInteger(cosmeticOption.lockedCvar, 0);
|
||||
}
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
UIWidgets::EnhancementCheckbox("Sync Rainbow colors", "gCosmetics.RainbowSync");
|
||||
@ -1712,7 +1712,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
}
|
||||
}
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Reset All", ImVec2(ImGui::GetContentRegionAvail().x, 30.0f))) {
|
||||
@ -1722,7 +1722,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
}
|
||||
}
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
if (ImGui::Button("Lock All", ImVec2(ImGui::GetContentRegionAvail().x / 2, 30.0f))) {
|
||||
@ -1731,7 +1731,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
CVarSetInteger(cosmeticOption.lockedCvar, 1);
|
||||
}
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Unlock All", ImVec2(ImGui::GetContentRegionAvail().x, 30.0f))) {
|
||||
@ -1740,7 +1740,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
CVarSetInteger(cosmeticOption.lockedCvar, 0);
|
||||
}
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
if (ImGui::BeginTabBar("CosmeticsContextTabBar", ImGuiTabBarFlags_NoCloseWithMiddleMouseButton)) {
|
||||
@ -1765,7 +1765,7 @@ void DrawCosmeticsEditor(bool& open) {
|
||||
if (ImGui::Button("Reset##Trails_Duration")) {
|
||||
CVarClear("gCosmetics.Trails_Duration.Value");
|
||||
CVarClear("gCosmetics.Trails_Duration.Changed");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::EndTabItem();
|
||||
}
|
||||
@ -1802,10 +1802,10 @@ void RegisterOnLoadGameHook() {
|
||||
void InitCosmeticsEditor() {
|
||||
// There's probably a better way to do this, but leaving as is for historical reasons. Even though there is no
|
||||
// real window being rendered here, it calls this every frame allowing us to rotate through the rainbow hue for cosmetics
|
||||
SohImGui::AddWindow("Enhancements", "Cosmetics Update Tick", CosmeticsUpdateTick, true, true);
|
||||
Ship::AddWindow("Enhancements", "Cosmetics Update Tick", CosmeticsUpdateTick, true, true);
|
||||
|
||||
// Draw the bar in the menu.
|
||||
SohImGui::AddWindow("Enhancements", "Cosmetics Editor", DrawCosmeticsEditor);
|
||||
Ship::AddWindow("Enhancements", "Cosmetics Editor", DrawCosmeticsEditor);
|
||||
// Convert the `current color` into the format that the ImGui color picker expects
|
||||
for (auto& [id, cosmeticOption] : cosmeticOptions) {
|
||||
Color_RGBA8 defaultColor = {cosmeticOption.defaultColor.x, cosmeticOption.defaultColor.y, cosmeticOption.defaultColor.z, cosmeticOption.defaultColor.w};
|
||||
@ -1816,7 +1816,7 @@ void InitCosmeticsEditor() {
|
||||
cosmeticOption.currentColor.z = cvarColor.b / 255.0;
|
||||
cosmeticOption.currentColor.w = cvarColor.a / 255.0;
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
ApplyAuthenticGfxPatches();
|
||||
|
||||
@ -1831,7 +1831,7 @@ void CosmeticsEditor_RandomizeAll() {
|
||||
}
|
||||
}
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
}
|
||||
|
||||
@ -1842,6 +1842,6 @@ void CosmeticsEditor_ResetAll() {
|
||||
}
|
||||
}
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -787,5 +787,5 @@ void DrawActorViewer(bool& open) {
|
||||
}
|
||||
|
||||
void InitActorViewer() {
|
||||
SohImGui::AddWindow("Developer Tools", "Actor Viewer", DrawActorViewer);
|
||||
Ship::AddWindow("Developer Tools", "Actor Viewer", DrawActorViewer);
|
||||
}
|
||||
|
@ -288,7 +288,7 @@ void CreateSphereData() {
|
||||
}
|
||||
|
||||
void InitColViewer() {
|
||||
SohImGui::AddWindow("Developer Tools", "Collision Viewer", DrawColViewerWindow);
|
||||
Ship::AddWindow("Developer Tools", "Collision Viewer", DrawColViewerWindow);
|
||||
|
||||
CreateCylinderData();
|
||||
CreateSphereData();
|
||||
|
@ -604,7 +604,7 @@ void DrawInfoTab() {
|
||||
|
||||
void DrawBGSItemFlag(uint8_t itemID) {
|
||||
const ItemMapEntry& slotEntry = itemMapping[itemID];
|
||||
ImGui::Image(SohImGui::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0), ImVec2(1, 1));
|
||||
ImGui::Image(Ship::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0), ImVec2(1, 1));
|
||||
ImGui::SameLine();
|
||||
int tradeIndex = itemID - ITEM_POCKET_EGG;
|
||||
bool hasItem = (gSaveContext.adultTradeItems & (1 << tradeIndex)) != 0;
|
||||
@ -646,7 +646,7 @@ void DrawInventoryTab() {
|
||||
uint8_t item = gSaveContext.inventory.items[index];
|
||||
if (item != ITEM_NONE) {
|
||||
const ItemMapEntry& slotEntry = itemMapping.find(item)->second;
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
ImVec2(1, 1), 0)) {
|
||||
selectedIndex = index;
|
||||
ImGui::OpenPopup(itemPopupPicker);
|
||||
@ -694,7 +694,7 @@ void DrawInventoryTab() {
|
||||
ImGui::SameLine();
|
||||
}
|
||||
const ItemMapEntry& slotEntry = possibleItems[pickerIndex];
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f),
|
||||
ImVec2(0, 0), ImVec2(1, 1), 0)) {
|
||||
gSaveContext.inventory.items[selectedIndex] = slotEntry.id;
|
||||
// Set adult trade item flag if you're playing adult trade shuffle in rando
|
||||
@ -732,7 +732,7 @@ void DrawInventoryTab() {
|
||||
ImGui::PushItemWidth(32.0f);
|
||||
ImGui::BeginGroup();
|
||||
|
||||
ImGui::Image(SohImGui::GetTextureByName(itemMapping[item].name), ImVec2(32.0f, 32.0f));
|
||||
ImGui::Image(Ship::GetTextureByName(itemMapping[item].name), ImVec2(32.0f, 32.0f));
|
||||
ImGui::InputScalar("##ammoInput", ImGuiDataType_S8, &AMMO(item));
|
||||
|
||||
ImGui::EndGroup();
|
||||
@ -1147,7 +1147,7 @@ void DrawUpgradeIcon(const std::string& categoryName, int32_t categoryId, const
|
||||
uint8_t item = items[CUR_UPG_VALUE(categoryId)];
|
||||
if (item != ITEM_NONE) {
|
||||
const ItemMapEntry& slotEntry = itemMapping[item];
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
ImVec2(1, 1), 0)) {
|
||||
ImGui::OpenPopup(upgradePopupPicker);
|
||||
}
|
||||
@ -1175,7 +1175,7 @@ void DrawUpgradeIcon(const std::string& categoryName, int32_t categoryId, const
|
||||
UIWidgets::SetLastItemHoverText("None");
|
||||
} else {
|
||||
const ItemMapEntry& slotEntry = itemMapping[items[pickerIndex]];
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(slotEntry.name), ImVec2(32.0f, 32.0f), ImVec2(0, 0),
|
||||
ImVec2(1, 1), 0)) {
|
||||
Inventory_ChangeUpgrade(categoryId, pickerIndex);
|
||||
ImGui::CloseCurrentPopup();
|
||||
@ -1212,7 +1212,7 @@ void DrawEquipmentTab() {
|
||||
bool hasEquip = (bitMask & gSaveContext.inventory.equipment) != 0;
|
||||
const ItemMapEntry& entry = itemMapping[equipmentValues[i]];
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(0, 0, 0, 0));
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(hasEquip ? entry.name : entry.nameFaded),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(hasEquip ? entry.name : entry.nameFaded),
|
||||
ImVec2(32.0f, 32.0f), ImVec2(0, 0), ImVec2(1, 1), 0)) {
|
||||
if (hasEquip) {
|
||||
gSaveContext.inventory.equipment &= ~bitMask;
|
||||
@ -1311,7 +1311,7 @@ void DrawQuestItemButton(uint32_t item) {
|
||||
uint32_t bitMask = 1 << entry.id;
|
||||
bool hasQuestItem = (bitMask & gSaveContext.inventory.questItems) != 0;
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(0, 0, 0, 0));
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(hasQuestItem ? entry.name : entry.nameFaded),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(hasQuestItem ? entry.name : entry.nameFaded),
|
||||
ImVec2(32.0f, 32.0f), ImVec2(0, 0), ImVec2(1, 1), 0)) {
|
||||
if (hasQuestItem) {
|
||||
gSaveContext.inventory.questItems &= ~bitMask;
|
||||
@ -1329,7 +1329,7 @@ void DrawDungeonItemButton(uint32_t item, uint32_t scene) {
|
||||
uint32_t bitMask = 1 << (entry.id - ITEM_KEY_BOSS); // Bitset starts at ITEM_KEY_BOSS == 0. the rest are sequential
|
||||
bool hasItem = (bitMask & gSaveContext.inventory.dungeonItems[scene]) != 0;
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(0, 0, 0, 0));
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(hasItem ? entry.name : entry.nameFaded),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(hasItem ? entry.name : entry.nameFaded),
|
||||
ImVec2(32.0f, 32.0f), ImVec2(0, 0), ImVec2(1, 1), 0)) {
|
||||
if (hasItem) {
|
||||
gSaveContext.inventory.dungeonItems[scene] &= ~bitMask;
|
||||
@ -1376,7 +1376,7 @@ void DrawQuestStatusTab() {
|
||||
uint32_t bitMask = 1 << entry.id;
|
||||
bool hasQuestItem = (bitMask & gSaveContext.inventory.questItems) != 0;
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(0, 0, 0, 0));
|
||||
if (ImGui::ImageButton(SohImGui::GetTextureByName(hasQuestItem ? entry.name : entry.nameFaded),
|
||||
if (ImGui::ImageButton(Ship::GetTextureByName(hasQuestItem ? entry.name : entry.nameFaded),
|
||||
ImVec2(16.0f, 24.0f), ImVec2(0, 0), ImVec2(1, 1), 0)) {
|
||||
if (hasQuestItem) {
|
||||
gSaveContext.inventory.questItems &= ~bitMask;
|
||||
@ -1439,7 +1439,7 @@ void DrawQuestStatusTab() {
|
||||
|
||||
if (dungeonItemsScene != SCENE_BDAN_BOSS) {
|
||||
float lineHeight = ImGui::GetTextLineHeightWithSpacing();
|
||||
ImGui::Image(SohImGui::GetTextureByName(itemMapping[ITEM_KEY_SMALL].name), ImVec2(lineHeight, lineHeight));
|
||||
ImGui::Image(Ship::GetTextureByName(itemMapping[ITEM_KEY_SMALL].name), ImVec2(lineHeight, lineHeight));
|
||||
ImGui::SameLine();
|
||||
if (ImGui::InputScalar("##Keys", ImGuiDataType_S8, gSaveContext.inventory.dungeonKeys + dungeonItemsScene)) {
|
||||
gSaveContext.sohStats.dungeonKeys[dungeonItemsScene] = gSaveContext.inventory.dungeonKeys[dungeonItemsScene];
|
||||
@ -1780,34 +1780,34 @@ void DrawSaveEditor(bool& open) {
|
||||
}
|
||||
|
||||
void InitSaveEditor() {
|
||||
SohImGui::AddWindow("Developer Tools", "Save Editor", DrawSaveEditor);
|
||||
Ship::AddWindow("Developer Tools", "Save Editor", DrawSaveEditor);
|
||||
|
||||
// Load item icons into ImGui
|
||||
for (const auto& entry : itemMapping) {
|
||||
SohImGui::LoadResource(entry.second.name, entry.second.texturePath);
|
||||
SohImGui::LoadResource(entry.second.nameFaded, entry.second.texturePath, ImVec4(1, 1, 1, 0.3f));
|
||||
Ship::LoadResource(entry.second.name, entry.second.texturePath);
|
||||
Ship::LoadResource(entry.second.nameFaded, entry.second.texturePath, ImVec4(1, 1, 1, 0.3f));
|
||||
}
|
||||
for (const auto& entry : gregMapping) {
|
||||
ImVec4 gregGreen = ImVec4(42.0f / 255.0f, 169.0f / 255.0f, 40.0f / 255.0f, 1.0f);
|
||||
ImVec4 gregFadedGreen = gregGreen;
|
||||
gregFadedGreen.w = 0.3f;
|
||||
SohImGui::LoadResource(entry.second.name, entry.second.texturePath, gregGreen);
|
||||
SohImGui::LoadResource(entry.second.nameFaded, entry.second.texturePath, gregFadedGreen);
|
||||
Ship::LoadResource(entry.second.name, entry.second.texturePath, gregGreen);
|
||||
Ship::LoadResource(entry.second.nameFaded, entry.second.texturePath, gregFadedGreen);
|
||||
}
|
||||
for (const auto& entry : questMapping) {
|
||||
SohImGui::LoadResource(entry.second.name, entry.second.texturePath);
|
||||
SohImGui::LoadResource(entry.second.nameFaded, entry.second.texturePath, ImVec4(1, 1, 1, 0.3f));
|
||||
Ship::LoadResource(entry.second.name, entry.second.texturePath);
|
||||
Ship::LoadResource(entry.second.nameFaded, entry.second.texturePath, ImVec4(1, 1, 1, 0.3f));
|
||||
}
|
||||
for (const auto& entry : songMapping) {
|
||||
SohImGui::LoadResource(entry.name, gSongNoteTex, entry.color);
|
||||
Ship::LoadResource(entry.name, gSongNoteTex, entry.color);
|
||||
ImVec4 fadedCol = entry.color;
|
||||
fadedCol.w = 0.3f;
|
||||
SohImGui::LoadResource(entry.nameFaded, gSongNoteTex, fadedCol);
|
||||
Ship::LoadResource(entry.nameFaded, gSongNoteTex, fadedCol);
|
||||
}
|
||||
for (const auto& entry : vanillaSongMapping) {
|
||||
SohImGui::LoadResource(entry.name, gSongNoteTex, entry.color);
|
||||
Ship::LoadResource(entry.name, gSongNoteTex, entry.color);
|
||||
ImVec4 fadedCol = entry.color;
|
||||
fadedCol.w = 0.3f;
|
||||
SohImGui::LoadResource(entry.nameFaded, gSongNoteTex, fadedCol);
|
||||
Ship::LoadResource(entry.nameFaded, gSongNoteTex, fadedCol);
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "../../util.h"
|
||||
#include "../../UIWidgets.hpp"
|
||||
#include <ImGuiImpl.h>
|
||||
#include "ResourceMgr.h"
|
||||
#include "ResourceManager.h"
|
||||
#include "DisplayList.h"
|
||||
#include "../../OTRGlobals.h"
|
||||
|
||||
@ -138,7 +138,7 @@ void DrawDLViewer(bool& open) {
|
||||
}
|
||||
|
||||
void InitDLViewer() {
|
||||
SohImGui::AddWindow("Developer Tools", "Display List Viewer", DrawDLViewer);
|
||||
Ship::AddWindow("Developer Tools", "Display List Viewer", DrawDLViewer);
|
||||
|
||||
displayListsSearchResults = ResourceMgr_ListFiles("*DL", &displayListsSearchResultsCount);
|
||||
}
|
||||
|
@ -335,7 +335,7 @@ void GameInteractor::RawAction::SetCosmeticsColor(uint8_t cosmeticCategory, uint
|
||||
break;
|
||||
}
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ApplyOrResetCustomGfxPatches();
|
||||
}
|
||||
|
||||
|
@ -665,7 +665,8 @@ void SetupDisplayColors() {
|
||||
}
|
||||
|
||||
void InitStatTracker() {
|
||||
SohImGui::AddWindow("Enhancements", "Gameplay Stats", DrawStatsTracker, CVarGetInteger("gGameplayStatsEnabled", 0) == 1);
|
||||
Ship::AddWindow("Enhancements", "Gameplay Stats", DrawStatsTracker,
|
||||
CVarGetInteger("gGameplayStatsEnabled", 0) == 1);
|
||||
SetupDisplayNames();
|
||||
SetupDisplayColors();
|
||||
}
|
@ -59,7 +59,7 @@ void DrawPresetSelector(PresetType presetTypeId) {
|
||||
if (selectedPresetId != 0) {
|
||||
applyPreset(selectedPresetDef.entries);
|
||||
}
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::PopStyleVar(1);
|
||||
}
|
||||
|
@ -4361,7 +4361,7 @@ void DrawRandoEditor(bool& open) {
|
||||
excludedLocationString += ",";
|
||||
}
|
||||
CVarSetString("gRandomizeExcludedLocations", excludedLocationString.c_str());
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::Text(rcObject->rcShortName.c_str());
|
||||
@ -4402,7 +4402,7 @@ void DrawRandoEditor(bool& open) {
|
||||
excludedLocationString += ",";
|
||||
}
|
||||
CVarSetString("gRandomizeExcludedLocations", excludedLocationString.c_str());
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::Text(rcObject->rcShortName.c_str());
|
||||
@ -5443,7 +5443,7 @@ void InitRandoItemTable() {
|
||||
|
||||
|
||||
void InitRando() {
|
||||
SohImGui::AddWindow("Randomizer", "Randomizer Settings", DrawRandoEditor);
|
||||
Ship::AddWindow("Randomizer", "Randomizer Settings", DrawRandoEditor);
|
||||
Randomizer::CreateCustomMessages();
|
||||
seedString = (char*)calloc(MAX_SEED_STRING_SIZE, sizeof(char));
|
||||
InitRandoItemTable();
|
||||
|
@ -1023,8 +1023,8 @@ void DrawCheckTrackerOptions(bool& open) {
|
||||
}
|
||||
|
||||
void InitCheckTracker() {
|
||||
SohImGui::AddWindow("Randomizer", "Check Tracker", DrawCheckTracker, CVarGetInteger("gCheckTrackerEnabled", 0) == 1);
|
||||
SohImGui::AddWindow("Randomizer", "Check Tracker Settings", DrawCheckTrackerOptions);
|
||||
Ship::AddWindow("Randomizer", "Check Tracker", DrawCheckTracker, CVarGetInteger("gCheckTrackerEnabled", 0) == 1);
|
||||
Ship::AddWindow("Randomizer", "Check Tracker Settings", DrawCheckTrackerOptions);
|
||||
Color_Background = CVarGetColor("gCheckTrackerBgColor", Color_Bg_Default);
|
||||
Color_Area_Incomplete_Main = CVarGetColor("gCheckTrackerAreaMainIncompleteColor", Color_Main_Default);
|
||||
Color_Area_Incomplete_Extra = CVarGetColor("gCheckTrackerAreaExtraIncompleteColor", Color_Area_Incomplete_Extra_Default);
|
||||
|
@ -919,7 +919,8 @@ void DrawEntranceTracker(bool& open) {
|
||||
}
|
||||
|
||||
void InitEntranceTracker() {
|
||||
SohImGui::AddWindow("Randomizer", "Entrance Tracker", DrawEntranceTracker, CVarGetInteger("gEntranceTrackerEnabled", 0) == 1);
|
||||
Ship::AddWindow("Randomizer", "Entrance Tracker", DrawEntranceTracker,
|
||||
CVarGetInteger("gEntranceTrackerEnabled", 0) == 1);
|
||||
|
||||
// Setup hooks for loading and clearing the entrance tracker data
|
||||
GameInteractor::Instance->RegisterGameHook<GameInteractor::OnLoadGame>([](int32_t fileNum) {
|
||||
|
@ -452,7 +452,7 @@ void DrawItemCount(ItemTrackerItem item) {
|
||||
void DrawEquip(ItemTrackerItem item) {
|
||||
bool hasEquip = (item.data & gSaveContext.inventory.equipment) != 0;
|
||||
int iconSize = CVarGetInteger("gItemTrackerIconSize", 36);
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasEquip && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasEquip && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
|
||||
UIWidgets::SetLastItemHoverText(SohUtils::GetItemName(item.id));
|
||||
@ -462,7 +462,7 @@ void DrawQuest(ItemTrackerItem item) {
|
||||
bool hasQuestItem = (item.data & gSaveContext.inventory.questItems) != 0;
|
||||
int iconSize = CVarGetInteger("gItemTrackerIconSize", 36);
|
||||
ImGui::BeginGroup();
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasQuestItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasQuestItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
|
||||
if (item.id == QUEST_SKULL_TOKEN) {
|
||||
@ -524,7 +524,7 @@ void DrawItem(ItemTrackerItem item) {
|
||||
}
|
||||
|
||||
ImGui::BeginGroup();
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
|
||||
DrawItemCount(item);
|
||||
@ -542,7 +542,7 @@ void DrawBottle(ItemTrackerItem item) {
|
||||
}
|
||||
|
||||
int iconSize = CVarGetInteger("gItemTrackerIconSize", 36);
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
|
||||
UIWidgets::SetLastItemHoverText(SohUtils::GetItemName(item.id));
|
||||
@ -557,11 +557,11 @@ void DrawDungeonItem(ItemTrackerItem item) {
|
||||
bool hasSmallKey = (gSaveContext.inventory.dungeonKeys[item.data]) >= 0;
|
||||
ImGui::BeginGroup();
|
||||
if (itemId == ITEM_KEY_SMALL) {
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasSmallKey && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasSmallKey && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
}
|
||||
else {
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasItem && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
}
|
||||
|
||||
@ -601,7 +601,7 @@ void DrawSong(ItemTrackerItem item) {
|
||||
bool hasSong = (bitMask & gSaveContext.inventory.questItems) != 0;
|
||||
ImVec2 p = ImGui::GetCursorScreenPos();
|
||||
ImGui::SetCursorScreenPos(ImVec2(p.x + 6, p.y));
|
||||
ImGui::Image(SohImGui::GetTextureByName(hasSong && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImGui::Image(Ship::GetTextureByName(hasSong && IsValidSaveFile() ? item.name : item.nameFaded),
|
||||
ImVec2(iconSize / 1.5, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||
UIWidgets::SetLastItemHoverText(SohUtils::GetQuestItemName(item.id));
|
||||
}
|
||||
@ -637,7 +637,7 @@ void DrawNotes(bool resizeable = false) {
|
||||
ItemTrackerNotes::TrackerNotesInputTextMultiline("##ItemTrackerNotes", &itemTrackerNotes, size, ImGuiInputTextFlags_AllowTabInput);
|
||||
if (ImGui::IsItemDeactivatedAfterEdit() && IsValidSaveFile()) {
|
||||
CVarSetString(("gItemTrackerNotes" + std::to_string(gSaveContext.fileNum)).c_str(), std::string(std::begin(itemTrackerNotes), std::end(itemTrackerNotes)).c_str());
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::EndGroup();
|
||||
}
|
||||
@ -985,7 +985,7 @@ void DrawItemTrackerOptions(bool& open) {
|
||||
CVarSetFloat("gItemTrackerBgColorG", ChromaKeyBackground.y);
|
||||
CVarSetFloat("gItemTrackerBgColorB", ChromaKeyBackground.z);
|
||||
CVarSetFloat("gItemTrackerBgColorA", ChromaKeyBackground.w);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
ImGui::PopItemWidth();
|
||||
|
||||
@ -1081,8 +1081,8 @@ void DrawItemTrackerOptions(bool& open) {
|
||||
}
|
||||
|
||||
void InitItemTracker() {
|
||||
SohImGui::AddWindow("Randomizer", "Item Tracker", DrawItemTracker, CVarGetInteger("gItemTrackerEnabled", 0) == 1);
|
||||
SohImGui::AddWindow("Randomizer", "Item Tracker Settings", DrawItemTrackerOptions);
|
||||
Ship::AddWindow("Randomizer", "Item Tracker", DrawItemTracker, CVarGetInteger("gItemTrackerEnabled", 0) == 1);
|
||||
Ship::AddWindow("Randomizer", "Item Tracker Settings", DrawItemTrackerOptions);
|
||||
float trackerBgR = CVarGetFloat("gItemTrackerBgColorR", 0);
|
||||
float trackerBgG = CVarGetFloat("gItemTrackerBgColorG", 0);
|
||||
float trackerBgB = CVarGetFloat("gItemTrackerBgColorB", 0);
|
||||
@ -1107,6 +1107,6 @@ void InitItemTracker() {
|
||||
});
|
||||
Ship::RegisterHook<Ship::DeleteFile>([](uint32_t fileNum) {
|
||||
CVarSetString(("gItemTrackerNotes" + std::to_string(fileNum)).c_str(), "");
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
});
|
||||
}
|
||||
|
@ -837,7 +837,7 @@ extern "C" void ProcessSaveStateRequests(void) {
|
||||
}
|
||||
|
||||
void SaveStateMgr::SetCurrentSlot(unsigned int slot) {
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(1.0f, true, "slot %u set", slot);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(1.0f, true, "slot %u set", slot);
|
||||
this->currentSlot = slot;
|
||||
}
|
||||
|
||||
@ -855,12 +855,12 @@ void SaveStateMgr::ProcessSaveStateRequests(void) {
|
||||
this->states[request.slot] = std::make_shared<SaveState>(OTRGlobals::Instance->gSaveStateMgr, request.slot);
|
||||
}
|
||||
this->states[request.slot]->Save();
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(1.0f, true, "saved state %u", request.slot);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(1.0f, true, "saved state %u", request.slot);
|
||||
break;
|
||||
case RequestType::LOAD:
|
||||
if (this->states.contains(request.slot)) {
|
||||
this->states[request.slot]->Load();
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(1.0f, true, "loaded state %u", request.slot);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(1.0f, true, "loaded state %u", request.slot);
|
||||
} else {
|
||||
SPDLOG_ERROR("Invalid SaveState slot: {}", request.type);
|
||||
}
|
||||
@ -876,7 +876,7 @@ void SaveStateMgr::ProcessSaveStateRequests(void) {
|
||||
SaveStateReturn SaveStateMgr::AddRequest(const SaveStateRequest request) {
|
||||
if (gPlayState == nullptr) {
|
||||
SPDLOG_ERROR("[SOH] Can not save or load a state outside of \"GamePlay\"");
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(1.0f, true, "states not available here", request.slot);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(1.0f, true, "states not available here", request.slot);
|
||||
return SaveStateReturn::FAIL_WRONG_GAMESTATE;
|
||||
}
|
||||
|
||||
@ -890,7 +890,7 @@ SaveStateReturn SaveStateMgr::AddRequest(const SaveStateRequest request) {
|
||||
return SaveStateReturn::SUCCESS;
|
||||
} else {
|
||||
SPDLOG_ERROR("Invalid SaveState slot: {}", request.type);
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(1.0f, true, "state slot %u empty", request.slot);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(1.0f, true, "state slot %u empty", request.slot);
|
||||
return SaveStateReturn::FAIL_INVALID_SLOT;
|
||||
}
|
||||
[[unlikely]] default:
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor.h"
|
||||
#include "soh/Enhancements/speechsynthesizer/SpeechSynthesizer.h"
|
||||
|
||||
#include <OtrFile.h>
|
||||
#include <File.h>
|
||||
#include <libultraship/classes.h>
|
||||
#include <nlohmann/json.hpp>
|
||||
#include <spdlog/fmt/fmt.h>
|
||||
|
@ -131,8 +131,8 @@ namespace GameMenuBar {
|
||||
}
|
||||
|
||||
ImGui::Text("Audio API (Needs reload)");
|
||||
auto audioBackends = SohImGui::GetAvailableAudioBackends();
|
||||
auto currentAudioBackend = SohImGui::GetCurrentAudioBackend();
|
||||
auto audioBackends = Ship::GetAvailableAudioBackends();
|
||||
auto currentAudioBackend = Ship::GetCurrentAudioBackend();
|
||||
|
||||
if (audioBackends.size() <= 1) {
|
||||
UIWidgets::DisableComponent(ImGui::GetStyle().Alpha * 0.5f);
|
||||
@ -140,7 +140,7 @@ namespace GameMenuBar {
|
||||
if (ImGui::BeginCombo("##AApi", currentAudioBackend.second)) {
|
||||
for (uint8_t i = 0; i < audioBackends.size(); i++) {
|
||||
if (ImGui::Selectable(audioBackends[i].second, audioBackends[i] == currentAudioBackend)) {
|
||||
SohImGui::SetCurrentAudioBackend(i, audioBackends[i]);
|
||||
Ship::SetCurrentAudioBackend(i, audioBackends[i]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -164,8 +164,8 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gControllerConfigurationEnabled", 0);
|
||||
CVarSetInteger("gControllerConfigurationEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::ToggleInputEditorWindow(CVarGetInteger("gControllerConfigurationEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::ToggleInputEditorWindow(CVarGetInteger("gControllerConfigurationEnabled", 0));
|
||||
}
|
||||
UIWidgets::PaddedSeparator();
|
||||
ImGui::PopStyleColor(1);
|
||||
@ -190,18 +190,18 @@ namespace GameMenuBar {
|
||||
#ifndef __APPLE__
|
||||
UIWidgets::EnhancementSliderFloat("Internal Resolution: %d %%", "##IMul", "gInternalResolution", 0.5f, 2.0f, "", 1.0f, true);
|
||||
UIWidgets::Tooltip("Multiplies your output resolution by the value inputted, as a more intensive but effective form of anti-aliasing");
|
||||
SohImGui::SetResolutionMultiplier(CVarGetFloat("gInternalResolution", 1));
|
||||
Ship::SetResolutionMultiplier(CVarGetFloat("gInternalResolution", 1));
|
||||
#endif
|
||||
#ifndef __WIIU__
|
||||
UIWidgets::PaddedEnhancementSliderInt("MSAA: %d", "##IMSAA", "gMSAAValue", 1, 8, "", 1, true, true, false);
|
||||
UIWidgets::Tooltip("Activates multi-sample anti-aliasing when above 1x up to 8x for 8 samples for every pixel");
|
||||
SohImGui::SetMSAALevel(CVarGetInteger("gMSAAValue", 1));
|
||||
Ship::SetMSAALevel(CVarGetInteger("gMSAAValue", 1));
|
||||
#endif
|
||||
|
||||
{ // FPS Slider
|
||||
const int minFps = 20;
|
||||
static int maxFps;
|
||||
if (SohImGui::WindowBackend() == SohImGui::Backend::DX11) {
|
||||
if (Ship::WindowBackend() == Ship::Backend::DX11) {
|
||||
maxFps = 360;
|
||||
} else {
|
||||
maxFps = Ship::Window::GetInstance()->GetCurrentRefreshRate();
|
||||
@ -264,15 +264,15 @@ namespace GameMenuBar {
|
||||
currentFps = 60;
|
||||
}
|
||||
CVarSetInteger("gInterpolationFPS", currentFps);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
#else
|
||||
bool matchingRefreshRate =
|
||||
CVarGetInteger("gMatchRefreshRate", 0) && SohImGui::WindowBackend() != SohImGui::Backend::DX11;
|
||||
CVarGetInteger("gMatchRefreshRate", 0) && Ship::WindowBackend() != Ship::Backend::DX11;
|
||||
UIWidgets::PaddedEnhancementSliderInt(
|
||||
(currentFps == 20) ? "FPS: Original (20)" : "FPS: %d",
|
||||
"##FPSInterpolation", "gInterpolationFPS", minFps, maxFps, "", 20, true, true, false, matchingRefreshRate);
|
||||
#endif
|
||||
if (SohImGui::WindowBackend() == SohImGui::Backend::DX11) {
|
||||
if (Ship::WindowBackend() == Ship::Backend::DX11) {
|
||||
UIWidgets::Tooltip(
|
||||
"Uses Matrix Interpolation to create extra frames, resulting in smoother graphics. This is purely "
|
||||
"visual and does not impact game logic, execution of glitches etc.\n\n"
|
||||
@ -286,13 +286,13 @@ namespace GameMenuBar {
|
||||
}
|
||||
} // END FPS Slider
|
||||
|
||||
if (SohImGui::WindowBackend() == SohImGui::Backend::DX11) {
|
||||
if (Ship::WindowBackend() == Ship::Backend::DX11) {
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button("Match Refresh Rate")) {
|
||||
int hz = Ship::Window::GetInstance()->GetCurrentRefreshRate();
|
||||
if (hz >= 20 && hz <= 360) {
|
||||
CVarSetInteger("gInterpolationFPS", hz);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -300,7 +300,7 @@ namespace GameMenuBar {
|
||||
}
|
||||
UIWidgets::Tooltip("Matches interpolation value to the current game's window refresh rate");
|
||||
|
||||
if (SohImGui::WindowBackend() == SohImGui::Backend::DX11) {
|
||||
if (Ship::WindowBackend() == Ship::Backend::DX11) {
|
||||
UIWidgets::PaddedEnhancementSliderInt(CVarGetInteger("gExtraLatencyThreshold", 80) == 0 ? "Jitter fix: Off" : "Jitter fix: >= %d FPS",
|
||||
"##ExtraLatencyThreshold", "gExtraLatencyThreshold", 0, 360, "", 80, true, true, false);
|
||||
UIWidgets::Tooltip("When Interpolation FPS setting is at least this threshold, add one frame of input lag (e.g. 16.6 ms for 60 FPS) in order to avoid jitter. This setting allows the CPU to work on one frame while GPU works on the previous frame.\nThis setting should be used when your computer is too slow to do CPU + GPU work in time.");
|
||||
@ -309,8 +309,8 @@ namespace GameMenuBar {
|
||||
UIWidgets::PaddedSeparator(true, true, 3.0f, 3.0f);
|
||||
|
||||
ImGui::Text("Renderer API (Needs reload)");
|
||||
auto renderingBackends = SohImGui::GetAvailableRenderingBackends();
|
||||
auto currentRenderingBackend = SohImGui::GetCurrentRenderingBackend();
|
||||
auto renderingBackends = Ship::GetAvailableRenderingBackends();
|
||||
auto currentRenderingBackend = Ship::GetCurrentRenderingBackend();
|
||||
|
||||
if (renderingBackends.size() <= 1) {
|
||||
UIWidgets::DisableComponent(ImGui::GetStyle().Alpha * 0.5f);
|
||||
@ -318,7 +318,7 @@ namespace GameMenuBar {
|
||||
if (ImGui::BeginCombo("##RApi", currentRenderingBackend.second)) {
|
||||
for (uint8_t i = 0; i < renderingBackends.size(); i++) {
|
||||
if (ImGui::Selectable(renderingBackends[i].second, renderingBackends[i] == currentRenderingBackend)) {
|
||||
SohImGui::SetCurrentRenderingBackend(i, renderingBackends[i]);
|
||||
Ship::SetCurrentRenderingBackend(i, renderingBackends[i]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -332,25 +332,24 @@ namespace GameMenuBar {
|
||||
UIWidgets::PaddedEnhancementCheckbox("Enable Vsync", "gVsyncEnabled", true, false);
|
||||
}
|
||||
|
||||
if (SohImGui::SupportsWindowedFullscreen()) {
|
||||
if (Ship::SupportsWindowedFullscreen()) {
|
||||
UIWidgets::PaddedEnhancementCheckbox("Windowed fullscreen", "gSdlWindowedFullscreen", true, false);
|
||||
}
|
||||
|
||||
if (SohImGui::SupportsViewports()) {
|
||||
if (Ship::SupportsViewports()) {
|
||||
UIWidgets::PaddedEnhancementCheckbox("Allow multi-windows", "gEnableMultiViewports", true, false);
|
||||
UIWidgets::Tooltip("Allows windows to be able to be dragged off of the main game window. Requires a reload to take effect.");
|
||||
}
|
||||
|
||||
// If more filters are added to LUS, make sure to add them to the filters list here
|
||||
ImGui::Text("Texture Filter (Needs reload)");
|
||||
const char* filters[] = { SohImGui::GetSupportedTextureFilters()[0],
|
||||
SohImGui::GetSupportedTextureFilters()[1],
|
||||
SohImGui::GetSupportedTextureFilters()[2] };
|
||||
const char* filters[] = { Ship::GetSupportedTextureFilters()[0], Ship::GetSupportedTextureFilters()[1],
|
||||
Ship::GetSupportedTextureFilters()[2] };
|
||||
UIWidgets::EnhancementCombobox("gTextureFilter", filters, 0);
|
||||
|
||||
UIWidgets::Spacer(0);
|
||||
|
||||
SohImGui::DrawSettings();
|
||||
Ship::DrawSettings();
|
||||
|
||||
ImGui::EndMenu();
|
||||
}
|
||||
@ -991,28 +990,28 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gGameControlEditorEnabled", 0);
|
||||
CVarSetInteger("gGameControlEditorEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Game Control Editor", CVarGetInteger("gGameControlEditorEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Game Control Editor", CVarGetInteger("gGameControlEditorEnabled", 0));
|
||||
}
|
||||
if (ImGui::Button(GetWindowButtonText("Cosmetics Editor", CVarGetInteger("gCosmeticsEditorEnabled", 0)).c_str(), ImVec2(-1.0f, 0.0f)))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gCosmeticsEditorEnabled", 0);
|
||||
CVarSetInteger("gCosmeticsEditorEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Cosmetics Editor", CVarGetInteger("gCosmeticsEditorEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Cosmetics Editor", CVarGetInteger("gCosmeticsEditorEnabled", 0));
|
||||
}
|
||||
if (ImGui::Button(GetWindowButtonText("Audio Editor", CVarGetInteger("gAudioEditor.WindowOpen", 0)).c_str(), ImVec2(-1.0f, 0.0f)))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gAudioEditor.WindowOpen", 0);
|
||||
CVarSetInteger("gAudioEditor.WindowOpen", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Audio Editor", CVarGetInteger("gAudioEditor.WindowOpen", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Audio Editor", CVarGetInteger("gAudioEditor.WindowOpen", 0));
|
||||
}
|
||||
if (ImGui::Button(GetWindowButtonText("Gameplay Stats", CVarGetInteger("gGameplayStatsEnabled", 0)).c_str(), ImVec2(-1.0f, 0.0f))) {
|
||||
bool currentValue = CVarGetInteger("gGameplayStatsEnabled", 0);
|
||||
CVarSetInteger("gGameplayStatsEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Gameplay Stats", CVarGetInteger("gGameplayStatsEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Gameplay Stats", CVarGetInteger("gGameplayStatsEnabled", 0));
|
||||
}
|
||||
ImGui::PopStyleVar(3);
|
||||
ImGui::PopStyleColor(1);
|
||||
@ -1133,9 +1132,9 @@ namespace GameMenuBar {
|
||||
CVarSetInteger("gEnableBetaQuest", betaQuestEnabled);
|
||||
CVarSetInteger("gBetaQuestWorld", betaQuestWorld);
|
||||
|
||||
SohImGui::DispatchConsoleCommand("reset");
|
||||
Ship::DispatchConsoleCommand("reset");
|
||||
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
if (!isBetaQuestEnabled) {
|
||||
@ -1178,8 +1177,8 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gStatsEnabled", 0);
|
||||
CVarSetInteger("gStatsEnabled", !currentValue);
|
||||
SohImGui::ToggleStatisticsWindow(true);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::ToggleStatisticsWindow(true);
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
UIWidgets::Tooltip("Shows the stats window, with your FPS and frametimes, and the OS you're playing on");
|
||||
UIWidgets::Spacer(0);
|
||||
@ -1187,8 +1186,8 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gConsoleEnabled", 0);
|
||||
CVarSetInteger("gConsoleEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::ToggleConsoleWindow(!currentValue);
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::ToggleConsoleWindow(!currentValue);
|
||||
}
|
||||
UIWidgets::Tooltip("Enables the console window, allowing you to input commands, type help for some examples");
|
||||
UIWidgets::Spacer(0);
|
||||
@ -1196,32 +1195,32 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gSaveEditorEnabled", 0);
|
||||
CVarSetInteger("gSaveEditorEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Save Editor", CVarGetInteger("gSaveEditorEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Save Editor", CVarGetInteger("gSaveEditorEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Collision Viewer", CVarGetInteger("gCollisionViewerEnabled", 0)).c_str(), ImVec2(-1.0f, 0.0f)))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gCollisionViewerEnabled", 0);
|
||||
CVarSetInteger("gCollisionViewerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Collision Viewer", CVarGetInteger("gCollisionViewerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Collision Viewer", CVarGetInteger("gCollisionViewerEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Actor Viewer", CVarGetInteger("gActorViewerEnabled", 0)).c_str(), ImVec2(-1.0f, 0.0f)))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gActorViewerEnabled", 0);
|
||||
CVarSetInteger("gActorViewerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Actor Viewer", CVarGetInteger("gActorViewerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Actor Viewer", CVarGetInteger("gActorViewerEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Display List Viewer", CVarGetInteger("gDLViewerEnabled", 0)).c_str(), ImVec2(-1.0f, 0.0f)))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gDLViewerEnabled", 0);
|
||||
CVarSetInteger("gDLViewerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Display List Viewer", CVarGetInteger("gDLViewerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Display List Viewer", CVarGetInteger("gDLViewerEnabled", 0));
|
||||
}
|
||||
ImGui::PopStyleVar(3);
|
||||
ImGui::PopStyleColor(1);
|
||||
@ -1246,48 +1245,48 @@ namespace GameMenuBar {
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gRandomizerSettingsEnabled", 0);
|
||||
CVarSetInteger("gRandomizerSettingsEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Randomizer Settings", CVarGetInteger("gRandomizerSettingsEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Randomizer Settings", CVarGetInteger("gRandomizerSettingsEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Item Tracker", CVarGetInteger("gItemTrackerEnabled", 0)).c_str(), buttonSize))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gItemTrackerEnabled", 0);
|
||||
CVarSetInteger("gItemTrackerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Item Tracker", CVarGetInteger("gItemTrackerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Item Tracker", CVarGetInteger("gItemTrackerEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Item Tracker Settings", CVarGetInteger("gItemTrackerSettingsEnabled", 0)).c_str(), buttonSize))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gItemTrackerSettingsEnabled", 0);
|
||||
CVarSetInteger("gItemTrackerSettingsEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Item Tracker Settings", CVarGetInteger("gItemTrackerSettingsEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Item Tracker Settings", CVarGetInteger("gItemTrackerSettingsEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Entrance Tracker", CVarGetInteger("gEntranceTrackerEnabled", 0)).c_str(), buttonSize))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gEntranceTrackerEnabled", 0);
|
||||
CVarSetInteger("gEntranceTrackerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Entrance Tracker", CVarGetInteger("gEntranceTrackerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Entrance Tracker", CVarGetInteger("gEntranceTrackerEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Check Tracker", CVarGetInteger("gCheckTrackerEnabled", 0)).c_str(), buttonSize))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gCheckTrackerEnabled", 0);
|
||||
CVarSetInteger("gCheckTrackerEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Check Tracker", CVarGetInteger("gCheckTrackerEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Check Tracker", CVarGetInteger("gCheckTrackerEnabled", 0));
|
||||
}
|
||||
UIWidgets::Spacer(0);
|
||||
if (ImGui::Button(GetWindowButtonText("Check Tracker Settings", CVarGetInteger("gCheckTrackerSettingsEnabled", 0)).c_str(), buttonSize))
|
||||
{
|
||||
bool currentValue = CVarGetInteger("gCheckTrackerSettingsEnabled", 0);
|
||||
CVarSetInteger("gCheckTrackerSettingsEnabled", !currentValue);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
SohImGui::EnableWindow("Check Tracker Settings", CVarGetInteger("gCheckTrackerSettingsEnabled", 0));
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
Ship::EnableWindow("Check Tracker Settings", CVarGetInteger("gCheckTrackerSettingsEnabled", 0));
|
||||
}
|
||||
ImGui::PopStyleVar(3);
|
||||
ImGui::PopStyleColor(1);
|
||||
|
@ -5,8 +5,8 @@
|
||||
#include <filesystem>
|
||||
#include <fstream>
|
||||
|
||||
#include <ResourceMgr.h>
|
||||
#include <OtrFile.h>
|
||||
#include <ResourceManager.h>
|
||||
#include <File.h>
|
||||
#include <DisplayList.h>
|
||||
#include <Window.h>
|
||||
#include <GameVersions.h>
|
||||
@ -240,7 +240,7 @@ OTRGlobals::OTRGlobals() {
|
||||
OOT_PAL_GC_DBG1,
|
||||
OOT_PAL_GC_DBG2
|
||||
};
|
||||
context = Ship::Window::CreateInstance("Ship of Harkinian", OTRFiles);
|
||||
context = Ship::Window::CreateInstance("Ship of Harkinian", "soh", OTRFiles);
|
||||
|
||||
context->GetResourceManager()->GetResourceLoader()->RegisterResourceFactory(Ship::ResourceType::SOH_Animation, "Animation", std::make_shared<Ship::AnimationFactory>());
|
||||
context->GetResourceManager()->GetResourceLoader()->RegisterResourceFactory(Ship::ResourceType::SOH_PlayerAnimation, "PlayerAnimation", std::make_shared<Ship::PlayerAnimationFactory>());
|
||||
@ -271,7 +271,7 @@ OTRGlobals::OTRGlobals() {
|
||||
cameraStrings[i] = dup;
|
||||
}
|
||||
|
||||
auto versions = context->GetResourceManager()->GetGameVersions();
|
||||
auto versions = context->GetResourceManager()->GetArchive()->GetGameVersions();
|
||||
|
||||
for (uint32_t version : versions) {
|
||||
if (!ValidHashes.contains(version)) {
|
||||
@ -324,7 +324,7 @@ bool OTRGlobals::HasOriginal() {
|
||||
}
|
||||
|
||||
uint32_t OTRGlobals::GetInterpolationFPS() {
|
||||
if (SohImGui::WindowBackend() == SohImGui::Backend::DX11) {
|
||||
if (Ship::WindowBackend() == Ship::Backend::DX11) {
|
||||
return CVarGetInteger("gInterpolationFPS", 20);
|
||||
}
|
||||
|
||||
@ -734,8 +734,8 @@ extern "C" void InitOTR() {
|
||||
#elif defined(__WIIU__)
|
||||
Ship::WiiU::Init();
|
||||
#endif
|
||||
SohImGui::AddSetupHooksDelegate(GameMenuBar::SetupHooks);
|
||||
SohImGui::RegisterMenuDrawMethod(GameMenuBar::Draw);
|
||||
Ship::AddSetupHooksDelegate(GameMenuBar::SetupHooks);
|
||||
Ship::RegisterMenuDrawMethod(GameMenuBar::Draw);
|
||||
|
||||
OTRGlobals::Instance = new OTRGlobals();
|
||||
SaveManager::Instance = new SaveManager();
|
||||
@ -995,11 +995,11 @@ extern "C" uint16_t OTRGetPixelDepth(float x, float y) {
|
||||
}
|
||||
|
||||
extern "C" uint32_t ResourceMgr_GetNumGameVersions() {
|
||||
return OTRGlobals::Instance->context->GetResourceManager()->GetGameVersions().size();
|
||||
return OTRGlobals::Instance->context->GetResourceManager()->GetArchive()->GetGameVersions().size();
|
||||
}
|
||||
|
||||
extern "C" uint32_t ResourceMgr_GetGameVersion(int index) {
|
||||
return OTRGlobals::Instance->context->GetResourceManager()->GetGameVersions()[index];
|
||||
return OTRGlobals::Instance->context->GetResourceManager()->GetArchive()->GetGameVersions()[index];
|
||||
}
|
||||
|
||||
uint32_t IsSceneMasterQuest(s16 sceneNum) {
|
||||
@ -1451,11 +1451,11 @@ void OTRGlobals::CheckSaveFile(size_t sramSize) const {
|
||||
}
|
||||
|
||||
extern "C" void Ctx_ReadSaveFile(uintptr_t addr, void* dramAddr, size_t size) {
|
||||
OTRGlobals::Instance->context->ReadSaveFile(GetSaveFile(), addr, dramAddr, size);
|
||||
SaveManager::ReadSaveFile(GetSaveFile(), addr, dramAddr, size);
|
||||
}
|
||||
|
||||
extern "C" void Ctx_WriteSaveFile(uintptr_t addr, void* dramAddr, size_t size) {
|
||||
OTRGlobals::Instance->context->WriteSaveFile(GetSaveFile(), addr, dramAddr, size);
|
||||
SaveManager::WriteSaveFile(GetSaveFile(), addr, dramAddr, size);
|
||||
}
|
||||
|
||||
std::wstring StringToU16(const std::string& s) {
|
||||
@ -1953,12 +1953,12 @@ extern "C" int CustomMessage_RetrieveIfExists(PlayState* play) {
|
||||
}
|
||||
|
||||
extern "C" void Overlay_DisplayText(float duration, const char* text) {
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(duration, true, text);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(duration, true, text);
|
||||
}
|
||||
|
||||
extern "C" void Overlay_DisplayText_Seconds(int seconds, const char* text) {
|
||||
float duration = seconds * OTRGlobals::Instance->GetInterpolationFPS() * 0.05;
|
||||
SohImGui::GetGameOverlay()->TextDrawNotification(duration, true, text);
|
||||
Ship::GetGameOverlay()->TextDrawNotification(duration, true, text);
|
||||
}
|
||||
|
||||
extern "C" void Entrance_ClearEntranceTrackingData(void) {
|
||||
|
@ -18,6 +18,28 @@
|
||||
|
||||
extern "C" SaveContext gSaveContext;
|
||||
|
||||
void SaveManager::WriteSaveFile(const std::filesystem::path& savePath, const uintptr_t addr, void* dramAddr,
|
||||
const size_t size) {
|
||||
std::ofstream saveFile = std::ofstream(savePath, std::fstream::in | std::fstream::out | std::fstream::binary);
|
||||
saveFile.seekp(addr);
|
||||
saveFile.write((char*)dramAddr, size);
|
||||
saveFile.close();
|
||||
}
|
||||
|
||||
void SaveManager::ReadSaveFile(std::filesystem::path savePath, uintptr_t addr, void* dramAddr, size_t size) {
|
||||
std::ifstream saveFile = std::ifstream(savePath, std::fstream::in | std::fstream::out | std::fstream::binary);
|
||||
|
||||
// If the file doesn't exist, initialize DRAM
|
||||
if (saveFile.good()) {
|
||||
saveFile.seekg(addr);
|
||||
saveFile.read((char*)dramAddr, size);
|
||||
} else {
|
||||
memset(dramAddr, 0, size);
|
||||
}
|
||||
|
||||
saveFile.close();
|
||||
}
|
||||
|
||||
std::filesystem::path SaveManager::GetFileName(int fileNum) {
|
||||
const std::filesystem::path sSavePath(Ship::Window::GetPathRelativeToAppDirectory("Save"));
|
||||
return sSavePath / ("file" + std::to_string(fileNum + 1) + ".sav");
|
||||
|
@ -35,6 +35,9 @@ class SaveManager {
|
||||
public:
|
||||
static SaveManager* Instance;
|
||||
|
||||
static void WriteSaveFile(const std::filesystem::path& savePath, uintptr_t addr, void* dramAddr, size_t size);
|
||||
static void ReadSaveFile(std::filesystem::path savePath, uintptr_t addr, void* dramAddr, size_t size);
|
||||
|
||||
using InitFunc = void(*)(bool isDebug);
|
||||
using LoadFunc = void(*)();
|
||||
using SaveFunc = void(*)();
|
||||
|
@ -206,7 +206,7 @@ namespace UIWidgets {
|
||||
bool val = (bool)CVarGetInteger(cvarName, defaultValue);
|
||||
if (CustomCheckbox(text, &val, disabled, disabledGraphic)) {
|
||||
CVarSetInteger(cvarName, val);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
changed = true;
|
||||
}
|
||||
|
||||
@ -246,7 +246,7 @@ namespace UIWidgets {
|
||||
CVarSetInteger(cvarName, i);
|
||||
selected = i;
|
||||
changed = true;
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -259,7 +259,7 @@ namespace UIWidgets {
|
||||
if (disabledValue >= 0 && selected != disabledValue) {
|
||||
CVarSetInteger(cvarName, disabledValue);
|
||||
changed = true;
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
}
|
||||
|
||||
@ -348,7 +348,7 @@ namespace UIWidgets {
|
||||
|
||||
if (changed) {
|
||||
CVarSetInteger(cvarName, val);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
return changed;
|
||||
@ -424,7 +424,7 @@ namespace UIWidgets {
|
||||
|
||||
if (changed) {
|
||||
CVarSetFloat(cvarName, val);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
}
|
||||
|
||||
return changed;
|
||||
@ -471,7 +471,7 @@ namespace UIWidgets {
|
||||
int val = CVarGetInteger(cvarName, 0);
|
||||
if (ImGui::RadioButton(make_invisible.c_str(), id == val)) {
|
||||
CVarSetInteger(cvarName, id);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
ret = true;
|
||||
}
|
||||
ImGui::SameLine();
|
||||
@ -498,7 +498,7 @@ namespace UIWidgets {
|
||||
|
||||
CVarSetColor(cvarName, colorsRGBA);
|
||||
CVarSetInteger(Cvar_RBM.c_str(), 0); //On click disable rainbow mode.
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
changed = true;
|
||||
}
|
||||
Tooltip("Revert colors to the game's original colors (GameCube version)\nOverwrites previously chosen color");
|
||||
@ -523,7 +523,7 @@ namespace UIWidgets {
|
||||
NewColors.b = fmin(fmax(colors->z * 255, 0), 255);
|
||||
CVarSetColor(cvarName, NewColors);
|
||||
CVarSetInteger(Cvar_RBM.c_str(), 0); // On click disable rainbow mode.
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
changed = true;
|
||||
}
|
||||
Tooltip("Chooses a random color\nOverwrites previously chosen color");
|
||||
@ -584,7 +584,7 @@ namespace UIWidgets {
|
||||
colors.a = 255.0;
|
||||
|
||||
CVarSetColor(cvarName, colors);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
changed = true;
|
||||
}
|
||||
}
|
||||
@ -600,7 +600,7 @@ namespace UIWidgets {
|
||||
colors.a = ColorRGBA.w * 255.0;
|
||||
|
||||
CVarSetColor(cvarName, colors);
|
||||
SohImGui::RequestCvarSaveOnNextTick();
|
||||
Ship::RequestCvarSaveOnNextTick();
|
||||
changed = true;
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> AnimationFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> AnimationFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Animation>(resourceMgr, initData);
|
||||
|
@ -6,7 +6,7 @@
|
||||
namespace Ship {
|
||||
class AnimationFactory : public ResourceFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> AudioSampleFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> AudioSampleFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<AudioSample>(resourceMgr, initData);
|
||||
|
@ -7,7 +7,7 @@ namespace Ship {
|
||||
class AudioSampleFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> AudioSequenceFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> AudioSequenceFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<AudioSequence>(resourceMgr, initData);
|
||||
|
@ -7,7 +7,7 @@ namespace Ship {
|
||||
class AudioSequenceFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "libultraship/bridge.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> AudioSoundFontFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> AudioSoundFontFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<AudioSoundFont>(resourceMgr, initData);
|
||||
|
@ -7,7 +7,7 @@ namespace Ship {
|
||||
class AudioSoundFontFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> BackgroundFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> BackgroundFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Background>(resourceMgr, initData);
|
||||
|
@ -6,7 +6,7 @@
|
||||
namespace Ship {
|
||||
class BackgroundFactory : public ResourceFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> CollisionHeaderFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> CollisionHeaderFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<CollisionHeader>(resourceMgr, initData);
|
||||
|
@ -6,7 +6,7 @@
|
||||
namespace Ship {
|
||||
class CollisionHeaderFactory : public ResourceFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> CutsceneFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> CutsceneFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Cutscene>(resourceMgr, initData);
|
||||
|
@ -7,7 +7,7 @@ namespace Ship {
|
||||
class CutsceneFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> PathFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> PathFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Path>(resourceMgr, initData);
|
||||
|
@ -7,7 +7,7 @@ namespace Ship {
|
||||
class PathFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> PlayerAnimationFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> PlayerAnimationFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<PlayerAnimation>(resourceMgr, initData);
|
||||
|
@ -6,7 +6,7 @@
|
||||
namespace Ship {
|
||||
class PlayerAnimationFactory : public ResourceFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -30,7 +30,7 @@
|
||||
|
||||
namespace Ship {
|
||||
|
||||
std::shared_ptr<Resource> SceneFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SceneFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
if (SceneFactory::sceneCommandFactories.empty()) {
|
||||
|
@ -9,7 +9,7 @@
|
||||
namespace Ship {
|
||||
class SceneFactory : public ResourceFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <libultraship/bridge.h>
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SkeletonFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SkeletonFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Skeleton>(resourceMgr, initData);
|
||||
@ -26,7 +26,7 @@ std::shared_ptr<Resource> SkeletonFactory::ReadResource(std::shared_ptr<Resource
|
||||
return resource;
|
||||
}
|
||||
|
||||
std::shared_ptr<Resource> SkeletonFactory::ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SkeletonFactory::ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) {
|
||||
auto resource = std::make_shared<Skeleton>(resourceMgr, initData);
|
||||
|
@ -7,10 +7,10 @@ namespace Ship {
|
||||
class SkeletonFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "libultraship/bridge.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SkeletonLimbFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SkeletonLimbFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SkeletonLimb>(resourceMgr, initData);
|
||||
@ -26,7 +26,7 @@ std::shared_ptr<Resource> SkeletonLimbFactory::ReadResource(std::shared_ptr<Reso
|
||||
return resource;
|
||||
}
|
||||
|
||||
std::shared_ptr<Resource> SkeletonLimbFactory::ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SkeletonLimbFactory::ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) {
|
||||
auto resource = std::make_shared<SkeletonLimb>(resourceMgr, initData);
|
||||
|
@ -7,10 +7,10 @@ namespace Ship {
|
||||
class SkeletonLimbFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> TextFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> TextFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<Text>(resourceMgr, initData);
|
||||
@ -28,7 +28,7 @@ std::shared_ptr<Resource> TextFactory::ReadResource(std::shared_ptr<ResourceMgr>
|
||||
return resource;
|
||||
}
|
||||
|
||||
std::shared_ptr<Resource> TextFactory::ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> TextFactory::ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) {
|
||||
auto resource = std::make_shared<Text>(resourceMgr, initData);
|
||||
|
@ -7,10 +7,10 @@ namespace Ship {
|
||||
class TextFactory : public ResourceFactory
|
||||
{
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResourceXML(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
tinyxml2::XMLElement* reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> EndMarkerFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> EndMarkerFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<EndMarker>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class EndMarkerFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetActorListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetActorListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetActorList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetActorListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "libultraship/bridge.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetAlternateHeadersFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetAlternateHeadersFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetAlternateHeaders>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetAlternateHeadersFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetCameraSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetCameraSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetCameraSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetCameraSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetCollisionHeaderFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetCollisionHeaderFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetCollisionHeader>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetCollisionHeaderFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetCsCameraFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetCsCameraFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetCsCamera>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetCsCameraFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetCutscenesFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetCutscenesFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetCutscenes>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetCutscenesFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetEchoSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetEchoSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetEchoSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetEchoSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetEntranceListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetEntranceListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetEntranceList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetEntranceListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetExitListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetExitListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetExitList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetExitListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetLightListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetLightListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetLightList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetLightListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetLightingSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetLightingSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetLightingSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetLightingSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "libultraship/bridge.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetMeshFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetMeshFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetMesh>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetMeshFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetObjectListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetObjectListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetObjectList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetObjectListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <libultraship/bridge.h>
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetPathwaysFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetPathwaysFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetPathways>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetPathwaysFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetRoomBehaviorFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetRoomBehaviorFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetRoomBehavior>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetRoomBehaviorFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetRoomListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetRoomListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetRoomList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetRoomListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetSkyboxModifierFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetSkyboxModifierFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetSkyboxModifier>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetSkyboxModifierFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetSkyboxSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetSkyboxSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetSkyboxSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetSkyboxSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetSoundSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetSoundSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetSoundSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetSoundSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetSpecialObjectsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetSpecialObjectsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetSpecialObjects>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetSpecialObjectsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetStartPositionListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetStartPositionListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetStartPositionList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetStartPositionListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetTimeSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetTimeSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetTimeSettings>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetTimeSettingsFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetTransitionActorListFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetTransitionActorListFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetTransitionActorList>(resourceMgr, initData);
|
||||
|
@ -5,7 +5,7 @@
|
||||
namespace Ship {
|
||||
class SetTransitionActorListFactory : public SceneCommandFactory {
|
||||
public:
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) override;
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace Ship {
|
||||
std::shared_ptr<Resource> SetWindSettingsFactory::ReadResource(std::shared_ptr<ResourceMgr> resourceMgr,
|
||||
std::shared_ptr<Resource> SetWindSettingsFactory::ReadResource(std::shared_ptr<ResourceManager> resourceMgr,
|
||||
std::shared_ptr<ResourceInitData> initData,
|
||||
std::shared_ptr<BinaryReader> reader) {
|
||||
auto resource = std::make_shared<SetWindSettings>(resourceMgr, initData);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user