mirror of
https://github.com/zeldaret/tmc
synced 2026-09-01 09:52:51 -04:00
Match some ui functions
This commit is contained in:
@@ -1,101 +0,0 @@
|
||||
.syntax unified
|
||||
push {r4, r5, lr}
|
||||
ldr r4, _0801C9E0 @ =gUnk_0200AF00
|
||||
ldrb r1, [r4, #1]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0801C9B2
|
||||
bl AreaHasKeys
|
||||
cmp r0, #0
|
||||
bne _0801C9EC
|
||||
_0801C9B2:
|
||||
ldrb r0, [r4, #0x10]
|
||||
cmp r0, #0
|
||||
beq _0801CA50
|
||||
movs r0, #0
|
||||
strb r0, [r4, #0x10]
|
||||
ldr r2, _0801C9E4 @ =gUnk_020350E2
|
||||
strh r0, [r2]
|
||||
strh r0, [r2, #2]
|
||||
strh r0, [r2, #4]
|
||||
strh r0, [r2, #6]
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x40
|
||||
strh r0, [r1]
|
||||
adds r1, #2
|
||||
strh r0, [r1]
|
||||
adds r1, #2
|
||||
strh r0, [r1]
|
||||
adds r1, #2
|
||||
strh r0, [r1]
|
||||
ldr r1, _0801C9E8 @ =gScreen
|
||||
movs r0, #1
|
||||
strh r0, [r1, #0xe]
|
||||
b _0801CA50
|
||||
.align 2, 0
|
||||
_0801C9E0: .4byte gUnk_0200AF00
|
||||
_0801C9E4: .4byte gUnk_020350E2
|
||||
_0801C9E8: .4byte gScreen
|
||||
_0801C9EC:
|
||||
ldrb r0, [r4, #0x10]
|
||||
cmp r0, #0
|
||||
bne _0801CA1E
|
||||
ldr r2, _0801CA54 @ =gUnk_020350E2
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x40
|
||||
ldr r3, _0801CA58 @ =0x0000F01C
|
||||
strh r3, [r2]
|
||||
adds r0, r3, #1
|
||||
strh r0, [r2, #2]
|
||||
adds r0, r3, #2
|
||||
strh r0, [r1]
|
||||
adds r0, r3, #3
|
||||
strh r0, [r1, #2]
|
||||
adds r3, #0x5a
|
||||
strh r3, [r2, #4]
|
||||
adds r0, r3, #1
|
||||
strh r0, [r1, #4]
|
||||
adds r0, r3, #2
|
||||
strh r0, [r2, #6]
|
||||
adds r0, r3, #3
|
||||
strh r0, [r1, #6]
|
||||
ldr r1, _0801CA5C @ =gScreen
|
||||
movs r0, #1
|
||||
strh r0, [r1, #0xe]
|
||||
_0801CA1E:
|
||||
ldr r0, _0801CA60 @ =gSave
|
||||
ldr r3, _0801CA64 @ =gArea
|
||||
ldrb r1, [r3, #3]
|
||||
ldr r5, _0801CA68 @ =0x0000045C
|
||||
adds r2, r0, r5
|
||||
adds r1, r1, r2
|
||||
ldrb r0, [r4, #0x12]
|
||||
ldrb r1, [r1]
|
||||
cmp r0, r1
|
||||
bne _0801CA38
|
||||
ldrb r0, [r4, #0x10]
|
||||
cmp r0, #0
|
||||
bne _0801CA50
|
||||
_0801CA38:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0x10]
|
||||
ldrb r0, [r3, #3]
|
||||
adds r0, r0, r2
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r4, #0x12]
|
||||
ldrb r1, [r4, #0x12]
|
||||
movs r0, #0x76
|
||||
movs r2, #0
|
||||
movs r3, #2
|
||||
bl sub_0801C5E0
|
||||
_0801CA50:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801CA54: .4byte gUnk_020350E2
|
||||
_0801CA58: .4byte 0x0000F01C
|
||||
_0801CA5C: .4byte gScreen
|
||||
_0801CA60: .4byte gSave
|
||||
_0801CA64: .4byte gArea
|
||||
_0801CA68: .4byte 0x0000045C
|
||||
.syntax divided
|
||||
@@ -1,152 +0,0 @@
|
||||
.syntax unified
|
||||
push {r4, r5, r6, lr}
|
||||
ldr r2, _0801C4F0 @ =gUnk_0200AF00
|
||||
ldrb r1, [r2, #1]
|
||||
movs r0, #0x40
|
||||
ands r0, r1
|
||||
adds r6, r2, #0
|
||||
cmp r0, #0
|
||||
beq _0801C4FC
|
||||
ldrb r0, [r6, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0801C4C8
|
||||
b _0801C5D0
|
||||
_0801C4C8:
|
||||
movs r0, #0
|
||||
strb r0, [r6, #0xa]
|
||||
ldr r3, _0801C4F4 @ =gUnk_02035160
|
||||
strh r0, [r3]
|
||||
strh r0, [r3, #2]
|
||||
strh r0, [r3, #4]
|
||||
strh r0, [r3, #6]
|
||||
strh r0, [r3, #8]
|
||||
adds r4, r3, #0
|
||||
adds r4, #0x40
|
||||
strh r0, [r4]
|
||||
strh r0, [r4, #2]
|
||||
strh r0, [r4, #4]
|
||||
strh r0, [r4, #6]
|
||||
strh r0, [r4, #8]
|
||||
ldr r1, _0801C4F8 @ =gScreen
|
||||
movs r0, #1
|
||||
strh r0, [r1, #0xe]
|
||||
b _0801C5D0
|
||||
.align 2, 0
|
||||
_0801C4F0: .4byte gUnk_0200AF00
|
||||
_0801C4F4: .4byte gUnk_02035160
|
||||
_0801C4F8: .4byte gScreen
|
||||
_0801C4FC:
|
||||
ldrb r0, [r6, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0801C560
|
||||
movs r0, #2
|
||||
strb r0, [r6, #0xa]
|
||||
ldr r3, _0801C54C @ =gUnk_02035160
|
||||
adds r4, r3, #0
|
||||
adds r4, #0x40
|
||||
ldr r1, _0801C550 @ =gWalletSizes
|
||||
ldr r2, _0801C554 @ =gSave
|
||||
adds r0, r2, #0
|
||||
adds r0, #0xa8
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldrh r1, [r0, #2]
|
||||
strh r1, [r3]
|
||||
adds r0, r1, #1
|
||||
strh r0, [r3, #2]
|
||||
adds r0, r1, #2
|
||||
strh r0, [r4]
|
||||
adds r0, r1, #3
|
||||
strh r0, [r4, #2]
|
||||
ldr r1, _0801C558 @ =0x0000F070
|
||||
strh r1, [r3, #4]
|
||||
adds r0, r1, #1
|
||||
strh r0, [r4, #4]
|
||||
adds r0, r1, #2
|
||||
strh r0, [r3, #6]
|
||||
adds r0, r1, #3
|
||||
strh r0, [r4, #6]
|
||||
adds r0, r1, #4
|
||||
strh r0, [r3, #8]
|
||||
adds r0, r1, #5
|
||||
strh r0, [r4, #8]
|
||||
ldr r1, _0801C55C @ =gScreen
|
||||
movs r0, #1
|
||||
strh r0, [r1, #0xe]
|
||||
movs r4, #1
|
||||
b _0801C564
|
||||
.align 2, 0
|
||||
_0801C54C: .4byte gUnk_02035160
|
||||
_0801C550: .4byte gWalletSizes
|
||||
_0801C554: .4byte gSave
|
||||
_0801C558: .4byte 0x0000F070
|
||||
_0801C55C: .4byte gScreen
|
||||
_0801C560:
|
||||
movs r4, #0
|
||||
ldr r2, _0801C580 @ =gSave
|
||||
_0801C564:
|
||||
adds r5, r6, #0
|
||||
adds r0, r2, #0
|
||||
adds r0, #0xc0
|
||||
ldrh r1, [r5, #0xe]
|
||||
adds r3, r1, #0
|
||||
ldrh r0, [r0]
|
||||
cmp r3, r0
|
||||
beq _0801C58A
|
||||
cmp r3, r0
|
||||
bhs _0801C584
|
||||
adds r0, r1, #1
|
||||
strh r0, [r5, #0xe]
|
||||
b _0801C588
|
||||
.align 2, 0
|
||||
_0801C580: .4byte gSave
|
||||
_0801C584:
|
||||
subs r0, r1, #1
|
||||
strh r0, [r6, #0xe]
|
||||
_0801C588:
|
||||
movs r4, #2
|
||||
_0801C58A:
|
||||
cmp r4, #1
|
||||
beq _0801C5A4
|
||||
cmp r4, #2
|
||||
bne _0801C5CC
|
||||
ldr r0, _0801C5D4 @ =gUnk_0200AF00
|
||||
ldrb r0, [r0, #0xc]
|
||||
movs r1, #3
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0801C5A4
|
||||
movs r0, #0x6f
|
||||
bl SoundReq
|
||||
_0801C5A4:
|
||||
ldr r4, _0801C5D4 @ =gUnk_0200AF00
|
||||
ldrh r3, [r4, #0xe]
|
||||
movs r2, #0
|
||||
ldr r1, _0801C5D8 @ =gWalletSizes
|
||||
ldr r0, _0801C5DC @ =gSave
|
||||
adds r0, #0xa8
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldrh r0, [r0]
|
||||
cmp r0, r3
|
||||
bhi _0801C5BE
|
||||
movs r2, #1
|
||||
_0801C5BE:
|
||||
movs r0, #0x70
|
||||
adds r1, r3, #0
|
||||
movs r3, #3
|
||||
bl sub_0801C5E0
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r4, r0, #1
|
||||
_0801C5CC:
|
||||
ldr r0, _0801C5D4 @ =gUnk_0200AF00
|
||||
strb r4, [r0, #0xc]
|
||||
_0801C5D0:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0801C5D4: .4byte gUnk_0200AF00
|
||||
_0801C5D8: .4byte gWalletSizes
|
||||
_0801C5DC: .4byte gSave
|
||||
.syntax divided
|
||||
@@ -1,66 +0,0 @@
|
||||
.syntax unified
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r5, r1, #0
|
||||
ldr r7, _0801C650 @ =gUnk_085C4B20
|
||||
cmp r2, #0
|
||||
bne _0801C5F0
|
||||
ldr r0, _0801C654 @ =0xFFFFFD80
|
||||
adds r7, r7, r0
|
||||
_0801C5F0:
|
||||
ldr r0, _0801C658 @ =0x000003FF
|
||||
ands r0, r4
|
||||
lsls r6, r0, #5
|
||||
ldr r0, _0801C65C @ =0x0600C000
|
||||
adds r4, r6, r0
|
||||
cmp r3, #2
|
||||
beq _0801C620
|
||||
cmp r3, #3
|
||||
bne _0801C63C
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x64
|
||||
bl Div
|
||||
adds r5, r1, #0
|
||||
ldr r1, _0801C660 @ =0x040000D4
|
||||
lsls r0, r0, #6
|
||||
adds r0, r7, r0
|
||||
str r0, [r1]
|
||||
str r4, [r1, #4]
|
||||
ldr r0, _0801C664 @ =0x84000010
|
||||
str r0, [r1, #8]
|
||||
ldr r0, [r1, #8]
|
||||
ldr r0, _0801C668 @ =0x0600C040
|
||||
adds r4, r6, r0
|
||||
_0801C620:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0xa
|
||||
bl Div
|
||||
adds r5, r1, #0
|
||||
ldr r1, _0801C660 @ =0x040000D4
|
||||
lsls r0, r0, #6
|
||||
adds r0, r7, r0
|
||||
str r0, [r1]
|
||||
str r4, [r1, #4]
|
||||
ldr r0, _0801C664 @ =0x84000010
|
||||
str r0, [r1, #8]
|
||||
ldr r0, [r1, #8]
|
||||
adds r4, #0x40
|
||||
_0801C63C:
|
||||
ldr r1, _0801C660 @ =0x040000D4
|
||||
lsls r0, r5, #6
|
||||
adds r0, r7, r0
|
||||
str r0, [r1]
|
||||
str r4, [r1, #4]
|
||||
ldr r0, _0801C664 @ =0x84000010
|
||||
str r0, [r1, #8]
|
||||
ldr r0, [r1, #8]
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801C650: .4byte gUnk_085C4B20
|
||||
_0801C654: .4byte 0xFFFFFD80
|
||||
_0801C658: .4byte 0x000003FF
|
||||
_0801C65C: .4byte 0x0600C000
|
||||
_0801C660: .4byte 0x040000D4
|
||||
_0801C664: .4byte 0x84000010
|
||||
_0801C668: .4byte 0x0600C040
|
||||
.syntax divided
|
||||
+2
-2
@@ -13367,13 +13367,13 @@
|
||||
"type": "unknown"
|
||||
},
|
||||
{
|
||||
"path": "gfx/gGfx_89_5.4bpp",
|
||||
"path": "gfx/RupeeKeyDigitsYellow.4bpp",
|
||||
"start": 6047904,
|
||||
"size": 640,
|
||||
"type": "gfx"
|
||||
},
|
||||
{
|
||||
"path": "assets/gUnk_085C4B20.bin",
|
||||
"path": "assets/RupeeKeyDigits.bin",
|
||||
"start": 6048544,
|
||||
"size": 640,
|
||||
"type": "unknown"
|
||||
|
||||
@@ -4453,11 +4453,11 @@ gGfx_88_3::
|
||||
.incbin "gfx/gGfx_88_3.4bpp"
|
||||
gUnk_085C4620::
|
||||
.incbin "assets/gUnk_085C4620.bin"
|
||||
gGfx_89_5::
|
||||
.incbin "gfx/gGfx_89_5.4bpp"
|
||||
RupeeKeyDigitsYellow::
|
||||
.incbin "gfx/RupeeKeyDigitsYellow.4bpp"
|
||||
@ gfx_unknown_18
|
||||
gUnk_085C4B20::
|
||||
.incbin "assets/gUnk_085C4B20.bin"
|
||||
RupeeKeyDigits::
|
||||
.incbin "assets/RupeeKeyDigits.bin"
|
||||
gUnk_data0_085C4DA0::
|
||||
.incbin "assets/gUnk_data0_085C4DA0.bin"
|
||||
gUnk_data1_085C4E60::
|
||||
|
||||
@@ -436,7 +436,7 @@ gGfxGroup_89::
|
||||
gfx_raw src=offset_gGfx_89_2, unknown=0x7, dest=0x6008000, size=0xe00
|
||||
gfx_raw src=offset_gGfx_89_3, unknown=0x7, dest=0x6010000, size=0x2000
|
||||
gfx_raw src=offset_gGfx_89_4, unknown=0x7, dest=0x6013000, size=0x640
|
||||
gfx_raw src=offset_gGfx_89_5, unknown=0x7, dest=0x6013c00, size=0x280
|
||||
gfx_raw src=offset_RupeeKeyDigitsYellow, unknown=0x7, dest=0x6013c00, size=0x280
|
||||
gfx_raw src=offset_gGfx_89_6, unknown=0x7, dest=0x6014000, size=0x8c0, terminator=1
|
||||
|
||||
gGfxGroup_90::
|
||||
|
||||
@@ -22,7 +22,7 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
substruct_160 unk_0;
|
||||
u8 unk_9[54];
|
||||
u8 unk_9[50];
|
||||
substruct_160 unk_40;
|
||||
} struct_02035160;
|
||||
extern struct_02035160 gUnk_02035160;
|
||||
@@ -78,6 +78,7 @@ extern const u8 gUnk_080C9044[];
|
||||
extern void (*const EzloNagUIElement_Actions[])(UIElement*);
|
||||
extern u16 gUnk_080C9058[];
|
||||
extern Frame gUnk_080C9094[];
|
||||
extern u8 RupeeKeyDigits[];
|
||||
|
||||
void sub_0801C2F0(u32, u32);
|
||||
void DrawHearts(void);
|
||||
@@ -85,7 +86,7 @@ void DrawChargeBar(void);
|
||||
void DrawRupees(void);
|
||||
void DrawKeys(void);
|
||||
void CreateUIElement(u32, u32);
|
||||
void sub_0801C5E0(u32, u32, u32, u32);
|
||||
u32 DrawDigits(u32, u32, u32, u32);
|
||||
void sub_0801CAFC(UIElement*, u32);
|
||||
void sub_0801CB20(UIElement*, UIElementDefinition*);
|
||||
UIElement* FindUIElement(u32);
|
||||
@@ -223,11 +224,129 @@ void RecoverUI(u32 bottomPt, u32 topPt) {
|
||||
gUnk_0200AF00.unk_a = 0;
|
||||
}
|
||||
|
||||
ASM_FUNC("asm/non_matching/ui/DrawRupees.inc", void DrawRupees(void))
|
||||
void DrawRupees(void) {
|
||||
u32 cVar1;
|
||||
u32 temp;
|
||||
u32 temp2;
|
||||
substruct_160* ptr;
|
||||
substruct_160* ptr2;
|
||||
const u16* ptr3;
|
||||
struct_02035160* ptr4;
|
||||
|
||||
if ((gUnk_0200AF00.unk_1 & 0x40) != 0) {
|
||||
if (gUnk_0200AF00.unk_a != 0) {
|
||||
gUnk_0200AF00.unk_a = 0;
|
||||
ptr4 = &gUnk_02035160;
|
||||
ptr = &ptr4->unk_0;
|
||||
ptr->unk_0 = 0;
|
||||
ptr->unk_2 = 0;
|
||||
ptr->unk_4 = 0;
|
||||
ptr->unk_6 = 0;
|
||||
ptr->unk_8 = 0;
|
||||
ptr2 = &ptr4->unk_40;
|
||||
ptr2->unk_0 = 0;
|
||||
ptr2->unk_2 = 0;
|
||||
ptr2->unk_4 = 0;
|
||||
ptr2->unk_6 = 0;
|
||||
ptr2->unk_8 = 0;
|
||||
gScreen.bg0.updated = 1;
|
||||
}
|
||||
} else {
|
||||
if (gUnk_0200AF00.unk_a == 0) {
|
||||
gUnk_0200AF00.unk_a = 2;
|
||||
ptr4 = &gUnk_02035160;
|
||||
ptr2 = &ptr4->unk_40;
|
||||
ptr3 = gWalletSizes;
|
||||
ptr4->unk_0.unk_0 = temp2 = *(ptr3 + (u32)gSave.stats.walletType * 2 + 1);
|
||||
ptr4->unk_0.unk_2 = temp2 + 1;
|
||||
ptr2->unk_0 = temp2 + 2;
|
||||
ptr2->unk_2 = temp2 + 3;
|
||||
temp2 = 0xf070;
|
||||
ptr4->unk_0.unk_4 = temp2;
|
||||
ptr2->unk_4 = temp2 + 1;
|
||||
ptr4->unk_0.unk_6 = temp2 + 2;
|
||||
ptr2->unk_6 = temp2 + 3;
|
||||
ptr4->unk_0.unk_8 = temp2 + 4;
|
||||
ptr2->unk_8 = temp2 + 5;
|
||||
gScreen.bg0.updated = 1;
|
||||
cVar1 = 1;
|
||||
} else {
|
||||
cVar1 = 0;
|
||||
}
|
||||
|
||||
if (gUnk_0200AF00.rupees != gSave.stats.rupees) {
|
||||
if (gUnk_0200AF00.rupees < gSave.stats.rupees) {
|
||||
gUnk_0200AF00.rupees++;
|
||||
} else {
|
||||
gUnk_0200AF00.rupees--;
|
||||
}
|
||||
cVar1 = 2;
|
||||
}
|
||||
switch (cVar1) {
|
||||
case 2:
|
||||
temp = gUnk_0200AF00.unk_c;
|
||||
temp &= 3;
|
||||
if ((temp) == 0) {
|
||||
SoundReq(SFX_RUPEE_GET);
|
||||
}
|
||||
case 1:
|
||||
DrawDigits(0x70, gUnk_0200AF00.rupees,
|
||||
gWalletSizes[(u32)gSave.stats.walletType * 2] <= gUnk_0200AF00.rupees, 3);
|
||||
cVar1 = gUnk_0200AF00.unk_c + 1;
|
||||
default:
|
||||
gUnk_0200AF00.unk_c = cVar1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Draw icon with text for rupees or keys
|
||||
ASM_FUNC("asm/non_matching/ui/sub_0801C5E0.inc",
|
||||
void sub_0801C5E0(u32 iconVramIndex, u32 count, bool32 isTextYellow, u32 d))
|
||||
u32 DrawDigits(u32 iconVramIndex, u32 count, u32 isTextYellow, u32 digits) {
|
||||
int iVar2;
|
||||
int iVar3;
|
||||
u8* puVar4;
|
||||
u32 digit;
|
||||
vu32* ptr;
|
||||
vu32* ptr2;
|
||||
register u32 r1 asm("r1");
|
||||
|
||||
puVar4 = RupeeKeyDigits;
|
||||
if (isTextYellow == 0) {
|
||||
puVar4 -= 0x280;
|
||||
}
|
||||
iVar3 = (iconVramIndex & 0x3ff) * 0x20;
|
||||
iVar2 = iVar3 + 0x600c000;
|
||||
switch (digits) {
|
||||
case 3:
|
||||
digit = Div(count, 100);
|
||||
count = r1;
|
||||
ptr = ®_DMA3SAD;
|
||||
ptr[0] = (int)puVar4 + (int)(digit)*0x40;
|
||||
// DMA3DAD
|
||||
ptr[1] = iVar2;
|
||||
// DMA3CNT
|
||||
ptr[2] = 0x84000010;
|
||||
ptr[2];
|
||||
iVar2 = iVar3 + 0x600c040;
|
||||
case 2:
|
||||
digit = Div(count, 10);
|
||||
count = r1;
|
||||
ptr = ®_DMA3SAD;
|
||||
ptr[0] = (int)puVar4 + (int)(digit)*0x40;
|
||||
// DMA3DAD
|
||||
ptr[1] = iVar2;
|
||||
// DMA3CNT
|
||||
ptr[2] = 0x84000010;
|
||||
ptr[2];
|
||||
iVar2 += 0x40;
|
||||
}
|
||||
|
||||
ptr2 = ®_DMA3SAD;
|
||||
ptr2[0] = (int)puVar4 + count * 0x40;
|
||||
ptr2[1] = iVar2;
|
||||
ptr2[2] = 0x84000010;
|
||||
return ptr2[2];
|
||||
}
|
||||
|
||||
void sub_0801C66C(void) {
|
||||
struct_02034CF0* ptr;
|
||||
@@ -279,7 +398,56 @@ void sub_0801C824(void) {
|
||||
|
||||
ASM_FUNC("asm/non_matching/ui/DrawChargeBar.inc", void DrawChargeBar())
|
||||
|
||||
ASM_FUNC("asm/non_matching/ui/DrawKeys.inc", void DrawKeys(void))
|
||||
void DrawKeys(void) {
|
||||
s32 iVar1;
|
||||
substruct_0E2* ptr1;
|
||||
substruct_0E2* ptr2;
|
||||
#if NON_MATCHING
|
||||
u32 temp;
|
||||
#else
|
||||
register u32 temp asm("r3");
|
||||
#endif
|
||||
u32 temp2;
|
||||
|
||||
if (!(((gUnk_0200AF00.unk_1 & 0x80) == 0) && (AreaHasKeys()))) {
|
||||
if (gUnk_0200AF00.unk_10 != 0) {
|
||||
gUnk_0200AF00.unk_10 = 0;
|
||||
ptr1 = &gUnk_020350E2.unk_0[0];
|
||||
ptr1->unk_0 = 0;
|
||||
ptr1->unk_2 = 0;
|
||||
ptr1->unk_4 = 0;
|
||||
ptr1->unk_6 = 0;
|
||||
gUnk_020350E2.unk_0[1].unk_0 = 0;
|
||||
gUnk_020350E2.unk_0[1].unk_2 = 0;
|
||||
gUnk_020350E2.unk_0[1].unk_4 = 0;
|
||||
gUnk_020350E2.unk_0[1].unk_6 = 0;
|
||||
gScreen.bg0.updated = 1;
|
||||
}
|
||||
} else {
|
||||
if (gUnk_0200AF00.unk_10 == 0) {
|
||||
ptr1 = &gUnk_020350E2.unk_0[0];
|
||||
ptr2 = &gUnk_020350E2.unk_0[1];
|
||||
temp = 0xf01c;
|
||||
ptr1->unk_0 = temp;
|
||||
ptr1->unk_2 = temp + 1;
|
||||
ptr2->unk_0 = temp + 2;
|
||||
ptr2->unk_2 = temp + 3;
|
||||
temp += 90;
|
||||
ptr1->unk_4 = temp;
|
||||
ptr2->unk_4 = temp + 1;
|
||||
temp2 = temp + 2;
|
||||
ptr1->unk_6 = temp2;
|
||||
temp2 = temp + 3;
|
||||
ptr2->unk_6 = temp2;
|
||||
gScreen.bg0.updated = 1;
|
||||
}
|
||||
if ((gUnk_0200AF00.unk_12 != gSave.unk45C[gArea.dungeon_idx]) || (gUnk_0200AF00.unk_10 == 0)) {
|
||||
gUnk_0200AF00.unk_10 = 2;
|
||||
gUnk_0200AF00.unk_12 = gSave.unk45C[gArea.dungeon_idx];
|
||||
DrawDigits(0x76, gUnk_0200AF00.unk_12, 0, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ASM_FUNC("asm/non_matching/ui/CreateUIElement.inc", void CreateUIElement(u32 type, u32 type2))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user