sub_80EABDC
This commit is contained in:
@@ -5,80 +5,6 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
thumb_func_start sub_80EABDC
|
|
||||||
sub_80EABDC: @ 80EABDC
|
|
||||||
push {r4-r6,lr}
|
|
||||||
adds r5, r0, 0
|
|
||||||
ldrb r0, [r5]
|
|
||||||
cmp r0, 0
|
|
||||||
beq _080EABF8
|
|
||||||
ldrb r0, [r5, 0x1]
|
|
||||||
lsls r0, 27
|
|
||||||
ldr r1, =gSaveBlock2Ptr
|
|
||||||
ldr r3, [r1]
|
|
||||||
lsrs r0, 31
|
|
||||||
adds r6, r1, 0
|
|
||||||
ldrb r1, [r3, 0x8]
|
|
||||||
cmp r0, r1
|
|
||||||
beq _080EAC00
|
|
||||||
_080EABF8:
|
|
||||||
movs r0, 0
|
|
||||||
b _080EAC56
|
|
||||||
.pool
|
|
||||||
_080EAC00:
|
|
||||||
movs r2, 0
|
|
||||||
adds r4, r5, 0
|
|
||||||
adds r4, 0x9
|
|
||||||
adds r3, 0xA
|
|
||||||
_080EAC08:
|
|
||||||
adds r0, r4, r2
|
|
||||||
adds r1, r3, r2
|
|
||||||
ldrb r0, [r0]
|
|
||||||
ldrb r1, [r1]
|
|
||||||
cmp r0, r1
|
|
||||||
bne _080EABF8
|
|
||||||
adds r0, r2, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r2, r0, 24
|
|
||||||
cmp r2, 0x3
|
|
||||||
bls _080EAC08
|
|
||||||
movs r2, 0
|
|
||||||
ldrb r0, [r5, 0x2]
|
|
||||||
cmp r0, 0xFF
|
|
||||||
bne _080EAC2A
|
|
||||||
ldr r0, [r6]
|
|
||||||
b _080EAC4E
|
|
||||||
_080EAC2A:
|
|
||||||
adds r3, r5, 0x2
|
|
||||||
adds r0, r3, r2
|
|
||||||
ldr r4, [r6]
|
|
||||||
adds r1, r4, r2
|
|
||||||
ldrb r0, [r0]
|
|
||||||
ldrb r1, [r1]
|
|
||||||
cmp r0, r1
|
|
||||||
bne _080EABF8
|
|
||||||
adds r0, r2, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r2, r0, 24
|
|
||||||
cmp r2, 0x6
|
|
||||||
bhi _080EAC54
|
|
||||||
adds r0, r3, r2
|
|
||||||
ldrb r0, [r0]
|
|
||||||
cmp r0, 0xFF
|
|
||||||
bne _080EAC2A
|
|
||||||
adds r0, r4, r2
|
|
||||||
_080EAC4E:
|
|
||||||
ldrb r0, [r0]
|
|
||||||
cmp r0, 0xFF
|
|
||||||
bne _080EAC2A
|
|
||||||
_080EAC54:
|
|
||||||
movs r0, 0x1
|
|
||||||
_080EAC56:
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r1}
|
|
||||||
bx r1
|
|
||||||
thumb_func_end sub_80EABDC
|
|
||||||
|
|
||||||
thumb_func_start sub_80EAC5C
|
thumb_func_start sub_80EAC5C
|
||||||
sub_80EAC5C: @ 80EAC5C
|
sub_80EAC5C: @ 80EAC5C
|
||||||
push {r4-r7,lr}
|
push {r4-r7,lr}
|
||||||
|
|||||||
@@ -1612,3 +1612,29 @@ void sub_80EABA4(u32 *args, u8 b)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool8 sub_80EABDC(struct SecretBaseRecord *secretBase)
|
||||||
|
{
|
||||||
|
u8 i;
|
||||||
|
|
||||||
|
if (secretBase->secretBaseId == 0)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
if (secretBase->secretBaseId && secretBase->gender != gSaveBlock2Ptr->playerGender)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
// Check if the player's trainer Id matches the secret base's id.
|
||||||
|
for (i = 0; i < 4; i ++)
|
||||||
|
{
|
||||||
|
if (secretBase->trainerId[i] != gSaveBlock2Ptr->playerTrainerId[i])
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < OT_NAME_LENGTH && (secretBase->trainerName[i] != EOS || gSaveBlock2Ptr->playerName[i] != EOS); i ++)
|
||||||
|
{
|
||||||
|
if (secretBase->trainerName[i] != gSaveBlock2Ptr->playerName[i])
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user