Merge pull request #620 from Henny022p/savefile

SaveFile cleanup
This commit is contained in:
notyourav
2023-08-06 18:52:38 -07:00
committed by GitHub
35 changed files with 233 additions and 192 deletions
+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;
}
}
+17 -12
View File
@@ -431,7 +431,7 @@ void PauseMenu_ItemMenu_Update(void) {
case MENU_SLOT_BOTTLE2:
case MENU_SLOT_BOTTLE3:
if (item != 0) {
item = gSave.saved_status.field_0x24[item - 6];
item = gSave.stats.bottles[item - ITEM_BOTTLE1];
}
break;
case MENU_SLOT_SAVE_BUTTON:
@@ -1232,7 +1232,7 @@ bool32 sub_080A5F24(void) {
return result;
}
void sub_080A5F48(u32 param_1, u32 param_2) {
void sub_080A5F48(Item item, u32 param_2) {
extern u32 gSprite_082E68F4[];
u32 ammoCount;
u32 tensDigit;
@@ -1242,19 +1242,24 @@ void sub_080A5F48(u32 param_1, u32 param_2) {
u32 temp3;
register u32 rem asm("r1");
switch (param_1) {
case 0x1c ... 0x1f:
param_1 = (u32)gSave.saved_status.field_0x24[param_1 - 6];
switch (item) {
case ITEM_BOTTLE1:
case ITEM_BOTTLE2:
case ITEM_BOTTLE3:
case ITEM_BOTTLE4:
item = gSave.stats.bottles[item - ITEM_BOTTLE1];
break;
default:
break;
}
temp1 = param_2 * 0x20 + 0x6010000;
temp3 = gSpriteAnimations_322[param_1]->index;
temp3 = gSpriteAnimations_322[item]->index;
temp2 = &gMoreSpritePtrs[1][temp3 * 2];
DmaCopy32(3, &gMoreSpritePtrs[2][temp2[1] * 0x10], temp1, 0x40 * 4);
ammoCount = -1;
switch (param_1) {
switch (item) {
case 7:
case 8:
ammoCount = gSave.stats.bombCount;
@@ -1267,12 +1272,12 @@ void sub_080A5F48(u32 param_1, u32 param_2) {
if (-1 < (int)ammoCount) {
tensDigit = Div(ammoCount, 10);
param_1 = rem;
item = rem;
if ((int)tensDigit >= 10) {
tensDigit = 9;
}
DmaCopy32(3, gUnk_085C4620 + tensDigit * 0x8, temp1, 0x8 * 4);
DmaCopy32(3, gUnk_085C4620 + (param_1 + 10) * 0x8, temp1 + 0x20, 0x8 * 4);
DmaCopy32(3, gUnk_085C4620 + (item + 10) * 0x8, temp1 + 0x20, 0x8 * 4);
}
}
@@ -1431,7 +1436,7 @@ void sub_080A62E0(void) {
switch (gInput.newKeys) {
case A_BUTTON:
if ((gSave.windcrests & (1 << gMenu.field_0x3)) != 0) {
if (IS_BIT_SET(gSave.windcrests, gMenu.field_0x3)) {
SoundReq(SFX_TEXTBOX_SELECT);
sub_080A4E84(6);
windcrest = -1;
@@ -1495,7 +1500,7 @@ void sub_080A6438(void) {
gOamCmd._4 = 0x400;
gOamCmd._6 = 0;
gOamCmd._8 = 0;
uVar1 = gSave.field_0x20 & gGenericMenu.unk10.h[0];
uVar1 = gSave.map_hints & gGenericMenu.unk10.h[0];
for (pcVar2 = gUnk_08128F58, uVar3 = 0; pcVar2->frameIndex != 0; uVar3++, pcVar2++) {
if ((1 << uVar3 & uVar1) != 0) {
gOamCmd.x = pcVar2->unk1;
@@ -1512,7 +1517,7 @@ void sub_080A6498(void) {
gOamCmd._6 = 0;
gOamCmd._8 = 0;
for (i = 0; i <= 0x10; i++) {
if ((gSave.windcrests & (1 << i)) == 0) {
if (!IS_BIT_SET(gSave.windcrests, i)) {
gUnk_08128DE8_struct* ptr = &gUnk_08128DE8[i];
gOamCmd.x = ptr->unk6;
gOamCmd.y = ptr->unk7;
+1 -1
View File
@@ -196,7 +196,7 @@ void sub_080A68D4(void) {
sub_080A698C(gRoomTransition.player_status.overworld_map_x, gRoomTransition.player_status.overworld_map_y,
DRAW_DIRECT_SPRITE_INDEX, iVar6 + 0x100);
uVar1 = sub_080A6F40();
uVar1 &= gSave.field_0x20;
uVar1 &= gSave.map_hints;
for (pcVar4 = gUnk_08128F58, i = 0; pcVar4->frameIndex != 0; i++, pcVar4++) {
if (((1 << i) & uVar1) != 0) {