through sub_811164C

This commit is contained in:
PikalaxALT 2018-10-11 16:21:47 -04:00
parent 3310b1445a
commit feadfc8911
2 changed files with 40 additions and 93 deletions

View File

@ -5,97 +5,6 @@
.text
thumb_func_start sub_81115E8
sub_81115E8: @ 81115E8
push {r4,lr}
bl sub_8111618
adds r4, r0, 0
lsls r4, 16
lsrs r4, 16
bl sub_811164C
adds r1, r0, 0
lsls r1, 16
lsrs r1, 16
ldr r0, _08111614 @ =0x00004027
lsls r4, 12
adds r1, r4
lsls r1, 16
lsrs r1, 16
bl VarSet
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08111614: .4byte 0x00004027
thumb_func_end sub_81115E8
thumb_func_start sub_8111618
sub_8111618: @ 8111618
push {r4,r5,lr}
movs r5, 0
movs r4, 0
_0811161E:
movs r0, 0x64
muls r0, r4
ldr r1, _08111648 @ =gPlayerParty
adds r0, r1
movs r1, 0x5
bl GetMonData
cmp r0, 0
beq _08111636
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
_08111636:
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0x5
bls _0811161E
adds r0, r5, 0
pop {r4,r5}
pop {r1}
bx r1
.align 2, 0
_08111648: .4byte gPlayerParty
thumb_func_end sub_8111618
thumb_func_start sub_811164C
sub_811164C: @ 811164C
push {r4-r7,lr}
movs r6, 0
movs r0, 0
_08111652:
movs r4, 0
lsls r5, r0, 24
adds r7, r0, 0x1
_08111658:
lsls r1, r4, 24
lsrs r1, 24
lsrs r0, r5, 24
movs r2, 0x5
bl GetBoxMonDataFromAnyBox
cmp r0, 0
beq _0811166E
adds r0, r6, 0x1
lsls r0, 16
lsrs r6, r0, 16
_0811166E:
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0x1D
bls _08111658
lsls r0, r7, 16
lsrs r0, 16
cmp r0, 0xD
bls _08111652
adds r0, r6, 0
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end sub_811164C
thumb_func_start sub_8111688
sub_8111688: @ 8111688
push {r4-r7,lr}

View File

@ -740,9 +740,9 @@ void sub_8111438(void)
}
else if (r5 < r9->unk_66)
{
for (r3 = 0; r3 < 14; r3++)
for (r3 = 0; r3 < TOTAL_BOXES_COUNT; r3++)
{
for (r6 = 0; r6 < 30; r6++)
for (r6 = 0; r6 < IN_BOX_COUNT; r6++)
{
struct BoxPokemon * boxMon = GetBoxedMonPtr(r3, r6);
if (!GetBoxMonData(boxMon, MON_DATA_SANITY_BIT2))
@ -760,3 +760,41 @@ void sub_8111438(void)
Free(r9);
}
void sub_81115E8(void)
{
u16 r4 = sub_8111618();
u16 r1 = sub_811164C();
VarSet(VAR_0x4027, (r4 << 12) + r1);
}
u16 sub_8111618(void)
{
u16 count = 0;
u16 i;
for (i = 0; i < PARTY_SIZE; i++)
{
if (GetMonData(&gPlayerParty[i], MON_DATA_SANITY_BIT2))
count++;
}
return count;
}
u16 sub_811164C(void)
{
u16 count = 0;
u16 i, j;
for (i = 0; i < TOTAL_BOXES_COUNT; i++)
{
for (j = 0; j < IN_BOX_COUNT; j++)
{
if (GetBoxMonDataFromAnyBox(i, j, MON_DATA_SANITY_BIT2))
count++;
}
}
return count;
}