pokemon_summary_screen.c, part 7.
This commit is contained in:
@@ -5,255 +5,6 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
thumb_func_start sub_8137724
|
|
||||||
sub_8137724: @ 8137724
|
|
||||||
push {r4-r6,lr}
|
|
||||||
sub sp, 0xD4
|
|
||||||
bl DynamicPlaceholderTextUtil_Reset
|
|
||||||
ldr r5, _081377A0 @ =gMonSummaryScreen
|
|
||||||
ldr r0, [r5]
|
|
||||||
ldr r4, _081377A4 @ =0x00003290
|
|
||||||
adds r0, r4
|
|
||||||
bl GetNature
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r6, r0, 24
|
|
||||||
ldr r1, _081377A8 @ =gNatureNamePointers
|
|
||||||
lsls r0, r6, 2
|
|
||||||
adds r0, r1
|
|
||||||
ldr r1, [r0]
|
|
||||||
movs r0, 0
|
|
||||||
bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
|
|
||||||
ldr r0, [r5]
|
|
||||||
adds r0, r4
|
|
||||||
movs r1, 0x24
|
|
||||||
bl GetMonData
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r1, r0, 24
|
|
||||||
cmp r1, 0
|
|
||||||
bne _0813775E
|
|
||||||
movs r1, 0x5
|
|
||||||
_0813775E:
|
|
||||||
add r0, sp, 0x14
|
|
||||||
movs r2, 0
|
|
||||||
movs r3, 0x3
|
|
||||||
bl ConvertIntToDecimalStringN
|
|
||||||
movs r0, 0x1
|
|
||||||
add r1, sp, 0x14
|
|
||||||
bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
|
|
||||||
ldr r0, [r5]
|
|
||||||
adds r0, r4
|
|
||||||
movs r1, 0x23
|
|
||||||
bl GetMonData
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r5, r0, 24
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl sub_813B838
|
|
||||||
cmp r0, 0
|
|
||||||
beq _08137790
|
|
||||||
bl sub_813B7F8
|
|
||||||
cmp r0, 0
|
|
||||||
bne _08137830
|
|
||||||
_08137790:
|
|
||||||
bl sub_8138B4C
|
|
||||||
cmp r0, 0x1
|
|
||||||
bne _081377AC
|
|
||||||
bl sub_8137578
|
|
||||||
b _0813792C
|
|
||||||
.align 2, 0
|
|
||||||
_081377A0: .4byte gMonSummaryScreen
|
|
||||||
_081377A4: .4byte 0x00003290
|
|
||||||
_081377A8: .4byte gNatureNamePointers
|
|
||||||
_081377AC:
|
|
||||||
cmp r5, 0xFF
|
|
||||||
bne _081377D0
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
beq _081377C4
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081377C0 @ =gUnknown_84197ED
|
|
||||||
b _081377DE
|
|
||||||
.align 2, 0
|
|
||||||
_081377C0: .4byte gUnknown_84197ED
|
|
||||||
_081377C4:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081377CC @ =gUnknown_84197B8
|
|
||||||
b _081377DE
|
|
||||||
.align 2, 0
|
|
||||||
_081377CC: .4byte gUnknown_84197B8
|
|
||||||
_081377D0:
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
beq _081377EC
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081377E8 @ =gUnknown_841979D
|
|
||||||
_081377DE:
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl DynamicPlaceholderTextUtil_ExpandPlaceholders
|
|
||||||
b _081377F6
|
|
||||||
.align 2, 0
|
|
||||||
_081377E8: .4byte gUnknown_841979D
|
|
||||||
_081377EC:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _08137820 @ =gUnknown_8419782
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl DynamicPlaceholderTextUtil_ExpandPlaceholders
|
|
||||||
_081377F6:
|
|
||||||
ldr r0, _08137824 @ =gMonSummaryScreen
|
|
||||||
ldr r0, [r0]
|
|
||||||
ldr r1, _08137828 @ =0x00003004
|
|
||||||
adds r0, r1
|
|
||||||
ldrb r0, [r0]
|
|
||||||
movs r1, 0
|
|
||||||
str r1, [sp]
|
|
||||||
str r1, [sp, 0x4]
|
|
||||||
ldr r1, _0813782C @ =gUnknown_8463FA4
|
|
||||||
str r1, [sp, 0x8]
|
|
||||||
movs r1, 0x1
|
|
||||||
negs r1, r1
|
|
||||||
str r1, [sp, 0xC]
|
|
||||||
str r4, [sp, 0x10]
|
|
||||||
movs r1, 0x2
|
|
||||||
movs r2, 0
|
|
||||||
movs r3, 0x3
|
|
||||||
bl AddTextPrinterParameterized4
|
|
||||||
b _0813792C
|
|
||||||
.align 2, 0
|
|
||||||
_08137820: .4byte gUnknown_8419782
|
|
||||||
_08137824: .4byte gMonSummaryScreen
|
|
||||||
_08137828: .4byte 0x00003004
|
|
||||||
_0813782C: .4byte gUnknown_8463FA4
|
|
||||||
_08137830:
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl sub_813B838
|
|
||||||
cmp r0, 0x1
|
|
||||||
bne _08137846
|
|
||||||
add r4, sp, 0x1C
|
|
||||||
adds r0, r4, 0
|
|
||||||
adds r1, r5, 0
|
|
||||||
bl GetMapNameGeneric_
|
|
||||||
b _08137850
|
|
||||||
_08137846:
|
|
||||||
add r4, sp, 0x1C
|
|
||||||
ldr r1, _0813788C @ =gUnknown_8419C0B
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl StringCopy
|
|
||||||
_08137850:
|
|
||||||
adds r1, r4, 0
|
|
||||||
movs r0, 0x2
|
|
||||||
bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
|
|
||||||
ldr r4, _08137890 @ =gMonSummaryScreen
|
|
||||||
ldr r0, [r4]
|
|
||||||
ldr r1, _08137894 @ =0x00003290
|
|
||||||
adds r0, r1
|
|
||||||
movs r1, 0x24
|
|
||||||
bl GetMonData
|
|
||||||
cmp r0, 0
|
|
||||||
bne _081378BC
|
|
||||||
ldr r0, [r4]
|
|
||||||
ldr r1, _08137894 @ =0x00003290
|
|
||||||
adds r0, r1
|
|
||||||
movs r1, 0x50
|
|
||||||
bl GetMonData
|
|
||||||
cmp r0, 0x1
|
|
||||||
bne _081378A8
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
beq _0813789C
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _08137898 @ =gUnknown_84199F4
|
|
||||||
b _081378EE
|
|
||||||
.align 2, 0
|
|
||||||
_0813788C: .4byte gUnknown_8419C0B
|
|
||||||
_08137890: .4byte gMonSummaryScreen
|
|
||||||
_08137894: .4byte 0x00003290
|
|
||||||
_08137898: .4byte gUnknown_84199F4
|
|
||||||
_0813789C:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081378A4 @ =gUnknown_84199AB
|
|
||||||
b _081378EE
|
|
||||||
.align 2, 0
|
|
||||||
_081378A4: .4byte gUnknown_84199AB
|
|
||||||
_081378A8:
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
bne _081378EA
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081378B8 @ =gUnknown_8419860
|
|
||||||
b _081378EE
|
|
||||||
.align 2, 0
|
|
||||||
_081378B8: .4byte gUnknown_8419860
|
|
||||||
_081378BC:
|
|
||||||
cmp r5, 0xFF
|
|
||||||
bne _081378E0
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
beq _081378D4
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081378D0 @ =gUnknown_84197ED
|
|
||||||
b _081378EE
|
|
||||||
.align 2, 0
|
|
||||||
_081378D0: .4byte gUnknown_84197ED
|
|
||||||
_081378D4:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081378DC @ =gUnknown_84197B8
|
|
||||||
b _081378EE
|
|
||||||
.align 2, 0
|
|
||||||
_081378DC: .4byte gUnknown_84197B8
|
|
||||||
_081378E0:
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_813B7E0
|
|
||||||
cmp r0, 0
|
|
||||||
beq _081378FC
|
|
||||||
_081378EA:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _081378F8 @ =gUnknown_841988A
|
|
||||||
_081378EE:
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl DynamicPlaceholderTextUtil_ExpandPlaceholders
|
|
||||||
b _08137906
|
|
||||||
.align 2, 0
|
|
||||||
_081378F8: .4byte gUnknown_841988A
|
|
||||||
_081378FC:
|
|
||||||
add r4, sp, 0x3C
|
|
||||||
ldr r1, _08137934 @ =gUnknown_8419860
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl DynamicPlaceholderTextUtil_ExpandPlaceholders
|
|
||||||
_08137906:
|
|
||||||
ldr r0, _08137938 @ =gMonSummaryScreen
|
|
||||||
ldr r0, [r0]
|
|
||||||
ldr r1, _0813793C @ =0x00003004
|
|
||||||
adds r0, r1
|
|
||||||
ldrb r0, [r0]
|
|
||||||
movs r1, 0
|
|
||||||
str r1, [sp]
|
|
||||||
str r1, [sp, 0x4]
|
|
||||||
ldr r1, _08137940 @ =gUnknown_8463FA4
|
|
||||||
str r1, [sp, 0x8]
|
|
||||||
movs r1, 0x1
|
|
||||||
negs r1, r1
|
|
||||||
str r1, [sp, 0xC]
|
|
||||||
str r4, [sp, 0x10]
|
|
||||||
movs r1, 0x2
|
|
||||||
movs r2, 0
|
|
||||||
movs r3, 0x3
|
|
||||||
bl AddTextPrinterParameterized4
|
|
||||||
_0813792C:
|
|
||||||
add sp, 0xD4
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_08137934: .4byte gUnknown_8419860
|
|
||||||
_08137938: .4byte gMonSummaryScreen
|
|
||||||
_0813793C: .4byte 0x00003004
|
|
||||||
_08137940: .4byte gUnknown_8463FA4
|
|
||||||
thumb_func_end sub_8137724
|
|
||||||
|
|
||||||
thumb_func_start sub_8137944
|
thumb_func_start sub_8137944
|
||||||
sub_8137944: @ 8137944
|
sub_8137944: @ 8137944
|
||||||
push {lr}
|
push {lr}
|
||||||
|
|||||||
@@ -1489,5 +1489,11 @@ extern const u8 gUnknown_84197ED[];
|
|||||||
extern const u8 gUnknown_84197B8[];
|
extern const u8 gUnknown_84197B8[];
|
||||||
extern const u8 gUnknown_8419841[];
|
extern const u8 gUnknown_8419841[];
|
||||||
extern const u8 gUnknown_8419822[];
|
extern const u8 gUnknown_8419822[];
|
||||||
|
extern const u8 gUnknown_841979D[];
|
||||||
|
extern const u8 gUnknown_8419782[];
|
||||||
|
extern const u8 gUnknown_84199F4[];
|
||||||
|
extern const u8 gUnknown_84199AB[];
|
||||||
|
extern const u8 gUnknown_8419860[];
|
||||||
|
extern const u8 gUnknown_841988A[];
|
||||||
|
|
||||||
#endif //GUARD_STRINGS_H
|
#endif //GUARD_STRINGS_H
|
||||||
|
|||||||
@@ -105,6 +105,8 @@ extern void sub_8137970(void);
|
|||||||
extern bool32 sub_813B838(u8 metLocation);
|
extern bool32 sub_813B838(u8 metLocation);
|
||||||
extern bool32 sub_8138B4C(void);
|
extern bool32 sub_8138B4C(void);
|
||||||
extern bool32 sub_813B7E0(u8 nature);
|
extern bool32 sub_813B7E0(u8 nature);
|
||||||
|
void sub_8137724(void);
|
||||||
|
extern bool32 sub_813B7F8(void);
|
||||||
|
|
||||||
struct PokemonSummaryScreenData {
|
struct PokemonSummaryScreenData {
|
||||||
u16 unk0[0x800];
|
u16 unk0[0x800];
|
||||||
@@ -1993,3 +1995,98 @@ void sub_8137578(void)
|
|||||||
|
|
||||||
AddTextPrinterParameterized4(gMonSummaryScreen->unk3000[4], 2, 0, 3, 0, 0, gUnknown_8463FA4[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
AddTextPrinterParameterized4(gMonSummaryScreen->unk3000[4], 2, 0, 3, 0, 0, gUnknown_8463FA4[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void sub_8137724(void)
|
||||||
|
{
|
||||||
|
u8 nature;
|
||||||
|
u8 level;
|
||||||
|
u8 metLocation;
|
||||||
|
u8 levelStr[5];
|
||||||
|
u8 mapNameStr[32];
|
||||||
|
u8 natureMetOrHatchedAtLevelStr[152];
|
||||||
|
|
||||||
|
DynamicPlaceholderTextUtil_Reset();
|
||||||
|
nature = GetNature(&gMonSummaryScreen->currentMon);
|
||||||
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gNatureNamePointers[nature]);
|
||||||
|
|
||||||
|
level = GetMonData(&gMonSummaryScreen->currentMon, MON_DATA_MET_LEVEL);
|
||||||
|
|
||||||
|
if (level == 0)
|
||||||
|
level = 5;
|
||||||
|
|
||||||
|
ConvertIntToDecimalStringN(levelStr, level, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||||
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, levelStr);
|
||||||
|
|
||||||
|
metLocation = GetMonData(&gMonSummaryScreen->currentMon, MON_DATA_MET_LOCATION);
|
||||||
|
|
||||||
|
if (!sub_813B838(metLocation) || !sub_813B7F8())
|
||||||
|
{
|
||||||
|
if (sub_8138B4C() == TRUE)
|
||||||
|
{
|
||||||
|
sub_8137578();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (metLocation == METLOC_FATEFUL_ENCOUNTER)
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84197ED);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84197B8);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_841979D);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_8419782);
|
||||||
|
}
|
||||||
|
|
||||||
|
AddTextPrinterParameterized4(gMonSummaryScreen->unk3000[4], 2, 0, 3, 0, 0, gUnknown_8463FA4[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sub_813B838(metLocation) == TRUE)
|
||||||
|
GetMapNameGeneric_(mapNameStr, metLocation);
|
||||||
|
else
|
||||||
|
StringCopy(mapNameStr, gUnknown_8419C0B);
|
||||||
|
|
||||||
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, mapNameStr);
|
||||||
|
|
||||||
|
if (GetMonData(&gMonSummaryScreen->currentMon, MON_DATA_MET_LEVEL) == 0)
|
||||||
|
{
|
||||||
|
if (GetMonData(&gMonSummaryScreen->currentMon, MON_DATA_OBEDIENCE) == 1)
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84199F4);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84199AB);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_841988A);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_8419860);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (metLocation == METLOC_FATEFUL_ENCOUNTER)
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84197ED);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_84197B8);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (sub_813B7E0(nature))
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_841988A);
|
||||||
|
else
|
||||||
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gUnknown_8419860);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
AddTextPrinterParameterized4(gMonSummaryScreen->unk3000[4], 2, 0, 3, 0, 0, gUnknown_8463FA4[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user