diff --git a/asm/code_805D8C8.s b/asm/code_805D8C8.s index 1fa80c864..c0b70f853 100644 --- a/asm/code_805D8C8.s +++ b/asm/code_805D8C8.s @@ -6,152 +6,6 @@ .text - thumb_func_start sub_8063698 -sub_8063698: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r4, [r0, 0x70] - ldr r0, _080636E8 - ldr r0, [r0] - lsls r0, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r5, r4, r0 - ldr r1, _080636EC - movs r0, 0 - str r0, [r1] - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _080636FA - cmp r7, 0 - beq _080636D0 - movs r0, 0x14 - movs r1, 0 - bl sub_8044F5C -_080636D0: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063702 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080636F0 - movs r0, 0x33 - b _080636F2 - .align 2, 0 -_080636E8: .4byte gUnknown_202F2D8 -_080636EC: .4byte gUnknown_202EE6C -_080636F0: - movs r0, 0x1E -_080636F2: - movs r1, 0 - bl sub_8044F5C - b _08063702 -_080636FA: - movs r0, 0x1F - movs r1, 0 - bl sub_8044F5C -_08063702: - cmp r6, 0 - beq _08063716 - movs r0, 0x20 - movs r1, 0 - bl sub_8044F5C - movs r0, 0x21 - movs r1, 0 - bl sub_8044F5C -_08063716: - movs r0, 0x1D - movs r1, 0 - bl sub_8044F5C - cmp r6, 0 - bne _0806372A - movs r0, 0x20 - bl sub_8044FF0 - b _08063754 -_0806372A: - ldr r5, _080637A0 - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063C88 - lsls r0, 24 - cmp r0, 0 - bne _08063740 - movs r0, 0x20 - bl sub_8044FF0 -_08063740: - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063DD4 - lsls r0, 24 - cmp r0, 0 - bne _08063754 - movs r0, 0x21 - bl sub_8044FF0 -_08063754: - ldr r5, _080637A0 - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063DD4 - lsls r0, 24 - cmp r0, 0 - bne _0806376A - movs r0, 0x21 - bl sub_8044FF0 -_0806376A: - cmp r7, 0 - beq _08063792 - movs r0, 0 - ldr r1, [r5] - cmp r1, 0x3 - bgt _08063788 - mov r0, r8 - movs r2, 0x1 - bl CanAIUseMove - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r0, r1, 31 -_08063788: - cmp r0, 0 - bne _08063792 - movs r0, 0x14 - bl sub_8044FF0 -_08063792: - bl sub_8045064 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080637A0: .4byte gUnknown_202F2D8 - thumb_func_end sub_8063698 - - thumb_func_start sub_80637A4 -sub_80637A4: - push {lr} - adds r2, r1, 0 - ldr r1, _080637B8 - movs r3, 0x18 - ldrsh r1, [r1, r3] - bl sub_80637BC - pop {r0} - bx r0 - .align 2, 0 -_080637B8: .4byte gUnknown_202EE10 - thumb_func_end sub_80637A4 - thumb_func_start sub_80637BC sub_80637BC: push {r4,r5,lr} @@ -304,7 +158,7 @@ _08063898: strh r7, [r6, 0x1C] mov r0, sp movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows ldr r0, [sp, 0x78] adds r1, r0, r4 lsls r1, 3 @@ -345,7 +199,7 @@ _0806392C: movs r7, 0x2 b _080639AE .align 2, 0 -_0806393C: .4byte gUnknown_202EE10 +_0806393C: .4byte gDungeonMenu _08063940: .4byte gUnknown_2027370 _08063944: .4byte gUnknown_202EE38 _08063948: .4byte gRealInputs @@ -447,7 +301,7 @@ sub_80639E4: str r0, [r4, 0x14] adds r0, r4, 0 movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows movs r0, 0 bl sub_80073B8 ldr r0, _08063A64 @@ -492,7 +346,7 @@ _08063A5C: .4byte gUnknown_202F278 _08063A60: .4byte gUnknown_8106CC8 _08063A64: .4byte gFormatBuffer_Monsters _08063A68: .4byte gUnknown_8106CCC -_08063A6C: .4byte gUnknown_202EE10 +_08063A6C: .4byte gDungeonMenu thumb_func_end sub_80639E4 thumb_func_start sub_8063A70 @@ -1151,7 +1005,7 @@ _08063F76: b _08063FB2 .align 2, 0 _08063F80: .4byte gUnknown_202F2D8 -_08063F84: .4byte gUnknown_202EE10 +_08063F84: .4byte gDungeonMenu _08063F88: .4byte gRealInputs _08063F8C: movs r0, 0x8 @@ -1187,7 +1041,7 @@ _08063FB2: str r0, [r1] b _080640FA .align 2, 0 -_08063FD0: .4byte gUnknown_202EE10 +_08063FD0: .4byte gDungeonMenu _08063FD4: bl PlayDungeonStartButtonSE movs r4, 0x2 @@ -1217,7 +1071,7 @@ _08064008: bl sub_8064310 mov r0, sp movs r1, 0x16 - bl sub_805FC30 + bl CreateDungeonMenuSubWindow adds r4, r5, 0 ldr r6, _0806408C adds r5, 0x2A @@ -1315,7 +1169,7 @@ _080640CE: bl sub_8063E30 b _08063EE0 .align 2, 0 -_080640E4: .4byte gUnknown_202EE10 +_080640E4: .4byte gDungeonMenu _080640E8: cmp r0, 0x2 bne _080640FA @@ -1574,7 +1428,7 @@ _08064262: stm r1!, {r2,r3,r7} adds r0, r5, 0 movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r6, 0 movs r1, 0 bl sub_80137B0 @@ -1599,7 +1453,7 @@ _08064262: pop {r0} bx r0 .align 2, 0 -_08064304: .4byte gUnknown_202EE10 +_08064304: .4byte gDungeonMenu _08064308: .4byte gUnknown_202F2D8 _0806430C: .4byte gFormatBuffer_Monsters thumb_func_end sub_8064228 @@ -1771,7 +1625,7 @@ _080643F0: strh r4, [r5, 0xA] mov r0, sp movs r1, 0x16 - bl sub_805FC30 + bl CreateDungeonMenuSubWindow _0806445C: adds r0, r5, 0 bl AddMenuCursorSprite @@ -1823,7 +1677,7 @@ _080644B2: movs r4, 0x2 b _0806452A .align 2, 0 -_080644C8: .4byte gUnknown_202EE10 +_080644C8: .4byte gDungeonMenu _080644CC: .4byte gRealInputs _080644D0: movs r2, 0x18 @@ -1891,7 +1745,7 @@ _0806453C: bx r0 .align 2, 0 _08064554: .4byte gUnknown_202EE3A -_08064558: .4byte gUnknown_202EE10 +_08064558: .4byte gDungeonMenu thumb_func_end sub_80643AC thumb_func_start sub_806455C @@ -1908,7 +1762,7 @@ sub_806455C: strb r1, [r2, 0x2] strb r5, [r2, 0x3] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows movs r0, 0 bl sub_80073B8 movs r1, 0 @@ -2073,7 +1927,7 @@ _080646B8: _080646C4: ldr r0, [sp, 0xE8] movs r1, 0 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 bl GetTrapData adds r4, r0, 0 @@ -2298,7 +2152,7 @@ _08064834: strh r4, [r5, 0xA] mov r0, sp movs r1, 0x16 - bl sub_805FC30 + bl CreateDungeonMenuSubWindow _080648A0: adds r0, r5, 0 bl AddMenuCursorSprite @@ -2350,7 +2204,7 @@ _080648F6: movs r4, 0x2 b _0806496E .align 2, 0 -_0806490C: .4byte gUnknown_202EE10 +_0806490C: .4byte gDungeonMenu _08064910: .4byte gRealInputs _08064914: movs r2, 0x18 @@ -2418,7 +2272,7 @@ _08064980: bx r0 .align 2, 0 _08064998: .4byte gUnknown_202EE3A -_0806499C: .4byte gUnknown_202EE10 +_0806499C: .4byte gDungeonMenu thumb_func_end ShowDungeonStairsMenu thumb_func_start sub_80649A0 @@ -2434,7 +2288,7 @@ sub_80649A0: strb r1, [r2, 0x2] strb r3, [r2, 0x3] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows movs r0, 0 bl sub_80073B8 bl GetFloorType @@ -2566,7 +2420,7 @@ _08064A58: strb r0, [r1, 0x3] ldr r0, [sp, 0xE4] movs r1, 0 - bl sub_803ECB4 + bl DungeonShowWindows bl GetFloorType adds r4, r0, 0 lsls r4, 24 @@ -2799,7 +2653,7 @@ _08064C8C: .align 2, 0 _08064C94: .4byte gDungeon _08064C98: .4byte gUnknown_202F2E0 -_08064C9C: .4byte gUnknown_202EE10 +_08064C9C: .4byte gDungeonMenu _08064CA0: .4byte gRealInputs _08064CA4: bl PlayDungeonCancelSE @@ -2896,7 +2750,7 @@ _08064D4C: pop {r0} bx r0 .align 2, 0 -_08064D68: .4byte gUnknown_202EE10 +_08064D68: .4byte gDungeonMenu _08064D6C: .4byte gUnknown_202F2E0 _08064D70: .4byte gDungeon thumb_func_end ShowDungeonOthersMenu @@ -2955,7 +2809,7 @@ _08064DDA: bl PlayDungeonConfirmationSE b _08064DFE .align 2, 0 -_08064DE0: .4byte gUnknown_202EE10 +_08064DE0: .4byte gDungeonMenu _08064DE4: .4byte gRealInputs _08064DE8: movs r0, 0x2 @@ -2991,7 +2845,7 @@ _08064DFE: bl sub_8064E68 b _08064E40 .align 2, 0 -_08064E2C: .4byte gUnknown_202EE10 +_08064E2C: .4byte gDungeonMenu _08064E30: .4byte gGameOptionsRef _08064E34: .4byte gUnknown_202F2E8 _08064E38: @@ -3076,7 +2930,7 @@ _08064EC2: bl sub_8065A8C b _08064F2E .align 2, 0 -_08064EDC: .4byte gUnknown_202EE10 +_08064EDC: .4byte gDungeonMenu _08064EE0: .4byte gRealInputs _08064EE4: movs r0, 0x10 @@ -3131,7 +2985,7 @@ _08064F30: pop {r1} bx r1 .align 2, 0 -_08064F4C: .4byte gUnknown_202EE10 +_08064F4C: .4byte gDungeonMenu thumb_func_end sub_8064E68 thumb_func_start sub_8064F50 @@ -3191,7 +3045,7 @@ _08064FAA: bl sub_8065A8C b _0806501C .align 2, 0 -_08064FC8: .4byte gUnknown_202EE10 +_08064FC8: .4byte gDungeonMenu _08064FCC: .4byte gRealInputs _08064FD0: movs r0, 0x10 @@ -3247,7 +3101,7 @@ _0806501E: pop {r1} bx r1 .align 2, 0 -_0806503C: .4byte gUnknown_202EE10 +_0806503C: .4byte gDungeonMenu thumb_func_end sub_8064F50 thumb_func_start sub_8065040 @@ -3374,7 +3228,7 @@ _0806512C: bl PlayDungeonConfirmationSE b _08065152 .align 2, 0 -_08065134: .4byte gUnknown_202EE10 +_08065134: .4byte gDungeonMenu _08065138: .4byte gRealInputs _0806513C: movs r0, 0x2 @@ -3406,7 +3260,7 @@ _08065152: bl sub_80651D0 b _08065184 .align 2, 0 -_08065178: .4byte gUnknown_202EE10 +_08065178: .4byte gDungeonMenu _0806517C: cmp r0, 0x1 bne _08065184 @@ -3613,7 +3467,7 @@ _080652D2: mov r1, r9 strh r1, [r0, 0x8] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -3693,7 +3547,7 @@ _080652D2: bl PrintFormattedStringOnWindow b _0806540E .align 2, 0 -_080653D0: .4byte gUnknown_202EE10 +_080653D0: .4byte gDungeonMenu _080653D4: .4byte gUnknown_202F2E0 _080653D8: .4byte gDungeon _080653DC: .4byte gUnknown_80FE8F8 @@ -3738,7 +3592,7 @@ _0806540E: bx r0 .align 2, 0 _08065440: .4byte gUnknown_80FEA44 -_08065444: .4byte gUnknown_202EE10 +_08065444: .4byte gDungeonMenu _08065448: .4byte gUnknown_80FEA50 thumb_func_end sub_8065250 @@ -3824,7 +3678,7 @@ sub_806544C: mov r2, r9 strh r2, [r0, 0x8] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -3873,7 +3727,7 @@ sub_806544C: pop {r0} bx r0 .align 2, 0 -_08065568: .4byte gUnknown_202EE10 +_08065568: .4byte gDungeonMenu _0806556C: .4byte gUnknown_80FE8F4 _08065570: .4byte gUnknown_80F7C50 thumb_func_end sub_806544C @@ -3964,7 +3818,7 @@ CreateFieldGameOptionsMenu: mov r0, r10 strh r1, [r0, 0x8] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -4021,7 +3875,7 @@ CreateFieldGameOptionsMenu: pop {r0} bx r0 .align 2, 0 -_080656AC: .4byte gUnknown_202EE10 +_080656AC: .4byte gDungeonMenu _080656B0: .4byte gGameOptionsTextPtr _080656B4: .4byte gOptionsDungeonTextPtr _080656B8: .4byte gOptionsOthersTextPtr @@ -4118,7 +3972,7 @@ CreateFieldDungeonMenu: strh r0, [r3, 0x8] mov r0, r9 movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -4202,7 +4056,7 @@ CreateFieldDungeonMenu: b _08065872 .align 2, 0 _0806583C: .4byte gUnknown_8106CE8 -_08065840: .4byte gUnknown_202EE10 +_08065840: .4byte gDungeonMenu _08065844: .4byte gOptionsDungeonTextPtr _08065848: .4byte gUnknown_80FE764 _0806584C: .4byte gUnknown_80FE788 @@ -4408,7 +4262,7 @@ CreateFieldOthersMenu: mov r1, r9 strh r1, [r0, 0x8] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -4468,7 +4322,7 @@ _08065A0A: bx r0 .align 2, 0 _08065A78: .4byte gUnknown_8106CF4 -_08065A7C: .4byte gUnknown_202EE10 +_08065A7C: .4byte gDungeonMenu _08065A80: .4byte gOptionsOthersTextPtr _08065A84: .4byte gOptionsWindowColorPtr _08065A88: .4byte gUnknown_202F2E8 @@ -4740,7 +4594,7 @@ _08065C5A: bl PlayDungeonConfirmationSE b _08065C7E .align 2, 0 -_08065C60: .4byte gUnknown_202EE10 +_08065C60: .4byte gDungeonMenu _08065C64: .4byte gRealInputs _08065C68: movs r0, 0x2 @@ -4767,7 +4621,7 @@ _08065C7E: bl sub_8065DBC b _08065C04 .align 2, 0 -_08065C9C: .4byte gUnknown_202EE10 +_08065C9C: .4byte gDungeonMenu _08065CA0: pop {r3} mov r8, r3 @@ -4858,7 +4712,7 @@ sub_8065CAC: mov r1, r9 strh r1, [r0, 0x8] movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows adds r0, r4, 0 movs r1, 0 bl sub_80137B0 @@ -4898,7 +4752,7 @@ _08065D7A: pop {r0} bx r0 .align 2, 0 -_08065DB0: .4byte gUnknown_202EE10 +_08065DB0: .4byte gDungeonMenu _08065DB4: .4byte gUnknown_80FF770 _08065DB8: .4byte gUnknown_80FF774 thumb_func_end sub_8065CAC @@ -5015,7 +4869,7 @@ _08065E0C: strh r0, [r1, 0x8] add r0, sp, 0x4 movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows ldr r1, _08065F30 movs r2, 0 ldrsh r0, [r1, r2] @@ -5079,7 +4933,7 @@ _08065F16: b _08065F64 .align 2, 0 _08065F28: .4byte gGameOptionsRef -_08065F2C: .4byte gUnknown_202EE10 +_08065F2C: .4byte gDungeonMenu _08065F30: .4byte gUnknown_2027370 _08065F34: .4byte gUnknown_80FF774 _08065F38: .4byte gUnknown_80FF7EC @@ -5212,7 +5066,7 @@ _0806601C: strb r1, [r0, 0x1] ldr r0, _08066138 movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows mov r2, r8 strh r2, [r6, 0x1A] strh r2, [r6, 0x18] @@ -5332,7 +5186,7 @@ _0806612A: mov r10, r0 b _08066184 .align 2, 0 -_08066130: .4byte gUnknown_202EE10 +_08066130: .4byte gDungeonMenu _08066134: .4byte gUnknown_203B43C _08066138: .4byte gUnknown_8106D08 _0806613C: .4byte gUnknown_202F2F8 diff --git a/asm/code_808417C.s b/asm/code_808417C.s index 296721a32..369ba2e93 100644 --- a/asm/code_808417C.s +++ b/asm/code_808417C.s @@ -55,7 +55,7 @@ sub_80841EC: strh r0, [r1, 0xA] mov r0, sp movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows ldr r0, _0808426C ldr r0, [r0] ldr r1, _08084270 @@ -98,7 +98,7 @@ _08084290: strb r0, [r4] mov r0, sp movs r1, 0x1 - bl sub_803ECB4 + bl DungeonShowWindows b _08084290 .align 2, 0 _080842B8: .4byte gUnknown_80FE6E8 diff --git a/src/code_803E724.c b/src/code_803E724.c index d7244585e..87a51c1f6 100644 --- a/src/code_803E724.c +++ b/src/code_803E724.c @@ -40,7 +40,7 @@ extern struct DungeonPalFile *gDungeonNameBannerPalette; extern struct DungeonPalFile *gUnknown_202EC94; extern RGB gUnknown_202ECA4[]; extern u8 gUnknown_203B40C; -extern MenuInputStruct gUnknown_202EE10; +extern MenuInputStruct gDungeonMenu; extern SpriteOAM gUnknown_202EDDC; extern const u32 gUnknown_80F6490[]; @@ -345,15 +345,15 @@ void sub_803EAF0(u32 a0, u8 *a1) void sub_803EC94(void) { - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14.x = 0; - sub_801317C(&gUnknown_202EE10.unk28); + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14.x = 0; + sub_801317C(&gDungeonMenu.unk28); } -void sub_803ECB4(Windows *a0, bool8 a1) +void DungeonShowWindows(Windows *a0, bool8 a1) { gUnknown_202EDD0 = 10; sub_8052210(0); diff --git a/src/code_805D8C8_1.c b/src/code_805D8C8_1.c index d64df7197..d2763ef80 100644 --- a/src/code_805D8C8_1.c +++ b/src/code_805D8C8_1.c @@ -172,7 +172,7 @@ void DungeonHandlePlayerInput(void) if (gDungeon->unk1 != 0) { gDungeon->unk1 = 0; if (!ShouldMonsterRunAwayAndShowEffect(GetLeader(), TRUE)) { - SetLeaderActionToNothing(1); + SetLeaderActionToNothing(TRUE); sub_805E804(); ShowDungeonStairsMenu(GetLeader()); ResetRepeatTimers(); @@ -1089,7 +1089,7 @@ extern void sub_8041AE0(Entity *pokemon); extern void sub_807EC28(bool8); extern void PlayDungeonCursorSE(u8 param_1); -extern MenuInputStruct gUnknown_202EE10; +extern MenuInputStruct gDungeonMenu; void sub_805F02C(void) { @@ -1211,31 +1211,31 @@ void ShowMainMenu(bool8 fromBPress, bool8 a1) PrintOnMainMenu(printAll); sub_806A2BC(GetLeader(), 0); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1D); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON || gUnknown_202EE10.unk28.a_button)) { - if (gUnknown_202749A[gUnknown_202EE10.menuIndex + 1] == 7) { + if ((gRealInputs.pressed & A_BUTTON || gDungeonMenu.unk28.a_button)) { + if (gUnknown_202749A[gDungeonMenu.menuIndex + 1] == 7) { PlayDungeonConfirmationSE(); - chosenOption = gUnknown_202EE10.menuIndex; + chosenOption = gDungeonMenu.menuIndex; break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); chosenOption = -1; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1D); printAll = TRUE; } @@ -1566,18 +1566,18 @@ void PrintOnMainMenu(bool8 printAll) { s32 i, x, y, yLoop; - gUnknown_202EE10.menuIndex = 0; - gUnknown_202EE10.unk1A = 5; - gUnknown_202EE10.unk1C = 5; - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 2; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk0 = 0; - gUnknown_202EE10.unk14.x = 0; - sub_801317C(&gUnknown_202EE10.unk28); - sub_80137B0(&gUnknown_202EE10, 0x38); + gDungeonMenu.menuIndex = 0; + gDungeonMenu.unk1A = 5; + gDungeonMenu.unk1C = 5; + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 2; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk0 = 0; + gDungeonMenu.unk14.x = 0; + sub_801317C(&gDungeonMenu.unk28); + sub_80137B0(&gDungeonMenu, 0x38); if (printAll) { sub_803EAF0(7, NULL); } @@ -1602,19 +1602,19 @@ void PrintOnMainMenu(bool8 printAll) gUnknown_202749A[5] = 7; } - y = GetMenuEntryYCoord(&gUnknown_202EE10, 0); + y = GetMenuEntryYCoord(&gDungeonMenu, 0); PrintStringOnWindow(8, y, gFieldMenuMovesPtr, 0, 0); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 1); + y = GetMenuEntryYCoord(&gDungeonMenu, 1); PrintStringOnWindow(8, y, gFieldMenuItemsPtr, 0, 0); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 2); + y = GetMenuEntryYCoord(&gDungeonMenu, 2); PrintStringOnWindow(8, y, gFieldMenuTeamPtr, 0, 0); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 3); + y = GetMenuEntryYCoord(&gDungeonMenu, 3); PrintStringOnWindow(8, y, gFieldMenuOthersPtr, 0, 0); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 4); + y = GetMenuEntryYCoord(&gDungeonMenu, 4); PrintStringOnWindow(8, y, gFieldMenuGroundPtr, 0, 0); sub_80073E0(0); @@ -1685,10 +1685,10 @@ extern bool8 sub_8044F3C(s32 param_1); extern s32 gUnknown_202EE6C; extern const u8 gUnknown_8106B50[]; -extern void sub_803ECB4(Windows *a0, u8 a1); +extern void DungeonShowWindows(Windows *a0, u8 a1); static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Windows *a4, WindowHeader *a5); -void sub_805FC30(Windows *a0, s32 a1) +void CreateDungeonMenuSubWindow(Window *mainWindow, s32 subWindowX) { s32 i; Windows windows = { @@ -1706,37 +1706,37 @@ void sub_805FC30(Windows *a0, s32 a1) } }; - windows.id[0] = a0->id[0]; + windows.id[0] = *mainWindow; windows.id[0].unk0 = 0x80; - gUnknown_202EE10.menuIndex = 0; - gUnknown_202EE10.unk1C = gUnknown_202EE6C; - gUnknown_202EE10.unk1A = gUnknown_202EE6C; - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 0; - gUnknown_202EE10.unk0 = 1; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14 = gUnknown_202EE10.unk8; + gDungeonMenu.menuIndex = 0; + gDungeonMenu.unk1C = gUnknown_202EE6C; + gDungeonMenu.unk1A = gUnknown_202EE6C; + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 0; + gDungeonMenu.unk0 = 1; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14 = gDungeonMenu.unk8; - sub_801317C(&gUnknown_202EE10.unk28); + sub_801317C(&gDungeonMenu.unk28); - windows.id[1].pos.x = a1; - windows.id[1].width = 28 - a1; - windows.id[1].height = windows.id[1].unk10 = sub_80095E4(gUnknown_202EE10.unk1C, 0); - sub_803ECB4(&windows, 0); - sub_80137B0(&gUnknown_202EE10, windows.id[1].height * 8); + windows.id[1].pos.x = subWindowX; + windows.id[1].width = 28 - subWindowX; + windows.id[1].height = windows.id[1].unk10 = sub_80095E4(gDungeonMenu.unk1C, 0); + DungeonShowWindows(&windows, FALSE); + sub_80137B0(&gDungeonMenu, windows.id[1].height * 8); sub_80073B8(1); for (i = 0; i < gUnknown_202EE6C; i++) { - s32 r4, y; + s32 colorId, y; u8 text[20]; - r4 = (sub_8044F3C(i) != 0) ? 7 : 2; - sprintfStatic(text, gUnknown_8106B50, r4, sub_8044EC8(i)); - y = GetMenuEntryYCoord(&gUnknown_202EE10, i); + colorId = (sub_8044F3C(i) != 0) ? 7 : 2; + sprintfStatic(text, gUnknown_8106B50, colorId, sub_8044EC8(i)); + y = GetMenuEntryYCoord(&gDungeonMenu, i); PrintStringOnWindow(8, y, text, 1, 0); } sub_80073E0(1); @@ -1782,9 +1782,9 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) u8 var_2C = 0; u8 var_28 = 0; EntityInfo *a0Info = GetEntInfo(a0); - WindowHeader var_3C; + WindowHeader header; - Windows var_FC = + Windows windows = { .id = { @@ -1795,7 +1795,7 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) .width = 0x12, .height = 0x10, .unk10 = 0x10, - .unk14 = &var_3C, + .unk14 = &header, }, WINDOW_DUMMY, WINDOW_DUMMY, WINDOW_DUMMY }, @@ -1849,9 +1849,9 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) } } } - PrintOnDungeonItemsMenu(r8, a0, var_2C, var_30, &var_FC, &var_3C); + PrintOnDungeonItemsMenu(r8, a0, var_2C, var_30, &windows, &header); - id = sUnknown_202F248[gUnknown_202EE10.unk1E]; + id = sUnknown_202F248[gDungeonMenu.unk1E]; if (id >= MAX_TEAM_MEMBERS) { r4 = gDungeon->teamPokemon[id - MAX_TEAM_MEMBERS]; } @@ -1862,11 +1862,11 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) ChangeDungeonCameraPos(&r4->pos, 0, 1, 1); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x14); if (!var_30) { if (sUnknown_202F258 > 1) { - if ((gRealInputs.pressed & DPAD_LEFT) || gUnknown_202EE10.unk28.dpad_left) { + if ((gRealInputs.pressed & DPAD_LEFT) || gDungeonMenu.unk28.dpad_left) { PlayDungeonCursorSE(0); if (--r8 < 0) { r8 = sUnknown_202F258 - 1; @@ -1874,7 +1874,7 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) sUnknown_202F240 = var_30; break; } - if ((gRealInputs.pressed & DPAD_RIGHT) || gUnknown_202EE10.unk28.dpad_right) { + if ((gRealInputs.pressed & DPAD_RIGHT) || gDungeonMenu.unk28.dpad_right) { PlayDungeonCursorSE(0); if (++r8 == sUnknown_202F258) { r8 = 0; @@ -1885,11 +1885,11 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) } if (gRealInputs.repeated & DPAD_DOWN && sub_8060860(r8)) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP && sub_8060860(r8)) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.pressed & SELECT_BUTTON && sUnknown_202F248[r8] <= 1) { s32 r3; @@ -1921,7 +1921,7 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) } break; } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { PlayDungeonConfirmationSE(); sub_8060890(&a0->pos); r9 = 1; @@ -1933,7 +1933,7 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) r9 = 3; break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); r9 = 2; break; @@ -1945,9 +1945,9 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x14); - if (sUnknown_202F248[gUnknown_202EE10.unk1E] <= 1 && !(gTeamInventoryRef->teamItems[0].flags & ITEM_FLAG_EXISTS)) { + if (sUnknown_202F248[gDungeonMenu.unk1E] <= 1 && !(gTeamInventoryRef->teamItems[0].flags & ITEM_FLAG_EXISTS)) { r9 = 2; } @@ -1967,7 +1967,7 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) break; } else { - sUnknown_202F240 = gUnknown_202EE10.menuIndex; + sUnknown_202F240 = gDungeonMenu.menuIndex; if (var_2C != 0) { a0Info->action.actionParameters[1] = sUnknownActionUnk4; sub_803EAF0(0, NULL); @@ -1976,21 +1976,21 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) } sub_8060900(a0); - sub_8060800(&var_3C, gUnknown_202EE10.unk1E); - sub_805FC30(&var_FC, 0x16); + sub_8060800(&header, gDungeonMenu.unk1E); + CreateDungeonMenuSubWindow(&windows.id[0], 0x16); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x14); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { PlayDungeonConfirmationSE(); sub_8060CE8(&a0Info->action); r9 = 0; @@ -1998,13 +1998,13 @@ bool8 ShowDungeonItemsMenu(Entity * a0, struct UnkMenuBitsStruct *a1) } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); r9 = 1; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x14); gDungeon->unk181e8.unk18212 = 0; if (r9 != 1 || var_30 != 0) { @@ -2058,14 +2058,14 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind var_94 = gUnknown_8106B6C; a1Info = GetEntInfo(a1); r10 = sub_8060800(a5, a0); - gUnknown_202EE10.menuIndex = sUnknown_202F240; - gUnknown_202EE10.unk1A = 0; - gUnknown_202EE10.unk1E = a0; - gUnknown_202EE10.unk20 = sUnknown_202F258; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.unk0 = 0; - gUnknown_202EE10.unk14.x = 0; - sub_801317C(&gUnknown_202EE10.unk28); + gDungeonMenu.menuIndex = sUnknown_202F240; + gDungeonMenu.unk1A = 0; + gDungeonMenu.unk1E = a0; + gDungeonMenu.unk20 = sUnknown_202F258; + gDungeonMenu.unk4 = 0; + gDungeonMenu.unk0 = 0; + gDungeonMenu.unk14.x = 0; + sub_801317C(&gDungeonMenu.unk28); gDungeon->unk181e8.unk18212 = 0; switch (sUnknown_202F248[a0]) { case 0: @@ -2073,29 +2073,29 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind windows->id[0].unk10 = 0x10; windows->id[0].height = 0x10; a5->f2 = 0xC; - gUnknown_202EE10.firstEntryY = 0x10; - gUnknown_202EE10.unk1C = 0xA; + gDungeonMenu.firstEntryY = 0x10; + gDungeonMenu.unk1C = 0xA; gDungeon->unk181e8.unk18212 = 1; break; case 2: windows->id[0].unk10 = 4; windows->id[0].height = 4; a5->f2 = 6; - gUnknown_202EE10.firstEntryY = 0x12; - gUnknown_202EE10.unk1C = 1; + gDungeonMenu.firstEntryY = 0x12; + gDungeonMenu.unk1C = 1; break; case 3: default: windows->id[0].unk10 = 4; windows->id[0].height = 4; a5->f2 = 0xC; - gUnknown_202EE10.firstEntryY = 0x12; - gUnknown_202EE10.unk1C = 1; + gDungeonMenu.firstEntryY = 0x12; + gDungeonMenu.unk1C = 1; break; } if (a2) { - gUnknown_202EE10.unkC += 0x40; + gDungeonMenu.unkC += 0x40; windows->id[0].pos.x = 0xA; windows->id[1] = var_94; } @@ -2104,11 +2104,11 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind windows->id[1] = windows->id[3]; } - sub_803ECB4(windows, 1); + DungeonShowWindows(windows, 1); txtStrPtr = &gUnknown_2027370[0]; - gUnknown_202EE10.unkC = (txtStrPtr->unk0 + 0x10) * 8; - gUnknown_202EE10.unkE = ((txtStrPtr->unk2 + 1) * 8) - 2; - sub_80137B0(&gUnknown_202EE10, 0x70); + gDungeonMenu.unkC = (txtStrPtr->unk0 + 0x10) * 8; + gDungeonMenu.unkE = ((txtStrPtr->unk2 + 1) * 8) - 2; + sub_80137B0(&gDungeonMenu, 0x70); sub_80073B8(0); x = ((a0 - r10) * 8) + 0xC; switch (sUnknown_202F248[a0]) @@ -2117,9 +2117,9 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind PrintFormattedStringOnWindow(x, 0, gTeamToolboxAPtr, 0, 0); for (i = 0; i < 10; i++) { if (ItemExists(&gTeamInventoryRef->teamItems[i])) { - gUnknown_202EE10.unk1A++; + gDungeonMenu.unk1A++; sub_8090E14(txtBuff, &gTeamInventoryRef->teamItems[i], &gUnknown_8106B60); - y = GetMenuEntryYCoord(&gUnknown_202EE10, i); + y = GetMenuEntryYCoord(&gDungeonMenu, i); PrintFormattedStringOnWindow(8, y, txtBuff, 0, 0); } else { @@ -2131,9 +2131,9 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind PrintFormattedStringOnWindow(x, 0, gTeamToolboxBPtr, 0, 0); for (i = 0; i < 10; i++) { if (ItemExists(&gTeamInventoryRef->teamItems[i + 10])) { - gUnknown_202EE10.unk1A++; + gDungeonMenu.unk1A++; sub_8090E14(txtBuff, &gTeamInventoryRef->teamItems[i + 10], &gUnknown_8106B60); - y = GetMenuEntryYCoord(&gUnknown_202EE10, i); + y = GetMenuEntryYCoord(&gDungeonMenu, i); PrintFormattedStringOnWindow(8, y, txtBuff, 0, 0); } else { @@ -2146,13 +2146,13 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind Item *item = GetItemData(tile->object); PrintFormattedStringOnWindow(x, 0, gFieldItemMenuGroundTextPtr, 0, 0); if (item->flags & ITEM_FLAG_EXISTS) { - gUnknown_202EE10.unk1A++; + gDungeonMenu.unk1A++; sub_8090E14(txtBuff, item, &gUnknown_8106B60); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 0); + y = GetMenuEntryYCoord(&gDungeonMenu, 0); PrintFormattedStringOnWindow(8, y, txtBuff, 0, 0); } if (a3) { - gUnknown_202EE10.unk8.x = gUnknown_202EE10.unk8.y = 0; + gDungeonMenu.unk8.x = gDungeonMenu.unk8.y = 0; } } break; @@ -2161,9 +2161,9 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind SetMessageArgument_2(gFormatBuffer_Monsters[0], a1Info, 0); PrintFormattedStringOnWindow(x, 0, gUnknown_80FE940, 0, 0); if (item->flags & ITEM_FLAG_EXISTS) { - gUnknown_202EE10.unk1A++; + gDungeonMenu.unk1A++; sub_8090E14(txtBuff, item, &gUnknown_8106B60); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 0); + y = GetMenuEntryYCoord(&gDungeonMenu, 0); PrintFormattedStringOnWindow(8, y, txtBuff, 0, 0); } } @@ -2176,9 +2176,9 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind SetMessageArgument_2(gFormatBuffer_Monsters[0], monInfo, 0); PrintFormattedStringOnWindow(x, 0, gUnknown_80FE940, 0, 0); if (item->flags & ITEM_FLAG_EXISTS) { - gUnknown_202EE10.unk1A++; + gDungeonMenu.unk1A++; sub_8090E14(txtBuff, item, &gUnknown_8106B60); - y = GetMenuEntryYCoord(&gUnknown_202EE10, 0); + y = GetMenuEntryYCoord(&gDungeonMenu, 0); PrintFormattedStringOnWindow(8, y, txtBuff, 0, 0); } } @@ -2186,8 +2186,8 @@ static void PrintOnDungeonItemsMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, Wind break; } - if (gUnknown_202EE10.menuIndex >= gUnknown_202EE10.unk1A) { - gUnknown_202EE10.menuIndex = 0; + if (gDungeonMenu.menuIndex >= gDungeonMenu.unk1A) { + gDungeonMenu.menuIndex = 0; } sub_80073E0(0); if (a2) { @@ -2229,7 +2229,7 @@ s32 sub_8060800(WindowHeader *a0, s32 a1) bool8 sub_8060860(s32 a0) { - if (gUnknown_202EE10.unk1A <= 1 || sUnknown_202F248[a0] > 1) + if (gDungeonMenu.unk1A <= 1 || sUnknown_202F248[a0] > 1) return FALSE; else return TRUE; @@ -2237,14 +2237,14 @@ bool8 sub_8060860(s32 a0) void sub_8060890(DungeonPos *a0) { - s32 var = sUnknown_202F248[gUnknown_202EE10.unk1E]; + s32 var = sUnknown_202F248[gDungeonMenu.unk1E]; switch (var) { case 0: - sUnknownActionUnk4.actionUseIndex = gUnknown_202EE10.menuIndex + 1; + sUnknownActionUnk4.actionUseIndex = gDungeonMenu.menuIndex + 1; break; case 1: - sUnknownActionUnk4.actionUseIndex = gUnknown_202EE10.menuIndex + 11; + sUnknownActionUnk4.actionUseIndex = gDungeonMenu.menuIndex + 11; break; case 2: sUnknownActionUnk4.actionUseIndex = 128; @@ -2453,7 +2453,7 @@ void sub_8060900(Entity *a0) void sub_8060CE8(ActionContainer *a0) { - SetMonsterActionFields(a0, gUnknown_202EE44[gUnknown_202EE10.menuIndex].unk0); + SetMonsterActionFields(a0, gUnknown_202EE44[gDungeonMenu.menuIndex].unk0); a0->actionParameters[0] = sUnknownActionUnk4; a0->actionParameters[1].actionUseIndex = 0; a0->actionParameters[1].itemPos.x = 0; @@ -2463,7 +2463,7 @@ void sub_8060CE8(ActionContainer *a0) void sub_8060D24(UNUSED ActionContainer *a0) { Item *item = sub_8044D90(GetLeader(), 0, 0xB); - sub_803ECB4(NULL, 0); + DungeonShowWindows(NULL, 0); sub_801B3C0(item); do { @@ -2563,62 +2563,62 @@ bool8 ShowDungeonTeamMenu(Entity *a0) PrintOnDungeonTeamMenu(&sp, &windows, TRUE); r10 = FALSE; while (1) { - s32 id = sp.unk4[gUnknown_202EE10.menuIndex]; + s32 id = sp.unk4[gDungeonMenu.menuIndex]; if (id >= 0) { Entity *teamMon = gDungeon->teamPokemon[id]; sub_806A2BC(teamMon, 0); ChangeDungeonCameraPos(&teamMon->pos, 0, 1, 1); } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.pressed & START_BUTTON) { - if (sp.unk14[gUnknown_202EE10.menuIndex] != 0) { + if (sp.unk14[gDungeonMenu.menuIndex] != 0) { PlayDungeonStartButtonSE(); r10 = TRUE; break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { - if (sp.unk14[gUnknown_202EE10.menuIndex] != 0) { + if (sp.unk14[gDungeonMenu.menuIndex] != 0) { PlayDungeonConfirmationSE(); break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); ret = TRUE; break; } } - id = sp.unk4[gUnknown_202EE10.menuIndex]; + id = sp.unk4[gDungeonMenu.menuIndex]; if (id >= 0) { Entity *teamMon = gDungeon->teamPokemon[id]; sub_806A2BC(teamMon, 0); ChangeDungeonCameraPos(&teamMon->pos, 0, 1, 1); } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); sub_804AA60(); if (ret) { break; } - sp.unk0 = gUnknown_202EE10.menuIndex; - sTeamMenuChosenId = gUnknown_202EE10.menuIndex; + sp.unk0 = gDungeonMenu.menuIndex; + sTeamMenuChosenId = gDungeonMenu.menuIndex; sub_806145C(&sp); if (r10) { EntityInfo *info = GetEntInfo(a0); @@ -2628,20 +2628,20 @@ bool8 ShowDungeonTeamMenu(Entity *a0) break; } - sub_805FC30(&windows, 0x12); + CreateDungeonMenuSubWindow(&windows.id[0], 0x12); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { sub_80615B4(&GetEntInfo(a0)->action, &sp); PlayDungeonConfirmationSE(); r4 = FALSE; @@ -2649,13 +2649,13 @@ bool8 ShowDungeonTeamMenu(Entity *a0) } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); r4 = TRUE; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (r4 != TRUE) { ret = FALSE; @@ -2727,18 +2727,18 @@ void PrintOnDungeonTeamMenu(struct UnkFieldTeamMenuStruct *a0, Windows *windows, gUnknown_202F270.f0 = 1; gUnknown_202F270.f1 = 0; gUnknown_202F270.f3 = 0; - gUnknown_202EE10.menuIndex = sTeamMenuChosenId; - gUnknown_202EE10.unk1A = count; - gUnknown_202EE10.unk1C = count; - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = (r10 != FALSE) * 16; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); + gDungeonMenu.menuIndex = sTeamMenuChosenId; + gDungeonMenu.unk1A = count; + gDungeonMenu.unk1C = count; + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = (r10 != FALSE) * 16; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk0 = 0; + sub_801317C(&gDungeonMenu.unk28); r0 = sub_80095E4(count, 0); if (r10) { r0 += 2; @@ -2750,8 +2750,8 @@ void PrintOnDungeonTeamMenu(struct UnkFieldTeamMenuStruct *a0, Windows *windows, windows->id[1] = windows->id[3]; } - sub_803ECB4(windows, 1); - sub_80137B0(&gUnknown_202EE10, 0); + DungeonShowWindows(windows, 1); + sub_80137B0(&gDungeonMenu, 0); sub_80073B8(0); if (r10) { PrintFormattedStringOnWindow(0xC, 0, gTeamFormat, 0, 0); @@ -2800,7 +2800,7 @@ void PrintOnDungeonTeamMenu(struct UnkFieldTeamMenuStruct *a0, Windows *windows, gFormatArgs[0] = monInfo->HP; gFormatArgs[1] = monInfo->maxHPStat; - y = GetMenuEntryYCoord(&gUnknown_202EE10, i); + y = GetMenuEntryYCoord(&gDungeonMenu, i); if (monInfo->isTeamLeader) { PrintFormattedStringOnWindow(9, y, gUnknown_8106BD4, 0, 0); } @@ -2822,7 +2822,7 @@ void sub_806145C(struct UnkFieldTeamMenuStruct *a0) EntityInfo *monInfo; gUnknown_202EE6C = 0; - teamMon = gDungeon->teamPokemon[a0->unk4[gUnknown_202EE10.menuIndex]]; + teamMon = gDungeon->teamPokemon[a0->unk4[gDungeonMenu.menuIndex]]; monInfo = GetEntInfo(teamMon); sub_8044F5C(0x1B, 0); sub_8044F5C(0x19, 0); @@ -2872,7 +2872,7 @@ void sub_806145C(struct UnkFieldTeamMenuStruct *a0) void sub_80615B4(ActionContainer *a0, struct UnkFieldTeamMenuStruct *a1) { - SetMonsterActionFields(a0, gUnknown_202EE44[gUnknown_202EE10.menuIndex].unk0); + SetMonsterActionFields(a0, gUnknown_202EE44[gDungeonMenu.menuIndex].unk0); a0->actionParameters[0].actionUseIndex = a1->unk4[a1->unk0]; } @@ -2919,29 +2919,29 @@ void ShowTacticsMenu(ActionContainer *a0) gUnknown_202F270.f1 = 0; gUnknown_202F270.f2 = 10; gUnknown_202F270.f3 = 0; - sub_803ECB4(&windows, 1); + DungeonShowWindows(&windows, 1); PrintMonTactics(scrollFirstId, tacticIds, monInfo, 0); for (i = 0; i < 8; i++) { if (tacticIds[i] == TACTIC_UNUSED) break; } - gUnknown_202EE10.unk1A = i; - gUnknown_202EE10.unk1C = 8; - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 16; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); - sub_80137B0(&gUnknown_202EE10, 0); - gUnknown_202EE10.menuIndex = menuIndex; + gDungeonMenu.unk1A = i; + gDungeonMenu.unk1C = 8; + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 16; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk0 = 0; + sub_801317C(&gDungeonMenu.unk28); + sub_80137B0(&gDungeonMenu, 0); + gDungeonMenu.menuIndex = menuIndex; while (1) { s32 i; - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); if (tacticIds[8] != TACTIC_UNUSED) { sub_80623B0(); } @@ -2951,7 +2951,7 @@ void ShowTacticsMenu(ActionContainer *a0) DungeonRunFrameActions(0x3D); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 7) { + if (gDungeonMenu.menuIndex == 7) { if (tacticIds[8] != TACTIC_UNUSED) { for (i = 0; i < 6; i++) { gIwramTextFunc1(0); @@ -2962,11 +2962,11 @@ void ShowTacticsMenu(ActionContainer *a0) menuIndex = 7; break; } - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorDownWrapAround(&gDungeonMenu, 0); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { if (scrollFirstId != 0) { for (i = 0; i < 6; i++) { gIwramTextFunc2(0); @@ -2977,21 +2977,21 @@ void ShowTacticsMenu(ActionContainer *a0) menuIndex = 0; break; } - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorUpWrapAround(&gDungeonMenu, 0); } if (gRealInputs.pressed & START_BUTTON) { - u32 tacticId = tacticIds[gUnknown_202EE10.menuIndex]; - menuIndex = gUnknown_202EE10.menuIndex; + u32 tacticId = tacticIds[gDungeonMenu.menuIndex]; + menuIndex = gDungeonMenu.menuIndex; PlayDungeonStartButtonSE(); sub_8062748(tacticId); loopBreak = FALSE; break; } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { bool32 changed; - u32 tacticId = tacticIds[gUnknown_202EE10.menuIndex]; - menuIndex = gUnknown_202EE10.menuIndex; + u32 tacticId = tacticIds[gDungeonMenu.menuIndex]; + menuIndex = gDungeonMenu.menuIndex; sub_8062D68(); PlayDungeonConfirmationSE(); gUnknown_202EE6C = 0; @@ -3000,27 +3000,27 @@ void ShowTacticsMenu(ActionContainer *a0) if (CheckVariousStatuses2(teamMon, TRUE)) { sub_8044FF0(0x2F); } - sub_805FC30(&windows, 0x16); + CreateDungeonMenuSubWindow(&windows.id[0], 0x16); while (1) { changed = FALSE; - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x3D); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { changed = TRUE; break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); changed = FALSE; break; @@ -3028,7 +3028,7 @@ void ShowTacticsMenu(ActionContainer *a0) } if (changed) { PlayDungeonConfirmationSE(); - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { PlaySoundEffect(0x133); monInfo->tactic = tacticId; monInfo->aiTarget.aiObjective = 6; @@ -3047,7 +3047,7 @@ void ShowTacticsMenu(ActionContainer *a0) loopBreak = FALSE; break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); loopBreak = TRUE; break; @@ -3055,7 +3055,7 @@ void ShowTacticsMenu(ActionContainer *a0) } if (addCursor) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); } DungeonRunFrameActions(0x3D); if (loopBreak) @@ -3176,7 +3176,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) unkMonStruct.unk40 = 0; unkMonStruct.unk56 = 0; - gUnknown_202EE10.menuIndex = 0; + gDungeonMenu.menuIndex = 0; while (1) { bool8 loopBreak = FALSE; @@ -3189,21 +3189,21 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) gUnknown_202F270.f1 = var_3C; gUnknown_202F270.f2 = 10; gUnknown_202F270.f3 = 0; - sub_803ECB4(&windows, TRUE); + DungeonShowWindows(&windows, TRUE); sub_8069844(&unkMonStruct, entity); CreatePokemonInfoTabScreen(spArr[var_3C], var_3C, &unkMonStruct, &unkInfoTabStruct, 0); - gUnknown_202EE10.unk1E = var_3C; - gUnknown_202EE10.unk20 = var_38; - gUnknown_202EE10.unkC = (unkTxtStr1Ptr->unk0 + 15) * 8; - gUnknown_202EE10.unkE = ((unkTxtStr1Ptr->unk2 + 1) * 8) - 2; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 16; - gUnknown_202EE10.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); - gUnknown_202EE10.menuIndex = 0; - gUnknown_202EE10.unk1A = 0; - gUnknown_202EE10.unk1C = 0; + gDungeonMenu.unk1E = var_3C; + gDungeonMenu.unk20 = var_38; + gDungeonMenu.unkC = (unkTxtStr1Ptr->unk0 + 15) * 8; + gDungeonMenu.unkE = ((unkTxtStr1Ptr->unk2 + 1) * 8) - 2; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 16; + gDungeonMenu.unk0 = 0; + sub_801317C(&gDungeonMenu.unk28); + gDungeonMenu.menuIndex = 0; + gDungeonMenu.unk1A = 0; + gDungeonMenu.unk1C = 0; if (spArr[var_3C] == 1) { s32 i; @@ -3216,11 +3216,11 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) if (i != 0) { var_2C = 1; - gUnknown_202EE10.unk1A = i; - gUnknown_202EE10.unk1C = 8; - sub_80137B0(&gUnknown_202EE10, 0); + gDungeonMenu.unk1A = i; + gDungeonMenu.unk1C = 8; + sub_80137B0(&gDungeonMenu, 0); } - gUnknown_202EE10.menuIndex = r8; + gDungeonMenu.menuIndex = r8; } else if (spArr[var_3C] == 4) { s32 i; @@ -3233,18 +3233,18 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) if (i != 0) { var_30 = 1; - gUnknown_202EE10.unk1A = i; - gUnknown_202EE10.unk1C = 8; - sub_80137B0(&gUnknown_202EE10, 0); + gDungeonMenu.unk1A = i; + gDungeonMenu.unk1C = 8; + sub_80137B0(&gDungeonMenu, 0); } - gUnknown_202EE10.menuIndex = r8; + gDungeonMenu.menuIndex = r8; } while (1) { s32 unkVar; bool8 r5, r6; - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); unkVar = sub_8014140(0, gUnknown_8106B8C); r5 = FALSE; r6 = FALSE; @@ -3271,7 +3271,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) DungeonRunFrameActions(0x1C); if (gUnknown_202F270.f0 > 1 && !sub_80048C8()) { - if ((gRealInputs.pressed & DPAD_RIGHT) || gUnknown_202EE10.unk28.dpad_right) { + if ((gRealInputs.pressed & DPAD_RIGHT) || gDungeonMenu.unk28.dpad_right) { PlayDungeonCursorSE(0); var_3C++; if (spArr[var_3C] == 0) { @@ -3279,7 +3279,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } break; } - if ((gRealInputs.pressed & DPAD_LEFT) || gUnknown_202EE10.unk28.dpad_left) { + if ((gRealInputs.pressed & DPAD_LEFT) || gDungeonMenu.unk28.dpad_left) { PlayDungeonCursorSE(0); var_3C--; if (var_3C == -1) { @@ -3308,7 +3308,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(0); - if (gUnknown_202EE10.menuIndex == 7) { + if (gDungeonMenu.menuIndex == 7) { if (unkInfoTabStruct.unkC[8] != 0) { s32 i; for (i = 0; i < 6; i++) { @@ -3321,7 +3321,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) break; } else { - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorDownWrapAround(&gDungeonMenu, 0); } } @@ -3339,7 +3339,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { if (unkMonStruct.unk56 != 0) { s32 i; for (i = 0; i < 6; i++) { @@ -3352,7 +3352,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) break; } else { - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorUpWrapAround(&gDungeonMenu, 0); } } } @@ -3371,7 +3371,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 7) { + if (gDungeonMenu.menuIndex == 7) { if (unkInfoTabStruct.unk0[8] != 0) { s32 i; for (i = 0; i < 6; i++) { @@ -3384,7 +3384,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) break; } else { - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorDownWrapAround(&gDungeonMenu, 0); } } @@ -3402,7 +3402,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { if (unkMonStruct.unk40 != 0) { s32 i; for (i = 0; i < 6; i++) { @@ -3415,7 +3415,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) break; } else { - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorUpWrapAround(&gDungeonMenu, 0); } } } @@ -3425,9 +3425,9 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) if (gRealInputs.pressed & START_BUTTON) { if (var_2C) { - s32 var = unkInfoTabStruct.unkC[gUnknown_202EE10.menuIndex]; + s32 var = unkInfoTabStruct.unkC[gDungeonMenu.menuIndex]; - r8 = gUnknown_202EE10.menuIndex; + r8 = gDungeonMenu.menuIndex; PlayDungeonStartButtonSE(); sub_806285C(var); var_28 = 0; @@ -3435,9 +3435,9 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) break; } else if (var_30) { - s32 var = unkInfoTabStruct.unk0[gUnknown_202EE10.menuIndex]; + s32 var = unkInfoTabStruct.unk0[gDungeonMenu.menuIndex]; - r8 = gUnknown_202EE10.menuIndex; + r8 = gDungeonMenu.menuIndex; PlayDungeonStartButtonSE(); sub_806262C(var); var_28 = 0; @@ -3446,36 +3446,36 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { if (var_2C) { - s32 var = unkInfoTabStruct.unkC[gUnknown_202EE10.menuIndex]; + s32 var = unkInfoTabStruct.unkC[gDungeonMenu.menuIndex]; - r8 = gUnknown_202EE10.menuIndex; + r8 = gDungeonMenu.menuIndex; sub_8062D68(); gUnknown_202EE6C = 0; PlayDungeonConfirmationSE(); sub_8044F5C(0xC, 0); - sub_805FC30(&windows, 0x16); + CreateDungeonMenuSubWindow(&windows.id[0], 0x16); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1C); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { PlayDungeonConfirmationSE(); sub_806285C(var); var_28 = 0; loopBreak = FALSE; break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); loopBreak = FALSE; break; @@ -3484,9 +3484,9 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } else if (var_30) { bool8 aPress = FALSE; - s32 var = unkInfoTabStruct.unk0[gUnknown_202EE10.menuIndex]; + s32 var = unkInfoTabStruct.unk0[gDungeonMenu.menuIndex]; - r8 = gUnknown_202EE10.menuIndex; + r8 = gDungeonMenu.menuIndex; sub_8062D68(); gUnknown_202EE6C = var_2C; PlayDungeonConfirmationSE(); @@ -3495,28 +3495,28 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) if (CheckVariousStatuses2(entity, TRUE)) { sub_8044FF0(0x28); } - sub_805FC30(&windows, 0x16); + CreateDungeonMenuSubWindow(&windows.id[0], 0x16); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1C); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { PlayDungeonConfirmationSE(); aPress = TRUE; break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); loopBreak = FALSE; aPress = FALSE; @@ -3525,7 +3525,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } if (aPress) { - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { PlaySoundEffect(0x133); ToggleIQSkill(&entityInfo->IQSkillMenuFlags, var); } @@ -3543,7 +3543,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) } break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); loopBreak = TRUE; break; @@ -3552,7 +3552,7 @@ void sub_8061A38(ActionContainer *a0, bool8 a1) if (var_28) { if (var_30 != 0 || var_2C != 0) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); } DungeonRunFrameActions(0x1C); } @@ -3705,7 +3705,7 @@ void sub_806262C(u8 iqSkillId) header.f1 = 0; header.f2 = 16; header.f3 = 0; - sub_803ECB4(&windows, TRUE); + DungeonShowWindows(&windows, TRUE); sub_80073B8(0); strcpy(gFormatBuffer_Items[0], GetIQSkillName(iqSkillId)); @@ -3758,7 +3758,7 @@ void sub_8062748(u8 tacticId) header.f1 = 0; header.f2 = 16; header.f3 = 0; - sub_803ECB4(&windows, TRUE); + DungeonShowWindows(&windows, TRUE); sub_80073B8(0); CopyTacticsNameToBuffer(gFormatBuffer_Items[0], tacticId); @@ -3820,7 +3820,7 @@ void sub_806285C(s32 a0) header.f1 = 0; header.f2 = 16; header.f3 = 0; - sub_803ECB4(&windows, TRUE); + DungeonShowWindows(&windows, TRUE); sub_80073B8(0); str = sub_808E4FC(a0); strcpy(gFormatBuffer_Items[0], str); @@ -3873,7 +3873,7 @@ Entity *DrawFieldGiveItemMenu(s32 *teamId, s32 a1) prevId = -985; // Magic number or does it actually mean anything? while (1) { - currId = unkStruct.unk4[gUnknown_202EE10.menuIndex]; + currId = unkStruct.unk4[gDungeonMenu.menuIndex]; if (currId >= 0) { Entity *entity = gDungeon->teamPokemon[currId]; @@ -3891,32 +3891,32 @@ Entity *DrawFieldGiveItemMenu(s32 *teamId, s32 a1) ChangeDungeonCameraPos(&entity->pos, 0, 1, 1); } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (unkStruct.unk14[gUnknown_202EE10.menuIndex] != 0) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (unkStruct.unk14[gDungeonMenu.menuIndex] != 0) { PlayDungeonConfirmationSE(); break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); bPress = TRUE; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); sub_804AA60(); sub_806A2BC(GetLeader(), 0); @@ -3925,7 +3925,7 @@ Entity *DrawFieldGiveItemMenu(s32 *teamId, s32 a1) if (bPress) { return NULL; } - currId = unkStruct.unk4[gUnknown_202EE10.menuIndex]; + currId = unkStruct.unk4[gDungeonMenu.menuIndex]; if (teamId != NULL) { *teamId = currId; } @@ -4017,12 +4017,12 @@ void sub_8062CA8(Entity *entity) void sub_8062D68(void) { - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14.x = 0; - sub_801317C(&gUnknown_202EE10.unk28); + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14.x = 0; + sub_801317C(&gDungeonMenu.unk28); } u32 sub_8062D88(void) @@ -4180,11 +4180,11 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) r10 = FALSE; sub_80633E4(entity, entInfo, a1, &windows, &header, unk, a3, a4); while (1) { - AddMenuCursorSprite_(&gUnknown_202EE10, unk); + AddMenuCursorSprite_(&gDungeonMenu, unk); DungeonRunFrameActions(0x1E); if (gRealInputs.repeated & DPAD_DOWN) { bool8 rHeld = (gRealInputs.held & R_BUTTON) != 0; - s32 id = gUnknown_202EE10.menuIndex; + s32 id = gDungeonMenu.menuIndex; if (rHeld) { gUnknown_202F2D8 = unk_SetMoveToLastInLinkedSequence4(entInfo->moves.moves, id); @@ -4198,15 +4198,15 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) break; } else { - sub_8013780(&gUnknown_202EE10, unk_FindMoveEnabledForAIAfter4(entInfo->moves.moves, id)); - if (id != gUnknown_202EE10.menuIndex) { + sub_8013780(&gDungeonMenu, unk_FindMoveEnabledForAIAfter4(entInfo->moves.moves, id)); + if (id != gDungeonMenu.menuIndex) { PlayDungeonCursorSE(0); } } } if (gRealInputs.repeated & DPAD_UP) { bool8 rHeld = (gRealInputs.held & R_BUTTON) != 0; - s32 id = gUnknown_202EE10.menuIndex; + s32 id = gDungeonMenu.menuIndex; if (rHeld) { gUnknown_202F2D8 = unk_SetMoveToFirstInLinkedSequence4(entInfo->moves.moves, id); @@ -4220,23 +4220,23 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) break; } else { - sub_8013780(&gUnknown_202EE10, sub_8092DB8(entInfo->moves.moves, id)); - if (id != gUnknown_202EE10.menuIndex) { + sub_8013780(&gDungeonMenu, sub_8092DB8(entInfo->moves.moves, id)); + if (id != gDungeonMenu.menuIndex) { PlayDungeonCursorSE(0); } } } - if ((gRealInputs.repeated & DPAD_RIGHT) || gUnknown_202EE10.unk28.dpad_right) { + if ((gRealInputs.repeated & DPAD_RIGHT) || gDungeonMenu.unk28.dpad_right) { SetMonsterActionFields(&leaderInfo->action, 6); break; } - if ((gRealInputs.repeated & DPAD_LEFT) || gUnknown_202EE10.unk28.dpad_left) { + if ((gRealInputs.repeated & DPAD_LEFT) || gDungeonMenu.unk28.dpad_left) { SetMonsterActionFields(&leaderInfo->action, 7); break; } - if ((gRealInputs.pressed & sub_8062D88()) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & sub_8062D88()) || gDungeonMenu.unk28.a_button) { if (a1) { bool8 rHeld = (gRealInputs.held & R_BUTTON) != 0; if (rHeld) { @@ -4261,7 +4261,7 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) { u32 bPressed = B_BUTTON; bPressed &= gRealInputs.pressed; - if ((bPressed) || gUnknown_202EE10.unk28.b_button) { + if ((bPressed) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); ret = TRUE; break; @@ -4269,7 +4269,7 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1E); if (leaderInfo->action.action == 6 || leaderInfo->action.action == 7) { unkBool = FALSE; @@ -4281,7 +4281,7 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) if (ret) break; - gUnknown_202F2D8 = gUnknown_202EE10.menuIndex; + gUnknown_202F2D8 = gDungeonMenu.menuIndex; if (r5 == 1) { SetMonsterActionFields(&leaderInfo->action, 0x1D); leaderInfo->action.actionParameters[0].actionUseIndex = entity->unk24; @@ -4332,21 +4332,21 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) } sub_8009524(2); - sub_805FC30(&windows, 0x16); + CreateDungeonMenuSubWindow(&windows.id[0], 0x16); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorDownWrapAround(&gDungeonMenu, TRUE); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, TRUE); + MoveMenuCursorUpWrapAround(&gDungeonMenu, TRUE); } - if ((gRealInputs.pressed & sub_8062D88()) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & sub_8062D88()) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { sub_80637A4(&leaderInfo->action, GetTeamMemberEntityIndex(entity)); if (leaderInfo->action.action != 20 && leaderInfo->action.action != 21) { PlayDungeonConfirmationSE(); @@ -4356,14 +4356,14 @@ bool8 ShowDungeonMovesMenu(Entity * entity, u8 a1, u8 a2, s32 a3, s32 a4) } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); bPress = TRUE; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x1B); if (bPress != TRUE) { ret = 0; @@ -4400,34 +4400,34 @@ void sub_80633E4(Entity *entity, EntityInfo *entInfo, u8 a2, Windows *windows, W } } - gUnknown_202EE10.menuIndex = gUnknown_202F2D8; - gUnknown_202EE10.unk1A = movesCount; - gUnknown_202EE10.unk1C = 4; - gUnknown_202EE10.unk1E = arg6; - gUnknown_202EE10.unk20 = arg7; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 16; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); + gDungeonMenu.menuIndex = gUnknown_202F2D8; + gDungeonMenu.unk1A = movesCount; + gDungeonMenu.unk1C = 4; + gDungeonMenu.unk1E = arg6; + gDungeonMenu.unk20 = arg7; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 16; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk0 = 0; + sub_801317C(&gDungeonMenu.unk28); windows->id[0].height = windows->id[0].unk10 = sub_80095E4(4, 0xC) + 2; header->f2 = 13; windows->id[0].pos.x = 2; windows->id[1] = windows->id[3]; windows->id[2] = windowNew; - sub_803ECB4(windows, TRUE); - sub_80137B0(&gUnknown_202EE10, 0); - gUnknown_202EE10.unkC = (gUnknown_2027370[0].unk0 + 16) * 8; - gUnknown_202EE10.unkE = ((gUnknown_2027370[0].unk2 + 1) * 8) - 2; + DungeonShowWindows(windows, TRUE); + sub_80137B0(&gDungeonMenu, 0); + gDungeonMenu.unkC = (gUnknown_2027370[0].unk0 + 16) * 8; + gDungeonMenu.unkE = ((gUnknown_2027370[0].unk2 + 1) * 8) - 2; SetMessageArgument_2(gFormatBuffer_Monsters[0], entInfo, 0); for (i = 0; i < MAX_MON_MOVES; i++) { Move *move = &entInfo->moves.moves[i]; arg5[i] = 0; if (!MoveFlagExists(move)) { - if (gUnknown_202EE10.menuIndex == i) { - gUnknown_202EE10.menuIndex = 0; + if (gDungeonMenu.menuIndex == i) { + gDungeonMenu.menuIndex = 0; } } else if (MoveFlagLinkChain(move)) { @@ -4466,7 +4466,7 @@ void sub_8063578(s32 count, Entity *entity, Moves *moves, s32 windowId, u8 a4, s movStruct.unk8 = (CanMonsterUseMove(entity, move, TRUE) == FALSE); BufferMoveName(gFormatBuffer_Items[0], move, &movStruct); - y = GetMenuEntryYCoord(&gUnknown_202EE10, i); + y = GetMenuEntryYCoord(&gDungeonMenu, i); if (MoveFlagLinkChain(move)) { x = 13; } @@ -4483,5 +4483,69 @@ void sub_8063578(s32 count, Entity *entity, Moves *moves, s32 windowId, u8 a4, s sub_80073E0(windowId); } +bool8 sub_8063C88(EntityInfo *entInfo, s32 a1); +bool8 sub_8063DD4(EntityInfo *entInfo, s32 a1); + +void sub_8063698(Entity *entity, u8 a1, u8 a2) +{ + EntityInfo *entInfo = GetEntInfo(entity); + Move *move = &entInfo->moves.moves[gUnknown_202F2D8]; + + gUnknown_202EE6C = 0; + if (entInfo->isTeamLeader) { + if (a2) { + sub_8044F5C(0x14, 0); + } + if (MoveFlagExists(move)) { + if (MoveFlagSet(move)) { + sub_8044F5C(0x33, 0); + } + else { + sub_8044F5C(0x1E, 0); + } + } + } + else { + sub_8044F5C(0x1F, 0); + } + + if (a1) { + sub_8044F5C(0x20, 0); + sub_8044F5C(0x21, 0); + } + sub_8044F5C(0x1D, 0); + if (!a1) { + sub_8044FF0(0x20); + } + else { + if (!sub_8063C88(entInfo, gUnknown_202F2D8)) { + sub_8044FF0(0x20); + } + if (!sub_8063DD4(entInfo, gUnknown_202F2D8)) { + sub_8044FF0(0x21); + } + } + + if (!sub_8063DD4(entInfo, gUnknown_202F2D8)) { + sub_8044FF0(0x21); + } + + if (a2) { + bool8 unkBool = FALSE; + if (gUnknown_202F2D8 < MAX_MON_MOVES) { + unkBool = CanAIUseMove(entity, gUnknown_202F2D8, TRUE) != FALSE; + } + if (!unkBool) { + sub_8044FF0(0x14); + } + } + + sub_8045064(); +} + +void sub_80637A4(ActionContainer *a0, s32 a1) +{ + sub_80637BC(a0, gDungeonMenu.menuIndex, a1); +} // diff --git a/src/code_8066D04.c b/src/code_8066D04.c index d1e358666..020a8dcff 100644 --- a/src/code_8066D04.c +++ b/src/code_8066D04.c @@ -904,17 +904,17 @@ extern void sub_8068344(void); bool8 sub_8044F3C(s32 param_1); void sub_8068310(s32 a0, PokemonStruct1 **a1); void sub_8067F00(u8 a0, PokemonStruct1 **a1, s32 a2, s32 a3, s32 a4); -extern void sub_803ECB4(Windows *a0, u8 a1); +extern void DungeonShowWindows(Windows *a0, u8 a1); u32 sub_8014140(s32 a0, const void *a1); void sub_8083D1C(void); void PlayDungeonConfirmationSE(void); void PlayDungeonCancelSE(void); void sub_806806C(PokemonStruct1 *a0); -void sub_805FC30(Windows *a0, s32 a1); +void CreateDungeonMenuSubWindow(Windows *a0, s32 a1); extern void sub_803EAF0(u32, u8 *); extern const s32 gUnknown_8106E80[]; -extern MenuInputStruct gUnknown_202EE10; +extern MenuInputStruct gDungeonMenu; static EWRAM_DATA WindowHeader gUnknown_202F308 = {0}; static EWRAM_DATA s32 gUnknown_202F30C = 0; @@ -980,25 +980,25 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) ASM_MATCH_TRICK(r7); - sub_803ECB4(&spTxtStruct, 1); + DungeonShowWindows(&spTxtStruct, 1); sub_8067F00(a0, a3, gUnknown_202F30C, a2, a1); - gUnknown_202EE10.unk1A = min(a2, 8); - gUnknown_202EE10.menuIndex = r10; - gUnknown_202EE10.unk1C = 8; - gUnknown_202EE10.unk1E = 0; - gUnknown_202EE10.unk20 = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 18; - gUnknown_202EE10.unkC = 0; - gUnknown_202EE10.unkE = 0; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); - sub_80137B0(&gUnknown_202EE10, 0); + gDungeonMenu.unk1A = min(a2, 8); + gDungeonMenu.menuIndex = r10; + gDungeonMenu.unk1C = 8; + gDungeonMenu.unk1E = 0; + gDungeonMenu.unk20 = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 18; + gDungeonMenu.unkC = 0; + gDungeonMenu.unkE = 0; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk0 = 0; + sub_801317C(&gDungeonMenu.unk28); + sub_80137B0(&gDungeonMenu, 0); while (1) { s32 r4; - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); r5 = 0; r7 = 0; if (a2 - gUnknown_202F30C > 8) { @@ -1027,7 +1027,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) } if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 7) { + if (gDungeonMenu.menuIndex == 7) { if (a2 - gUnknown_202F30C > 8) { s32 i; for (i = 0; i < 6; i++) { @@ -1040,7 +1040,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) r10 = 7; break; } - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorDownWrapAround(&gDungeonMenu, 0); } if (r4 == 1 && r7 != 0) { @@ -1058,7 +1058,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { if (gUnknown_202F30C != 0) { s32 i; for (i = 0; i < 6; i++) { @@ -1071,7 +1071,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) r10 = 0; break; } - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, 0); + MoveMenuCursorUpWrapAround(&gDungeonMenu, 0); } if (sub_80048C8()) { @@ -1083,25 +1083,25 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) r7 = 3; break; } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { PlayDungeonConfirmationSE(); r7 = 1; break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); r7 = 2; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x37); if (r7 == 0) { continue; } else if (r7 == 2) { - r10 = gUnknown_202EE10.menuIndex; + r10 = gDungeonMenu.menuIndex; if (gUnknown_202F310 < a1) { continue; } @@ -1114,7 +1114,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) } } else if (r7 == 3) { - r10 = gUnknown_202EE10.menuIndex; + r10 = gDungeonMenu.menuIndex; sub_806806C(a3[gUnknown_202F30C + r10]); continue; } @@ -1122,7 +1122,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) s32 arrId; u8 locIdIsPartner; - r10 = gUnknown_202EE10.menuIndex; + r10 = gDungeonMenu.menuIndex; arrId = gUnknown_202F30C + r10; gUnknown_202EE6C = 0; sub_8044F5C(0x29, 0); @@ -1142,44 +1142,44 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, PokemonStruct1 **a3) } sub_8045064(); - sub_805FC30(&spTxtStruct, 0x15); + CreateDungeonMenuSubWindow(&spTxtStruct, 0x15); while (1) { - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x37); if (gRealInputs.repeated & DPAD_DOWN) { PlayDungeonCursorSE(1); - MoveMenuCursorDownWrapAround(&gUnknown_202EE10, 1); + MoveMenuCursorDownWrapAround(&gDungeonMenu, 1); } if (gRealInputs.repeated & DPAD_UP) { PlayDungeonCursorSE(1); - MoveMenuCursorUpWrapAround(&gUnknown_202EE10, 1); + MoveMenuCursorUpWrapAround(&gDungeonMenu, 1); } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { - if (sub_8044F3C(gUnknown_202EE10.menuIndex)) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { + if (sub_8044F3C(gDungeonMenu.menuIndex)) { PlayDungeonConfirmationSE(); r7 = 1; break; } PlayDungeonCancelSE(); } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); r7 = 0; break; } } - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); DungeonRunFrameActions(0x37); if (r7 != 0) { - if (gUnknown_202EE10.menuIndex == 0) { + if (gDungeonMenu.menuIndex == 0) { a3[arrId]->unk0 |= 0x8000; sub_8068310(a2, a3); } - else if (gUnknown_202EE10.menuIndex == 1) { + else if (gDungeonMenu.menuIndex == 1) { a3[arrId]->unk0 &= ~(0x8000); sub_8068310(a2, a3); } @@ -1269,7 +1269,7 @@ void sub_806806C(PokemonStruct1 *a0) r7 = 0; unkStruct.unk40 = 0; unkStruct.unk56 = 0; - gUnknown_202EE10.menuIndex = 0; + gDungeonMenu.menuIndex = 0; while (1) { bool32 loopBreak = FALSE; @@ -1280,28 +1280,28 @@ void sub_806806C(PokemonStruct1 *a0) gUnknown_202F308.f2 = 10; gUnknown_202F308.f3 = 0; - gUnknown_202EE10.unk1E = r7; - gUnknown_202EE10.unk20 = 4; - gUnknown_202EE10.unk1A = 0; - gUnknown_202EE10.menuIndex = 0; - gUnknown_202EE10.unk1C = 0; - gUnknown_202EE10.unk4 = 0; - gUnknown_202EE10.firstEntryY = 16; - gUnknown_202EE10.unk14.x = 0; - gUnknown_202EE10.unk0 = 0; + gDungeonMenu.unk1E = r7; + gDungeonMenu.unk20 = 4; + gDungeonMenu.unk1A = 0; + gDungeonMenu.menuIndex = 0; + gDungeonMenu.unk1C = 0; + gDungeonMenu.unk4 = 0; + gDungeonMenu.firstEntryY = 16; + gDungeonMenu.unk14.x = 0; + gDungeonMenu.unk0 = 0; - sub_801317C(&gUnknown_202EE10.unk28); - sub_803ECB4(&spTxtStruct, 1); + sub_801317C(&gDungeonMenu.unk28); + DungeonShowWindows(&spTxtStruct, 1); sub_808FF20(&unkStruct, a0, gDungeon->unk644.unk16); CreatePokemonInfoTabScreen(spF8[r7], r7, &unkStruct, &var_C8, 0); - gUnknown_202EE10.unkC = (gUnknown_2027370[0].unk0 + 15) * 8; - gUnknown_202EE10.unkE = ((gUnknown_2027370[0].unk2 + 1) * 8) - 2; + gDungeonMenu.unkC = (gUnknown_2027370[0].unk0 + 15) * 8; + gDungeonMenu.unkE = ((gUnknown_2027370[0].unk2 + 1) * 8) - 2; while (1) { s32 r5; - AddMenuCursorSprite(&gUnknown_202EE10); + AddMenuCursorSprite(&gDungeonMenu); if (spF8[r7] == 4) { if (var_C8.unk0[8] != 0) { sub_80684C4(); @@ -1313,14 +1313,14 @@ void sub_806806C(PokemonStruct1 *a0) r5 = sub_8014140(0, gUnknown_8106DA4); DungeonRunFrameActions(0x1C); - if ((gRealInputs.pressed & DPAD_RIGHT) || gUnknown_202EE10.unk28.dpad_right) { + if ((gRealInputs.pressed & DPAD_RIGHT) || gDungeonMenu.unk28.dpad_right) { PlayDungeonCursorSE(0); if (++r7 == 4) { r7 = 0; } break; } - if ((gRealInputs.pressed & DPAD_LEFT) || gUnknown_202EE10.unk28.dpad_left) { + if ((gRealInputs.pressed & DPAD_LEFT) || gDungeonMenu.unk28.dpad_left) { PlayDungeonCursorSE(0); if (--r7 == -1) { r7 = 3; @@ -1357,12 +1357,12 @@ void sub_806806C(PokemonStruct1 *a0) continue; } - if ((gRealInputs.pressed & A_BUTTON) || gUnknown_202EE10.unk28.a_button) { + if ((gRealInputs.pressed & A_BUTTON) || gDungeonMenu.unk28.a_button) { PlayDungeonConfirmationSE(); loopBreak = TRUE; break; } - if ((gRealInputs.pressed & B_BUTTON) || gUnknown_202EE10.unk28.b_button) { + if ((gRealInputs.pressed & B_BUTTON) || gDungeonMenu.unk28.b_button) { PlayDungeonCancelSE(); loopBreak = TRUE; break; diff --git a/src/dungeon_music.c b/src/dungeon_music.c index 60289929f..4f6d5ec31 100644 --- a/src/dungeon_music.c +++ b/src/dungeon_music.c @@ -10,7 +10,7 @@ #include "text_util.h" -extern MenuInputStruct gUnknown_202EE10; +extern MenuInputStruct gDungeonMenu; extern u8 *gUnknown_80FE6F4[]; extern u8 gUnknown_810AC60; // 0xC @@ -140,7 +140,7 @@ bool8 sub_8083C88(u8 param_1) void PlayDungeonCursorSE(bool8 checkMenuEntriesCount) { - if ((!checkMenuEntriesCount) || (gUnknown_202EE10.unk1A > 1)) { + if ((!checkMenuEntriesCount) || (gDungeonMenu.unk1A > 1)) { PlayFanfareSE(0x12d,MAX_VOLUME); } } diff --git a/sym_ewram.txt b/sym_ewram.txt index 4ea6cbbfe..03fbfb149 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -123,7 +123,7 @@ gUnknown_202EE08: /* 202EE08 (sub_8040150 - sub_8040788) */ gUnknown_202EE0C: /* 202EE0C (sub_80694C0 - sub_806B8CC) */ .space 0x4 -gUnknown_202EE10: /* 202EE10 (sub_803EC94 - sub_8083CE0) */ +gDungeonMenu: /* 202EE10 (sub_803EC94 - sub_8083CE0) */ .space 0x28 gUnknown_202EE38: /* 202EE38 (sub_8063834) */