mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-25 19:02:19 -05:00
Full health spawn (#2377)
* full health spawn Co-authored-by: MoriyaFaith <46070717+MoriyaFaith@users.noreply.github.com> * add enahancement to gamemenubar, update to use new cvar method names, simplify save loading logic so loading a save with less than 3 hearts spawns with full hearts with enhancement enabled instead of spawing with 3 * formatting Co-authored-by: MoriyaFaith <46070717+MoriyaFaith@users.noreply.github.com>
This commit is contained in:
parent
4291ec8252
commit
a9e7faa180
@ -86,6 +86,7 @@ const std::vector<const char*> enhancementsCvars = {
|
|||||||
"gNoHeartDrops",
|
"gNoHeartDrops",
|
||||||
"gBombchuDrops",
|
"gBombchuDrops",
|
||||||
"gGoronPot",
|
"gGoronPot",
|
||||||
|
"gFullHealthSpawn",
|
||||||
"gDampeWin",
|
"gDampeWin",
|
||||||
"gRedPotionEffect",
|
"gRedPotionEffect",
|
||||||
"gRedPotionHealth",
|
"gRedPotionHealth",
|
||||||
|
@ -443,6 +443,8 @@ namespace GameMenuBar {
|
|||||||
32x: Can survive void damage with max health and double defense\n\
|
32x: Can survive void damage with max health and double defense\n\
|
||||||
64x: Cannot survive void damage"
|
64x: Cannot survive void damage"
|
||||||
);
|
);
|
||||||
|
UIWidgets::PaddedEnhancementCheckbox("Spawn with full health", "gFullHealthSpawn", true, false);
|
||||||
|
UIWidgets::Tooltip("Respawn with full health instead of 3 Hearts");
|
||||||
UIWidgets::PaddedEnhancementCheckbox("No Random Drops", "gNoRandomDrops", true, false);
|
UIWidgets::PaddedEnhancementCheckbox("No Random Drops", "gNoRandomDrops", true, false);
|
||||||
UIWidgets::Tooltip("Disables random drops, except from the Goron Pot, Dampe, and bosses");
|
UIWidgets::Tooltip("Disables random drops, except from the Goron Pot, Dampe, and bosses");
|
||||||
bool forceEnableBombchuDrops = gSaveContext.n64ddFlag &&
|
bool forceEnableBombchuDrops = gSaveContext.n64ddFlag &&
|
||||||
|
@ -207,7 +207,7 @@ void Sram_OpenSave() {
|
|||||||
osSyncPrintf(VT_RST);
|
osSyncPrintf(VT_RST);
|
||||||
|
|
||||||
if (gSaveContext.health < 0x30) {
|
if (gSaveContext.health < 0x30) {
|
||||||
gSaveContext.health = 0x30;
|
gSaveContext.health = CVarGetInteger("gFullHealthSpawn", 0) ? gSaveContext.healthCapacity : 0x30;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gSaveContext.scarecrowLongSongSet) {
|
if (gSaveContext.scarecrowLongSongSet) {
|
||||||
|
@ -4158,7 +4158,7 @@ void KaleidoScope_Update(PlayState* play)
|
|||||||
Grotto_ForceGrottoReturn();
|
Grotto_ForceGrottoReturn();
|
||||||
}
|
}
|
||||||
gSaveContext.nextTransitionType = 2;
|
gSaveContext.nextTransitionType = 2;
|
||||||
gSaveContext.health = 0x30;
|
gSaveContext.health = CVarGetInteger("gFullHealthSpawn", 0) ? gSaveContext.healthCapacity : 0x30;
|
||||||
Audio_QueueSeqCmd(0xF << 28 | SEQ_PLAYER_BGM_MAIN << 24 | 0xA);
|
Audio_QueueSeqCmd(0xF << 28 | SEQ_PLAYER_BGM_MAIN << 24 | 0xA);
|
||||||
gSaveContext.healthAccumulator = 0;
|
gSaveContext.healthAccumulator = 0;
|
||||||
gSaveContext.magicState = 0;
|
gSaveContext.magicState = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user