diff options
| author | octorock <79596758+octorock@users.noreply.github.com> | 2022-12-11 12:07:48 +0100 |
|---|---|---|
| committer | octorock <79596758+octorock@users.noreply.github.com> | 2022-12-11 12:07:48 +0100 |
| commit | 1d741c182dec03c6c7a6ea337f351eedf7d6eb65 (patch) | |
| tree | 7a1fc484cc98a123a562ed5bb2e03e85b6f28e95 /src/menu/pauseMenu.c | |
| parent | 017eb5a65efe06ab338f7d6a3bdd1188fcca6c3e (diff) | |
Extract dungeon maps
Diffstat (limited to 'src/menu/pauseMenu.c')
| -rw-r--r-- | src/menu/pauseMenu.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/menu/pauseMenu.c b/src/menu/pauseMenu.c index 63f22f28..752f8b0c 100644 --- a/src/menu/pauseMenu.c +++ b/src/menu/pauseMenu.c @@ -581,7 +581,7 @@ extern u32 gUnk_085C4620[]; extern void (*const gUnk_08128D58[])(void); extern KeyButtonLayout gUnk_08128D60; -void sub_080A5D1C(); +void DrawDungeonMapActually(); void sub_080A5CFC(u32, void*, u32); void sub_080A6FB4(u32, u32); void DrawDungeonFeatures(u32, void*, u32); @@ -1067,7 +1067,7 @@ void PauseMenu_Screen_5(void) { u32 temp; gUnk_08128D30[gMenu.menuType](); - sub_080A5D1C(); + DrawDungeonMapActually(); temp = gMain.ticks; if ((temp & 7) == 0) { uVar1 = *gUnk_02017830; @@ -1091,10 +1091,10 @@ void sub_080A5C44(u32 param_1, u32 param_2, u32 param_3) { void sub_080A5C9C(void) { s32 newChoice; - const struct_080C9C6C* ptr; + const DungeonFloorMetadata* floorMetadata; if (sub_080A51F4()) { - ptr = &gUnk_080C9C6C[gArea.dungeon_idx]; + floorMetadata = &gDungeonFloorMetadatas[gArea.dungeon_idx]; newChoice = gMenu.field_0x3; switch (gInput.newKeys) { case DPAD_UP: @@ -1103,7 +1103,7 @@ void sub_080A5C9C(void) { } break; case DPAD_DOWN: - if (ptr->unk_0 - 1 > newChoice) { + if (floorMetadata->numFloors - 1 > newChoice) { newChoice++; } break; @@ -1129,7 +1129,7 @@ void sub_080A5CFC(u32 menuType, void* param_2, u32 param_3) { #endif // Actually draw the sprites for the dungeon map. -void sub_080A5D1C(void) { +void DrawDungeonMapActually(void) { extern u8 gUnk_08128D3C[]; u32 bVar1; int frameIndex; @@ -1137,10 +1137,10 @@ void sub_080A5D1C(void) { u32 uVar6; u32 index; u8* puVar8; - const struct_080C9C6C* pbVar9; + const DungeonFloorMetadata* pbVar9; - pbVar9 = &gUnk_080C9C6C[gArea.dungeon_idx]; - bVar1 = gUnk_08128D3C[pbVar9->unk_0]; + pbVar9 = &gDungeonFloorMetadatas[gArea.dungeon_idx]; + bVar1 = gUnk_08128D3C[pbVar9->numFloors]; uVar4 = sub_0801DB94(); gOamCmd._4 = 0x400; gOamCmd._6 = 0; @@ -1171,7 +1171,7 @@ void sub_080A5D1C(void) { if (sub_080A5F24()) { gOamCmd._8 = 0; gOamCmd.x = 0x46; - gOamCmd.y = bVar1 + (pbVar9->unk_1 - pbVar9->unk_2) * 0xc; + gOamCmd.y = bVar1 + (pbVar9->highestFloor - pbVar9->unk_2) * 0xc; if ((gMain.ticks & 0x20) != 0) { uVar6 = 0x7a; } else { @@ -1183,9 +1183,10 @@ void sub_080A5D1C(void) { gOamCmd._8 = 0; gOamCmd.x = 0x34; gOamCmd.y = bVar1; - frameIndex = pbVar9->unk_1 + 0x82; + frameIndex = pbVar9->highestFloor + 0x82; - for (index = 0; index < pbVar9->unk_0; index++) { + // Floor number sprites? + for (index = 0; index < pbVar9->numFloors; index++) { DrawDirect(DRAW_DIRECT_SPRITE_INDEX, frameIndex); frameIndex--; gOamCmd.y = gOamCmd.y + 0xc; |
