SaveFile cleanup part 3

This commit is contained in:
Henny022p
2023-08-02 22:19:34 +02:00
parent 1e02286d2c
commit ea30d2264b
10 changed files with 65 additions and 57 deletions
+2 -2
View File
@@ -998,8 +998,8 @@ void sub_0804235C(Entity* this) {
void VaatiWrathType0PreAction(Entity* this) {
int temp;
if ((gRoomTransition.field_0x38 & 2) == 0) {
if (gSave.timers[3] != 0) {
gSave.timers[3]--;
if (gSave.vaati_timer != 0) {
gSave.vaati_timer--;
} else {
temp = gPlayerState.framestate_last;
switch (temp) {
+16 -17
View File
@@ -25,8 +25,8 @@
u32 StairsAreValid(void);
void ClearFlagArray(const u16*);
void DummyHandler(u32* a1);
void sub_08053434(u32* a1);
void sub_080534E4(u32* a1);
void DarknutTimerHandler(u32* a1);
void BiggoronTimerHandler(u32* a1);
void InitAllRoomResInfo(void);
void InitRoomResInfo(RoomResInfo* info, RoomHeader* hdr, u32 area, u32 room);
void sub_080532E4(void);
@@ -839,24 +839,25 @@ void sub_080533CC(void) {
void UpdateTimerCallbacks(void) {
static void (*const sHandlers[])(u32*) = {
sub_08053434, DummyHandler, sub_080534E4, DummyHandler, DummyHandler, DummyHandler, DummyHandler, DummyHandler,
DarknutTimerHandler, DummyHandler, BiggoronTimerHandler, DummyHandler,
DummyHandler, DummyHandler, DummyHandler, DummyHandler,
};
u32* p;
u32 i;
p = gSave.timers;
p = &gSave.darknut_timer;
for (i = 0; i < 8; i++, p++) {
(sHandlers[i])(p);
}
}
void DummyHandler(u32* a1) {
void DummyHandler(u32* timer) {
}
void sub_08053434(u32* a1) {
if (gArea.locationIndex == 29 && *a1) {
if (!--*a1) {
void DarknutTimerHandler(u32* timer) {
if (gArea.locationIndex == 29 && *timer) {
if (!--*timer) {
ResetTimerFlags();
MenuFadeIn(5, 6);
}
@@ -878,33 +879,31 @@ void ResetTimerFlags(void) {
0xFFFF,
};
gSave.timers[0] = 0;
gSave.darknut_timer = 0;
if (CheckLocalFlagByBank(FLAG_BANK_10, LV6_ZELDA_DISCURSE))
ClearGlobalFlag(ZELDA_CHASE);
ClearFlagArray(sClearFlags);
}
void StartDarkNutTimer(void) {
gSave.timers[0] = 10800;
gSave.darknut_timer = 10800;
}
void sub_080534AC(void) {
if (CheckLocalFlagByBank(FLAG_BANK_10, LV6_KANE_START)) {
ClearLocalFlagByBank(FLAG_BANK_10, LV6_KANE_START);
gSave.timers[0] = 0;
gSave.darknut_timer = 0;
SoundReq(SONG_STOP_BGM);
}
}
void sub_080534E4(u32* a1) {
if (gRoomControls.area != AREA_VEIL_FALLS_TOP) {
if (*a1)
--*a1;
}
void BiggoronTimerHandler(u32* timer) {
if (gRoomControls.area != AREA_VEIL_FALLS_TOP && *timer)
--*timer;
}
void InitBiggoronTimer(void) {
gSave.timers[2] = 36000;
gSave.biggoron_timer = 36000;
}
void ResetTmpFlags(void) {
+1 -1
View File
@@ -54,7 +54,7 @@ void Vaati3StartManager_Type0_Init(Vaati3StartManager* this) {
*(u8*)&gRoomTransition.field_0x3a = 0x20;
*((u8*)&gRoomTransition.field_0x3a + 1) = 0x20;
#if !defined(EU) && !defined(JP)
gSave.timers[3] = 0x1194;
gSave.vaati_timer = 0x1194;
#endif
}
+2 -2
View File
@@ -147,7 +147,7 @@ void FigurineMenu0_Type2(void) {
gFigurineMenu.unk20++;
switch (gFigurineMenu.unk20) {
case 0x40:
gFigurineMenu.duplicate = WriteBit(&gSave.stats.filler4[4], gFigurineMenu.figure_idx);
gFigurineMenu.duplicate = WriteBit(gSave.figurines, gFigurineMenu.figure_idx);
gMenu.column_idx = 1;
default:
bVar1 = gFigurineMenu.unk20 >> 2;
@@ -285,7 +285,7 @@ u32 sub_080A4948(s32 param_1) {
uVar2 = 0;
iVar1 = !gSave.saw_staffroll ? 0x82 : 0x88;
if ((0 < param_1) || (iVar1 >= param_1)) {
if (ReadBit((u32*)&gSave.stats.filler4[4], param_1)) {
if (ReadBit((u32*)gSave.figurines, param_1)) {
uVar2 = 1;
}
}
+1 -1
View File
@@ -429,7 +429,7 @@ void sub_0806D5D4(void) {
}
void sub_0806D600(Entity* this, ScriptExecutionContext* context) {
context->condition = gSave.timers[2] == 0;
context->condition = gSave.biggoron_timer == 0;
}
void sub_0806D620(void) {
+2 -2
View File
@@ -706,13 +706,13 @@ void sub_08060318(void) {
}
void sub_08060340(void) {
gSave.timers[1] = gSave.enemies_killed;
gSave.drug_kill_count = gSave.enemies_killed;
}
u32 sub_08060354(void) {
s32 iVar2;
iVar2 = gSave.enemies_killed - gSave.timers[1];
iVar2 = gSave.enemies_killed - gSave.drug_kill_count;
if (CheckGlobalFlag(DRUG_1) == 0) {
if (4 < iVar2) {
return 0x8444;
+1 -1
View File
@@ -182,7 +182,7 @@ void sub_0806387C(Entity* this) {
if (CheckLocalFlag(SHOP05_OPEN) == 0) {
r5 = 0;
for (r4 = 1; r4 <= 0x82; r4++) {
if (ReadBit(&gSave.stats.filler4[4], r4)) {
if (ReadBit(gSave.figurines, r4)) {
r5++;
}
}
+2 -2
View File
@@ -626,7 +626,7 @@ void sub_08088328(FigurineDeviceEntity* this) {
if (uVar6 > 0x88) {
uVar6 = 1;
}
if (sub_08088160(this, uVar6) && ReadBit(&gSave.stats.filler4[4], uVar6) == 0) {
if (sub_08088160(this, uVar6) && ReadBit(gSave.figurines, uVar6) == 0) {
uVar2 = TRUE;
} else {
uVar6++;
@@ -640,7 +640,7 @@ void sub_08088328(FigurineDeviceEntity* this) {
if (uVar6 > 0x88) {
uVar6 = 1;
}
if (sub_08088160(this, uVar6) && ReadBit(&gSave.stats.filler4[4], uVar6) != 0) {
if (sub_08088160(this, uVar6) && ReadBit(gSave.figurines, uVar6) != 0) {
uVar2 = FALSE;
} else {
uVar6++;