From ef122efccdf5426c47ddf5171e35f2a2850a8364 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Wed, 3 Jun 2026 00:56:44 -0600 Subject: [PATCH 1/5] Update aurora --- extern/aurora | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/aurora b/extern/aurora index 59349fb982..417f558669 160000 --- a/extern/aurora +++ b/extern/aurora @@ -1 +1 @@ -Subproject commit 59349fb982892b534fcb96bc23c5042ae140d953 +Subproject commit 417f5586698cdbf99d401a285ce1e16094e2868b From 1a247c2977b181d7cb3d9fba215608f3eb5525ae Mon Sep 17 00:00:00 2001 From: Luke Street Date: Wed, 3 Jun 2026 02:17:46 -0600 Subject: [PATCH 2/5] Pass CMAKE_OSX_* to libjpeg-turbo build --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index eaa5bc8202..a25eb0cfee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -189,6 +189,8 @@ if (DUSK_MOVIE_SUPPORT) CMAKE_MSVC_RUNTIME_LIBRARY CMAKE_MSVC_DEBUG_INFORMATION_FORMAT CMAKE_OSX_ARCHITECTURES + CMAKE_OSX_DEPLOYMENT_TARGET + CMAKE_OSX_SYSROOT DEPLOYMENT_TARGET ENABLE_ARC ENABLE_BITCODE From 62a26a639dc3ceb548aaf4de73a6b1b21fe1829d Mon Sep 17 00:00:00 2001 From: Luke Street Date: Wed, 3 Jun 2026 02:17:54 -0600 Subject: [PATCH 3/5] Bump CMAKE_OSX_DEPLOYMENT_TARGET to 12.0 --- CMakePresets.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakePresets.json b/CMakePresets.json index d83ed045aa..11512642a0 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -429,7 +429,7 @@ "type": "BOOL", "value": true }, - "CMAKE_OSX_DEPLOYMENT_TARGET": "11.0", + "CMAKE_OSX_DEPLOYMENT_TARGET": "12.0", "CMAKE_IGNORE_PREFIX_PATH": "/opt/homebrew" } }, From 5a9bd6f8dca47bc1bc2af2b430bfe8c6ebde68ae Mon Sep 17 00:00:00 2001 From: Luke Street Date: Wed, 3 Jun 2026 02:17:58 -0600 Subject: [PATCH 4/5] Update aurora --- extern/aurora | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/aurora b/extern/aurora index 417f558669..5a3c6d1b74 160000 --- a/extern/aurora +++ b/extern/aurora @@ -1 +1 @@ -Subproject commit 417f5586698cdbf99d401a285ce1e16094e2868b +Subproject commit 5a3c6d1b7451cd8ffb8d80cb4741b6849f703b10 From 2376e0102e912bce50a177911fc397871a5eb44e Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Wed, 3 Jun 2026 13:35:51 -0400 Subject: [PATCH 5/5] TPHD Button Fishing (#1949) Co-authored-by: MelonSpeedruns --- include/dusk/settings.h | 1 + src/d/actor/d_a_mg_rod.cpp | 17 +++++++++++++++++ src/dusk/settings.cpp | 2 ++ src/dusk/ui/preset.cpp | 1 + src/dusk/ui/settings.cpp | 2 ++ 5 files changed, 23 insertions(+) diff --git a/include/dusk/settings.h b/include/dusk/settings.h index 5fd53ce289..bc1007f8e1 100644 --- a/include/dusk/settings.h +++ b/include/dusk/settings.h @@ -153,6 +153,7 @@ struct UserSettings { ConfigVar noMissClimbing; ConfigVar fastTears; ConfigVar no2ndFishForCat; + ConfigVar buttonFishing; ConfigVar instantSaves; ConfigVar instantText; ConfigVar sunsSong; diff --git a/src/d/actor/d_a_mg_rod.cpp b/src/d/actor/d_a_mg_rod.cpp index 5299f57626..271b212a57 100644 --- a/src/d/actor/d_a_mg_rod.cpp +++ b/src/d/actor/d_a_mg_rod.cpp @@ -5755,6 +5755,12 @@ static void play_camera_u(dmg_rod_class* i_this) { } } +#if TARGET_PC +BOOL item_any_fishing_rod(int itemId) { + return itemId == dItemNo_FISHING_ROD_1_e || (itemId >= dItemNo_BEE_ROD_e && itemId <= dItemNo_JEWEL_WORM_ROD_e); +} +#endif + static int dmg_rod_Execute(dmg_rod_class* i_this) { fopAc_ac_c* actor = &i_this->actor; @@ -5821,6 +5827,17 @@ static int dmg_rod_Execute(dmg_rod_class* i_this) { i_this->prev_rod_substick_y = i_this->rod_substick_y; i_this->rod_substick_y = mDoCPd_c::getSubStickY(PAD_1); + #if TARGET_PC + if (dusk::getSettings().game.buttonFishing) { + if ((item_any_fishing_rod(dComIfGp_getSelectItem(0)) && mDoCPd_c::getHoldX(PAD_1)) || + (item_any_fishing_rod(dComIfGp_getSelectItem(1)) && mDoCPd_c::getHoldY(PAD_1))) + { + i_this->rod_stick_y = -1.0f; + i_this->rod_substick_y = -1.0f; + } + } + #endif + i_this->reel_speed = 5.0f; i_this->reel_btn_flags = mDoCPd_c::getHoldB(PAD_1) | mDoCPd_c::getHoldDown(PAD_1); if (mDoCPd_c::getHoldDown(PAD_1)) { diff --git a/src/dusk/settings.cpp b/src/dusk/settings.cpp index 3f189f0359..402001a1dc 100644 --- a/src/dusk/settings.cpp +++ b/src/dusk/settings.cpp @@ -41,6 +41,7 @@ UserSettings g_userSettings = { .noMissClimbing {"game.noMissClimbing", false}, .fastTears {"game.fastTears", false}, .no2ndFishForCat {"game.no2ndFishForCat", false}, + .buttonFishing {"game.buttonFishing", false}, .instantSaves {"game.instantSaves", false}, .instantText {"game.instantText", false}, .sunsSong {"game.sunsSong", false}, @@ -223,6 +224,7 @@ void registerSettings() { Register(g_userSettings.game.fastClimbing); Register(g_userSettings.game.fastTears); Register(g_userSettings.game.no2ndFishForCat); + Register(g_userSettings.game.buttonFishing); Register(g_userSettings.game.instantSaves); Register(g_userSettings.game.instantText); Register(g_userSettings.game.sunsSong); diff --git a/src/dusk/ui/preset.cpp b/src/dusk/ui/preset.cpp index 4d5950f1f4..5d1bbcdd28 100644 --- a/src/dusk/ui/preset.cpp +++ b/src/dusk/ui/preset.cpp @@ -37,6 +37,7 @@ void applyPresetDusk() { s.game.invertCameraXAxis.setValue(true); s.game.invertFirstPersonYAxis.setValue(true); s.game.no2ndFishForCat.setValue(true); + s.game.buttonFishing.setValue(true); s.game.enableAchievementToasts.setValue(true); s.game.enableControllerToasts.setValue(true); s.game.enableQuickTransform.setValue(true); diff --git a/src/dusk/ui/settings.cpp b/src/dusk/ui/settings.cpp index 826a87c144..b11875f48c 100644 --- a/src/dusk/ui/settings.cpp +++ b/src/dusk/ui/settings.cpp @@ -1173,6 +1173,8 @@ SettingsWindow::SettingsWindow(bool prelaunch) : mPrelaunch(prelaunch) { "Link will not recoil when his sword hits walls."); addOption("No 2nd Fish for Cat", getSettings().game.no2ndFishForCat, "Skip needing to catch a second fish for Sera's cat."); + addOption("Button Fishing", getSettings().game.buttonFishing, + "Allow fishing with the Fishing Rod using the button the item is assigned to."); addOption("Show Poe Count on Map", getSettings().game.enhancedMapMenus, "Displays collected/total number of Poe Souls for a region on the map."); addSpeedrunDisabledOption("Sun's Song (R+X)", getSettings().game.sunsSong,