Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite MQ DC Logic #39

Open
wants to merge 48 commits into
base: mq-logic-area-refactor
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
01245ae
Bump LUS (#4301)
Archez Aug 18, 2024
e07fc59
Add git info to title screen & gameplay stats (#4053)
Pepe20129 Aug 23, 2024
48663d7
Change Recommended VS build tools from 142 to 143 (#4315)
Malkierian Aug 30, 2024
b5037a0
Gui window rework (#4307)
Malkierian Sep 10, 2024
c507d4d
Early Eyeball Frog (#4120)
inspectredc Sep 12, 2024
7f503c3
Concurrency Fix (#4318)
Malkierian Sep 15, 2024
19dc4dc
Bump LUS (#4341)
Archez Sep 15, 2024
8bd2f38
Merge remote-tracking branch 'origin/develop' into merge-develop-rand…
Archez Sep 15, 2024
8359d2a
Update entrance tracker settings window for modern menu changes
Archez Sep 15, 2024
e75400a
Merge pull request #4343 from Archez/merge-develop-rando-sep14
Archez Sep 15, 2024
c3602fd
rewrite MQ DC Logic
Pepper0ni Sep 16, 2024
255867e
forgot some cleanup
Pepper0ni Sep 16, 2024
1b51750
remove a return 0 (#4347)
Pepper0ni Sep 17, 2024
6cd387d
Fix Deku Mouth for Entrance Rando and Mido Rando Functionality (#4342)
Malkierian Sep 17, 2024
cd92e70
Refactor GetAccessibleLocations (#3871)
Pepper0ni Sep 17, 2024
9c11718
Add 146 ice trap messages (#4281)
Pepe20129 Sep 17, 2024
4148d59
Check Tracker Re-update (#4322)
Malkierian Sep 17, 2024
fab6387
Rearrangement of the currencies in randomizer.cpp (#4338)
Extloga Sep 17, 2024
da6e4ca
Remove erroneous Entrance_OverrideBlueWarp (#4340)
garrettjoecox Sep 17, 2024
ee02e50
Fix issues with faster heavy block lift (#4335)
garrettjoecox Sep 19, 2024
13e851f
Merge branch 'DevRando' into MQLogic
Pepper0ni Sep 19, 2024
2434eb8
Fix for LACS awarding everywhere (#4348)
garrettjoecox Sep 19, 2024
74c93b0
Stop disabling dampe checkbox, as it's no longer forced to on for ran…
garrettjoecox Sep 19, 2024
5d88417
Fix missing despawn branch for heart containers (#4350)
garrettjoecox Sep 20, 2024
fca8081
Fix crash when preset amount is too high (#4359)
Pepper0ni Sep 21, 2024
0a84d15
Implement some basic benchmarking for seed generation (#4353)
Pepper0ni Sep 22, 2024
0f02201
SCL Consolidation, Area -> Region (#4356)
Malkierian Sep 24, 2024
16decc3
Merge branch 'DevRando' into MQLogic
Pepper0ni Sep 24, 2024
5d62f56
remove an unused region
Pepper0ni Sep 24, 2024
4e4c1c4
Handle ignoring 0x3F for navi talk skips (#4364)
garrettjoecox Sep 24, 2024
7810f75
Update settings.cpp (#4362)
skrawpie Sep 24, 2024
b3b9216
Show interface after item get (when skipping GI) (#4363)
garrettjoecox Sep 25, 2024
da5cf11
Hook Debugger (#4323)
Pepe20129 Sep 26, 2024
159d087
remove unused functions (#4313)
Pepper0ni Sep 26, 2024
0f47e63
fix small hint issues (#4358)
Pepper0ni Sep 27, 2024
668f0fe
Rando V3 - Small UI Cleanup (#4367)
Malkierian Sep 28, 2024
0cfd535
Clean up location table (#4258)
Pepe20129 Oct 1, 2024
e36dcef
Fix seed generation issues caused by Location Table changes (#4378)
Pepper0ni Oct 2, 2024
89ca214
Refactor Fishsanity (#4268)
boomshroom Oct 2, 2024
b575aaa
simply all loaches logic (#4325)
briaguya-ai Oct 2, 2024
7110e40
Remove UpdateHelpers, massivly speeding up Seed generation time (#4366)
Pepper0ni Oct 2, 2024
84130b8
Add 5, 6 & 7 item shopsanity. (#4280)
Pepe20129 Oct 2, 2024
33c74a1
Fix items being placed on hint locations (#4379)
Pepper0ni Oct 3, 2024
174574c
Merge branch 'DevRando' into MQLogic
Pepper0ni Oct 4, 2024
3cc9e7a
post-merge cleanups
Pepper0ni Oct 5, 2024
adaf285
change CanUse for HasITem on gorons braclet
Pepper0ni Oct 5, 2024
4a388cd
git ate half the rewrite
Pepper0ni Oct 5, 2024
33e95d7
more small error fixes
Pepper0ni Oct 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,37 @@ include(CMake/lus-cvars.cmake)
set(PROJECT_BUILD_NAME "MacReady Golf" CACHE STRING "" FORCE)
set(PROJECT_TEAM "github.com/harbourmasters" CACHE STRING "" FORCE)

execute_process(
COMMAND git branch --show-current
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE
)

set(CMAKE_PROJECT_GIT_BRANCH "${GIT_BRANCH}" CACHE STRING "Git branch" FORCE)

execute_process(
COMMAND git rev-parse HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)

set(CMAKE_PROJECT_GIT_COMMIT_HASH "${GIT_COMMIT_HASH}" CACHE STRING "Git commit hash" FORCE)

execute_process(
COMMAND git describe --tags --abbrev=0 --exact-match HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_TAG
OUTPUT_STRIP_TRAILING_WHITESPACE
)

if(NOT GIT_COMMIT_TAG)
set(GIT_COMMIT_TAG "" CACHE STRING "Git commit tag" FORCE)
endif()

set(CMAKE_PROJECT_GIT_COMMIT_TAG "${GIT_COMMIT_TAG}" CACHE STRING "Git commit tag" FORCE)

set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT soh)
add_compile_options($<$<CXX_COMPILER_ID:MSVC>:/MP>)
add_compile_options($<$<CXX_COMPILER_ID:MSVC>:/utf-8>)
Expand Down
17 changes: 5 additions & 12 deletions docs/BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,17 @@ Requires:
* At least 8GB of RAM (machines with 4GB have seen complier failures)
* Visual Studio 2022 Community Edition with the C++ feature set
* One of the Windows SDKs that comes with Visual Studio, for example the current Windows 10 version 10.0.19041.0
* The `MSVC v142 - VS 2019 C++ build tools` component of Visual Studio
* The `MSVC v143 - VS 2022 C++ build tools` component of Visual Studio
* Python 3 (can be installed manually or as part of Visual Studio)
* Git (can be installed manually or as part of Visual Studio)
* Cmake (can be installed via chocolatey or manually)

During installation, check the "Desktop development with C++" feature set:

![image](https://user-images.githubusercontent.com/30329717/183511274-d11aceea-7900-46ec-acb6-3f2cc110021a.png)
Doing so should also check one of the Windows SDKs by default. Then, in the installation details in the right-hand column, make sure you also check the v142 toolset.
Doing so should also check one of the Windows SDKs by default. Then, in the installation details in the right-hand column, make sure you also check the v143 toolset. This is often done by default.

You can also find the v142 toolset by searching through the individual components tab:

![image](https://user-images.githubusercontent.com/30329717/183521169-ead6a73b-a1bf-4e99-aab8-441746d8f08e.png)
While you're there, you can also install Python 3 and Git if needed.
It is recommended that you install Python and Git standalone, the install process in VS Installer has given some issues in the past.

1. Clone the Ship of Harkinian repository

Expand All @@ -33,9 +30,7 @@ _Note: Instructions assume using powershell_
cd Shipwright

# Setup cmake project
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 17 2022" -T v142 -A x64 # -DCMAKE_BUILD_TYPE:STRING=Release (if you're packaging)
# or for VS2019
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 16 2019" -T v142 -A x64
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 17 2022" -T v143 -A x64 # -DCMAKE_BUILD_TYPE:STRING=Release (if you're packaging)
# Extract assets & generate OTR (run this anytime you need to regenerate OTR)
& 'C:\Program Files\CMake\bin\cmake.exe' --build .\build\x64 --target ExtractAssets # --config Release (if you're packaging)
# Compile project
Expand All @@ -60,9 +55,7 @@ With the cmake build system you have two options for working on the project:
To develop using Visual Studio you only need to use cmake to generate the solution file:
```powershell
# Generates Ship.sln at `build/x64` for Visual Studio 2022
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 17 2022" -T v142 -A x64
# or for Visual Studio 2019
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 16 2019" -T v142 -A x64
& 'C:\Program Files\CMake\bin\cmake' -S . -B "build/x64" -G "Visual Studio 17 2022" -T v143 -A x64
```

#### Visual Studio Code or another editor
Expand Down
2 changes: 1 addition & 1 deletion libultraship
Submodule libultraship updated 58 files
+1 −1 .github/workflows/tidy-format-validation.yml
+6 −4 cmake/dependencies/common.cmake
+1 −0 include/libultraship/libultra/gbi.h
+2 −2 include/libultraship/libultra/os.h
+3 −0 src/CMakeLists.txt
+10 −10 src/Context.cpp
+6 −9 src/Context.h
+3 −5 src/audio/Audio.cpp
+3 −1 src/audio/Audio.h
+0 −2 src/audio/AudioPlayer.cpp
+32 −4 src/audio/AudioPlayer.h
+1 −7 src/audio/SDLAudioPlayer.cpp
+2 −2 src/audio/SDLAudioPlayer.h
+0 −6 src/audio/WasapiAudioPlayer.cpp
+6 −6 src/audio/WasapiAudioPlayer.h
+1 −1 src/config/Config.cpp
+2 −2 src/controller/controldeck/ControlDeck.cpp
+2 −3 src/controller/controldevice/controller/mapping/keyboard/KeyboardKeyToAxisDirectionMapping.cpp
+2 −2 src/controller/controldevice/controller/mapping/keyboard/KeyboardKeyToButtonMapping.cpp
+4 −3 src/controller/controldevice/controller/mapping/keyboard/KeyboardScancodes.h
+2 −0 src/controller/controldevice/controller/mapping/sdl/SDLAxisDirectionToAnyMapping.cpp
+8 −0 src/controller/controldevice/controller/mapping/sdl/SDLButtonToAnyMapping.cpp
+2 −2 src/controller/controldevice/controller/mapping/sdl/SDLButtonToButtonMapping.cpp
+1 −1 src/controller/controldevice/controller/mapping/sdl/SDLGyroMapping.cpp
+4 −1 src/graphic/Fast3D/Fast3dWindow.cpp
+3 −3 src/graphic/Fast3D/debug/GfxDebugger.cpp
+2 −3 src/graphic/Fast3D/debug/GfxDebugger.h
+11 −6 src/graphic/Fast3D/gfx_dxgi.cpp
+51 −19 src/graphic/Fast3D/gfx_pc.cpp
+2 −1 src/graphic/Fast3D/gfx_pc.h
+10 −4 src/graphic/Fast3D/gfx_sdl2.cpp
+1 −0 src/graphic/Fast3D/lus_gbi.h
+1 −1 src/public/bridge/gfxdebuggerbridge.cpp
+1 −0 src/resource/ResourceType.h
+1 −1 src/resource/archive/Archive.cpp
+1 −1 src/resource/factory/DisplayListFactory.cpp
+15 −0 src/resource/factory/LightFactory.cpp
+11 −0 src/resource/factory/LightFactory.h
+11 −0 src/resource/type/Light.cpp
+65 −0 src/resource/type/Light.h
+12 −0 src/utils/binarytools/BinaryReader.cpp
+1 −0 src/utils/binarytools/BinaryReader.h
+10 −0 src/window/Window.cpp
+3 −0 src/window/Window.h
+44 −13 src/window/gui/ConsoleWindow.cpp
+1 −1 src/window/gui/ConsoleWindow.h
+335 −62 src/window/gui/GfxDebuggerWindow.cpp
+1 −1 src/window/gui/GfxDebuggerWindow.h
+126 −72 src/window/gui/Gui.cpp
+11 −2 src/window/gui/Gui.h
+6 −46 src/window/gui/GuiElement.cpp
+3 −8 src/window/gui/GuiElement.h
+46 −1 src/window/gui/GuiMenuBar.cpp
+10 −1 src/window/gui/GuiMenuBar.h
+67 −2 src/window/gui/GuiWindow.cpp
+12 −1 src/window/gui/GuiWindow.h
+3 −5 src/window/gui/InputEditorWindow.cpp
+0 −2 src/window/gui/StatsWindow.cpp
5 changes: 4 additions & 1 deletion soh/include/variables.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,10 @@ extern "C"
extern u16 gBuildVersionMajor;
extern u16 gBuildVersionMinor;
extern u16 gBuildVersionPatch;
extern u8 gBuildTeam[];
extern u8 gGitBranch[];
extern u8 gGitCommitHash[];
extern u8 gGitCommitTag[];
extern u8 gBuildTeam[];
extern u8 gBuildDate[];
extern u8 gBuildMakeOption[];
extern OSMesgQueue gPiMgrCmdQ;
Expand Down
2 changes: 1 addition & 1 deletion soh/include/z64save.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ typedef enum { // Pre-existing IDs for save sections in base code
SECTION_ID_STATS,
SECTION_ID_ENTRANCES,
SECTION_ID_SCENES,
SECTION_ID_TRACKER_DATA,
SECTION_ID_MAX
} SaveFuncIDs;

Expand Down Expand Up @@ -279,7 +280,6 @@ typedef struct {
/* */ u8 pendingIceTrapCount;
/* */ SohStats sohStats;
/* */ FaroresWindData backupFW;
/* */ RandomizerCheckTrackerData checkTrackerData[RC_MAX];
// #endregion
// #region SOH [Randomizer]
// Upstream TODO: Move these to their own struct or name to more obviously specific to Randomizer
Expand Down
2 changes: 2 additions & 0 deletions soh/soh/CrashHandlerExt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@ extern "C" void CrashHandler_PrintSohData(char* buffer, size_t* pos) {
char intCharBuffer[16];
append_line(buffer, pos, "Build Information:");
WRITE_VAR_LINE(buffer, pos, "Game Version: ", (const char*)gBuildVersion);
WRITE_VAR_LINE(buffer, pos, "Git Branch: ", (const char*)gGitBranch);
WRITE_VAR_LINE(buffer, pos, "Git Commit: ", (const char*)gGitCommitHash);
WRITE_VAR_LINE(buffer, pos, "Build Date: ", (const char*)gBuildDate);

if (gPlayState != nullptr) {
Expand Down
58 changes: 58 additions & 0 deletions soh/soh/Enhancements/TimeSavers/FasterHeavyBlockLift.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#include "soh/Enhancements/game-interactor/GameInteractor.h"
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
#include "soh/OTRGlobals.h"
#include "spdlog/spdlog.h"

extern "C" {
#include "z64save.h"
#include "macros.h"
#include "variables.h"
#include "functions.h"
extern PlayState* gPlayState;
extern SaveContext gSaveContext;
}

/**
* This primarily handles speeding up the heavy block lifts (OGC and in the Fire Trial) but also handles skipping
* the one point cutscene since the two options are so similar in what they do.
*/
void FasterHeavyBlockLift_Register() {
REGISTER_VB_SHOULD(VB_PLAY_ONEPOINT_ACTOR_CS, {
Actor* actor = static_cast<Actor*>(opt);

if (
actor->id == ACTOR_BG_HEAVY_BLOCK &&
(CVarGetInteger(CVAR_ENHANCEMENT("FasterHeavyBlockLift"), 0) || CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.OnePoint"), IS_RANDO))
) {
*should = false;
}
});

REGISTER_VB_SHOULD(VB_FREEZE_LINK_FOR_BLOCK_THROW, {
if (CVarGetInteger(CVAR_ENHANCEMENT("FasterHeavyBlockLift"), 0) || CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.OnePoint"), IS_RANDO)) {
*should = false;
}
});

REGISTER_VB_SHOULD(VB_PLAY_THROW_ANIMATION, {
Player *player = GET_PLAYER(gPlayState);
Actor* interactRangeActor = player->interactRangeActor;
s32 interactActorId = interactRangeActor->id;
LinkAnimationHeader* anim = static_cast<LinkAnimationHeader*>(opt);

// Same actor is used for small and large silver rocks, use actor params to identify large ones
bool isLargeSilverRock = interactActorId == ACTOR_EN_ISHI && interactRangeActor->params & 1 == 1;
if (CVarGetInteger(CVAR_ENHANCEMENT("FasterHeavyBlockLift"), 0) && (isLargeSilverRock || interactActorId == ACTOR_BG_HEAVY_BLOCK)) {
*should = false;
LinkAnimation_PlayOnceSetSpeed(gPlayState, &player->skelAnime, anim, 5.0f);
}
});

REGISTER_VB_SHOULD(VB_MOVE_THROWN_ACTOR, {
if (CVarGetInteger(CVAR_ENHANCEMENT("FasterHeavyBlockLift"), 0)) {
Actor* heldActor = static_cast<Actor*>(opt);

heldActor->shape.rot.x -= 3510;
}
});
}
27 changes: 14 additions & 13 deletions soh/soh/Enhancements/TimeSavers/SkipCutscene/Story/SkipBlueWarp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@ extern "C" {
*/
void SkipBlueWarp_ShouldPlayTransitionCS(GIVanillaBehavior _, bool* should, void* opt) {
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Story"), IS_RANDO)) {
uint8_t isBlueWarp = 0;
uint8_t isBlueWarpCutscene = 0;
// Deku Tree Blue warp
if (gSaveContext.entranceIndex == ENTR_KOKIRI_FOREST_0 && gSaveContext.cutsceneIndex == 0xFFF1) {
gSaveContext.entranceIndex = ENTR_KOKIRI_FOREST_11;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Dodongo's Cavern Blue warp
} else if (gSaveContext.entranceIndex == ENTR_DEATH_MOUNTAIN_TRAIL_0 && gSaveContext.cutsceneIndex == 0xFFF1) {
gSaveContext.entranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_5;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Jabu Jabu's Blue warp
} else if (gSaveContext.entranceIndex == ENTR_ZORAS_FOUNTAIN_0 && gSaveContext.cutsceneIndex == 0xFFF0) {
gSaveContext.entranceIndex = ENTR_ZORAS_FOUNTAIN_0;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Forest Temple Blue warp
} else if (gSaveContext.entranceIndex == ENTR_CHAMBER_OF_THE_SAGES_0 && gSaveContext.cutsceneIndex == 0x0 && gSaveContext.chamberCutsceneNum == CHAMBER_CS_FOREST) {
// Normally set in the blue warp cutscene
Expand All @@ -43,44 +43,45 @@ void SkipBlueWarp_ShouldPlayTransitionCS(GIVanillaBehavior _, bool* should, void
gSaveContext.entranceIndex = ENTR_KOKIRI_FOREST_12;
}

isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Fire Temple Blue warp
} else if (gSaveContext.entranceIndex == ENTR_KAKARIKO_VILLAGE_0 && gSaveContext.cutsceneIndex == 0xFFF3) {
// Normally set in the blue warp cutscene
Flags_SetEventChkInf(EVENTCHKINF_DEATH_MOUNTAIN_ERUPTED);

gSaveContext.entranceIndex = ENTR_DEATH_MOUNTAIN_CRATER_5;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Water Temple Blue warp
} else if (gSaveContext.entranceIndex == ENTR_CHAMBER_OF_THE_SAGES_0 && gSaveContext.cutsceneIndex == 0x0 && gSaveContext.chamberCutsceneNum == CHAMBER_CS_WATER) {
// Normally set in the blue warp cutscene
gSaveContext.dayTime = gSaveContext.skyboxTime = 0x4800;
Flags_SetEventChkInf(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER);

gSaveContext.entranceIndex = ENTR_LAKE_HYLIA_9;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Spirit Temple Blue warp
} else if (gSaveContext.entranceIndex == ENTR_CHAMBER_OF_THE_SAGES_0 && gSaveContext.cutsceneIndex == 0x0 && gSaveContext.chamberCutsceneNum == CHAMBER_CS_SPIRIT) {
gSaveContext.entranceIndex = ENTR_DESERT_COLOSSUS_8;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
// Shadow Temple Blue warp
} else if (gSaveContext.entranceIndex == ENTR_CHAMBER_OF_THE_SAGES_0 && gSaveContext.cutsceneIndex == 0x0 && gSaveContext.chamberCutsceneNum == CHAMBER_CS_SHADOW) {
gSaveContext.entranceIndex = ENTR_GRAVEYARD_8;
isBlueWarp = 1;
isBlueWarpCutscene = 1;
}

if (isBlueWarp) {
if (isBlueWarpCutscene) {
if (gSaveContext.entranceIndex != ENTR_LAKE_HYLIA_9) {
// Normally set in the blue warp cutscene
gSaveContext.dayTime = gSaveContext.skyboxTime = 0x8000;
}

*should = false;
gSaveContext.cutsceneIndex = 0;
}

if (IS_RANDO && (RAND_GET_OPTION(RSK_SHUFFLE_DUNGEON_ENTRANCES) != RO_DUNGEON_ENTRANCE_SHUFFLE_OFF || RAND_GET_OPTION(RSK_SHUFFLE_BOSS_ENTRANCES) != RO_BOSS_ROOM_ENTRANCE_SHUFFLE_OFF)) {
Entrance_OverrideBlueWarp();
}
// This is outside the above condition because we want to handle both first and following visits to the blue warp
if (IS_RANDO && (RAND_GET_OPTION(RSK_SHUFFLE_DUNGEON_ENTRANCES) != RO_DUNGEON_ENTRANCE_SHUFFLE_OFF || RAND_GET_OPTION(RSK_SHUFFLE_BOSS_ENTRANCES) != RO_BOSS_ROOM_ENTRANCE_SHUFFLE_OFF)) {
Entrance_OverrideBlueWarp();
}
}
}
Expand Down
1 change: 1 addition & 0 deletions soh/soh/Enhancements/TimeSavers/TimeSavers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,5 @@ void TimeSavers_Register() {
SkipIntro_Register();
// SkipMiscInteractions
MoveMidoInKokiriForest_Register();
FasterHeavyBlockLift_Register();
}
1 change: 1 addition & 0 deletions soh/soh/Enhancements/TimeSavers/TimeSavers.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,6 @@ void TimeSavers_Register();
void SkipIntro_Register();
// SkipMiscInteractions
void MoveMidoInKokiriForest_Register();
void FasterHeavyBlockLift_Register();

#endif // TIME_SAVERS_H
7 changes: 0 additions & 7 deletions soh/soh/Enhancements/audio/AudioEditor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -424,12 +424,6 @@ void AudioEditor::InitElement() {
void AudioEditor::DrawElement() {
AudioCollection::Instance->InitializeShufflePool();

ImGui::SetNextWindowSize(ImVec2(820, 630), ImGuiCond_FirstUseEver);
if (!ImGui::Begin("Audio Editor", &mIsVisible)) {
ImGui::End();
return;
}

float buttonSegments = ImGui::GetContentRegionAvail().x / 4;
if (ImGui::Button("Randomize All Groups", ImVec2(buttonSegments, 30.0f))) {
AudioEditor_RandomizeAll();
Expand Down Expand Up @@ -700,7 +694,6 @@ void AudioEditor::DrawElement() {

ImGui::EndTabBar();
}
ImGui::End();
}

std::vector<SeqType> allTypes = { SEQ_BGM_WORLD, SEQ_BGM_EVENT, SEQ_BGM_BATTLE, SEQ_OCARINA, SEQ_FANFARE, SEQ_INSTRUMENT, SEQ_SFX, SEQ_VOICE };
Expand Down
Loading