trade through sub_804D814
This commit is contained in:
-117
@@ -5,123 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_804D764
|
||||
sub_804D764: @ 804D764
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
movs r3, 0
|
||||
ldr r5, _0804D7B4 @ =gUnknown_2031DA8
|
||||
mov r8, r5
|
||||
ldr r0, _0804D7B8 @ =gSprites
|
||||
mov r12, r0
|
||||
movs r1, 0x5
|
||||
negs r1, r1
|
||||
mov r9, r1
|
||||
movs r4, 0x6
|
||||
movs r7, 0x1
|
||||
movs r6, 0
|
||||
_0804D782:
|
||||
mov r1, r8
|
||||
ldr r0, [r1]
|
||||
adds r1, r0, 0
|
||||
adds r1, 0x36
|
||||
ldrb r1, [r1]
|
||||
cmp r3, r1
|
||||
bge _0804D7BC
|
||||
adds r0, 0x28
|
||||
adds r0, r3
|
||||
ldrb r0, [r0]
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
add r1, r12
|
||||
adds r1, 0x3E
|
||||
ldrb r2, [r1]
|
||||
mov r0, r9
|
||||
ands r0, r2
|
||||
strb r0, [r1]
|
||||
ldr r0, [r5]
|
||||
adds r0, 0x38
|
||||
adds r0, r3
|
||||
strb r7, [r0]
|
||||
b _0804D7C2
|
||||
.align 2, 0
|
||||
_0804D7B4: .4byte gUnknown_2031DA8
|
||||
_0804D7B8: .4byte gSprites
|
||||
_0804D7BC:
|
||||
adds r0, 0x38
|
||||
adds r0, r3
|
||||
strb r6, [r0]
|
||||
_0804D7C2:
|
||||
mov r1, r8
|
||||
ldr r0, [r1]
|
||||
adds r1, r0, 0
|
||||
adds r1, 0x37
|
||||
ldrb r1, [r1]
|
||||
cmp r3, r1
|
||||
bge _0804D7F2
|
||||
adds r0, 0x2E
|
||||
adds r0, r3
|
||||
ldrb r0, [r0]
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
add r1, r12
|
||||
adds r1, 0x3E
|
||||
ldrb r2, [r1]
|
||||
mov r0, r9
|
||||
ands r0, r2
|
||||
strb r0, [r1]
|
||||
ldr r0, [r5]
|
||||
adds r0, 0x38
|
||||
adds r0, r4
|
||||
strb r7, [r0]
|
||||
b _0804D7F8
|
||||
_0804D7F2:
|
||||
adds r0, 0x38
|
||||
adds r0, r4
|
||||
strb r6, [r0]
|
||||
_0804D7F8:
|
||||
adds r4, 0x1
|
||||
adds r3, 0x1
|
||||
cmp r3, 0x5
|
||||
ble _0804D782
|
||||
ldr r0, [r5]
|
||||
adds r0, 0x44
|
||||
movs r1, 0x1
|
||||
strb r1, [r0]
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_804D764
|
||||
|
||||
thumb_func_start sub_804D814
|
||||
sub_804D814: @ 804D814
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r3, 0
|
||||
cmp r3, r2
|
||||
bcs _0804D82E
|
||||
_0804D820:
|
||||
adds r0, r5, r3
|
||||
adds r1, r4, r3
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r0]
|
||||
adds r3, 0x1
|
||||
cmp r3, r2
|
||||
bcc _0804D820
|
||||
_0804D82E:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_804D814
|
||||
|
||||
thumb_func_start shedinja_maker_maybe
|
||||
shedinja_maker_maybe: @ 804D834
|
||||
push {r4-r6,lr}
|
||||
|
||||
+35
-2
@@ -32,8 +32,7 @@ struct TradeResources
|
||||
/*0x0034*/ u8 tradeMenuCursorSpriteIdx;
|
||||
/*0x0035*/ u8 tradeMenuCursorPosition;
|
||||
/*0x0036*/ u8 partyCounts[2];
|
||||
/*0x0038*/ bool8 tradeMenuOptionsActive[12];
|
||||
/*0x0044*/ u8 unk_44;
|
||||
/*0x0038*/ bool8 tradeMenuOptionsActive[13];
|
||||
/*0x0045*/ u8 unk_45[2][PARTY_SIZE];
|
||||
/*0x0051*/ u8 unk_51[2][PARTY_SIZE];
|
||||
/*0x005D*/ u8 unk_5D[2][PARTY_SIZE];
|
||||
@@ -2319,3 +2318,37 @@ void sub_804D694(u8 state)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_804D764(void)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < PARTY_SIZE; i++)
|
||||
{
|
||||
if (i < gUnknown_2031DA8->partyCounts[0])
|
||||
{
|
||||
gSprites[gUnknown_2031DA8->partyIcons[0][i]].invisible = FALSE;
|
||||
gUnknown_2031DA8->tradeMenuOptionsActive[i] = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gUnknown_2031DA8->tradeMenuOptionsActive[i] = FALSE;
|
||||
}
|
||||
if (i < gUnknown_2031DA8->partyCounts[1])
|
||||
{
|
||||
gSprites[gUnknown_2031DA8->partyIcons[1][i]].invisible = FALSE;
|
||||
gUnknown_2031DA8->tradeMenuOptionsActive[i + 6] = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gUnknown_2031DA8->tradeMenuOptionsActive[i + 6] = FALSE;
|
||||
}
|
||||
}
|
||||
gUnknown_2031DA8->tradeMenuOptionsActive[12] = TRUE;
|
||||
}
|
||||
|
||||
void sub_804D814(char *dest, const char *src, size_t size)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < size; i++)
|
||||
dest[i] = src[i];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user