From 2978ae145d57a7d6c4541c0f7c4bd21281e0d71b Mon Sep 17 00:00:00 2001 From: SuperDude88 <82904174+SuperDude88@users.noreply.github.com> Date: Wed, 13 May 2026 00:04:58 -0400 Subject: [PATCH] Infinite Slingshot Seeds --- include/dusk/settings.h | 1 + src/dusk/settings.cpp | 2 ++ src/dusk/speedrun.cpp | 1 + src/dusk/ui/settings.cpp | 1 + src/f_ap/f_ap_game.cpp | 4 ++++ 5 files changed, 9 insertions(+) diff --git a/include/dusk/settings.h b/include/dusk/settings.h index 25fb08d246..2c73414412 100644 --- a/include/dusk/settings.h +++ b/include/dusk/settings.h @@ -158,6 +158,7 @@ struct UserSettings { // Cheats ConfigVar infiniteHearts; ConfigVar infiniteArrows; + ConfigVar infiniteSeeds; ConfigVar infiniteBombs; ConfigVar infiniteOil; ConfigVar infiniteOxygen; diff --git a/src/dusk/settings.cpp b/src/dusk/settings.cpp index 80f64a19d4..3af80d3a0f 100644 --- a/src/dusk/settings.cpp +++ b/src/dusk/settings.cpp @@ -93,6 +93,7 @@ UserSettings g_userSettings = { // Cheats .infiniteHearts {"game.infiniteHearts", false}, .infiniteArrows {"game.infiniteArrows", false}, + .infiniteSeeds {"game.infiniteSeeds", false}, .infiniteBombs {"game.infiniteBombs", false}, .infiniteOil {"game.infiniteOil", false}, .infiniteOxygen {"game.infiniteOxygen", false}, @@ -243,6 +244,7 @@ void registerSettings() { Register(g_userSettings.game.fastSpinner); Register(g_userSettings.game.infiniteHearts); Register(g_userSettings.game.infiniteArrows); + Register(g_userSettings.game.infiniteSeeds); Register(g_userSettings.game.infiniteBombs); Register(g_userSettings.game.infiniteOil); Register(g_userSettings.game.infiniteOxygen); diff --git a/src/dusk/speedrun.cpp b/src/dusk/speedrun.cpp index 0dc193d494..feb2178c41 100644 --- a/src/dusk/speedrun.cpp +++ b/src/dusk/speedrun.cpp @@ -20,6 +20,7 @@ void resetForSpeedrunMode() { getSettings().game.infiniteHearts.setSpeedrunValue(false); getSettings().game.infiniteArrows.setSpeedrunValue(false); + getSettings().game.infiniteSeeds.setSpeedrunValue(false); getSettings().game.infiniteBombs.setSpeedrunValue(false); getSettings().game.infiniteOil.setSpeedrunValue(false); getSettings().game.infiniteOxygen.setSpeedrunValue(false); diff --git a/src/dusk/ui/settings.cpp b/src/dusk/ui/settings.cpp index b8d05f29cd..961c3f1658 100644 --- a/src/dusk/ui/settings.cpp +++ b/src/dusk/ui/settings.cpp @@ -1107,6 +1107,7 @@ SettingsWindow::SettingsWindow(bool prelaunch) : mPrelaunch(prelaunch) { addCheat("Infinite Hearts", getSettings().game.infiniteHearts, "Keeps your health full."); addCheat( "Infinite Arrows", getSettings().game.infiniteArrows, "Keeps your arrow count full."); + addCheat("Infinite Seeds", getSettings().game.infiniteSeeds, "Keeps your slingshot pellets (seeds) full."); addCheat("Infinite Bombs", getSettings().game.infiniteBombs, "Keeps all bomb bags full."); addCheat("Infinite Oil", getSettings().game.infiniteOil, "Keeps your lantern oil full."); addCheat("Infinite Oxygen", getSettings().game.infiniteOxygen, diff --git a/src/f_ap/f_ap_game.cpp b/src/f_ap/f_ap_game.cpp index 55ef94f8a3..2e7e5b531e 100644 --- a/src/f_ap/f_ap_game.cpp +++ b/src/f_ap/f_ap_game.cpp @@ -792,6 +792,10 @@ static void duskExecute() { dComIfGs_setArrowNum(dComIfGs_getArrowMax()); } + if (dusk::getSettings().game.infiniteSeeds) { + dComIfGs_setPachinkoNum(dComIfGs_getPachinkoMax()); + } + if (dusk::getSettings().game.infiniteBombs) { dComIfGs_setBombNum(0, 99); dComIfGs_setBombNum(1, 99);