mirror of
https://github.com/pret/pokefirered.git
synced 2026-05-22 22:05:06 -05:00
through sub_815E948
This commit is contained in:
parent
724a36220d
commit
9c5f01fc8e
|
|
@ -5,471 +5,6 @@
|
|||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_815E5F0
|
||||
sub_815E5F0: @ 815E5F0
|
||||
push {lr}
|
||||
ldr r0, _0815E620 @ =gSaveBlock1Ptr
|
||||
ldr r2, [r0]
|
||||
ldr r1, _0815E624 @ =0x00003d34
|
||||
adds r0, r2, r1
|
||||
ldr r1, [r0]
|
||||
lsls r0, r1, 1
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r2, r0
|
||||
ldr r0, _0815E628 @ =0x00003d42
|
||||
adds r2, r0
|
||||
ldrb r1, [r2]
|
||||
lsls r0, r1, 28
|
||||
cmp r0, 0
|
||||
bge _0815E630
|
||||
movs r0, 0x9
|
||||
negs r0, r0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r1, _0815E62C @ =gSpecialVar_Result
|
||||
movs r0, 0
|
||||
b _0815E64C
|
||||
.align 2, 0
|
||||
_0815E620: .4byte gSaveBlock1Ptr
|
||||
_0815E624: .4byte 0x00003d34
|
||||
_0815E628: .4byte 0x00003d42
|
||||
_0815E62C: .4byte gSpecialVar_Result
|
||||
_0815E630:
|
||||
lsls r0, r1, 27
|
||||
cmp r0, 0
|
||||
bge _0815E648
|
||||
movs r0, 0x11
|
||||
negs r0, r0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r1, _0815E644 @ =gSpecialVar_Result
|
||||
movs r0, 0x1
|
||||
b _0815E64C
|
||||
.align 2, 0
|
||||
_0815E644: .4byte gSpecialVar_Result
|
||||
_0815E648:
|
||||
ldr r1, _0815E654 @ =gSpecialVar_Result
|
||||
movs r0, 0x2
|
||||
_0815E64C:
|
||||
strh r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E654: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_815E5F0
|
||||
|
||||
thumb_func_start sub_815E658
|
||||
sub_815E658: @ 815E658
|
||||
push {r4-r6,lr}
|
||||
ldr r4, _0815E700 @ =gSaveBlock1Ptr
|
||||
ldr r2, [r4]
|
||||
ldr r6, _0815E704 @ =0x00003d34
|
||||
adds r0, r2, r6
|
||||
ldr r1, [r0]
|
||||
lsls r0, r1, 1
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
ldr r5, _0815E708 @ =0x00003d38
|
||||
adds r2, r5
|
||||
adds r2, r0
|
||||
ldr r1, [r2]
|
||||
ldr r0, _0815E70C @ =0x00034bbe
|
||||
cmp r1, r0
|
||||
bls _0815E690
|
||||
bl DisableVBlankCounter1
|
||||
ldr r1, [r4]
|
||||
adds r0, r1, r6
|
||||
ldr r2, [r0]
|
||||
lsls r0, r2, 1
|
||||
adds r0, r2
|
||||
lsls r0, 2
|
||||
adds r1, r5
|
||||
adds r1, r0
|
||||
ldr r0, _0815E710 @ =0x00034bbf
|
||||
str r0, [r1]
|
||||
_0815E690:
|
||||
ldr r1, [r4]
|
||||
adds r0, r1, r6
|
||||
ldr r2, [r0]
|
||||
lsls r0, r2, 1
|
||||
adds r0, r2
|
||||
lsls r0, 2
|
||||
adds r1, r5
|
||||
adds r1, r0
|
||||
ldr r4, [r1]
|
||||
movs r5, 0xE1
|
||||
lsls r5, 4
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl __divsi3
|
||||
adds r6, r0, 0
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl __modsi3
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x3C
|
||||
bl __divsi3
|
||||
adds r5, r0, 0
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x3C
|
||||
bl __modsi3
|
||||
movs r1, 0xA8
|
||||
muls r0, r1
|
||||
movs r1, 0x64
|
||||
bl __divsi3
|
||||
adds r4, r0, 0
|
||||
ldr r0, _0815E714 @ =gStringVar1
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r0, _0815E718 @ =gStringVar2
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r0, _0815E71C @ =gStringVar3
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x2
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E700: .4byte gSaveBlock1Ptr
|
||||
_0815E704: .4byte 0x00003d34
|
||||
_0815E708: .4byte 0x00003d38
|
||||
_0815E70C: .4byte 0x00034bbe
|
||||
_0815E710: .4byte 0x00034bbf
|
||||
_0815E714: .4byte gStringVar1
|
||||
_0815E718: .4byte gStringVar2
|
||||
_0815E71C: .4byte gStringVar3
|
||||
thumb_func_end sub_815E658
|
||||
|
||||
thumb_func_start sub_815E720
|
||||
sub_815E720: @ 815E720
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0xC
|
||||
bl sub_815EC0C
|
||||
ldr r0, _0815E85C @ =gUnknown_847A218
|
||||
bl AddWindow
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
bl sub_80F6E9C
|
||||
adds r0, r7, 0
|
||||
movs r1, 0
|
||||
bl sub_80F6F1C
|
||||
ldr r2, _0815E860 @ =gUnknown_83FE982
|
||||
movs r1, 0
|
||||
str r1, [sp]
|
||||
movs r0, 0xFF
|
||||
str r0, [sp, 0x4]
|
||||
str r1, [sp, 0x8]
|
||||
adds r0, r7, 0
|
||||
movs r1, 0x2
|
||||
movs r3, 0x4A
|
||||
bl AddTextPrinterParameterized
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
movs r1, 0xB8
|
||||
lsls r1, 22
|
||||
mov r10, r1
|
||||
movs r0, 0x90
|
||||
lsls r0, 22
|
||||
mov r9, r0
|
||||
_0815E76C:
|
||||
ldr r0, _0815E864 @ =gSaveBlock1Ptr
|
||||
ldr r2, [r0]
|
||||
ldr r1, _0815E868 @ =0x00003d34
|
||||
adds r0, r2, r1
|
||||
ldr r1, [r0]
|
||||
lsls r0, r1, 1
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldr r1, _0815E86C @ =0x00003d3c
|
||||
adds r0, r1
|
||||
bl sub_815EDDC
|
||||
adds r4, r0, 0
|
||||
movs r5, 0xE1
|
||||
lsls r5, 4
|
||||
adds r1, r5, 0
|
||||
bl __divsi3
|
||||
adds r6, r0, 0
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl __modsi3
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x3C
|
||||
bl __divsi3
|
||||
adds r5, r0, 0
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x3C
|
||||
bl __modsi3
|
||||
movs r1, 0xA8
|
||||
muls r0, r1
|
||||
movs r1, 0x64
|
||||
bl __divsi3
|
||||
adds r4, r0, 0
|
||||
ldr r0, _0815E870 @ =gStringVar1
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r0, _0815E874 @ =gStringVar2
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r0, _0815E878 @ =gStringVar3
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x2
|
||||
movs r3, 0x2
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r0, _0815E87C @ =gStringVar4
|
||||
ldr r1, _0815E880 @ =gUnknown_83FE998
|
||||
bl StringExpandPlaceholders
|
||||
ldr r1, _0815E884 @ =gUnknown_83FE9C4
|
||||
mov r0, r8
|
||||
subs r0, 0x1
|
||||
lsls r0, 2
|
||||
adds r0, r1
|
||||
ldr r2, [r0]
|
||||
mov r1, r9
|
||||
lsrs r0, r1, 24
|
||||
str r0, [sp]
|
||||
movs r0, 0xFF
|
||||
str r0, [sp, 0x4]
|
||||
movs r1, 0
|
||||
str r1, [sp, 0x8]
|
||||
adds r0, r7, 0
|
||||
movs r1, 0x2
|
||||
movs r3, 0x18
|
||||
bl AddTextPrinterParameterized
|
||||
mov r1, r10
|
||||
lsrs r0, r1, 24
|
||||
str r0, [sp]
|
||||
movs r0, 0xFF
|
||||
str r0, [sp, 0x4]
|
||||
movs r1, 0
|
||||
str r1, [sp, 0x8]
|
||||
adds r0, r7, 0
|
||||
movs r1, 0x2
|
||||
ldr r2, _0815E87C @ =gStringVar4
|
||||
movs r3, 0x60
|
||||
bl AddTextPrinterParameterized
|
||||
movs r0, 0xA0
|
||||
lsls r0, 21
|
||||
add r10, r0
|
||||
add r9, r0
|
||||
movs r1, 0x1
|
||||
add r8, r1
|
||||
mov r0, r8
|
||||
cmp r0, 0x3
|
||||
ble _0815E76C
|
||||
adds r0, r7, 0
|
||||
bl PutWindowTilemap
|
||||
adds r0, r7, 0
|
||||
movs r1, 0x3
|
||||
bl CopyWindowToVram
|
||||
ldr r0, _0815E888 @ =0x00004001
|
||||
adds r1, r7, 0
|
||||
bl VarSet
|
||||
add sp, 0xC
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E85C: .4byte gUnknown_847A218
|
||||
_0815E860: .4byte gUnknown_83FE982
|
||||
_0815E864: .4byte gSaveBlock1Ptr
|
||||
_0815E868: .4byte 0x00003d34
|
||||
_0815E86C: .4byte 0x00003d3c
|
||||
_0815E870: .4byte gStringVar1
|
||||
_0815E874: .4byte gStringVar2
|
||||
_0815E878: .4byte gStringVar3
|
||||
_0815E87C: .4byte gStringVar4
|
||||
_0815E880: .4byte gUnknown_83FE998
|
||||
_0815E884: .4byte gUnknown_83FE9C4
|
||||
_0815E888: .4byte 0x00004001
|
||||
thumb_func_end sub_815E720
|
||||
|
||||
thumb_func_start sub_815E88C
|
||||
sub_815E88C: @ 815E88C
|
||||
push {r4,lr}
|
||||
ldr r0, _0815E8B0 @ =0x00004001
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_810F4D8
|
||||
adds r0, r4, 0
|
||||
bl RemoveWindow
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E8B0: .4byte 0x00004001
|
||||
thumb_func_end sub_815E88C
|
||||
|
||||
thumb_func_start sub_815E8B4
|
||||
sub_815E8B4: @ 815E8B4
|
||||
push {r4,lr}
|
||||
ldr r4, _0815E8C8 @ =gSpecialVar_Result
|
||||
bl GetMonsStateToDoubles
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E8C8: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_815E8B4
|
||||
|
||||
thumb_func_start sub_815E8CC
|
||||
sub_815E8CC: @ 815E8CC
|
||||
push {lr}
|
||||
ldr r0, _0815E8EC @ =gUnknown_203F458
|
||||
ldr r1, [r0]
|
||||
ldrb r0, [r1, 0x4]
|
||||
ldrb r2, [r1, 0xD]
|
||||
cmp r0, r2
|
||||
beq _0815E8F8
|
||||
ldr r0, _0815E8F0 @ =gStringVar1
|
||||
ldrb r1, [r1, 0x4]
|
||||
movs r2, 0
|
||||
movs r3, 0x1
|
||||
bl ConvertIntToDecimalStringN
|
||||
ldr r1, _0815E8F4 @ =gSpecialVar_Result
|
||||
movs r0, 0x1
|
||||
b _0815E8FC
|
||||
.align 2, 0
|
||||
_0815E8EC: .4byte gUnknown_203F458
|
||||
_0815E8F0: .4byte gStringVar1
|
||||
_0815E8F4: .4byte gSpecialVar_Result
|
||||
_0815E8F8:
|
||||
ldr r1, _0815E904 @ =gSpecialVar_Result
|
||||
movs r0, 0
|
||||
_0815E8FC:
|
||||
strh r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E904: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_815E8CC
|
||||
|
||||
thumb_func_start sub_815E908
|
||||
sub_815E908: @ 815E908
|
||||
push {lr}
|
||||
ldr r0, _0815E928 @ =gMapHeader
|
||||
ldrh r1, [r0, 0x12]
|
||||
ldr r0, _0815E92C @ =0x00000129
|
||||
cmp r1, r0
|
||||
bne _0815E938
|
||||
ldr r0, _0815E930 @ =0x00004082
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
cmp r1, 0
|
||||
bne _0815E938
|
||||
ldr r0, _0815E934 @ =gSpecialVar_Result
|
||||
strh r1, [r0]
|
||||
b _0815E93E
|
||||
.align 2, 0
|
||||
_0815E928: .4byte gMapHeader
|
||||
_0815E92C: .4byte 0x00000129
|
||||
_0815E930: .4byte 0x00004082
|
||||
_0815E934: .4byte gSpecialVar_Result
|
||||
_0815E938:
|
||||
ldr r1, _0815E944 @ =gSpecialVar_Result
|
||||
movs r0, 0
|
||||
strh r0, [r1]
|
||||
_0815E93E:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E944: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_815E908
|
||||
|
||||
thumb_func_start sub_815E948
|
||||
sub_815E948: @ 815E948
|
||||
push {r4,lr}
|
||||
ldr r0, _0815E97C @ =0x00004001
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
ldr r0, _0815E980 @ =gUnknown_203F458
|
||||
ldr r3, [r0]
|
||||
lsls r1, r2, 2
|
||||
adds r1, r2
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
lsls r1, 3
|
||||
ldrb r2, [r3]
|
||||
lsls r0, r2, 5
|
||||
subs r0, r2
|
||||
lsls r0, 5
|
||||
adds r1, r0
|
||||
adds r3, r1
|
||||
ldrb r1, [r3, 0x1B]
|
||||
movs r3, 0
|
||||
ldr r2, _0815E984 @ =gUnknown_847A074
|
||||
ldr r0, _0815E988 @ =gFacilityClassToTrainerClass
|
||||
adds r1, r0
|
||||
b _0815E994
|
||||
.align 2, 0
|
||||
_0815E97C: .4byte 0x00004001
|
||||
_0815E980: .4byte gUnknown_203F458
|
||||
_0815E984: .4byte gUnknown_847A074
|
||||
_0815E988: .4byte gFacilityClassToTrainerClass
|
||||
_0815E98C:
|
||||
adds r2, 0x4
|
||||
adds r3, 0x1
|
||||
cmp r3, 0x68
|
||||
bhi _0815E99C
|
||||
_0815E994:
|
||||
ldrb r0, [r2]
|
||||
ldrb r4, [r1]
|
||||
cmp r0, r4
|
||||
bne _0815E98C
|
||||
_0815E99C:
|
||||
cmp r3, 0x69
|
||||
beq _0815E9B0
|
||||
ldr r1, _0815E9AC @ =gUnknown_847A074
|
||||
lsls r0, r3, 2
|
||||
adds r0, r1
|
||||
ldrb r2, [r0, 0x1]
|
||||
b _0815E9B2
|
||||
.align 2, 0
|
||||
_0815E9AC: .4byte gUnknown_847A074
|
||||
_0815E9B0:
|
||||
movs r2, 0
|
||||
_0815E9B2:
|
||||
ldr r0, _0815E9C4 @ =gUnknown_847A2D2
|
||||
lsls r1, r2, 1
|
||||
adds r1, r0
|
||||
ldrh r0, [r1]
|
||||
bl PlayNewMapMusic
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0815E9C4: .4byte gUnknown_847A2D2
|
||||
thumb_func_end sub_815E948
|
||||
|
||||
thumb_func_start sub_815E9C8
|
||||
sub_815E9C8: @ 815E9C8
|
||||
ldr r3, _0815E9EC @ =gSpecialVar_Result
|
||||
|
|
|
|||
|
|
@ -23,5 +23,6 @@ void sub_80F7974(const u8 *);
|
|||
u8 GetStartMenuWindowId(void);
|
||||
void sub_80F7998(void);
|
||||
void sub_80F69E8(u8 bgId, const void *src, u32 size, u16 offset, u8 mode);
|
||||
void sub_80F6F1C(u8 windowId, bool8 copyNow);
|
||||
|
||||
#endif // GUARD_NEW_MENU_HELPERS_H
|
||||
|
|
|
|||
|
|
@ -671,5 +671,6 @@ void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u
|
|||
void BattleAnimateBackSprite(struct Sprite* sprite, u16 species);
|
||||
|
||||
void PlayMapChosenOrBattleBGM(u16 songId);
|
||||
u8 GetMonsStateToDoubles(void);
|
||||
|
||||
#endif // GUARD_POKEMON_H
|
||||
|
|
|
|||
|
|
@ -18,6 +18,10 @@
|
|||
#include "battle_2.h"
|
||||
#include "overworld.h"
|
||||
#include "item.h"
|
||||
#include "window.h"
|
||||
#include "menu.h"
|
||||
#include "new_menu_helpers.h"
|
||||
#include "sound.h"
|
||||
|
||||
struct UnkStruct_8479D34
|
||||
{
|
||||
|
|
@ -98,6 +102,12 @@ struct UnkStruct_847A024
|
|||
bool8 unk4;
|
||||
};
|
||||
|
||||
struct UnkStruct_847A074
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
};
|
||||
|
||||
EWRAM_DATA struct UnkStruct_203F458 * gUnknown_203F458 = NULL;
|
||||
EWRAM_DATA struct UnkStruct_203F45C * gUnknown_203F45C = NULL;
|
||||
|
||||
|
|
@ -133,14 +143,21 @@ void sub_815EC0C(void);
|
|||
u32 sub_815EDDC(u32 *);
|
||||
void sub_815EDF4(u32 *, u32);
|
||||
|
||||
extern const u8 gUnknown_83FE982[];
|
||||
extern const u8 gUnknown_83FE998[];
|
||||
extern const u8 *const gUnknown_83FE9C4[];
|
||||
|
||||
extern const struct UnkStruct_8479D34 gUnknown_8479D34[15];
|
||||
extern const struct UnkStruct_8479ED8 gUnknown_8479ED8[83];
|
||||
extern const struct UnkStruct_847A024 gUnknown_847A024[10];
|
||||
extern const struct UnkStruct_847A074 gUnknown_847A074[105];
|
||||
extern const struct WindowTemplate gUnknown_847A218;
|
||||
extern void (*const gUnknown_847A230[])(void);
|
||||
extern const struct Unk_203F458_Header gUnknown_84827AC;
|
||||
extern const struct UnkSubstruct_203F458_000C *const gUnknown_84827B4[][8];
|
||||
extern const u16 gUnknown_847A284[8][3];
|
||||
extern const u16 gUnknown_847A2B4[];
|
||||
extern const u16 gUnknown_847A2D2[];
|
||||
|
||||
bool32 sub_815D7BC(void * dest, void * buffer)
|
||||
{
|
||||
|
|
@ -858,3 +875,133 @@ void sub_815E5C4(void)
|
|||
{
|
||||
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_3 = 1;
|
||||
}
|
||||
|
||||
void sub_815E5F0(void)
|
||||
{
|
||||
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_3)
|
||||
{
|
||||
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_3 = FALSE;
|
||||
gSpecialVar_Result = 0;
|
||||
}
|
||||
else if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_4)
|
||||
{
|
||||
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_4 = FALSE;
|
||||
gSpecialVar_Result = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialVar_Result = 2;
|
||||
}
|
||||
}
|
||||
|
||||
#define PRINT_TOWER_TIME(src) ({ \
|
||||
s32 minutes, seconds, centiseconds, frames; \
|
||||
\
|
||||
frames = (src); \
|
||||
\
|
||||
minutes = frames / 3600; \
|
||||
frames %= 3600; \
|
||||
seconds = frames / 60; \
|
||||
frames %= 60; \
|
||||
centiseconds = frames * 168 / 100; \
|
||||
\
|
||||
ConvertIntToDecimalStringN(gStringVar1, minutes, STR_CONV_MODE_RIGHT_ALIGN, 2); \
|
||||
ConvertIntToDecimalStringN(gStringVar2, seconds, STR_CONV_MODE_RIGHT_ALIGN, 2); \
|
||||
ConvertIntToDecimalStringN(gStringVar3, centiseconds, STR_CONV_MODE_LEADING_ZEROS, 2); \
|
||||
})
|
||||
|
||||
void sub_815E658(void)
|
||||
{
|
||||
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0 >= 215999)
|
||||
{
|
||||
DisableVBlankCounter1();
|
||||
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0 = 215999;
|
||||
}
|
||||
|
||||
PRINT_TOWER_TIME(gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0);
|
||||
}
|
||||
|
||||
void sub_815E720(void)
|
||||
{
|
||||
u8 windowId;
|
||||
s32 i;
|
||||
s32 minutes, seconds, centiseconds;
|
||||
|
||||
sub_815EC0C();
|
||||
windowId = AddWindow(&gUnknown_847A218);
|
||||
sub_80F6E9C();
|
||||
sub_80F6F1C(windowId, FALSE);
|
||||
AddTextPrinterParameterized(windowId, 2, gUnknown_83FE982, 0x4A, 0, 0xFF, NULL);
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
PRINT_TOWER_TIME(sub_815EDDC(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk4));
|
||||
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_83FE998);
|
||||
AddTextPrinterParameterized(windowId, 2, gUnknown_83FE9C4[i - 1], 0x18, 0x24 + 0x14 * i, 0xFF, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 0x60, 0x2E + 0x14 * i, 0xFF, NULL);
|
||||
}
|
||||
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, 3);
|
||||
VarSet(VAR_0x4001, windowId);
|
||||
}
|
||||
|
||||
void sub_815E88C(void)
|
||||
{
|
||||
u8 windowId = VarGet(VAR_0x4001);
|
||||
sub_810F4D8(windowId, TRUE);
|
||||
RemoveWindow(windowId);
|
||||
}
|
||||
|
||||
void sub_815E8B4(void)
|
||||
{
|
||||
gSpecialVar_Result = GetMonsStateToDoubles();
|
||||
}
|
||||
|
||||
void sub_815E8CC(void)
|
||||
{
|
||||
if (gUnknown_203F458->unk_0004.unk_0000.unk0 != gUnknown_203F458->unk_0004.unk_0008[0].unk_001)
|
||||
{
|
||||
ConvertIntToDecimalStringN(gStringVar1, gUnknown_203F458->unk_0004.unk_0000.unk0, STR_CONV_MODE_LEFT_ALIGN, 1);
|
||||
gSpecialVar_Result = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialVar_Result = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_815E908(void)
|
||||
{
|
||||
if (gMapHeader.mapDataId == 0x0129 && VarGet(VAR_0x4082) == 0)
|
||||
{
|
||||
gSpecialVar_Result = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialVar_Result = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_815E948(void)
|
||||
{
|
||||
s32 i;
|
||||
u16 var_4001 = VarGet(VAR_0x4001);
|
||||
u8 r1 = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_004[var_4001].unk_00B;
|
||||
|
||||
for (i = 0; i < NELEMS(gUnknown_847A074); i++)
|
||||
{
|
||||
if (gUnknown_847A074[i].unk0 == gFacilityClassToTrainerClass[r1])
|
||||
break;
|
||||
}
|
||||
if (i != NELEMS(gUnknown_847A074))
|
||||
{
|
||||
var_4001 = gUnknown_847A074[i].unk1;
|
||||
}
|
||||
else
|
||||
{
|
||||
var_4001 = 0;
|
||||
}
|
||||
PlayNewMapMusic(gUnknown_847A2D2[var_4001]);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user