From 5f7000446e7aa5bd6ed60edf5368b614a339eea6 Mon Sep 17 00:00:00 2001 From: red031000 Date: Wed, 14 Jun 2023 21:52:32 +0100 Subject: [PATCH 1/4] weather constants + bike riding --- arm9/asm/scrcmd_7.s | 4 +- arm9/asm/scrcmd_asm.s | 87 +------------------ arm9/asm/unk_02034D7C.s | 8 +- arm9/asm/unk_02036FA4.s | 2 +- arm9/asm/unk_020377F0.s | 2 +- arm9/asm/unk_02038C78.s | 4 +- arm9/asm/unk_02046030.s | 2 +- arm9/asm/unk_020476CC.s | 2 +- arm9/asm/unk_02048904.s | 6 +- arm9/asm/unk_0204AB0C.s | 16 ++-- arm9/asm/unk_0204B34C.s | 14 +-- arm9/asm/unk_0204C1B4.s | 20 ++--- arm9/asm/unk_0204CB20.s | 16 ++-- arm9/asm/unk_02050E48.s | 2 +- arm9/asm/unk_02052EE8.s | 2 +- arm9/asm/unk_02053750.s | 2 +- arm9/asm/unk_02055068.s | 64 +++++++------- arm9/asm/unk_020557F4.s | 66 +++++++------- arm9/asm/unk_02057380.s | 6 +- arm9/asm/unk_02058EE8.s | 10 +-- arm9/asm/unk_02059F04.s | 6 +- arm9/asm/unk_0205C334.s | 6 +- arm9/asm/unk_0205C598.s | 6 +- arm9/asm/unk_0205CE48.s | 26 +++--- arm9/asm/unk_0205DD18.s | 8 +- arm9/asm/unk_0205E4EC.s | 10 +-- arm9/asm/unk_02063948.s | 2 +- arm9/global.inc | 32 +++---- arm9/modules/05/asm/mod05_021D74E0.s | 8 +- arm9/modules/05/asm/mod05_021DA5B8.s | 48 +++++------ arm9/modules/05/asm/mod05_021E4AE4.s | 2 +- arm9/modules/05/asm/mod05_021E5FD8.s | 124 +++++++++++++-------------- arm9/modules/05/asm/mod05_021E7504.s | 4 +- arm9/modules/05/asm/mod05_021ED9C0.s | 2 +- arm9/modules/05/asm/mod05_021EDB70.s | 6 +- arm9/modules/05/asm/mod05_021F5C44.s | 10 +-- arm9/modules/05/src/mod05_021E72FC.c | 6 +- arm9/modules/06/asm/module_06.s | 46 +++++----- arm9/modules/18/asm/module_18.s | 2 +- arm9/src/scrcmd.c | 63 ++++++++++---- arm9/src/scrcmd_party.c | 4 +- arm9/src/scrcmd_sound.c | 6 +- arm9/src/unk_0206015C.c | 4 +- include/constants/global_fieldmap.h | 5 ++ include/constants/weather.h | 36 ++++++++ include/scrcmd.h | 2 + include/script.h | 2 +- 47 files changed, 400 insertions(+), 411 deletions(-) create mode 100644 include/constants/weather.h diff --git a/arm9/asm/scrcmd_7.s b/arm9/asm/scrcmd_7.s index c2586e4a7..0fbf7128a 100644 --- a/arm9/asm/scrcmd_7.s +++ b/arm9/asm/scrcmd_7.s @@ -627,7 +627,7 @@ ScrCmd_Unk00F0: ; 0x02041BC4 bl FieldSysGetAttrAddr add r5, r0, #0x0 ldr r0, [r5, #0x0] - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r4, r0, #0x0 ldr r0, [r5, #0x0] bl FUN_02058448 @@ -652,7 +652,7 @@ ScrCmd_Unk00F1: ; 0x02041BF0 bl ScriptReadWord add r4, r0, #0x0 ldr r0, [r5, #0x0] - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r7, r0, #0x0 ldr r0, [r5, #0x0] bl FUN_02058448 diff --git a/arm9/asm/scrcmd_asm.s b/arm9/asm/scrcmd_asm.s index cbb8789c2..a731885d1 100644 --- a/arm9/asm/scrcmd_asm.s +++ b/arm9/asm/scrcmd_asm.s @@ -10,89 +10,6 @@ .text - thumb_func_start ScrCmd_Unk00C8 -ScrCmd_Unk00C8: ; 0x0203CA5C - push {r4, lr} - add r4, r0, #0x0 - ldr r1, [r4, #0x8] - add r0, r1, #0x1 - str r0, [r4, #0x8] - ldrb r0, [r1, #0x0] - cmp r0, #0x1 - bne _0203CAA4 - add r0, r4, #0x0 - add r0, #0x80 - mov r1, #0x12 - ldr r0, [r0, #0x0] - lsl r1, r1, #0x6 - bl FUN_0204AB20 - add r0, r4, #0x0 - add r0, #0x80 - mov r1, #0x12 - ldr r0, [r0, #0x0] - lsl r1, r1, #0x6 - mov r2, #0x1 - bl FUN_0204ABDC - add r0, r4, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - mov r1, #0x2 - ldr r0, [r0, #0x38] - bl MOD05_021E5FD8 - add r4, #0x80 - ldr r0, [r4, #0x0] - ldr r0, [r0, #0x38] - bl MOD05_021E5FE0 - b _0203CAE4 -_0203CAA4: - add r0, r4, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - mov r1, #0x1 - ldr r0, [r0, #0x38] - bl MOD05_021E5FD8 - add r0, r4, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - ldr r0, [r0, #0x38] - bl MOD05_021E5FE0 - add r0, r4, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - mov r1, #0x0 - bl FUN_0204AB20 - add r0, r4, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - ldr r1, [r0, #0x1c] - ldr r1, [r1, #0x0] - bl FUN_0204AB58 - add r4, #0x80 - add r1, r0, #0x0 - ldr r0, [r4, #0x0] - mov r2, #0x1 - bl FUN_0204ABDC -_0203CAE4: - mov r0, #0x0 - pop {r4, pc} - - thumb_func_start ScrCmd_Unk02BF -ScrCmd_Unk02BF: ; 0x0203CAE8 - push {r4, lr} - add r4, r0, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - mov r1, #0x2 - ldr r0, [r0, #0x38] - bl MOD05_021E5FD8 - add r4, #0x80 - mov r1, #0x12 - ldr r0, [r4, #0x0] - lsl r1, r1, #0x6 - bl FUN_0204AB20 - mov r0, #0x0 - pop {r4, pc} - thumb_func_start ScrCmd_Unk00C9 ScrCmd_Unk00C9: ; 0x0203CB08 push {r3, lr} @@ -136,7 +53,7 @@ ScrCmd_Unk00CB: ; 0x0203CB48 add r1, r0, #0x0 ldr r0, [r4, #0x0] ldr r0, [r0, #0x38] - bl FUN_020553D4 + bl PlayerAvatar_OrrTransitionFlags mov r0, #0x1 pop {r4, pc} @@ -146,7 +63,7 @@ ScrCmd_Unk00CC: ; 0x0203CB60 add r0, #0x80 ldr r0, [r0, #0x0] ldr r0, [r0, #0x38] - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags mov r0, #0x0 pop {r3, pc} diff --git a/arm9/asm/unk_02034D7C.s b/arm9/asm/unk_02034D7C.s index d706a06fb..0d758e865 100644 --- a/arm9/asm/unk_02034D7C.s +++ b/arm9/asm/unk_02034D7C.s @@ -88,15 +88,15 @@ FUN_02034DE8: ; 0x02034DE8 add r0, #0x64 bx lr - thumb_func_start FUN_02034DEC -FUN_02034DEC: ; 0x02034DEC + thumb_func_start LocalFieldData_GetWeatherType +LocalFieldData_GetWeatherType: ; 0x02034DEC add r0, #0x66 ldrh r0, [r0, #0x0] bx lr .balign 4 - thumb_func_start FUN_02034DF4 -FUN_02034DF4: ; 0x02034DF4 + thumb_func_start LocalFieldData_SetWeatherType +LocalFieldData_SetWeatherType: ; 0x02034DF4 add r0, #0x66 strh r1, [r0, #0x0] bx lr diff --git a/arm9/asm/unk_02036FA4.s b/arm9/asm/unk_02036FA4.s index 0b9dbb70c..0a9d91a44 100644 --- a/arm9/asm/unk_02036FA4.s +++ b/arm9/asm/unk_02036FA4.s @@ -59,7 +59,7 @@ _02036FFA: FUN_02037000: ; 0x02037000 push {r3-r5, lr} add r5, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058BE4 add r4, r0, #0x0 add r0, r5, #0x0 diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s index 409fc6d92..4cb03a9e0 100644 --- a/arm9/asm/unk_020377F0.s +++ b/arm9/asm/unk_020377F0.s @@ -2348,7 +2348,7 @@ _020388CC: ldr r1, [r4, #0x1c] add r0, r4, #0x0 ldr r1, [r1, #0x0] - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r1, sp, #0x0 strh r0, [r1, #0xc] ldr r0, [r4, #0x10] diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s index e5ddcfd3a..77831d6cf 100644 --- a/arm9/asm/unk_02038C78.s +++ b/arm9/asm/unk_02038C78.s @@ -349,7 +349,7 @@ gScriptCmdTable: ; 0x020F355C .word ScrCmd_Cut .word ScrCmd_ApplyContestDress .word ScrCmd_CheckBike - .word ScrCmd_Unk00C8 + .word ScrCmd_RideBike .word ScrCmd_Unk00C9 .word ScrCmd_Unk00CA .word ScrCmd_Unk00CB @@ -852,7 +852,7 @@ gScriptCmdTable: ; 0x020F355C .word ScrCmd_Unk02BC .word ScrCmd_Unk02BD .word ScrCmd_Unk02BE - .word ScrCmd_Unk02BF + .word ScrCmd_DummyRideBike .word ScrCmd_Unk02C0 .word ScrCmd_Unk02C1 .word ScrCmd_Unk02C2 diff --git a/arm9/asm/unk_02046030.s b/arm9/asm/unk_02046030.s index b9c1caf5b..e67a3d944 100644 --- a/arm9/asm/unk_02046030.s +++ b/arm9/asm/unk_02046030.s @@ -239,7 +239,7 @@ _02046210: .word gSystem FUN_02046214: ; 0x02046214 push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_0205889C pop {r4, pc} diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s index d59672123..7bcc9baf1 100644 --- a/arm9/asm/unk_020476CC.s +++ b/arm9/asm/unk_020476CC.s @@ -552,7 +552,7 @@ FUN_02047A78: ; 0x02047A78 lsl r1, r1, #0x2 str r0, [r5, r1] ldr r0, [sp, #0x10] - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType mov r1, #0x5d lsl r1, r1, #0x2 str r0, [r5, r1] diff --git a/arm9/asm/unk_02048904.s b/arm9/asm/unk_02048904.s index ac0b24304..116c559cc 100644 --- a/arm9/asm/unk_02048904.s +++ b/arm9/asm/unk_02048904.s @@ -216,7 +216,7 @@ _02048A80: _02048A82: ldr r0, [sp, #0x4] add r1, r6, #0x0 - bl FUN_02034DF4 + bl LocalFieldData_SetWeatherType cmp r4, #0x0 beq _02048AA6 ldr r0, [sp, #0x4] @@ -1299,7 +1299,7 @@ _02049334: _0204934A: ldr r0, [r6, #0x38] mov r1, #0x0 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r1, r4, #0x0 add r0, r7, #0x0 add r1, #0x8 @@ -1532,7 +1532,7 @@ _020494FC: _02049512: ldr r0, [r5, #0x38] mov r1, #0x0 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r1, r4, #0x0 add r0, r7, #0x0 add r1, #0xc diff --git a/arm9/asm/unk_0204AB0C.s b/arm9/asm/unk_0204AB0C.s index da27f337a..770d44871 100644 --- a/arm9/asm/unk_0204AB0C.s +++ b/arm9/asm/unk_0204AB0C.s @@ -42,8 +42,8 @@ FUN_0204AB0C: ; 0x0204AB0C pop {r3, pc} .balign 4 - thumb_func_start FUN_0204AB20 -FUN_0204AB20: ; 0x0204AB20 + thumb_func_start FieldSystem_SetSavedMusicId +FieldSystem_SetSavedMusicId: ; 0x0204AB20 push {r4, lr} ldr r0, [r0, #0xc] add r4, r1, #0x0 @@ -73,8 +73,8 @@ FUN_0204AB44: ; 0x0204AB44 pop {r3, pc} .balign 4 - thumb_func_start FUN_0204AB58 -FUN_0204AB58: ; 0x0204AB58 + thumb_func_start FieldSystem_GetOverriddenMusicId +FieldSystem_GetOverriddenMusicId: ; 0x0204AB58 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0x38] @@ -139,8 +139,8 @@ _0204ABD8: add r0, r6, #0x0 pop {r4-r6, pc} - thumb_func_start FUN_0204ABDC -FUN_0204ABDC: ; 0x0204ABDC + thumb_func_start FieldSystem_PlayOrFadeToNewMusicId +FieldSystem_PlayOrFadeToNewMusicId: ; 0x0204ABDC push {r4-r7, lr} sub sp, #0x14 add r5, r0, #0x0 @@ -248,7 +248,7 @@ FUN_0204ACA8: ; 0x0204ACA8 add r4, r1, #0x0 add r5, r0, #0x0 add r6, r2, #0x0 - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r7, r0, #0x0 add r0, r4, #0x0 bl FUN_0204AD44 @@ -395,7 +395,7 @@ FUN_0204ADBC: ; 0x0204ADBC push {r4-r6, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r6, r0, #0x0 add r0, r5, #0x0 add r1, r4, #0x0 diff --git a/arm9/asm/unk_0204B34C.s b/arm9/asm/unk_0204B34C.s index 024683ae2..a0162fe24 100644 --- a/arm9/asm/unk_0204B34C.s +++ b/arm9/asm/unk_0204B34C.s @@ -643,7 +643,7 @@ FUN_0204B800: ; 0x0204B800 ldr r0, [r0, #0x38] add r4, r2, #0x0 add r5, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_0205AEA4 str r0, [r5, #0xc] @@ -679,11 +679,11 @@ _0204B83E: ; jump table (using 16-bit offset) _0204B848: ldr r0, [r5, #0x38] mov r1, #0x10 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags ldr r0, [r5, #0x38] - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058914 mov r0, #0x1 str r0, [r4, #0x0] @@ -823,7 +823,7 @@ _0204B972: ldr r1, [r4, #0x4] bl FUN_02055304 ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058908 add r0, r4, #0x0 bl FreeToHeap @@ -868,8 +868,8 @@ FUN_0204B9CC: ; 0x0204B9CC bl FUN_02055648 add r1, r0, #0x0 ldr r0, [r4, #0x38] - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags ldr r0, [r4, #0x38] - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags pop {r4, pc} .balign 4 diff --git a/arm9/asm/unk_0204C1B4.s b/arm9/asm/unk_0204C1B4.s index 309774373..630c3097d 100644 --- a/arm9/asm/unk_0204C1B4.s +++ b/arm9/asm/unk_0204C1B4.s @@ -543,7 +543,7 @@ _0204C5CC: bl PlayerAvatar_GetFacingDirection add r6, r0, #0x0 ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject cmp r6, #0x2 bne _0204C5E6 mov r1, #0xa @@ -564,7 +564,7 @@ _0204C5F6: b _0204C63C _0204C5FE: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0x0 bl FUN_0205AE28 cmp r0, #0x1 @@ -606,7 +606,7 @@ FUN_0204C644: ; 0x0204C644 bl FUN_0204652C add r4, r0, #0x0 ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r0, [r4, #0x4] cmp r0, #0x0 beq _0204C668 @@ -642,7 +642,7 @@ FUN_0204C68C: ; 0x0204C68C bl FUN_0204652C add r4, r0, #0x0 ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r0, [r4, #0x4] cmp r0, #0x0 beq _0204C6B0 @@ -693,7 +693,7 @@ _0204C6F8: ; jump table (using 16-bit offset) .short _0204C794 - _0204C6F8 - 2; case 3 _0204C700: ldr r0, [r4, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0x0 ldr r0, [r4, #0x38] bl GetPlayerXCoord @@ -748,7 +748,7 @@ _0204C770: add r0, r5, #0x0 bl MOD05_021DA5C8 ldr r0, [r4, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0x0 bl FUN_0205889C mov r0, #0x1 @@ -779,7 +779,7 @@ FUN_0204C7A0: ; 0x0204C7A0 b _0204C818 _0204C7BE: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0x0 ldr r0, [r5, #0x38] bl GetPlayerXCoord @@ -908,7 +908,7 @@ _0204C8C8: mov r0, #0x1 bl MOD05_021D7CA4 ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0x0 ldr r0, [r5, #0x38] bl PlayerAvatar_GetFacingDirection @@ -934,7 +934,7 @@ _0204C8FC: b _0204C936 _0204C904: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0x0 bl FUN_0205AE28 cmp r0, #0x1 @@ -971,7 +971,7 @@ FUN_0204C93C: ; 0x0204C93C bl FUN_0204652C add r4, r0, #0x0 ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r0, [r4, #0x4] cmp r0, #0x0 beq _0204C960 diff --git a/arm9/asm/unk_0204CB20.s b/arm9/asm/unk_0204CB20.s index b0a15c0d1..d1df3e486 100644 --- a/arm9/asm/unk_0204CB20.s +++ b/arm9/asm/unk_0204CB20.s @@ -1136,7 +1136,7 @@ _0204D3B2: add r0, r0, r6 str r7, [r0, #0x8] add r0, r7, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0x1 lsl r1, r1, #0x8 add r1, r5, r1 @@ -2392,7 +2392,7 @@ _0204DD54: mov r0, #0x1 pop {r3-r7, pc} _0204DD5E: - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 ldr r0, _0204DE28 ; =UNK_021C5A68 ldr r1, [r0, #0x0] @@ -3015,7 +3015,7 @@ FUN_0204E214: ; 0x0204E214 ldr r0, [r0, #0x8] cmp r0, #0x0 beq _0204E248 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0x80 add r6, r0, #0x0 bl FUN_02058410 @@ -3052,7 +3052,7 @@ FUN_0204E254: ; 0x0204E254 mvn r1, r1 cmp r2, r1 beq _0204E29E - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0x0 bl FUN_0205AE50 add r0, r5, #0x0 @@ -4864,7 +4864,7 @@ _0204F004: cmp r0, #0x0 bne _0204F01E add r0, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl MOD05_021E5970 ldr r1, _0204F06C ; =UNK_021C5A68 ldr r2, [r1, #0x0] @@ -4884,7 +4884,7 @@ _0204F02C: cmp r0, #0x0 bne _0204F068 add r0, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl MOD05_021E57D4 ldr r1, _0204F06C ; =UNK_021C5A68 ldr r2, [r1, #0x0] @@ -4897,7 +4897,7 @@ _0204F048: cmp r0, #0x0 bne _0204F068 add r0, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl MOD05_021E5614 ldr r1, _0204F06C ; =UNK_021C5A68 ldr r2, [r1, #0x0] @@ -5951,7 +5951,7 @@ _0204F89E: ldr r0, [r0, #0x0] add r0, r0, r4 ldr r0, [r0, #0x8] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r1, _0204F908 ; =UNK_021C5A68 str r0, [sp, #0xc] ldr r1, [r1, #0x0] diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s index 384f64b15..3292dbcfa 100644 --- a/arm9/asm/unk_02050E48.s +++ b/arm9/asm/unk_02050E48.s @@ -534,7 +534,7 @@ _0205123E: b _020517B8 _02051256: ldr r0, [r0, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_0205AE28 cmp r0, #0x0 beq _020512FA diff --git a/arm9/asm/unk_02052EE8.s b/arm9/asm/unk_02052EE8.s index 81e2cd310..370a3e5ea 100644 --- a/arm9/asm/unk_02052EE8.s +++ b/arm9/asm/unk_02052EE8.s @@ -552,7 +552,7 @@ _0205330A: _02053316: ldr r0, [sp, #0x0] ldr r0, [r0, #0x8] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r0, #0x0 ldr r2, _02053338 ; =0x000004BC ldr r0, [sp, #0x0] diff --git a/arm9/asm/unk_02053750.s b/arm9/asm/unk_02053750.s index c0368126a..70a23b473 100644 --- a/arm9/asm/unk_02053750.s +++ b/arm9/asm/unk_02053750.s @@ -95,7 +95,7 @@ _0205377A: ; jump table (using 16-bit offset) _02053786: ldr r0, [r4, #0x0] ldr r0, [r0, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058914 ldr r0, [r4, #0x0] mov r1, #0x0 diff --git a/arm9/asm/unk_02055068.s b/arm9/asm/unk_02055068.s index 973df7ab2..79d5304c6 100644 --- a/arm9/asm/unk_02055068.s +++ b/arm9/asm/unk_02055068.s @@ -19,7 +19,7 @@ FUN_02055068: ; 0x02055068 bl FUN_0205519C ldr r0, [sp, #0x20] ldr r1, [sp, #0x24] - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r2, r0, #0x0 str r5, [sp, #0x0] ldr r3, [sp, #0x8] @@ -53,7 +53,7 @@ FUN_020550A4: ; 0x020550A4 add r4, r0, #0x0 ldr r0, [sp, #0x0] add r1, r6, #0x0 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0x0 add r0, r4, #0x0 bl FUN_02058454 @@ -79,7 +79,7 @@ FUN_020550A4: ; 0x020550A4 FUN_02055108: ; 0x02055108 push {r3-r7, lr} add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bne _02055118 bl GF_AssertFail @@ -125,7 +125,7 @@ _02055164: .word FreeToHeap FUN_02055168: ; 0x02055168 push {r4, lr} add r4, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02057654 add r0, r4, #0x0 bl FUN_02055160 @@ -164,13 +164,13 @@ FUN_0205519C: ; 0x0205519C bl FUN_02055374 add r0, r5, #0x0 add r1, r4, #0x0 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r0, r5, #0x0 add r1, r6, #0x0 bl FUN_020553E4 add r0, r5, #0x0 mov r1, #0x0 - bl FUN_020553DC + bl PlayerAvatar_SetTransitionFlags add r0, r5, #0x0 bl FUN_02055410 mov r1, #0x0 @@ -309,7 +309,7 @@ _020552F2: thumb_func_start PlayerAvatar_GetFacingDirection PlayerAvatar_GetFacingDirection: ; 0x020552F8 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_020584C4 pop {r3, pc} @@ -317,7 +317,7 @@ PlayerAvatar_GetFacingDirection: ; 0x020552F8 FUN_02055304: ; 0x02055304 push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_020584AC pop {r4, pc} @@ -325,35 +325,35 @@ FUN_02055304: ; 0x02055304 thumb_func_start FUN_02055314 FUN_02055314: ; 0x02055314 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_020584D4 pop {r3, pc} thumb_func_start GetPlayerXCoord GetPlayerXCoord: ; 0x02055320 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058B2C pop {r3, pc} thumb_func_start GetPlayerYCoord GetPlayerYCoord: ; 0x0205532C push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058B4C pop {r3, pc} thumb_func_start FUN_02055338 FUN_02055338: ; 0x02055338 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058B14 pop {r3, pc} thumb_func_start FUN_02055344 FUN_02055344: ; 0x02055344 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058B24 pop {r3, pc} @@ -361,7 +361,7 @@ FUN_02055344: ; 0x02055344 FUN_02055350: ; 0x02055350 push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_02058B5C pop {r4, pc} @@ -397,7 +397,7 @@ FUN_02055378: ; 0x02055378 FUN_0205537C: ; 0x0205537C push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject cmp r4, #0x1 bne _02055392 mov r1, #0x2 @@ -415,8 +415,8 @@ FUN_0205539C: ; 0x0205539C str r1, [r0, #0x2c] bx lr - thumb_func_start FUN_020553A0 -FUN_020553A0: ; 0x020553A0 + thumb_func_start PlayerAvatar_GetMapObject +PlayerAvatar_GetMapObject: ; 0x020553A0 ldr r0, [r0, #0x2c] bx lr @@ -425,8 +425,8 @@ FUN_020553A4: ; 0x020553A4 ldr r0, [r0, #0x2c] bx lr - thumb_func_start FUN_020553A8 -FUN_020553A8: ; 0x020553A8 + thumb_func_start PlayerAvatar_SetState +PlayerAvatar_SetState: ; 0x020553A8 push {r3-r5, lr} add r4, r1, #0x0 add r5, r0, #0x0 @@ -452,20 +452,20 @@ _020553CE: pop {r4, pc} .balign 4 - thumb_func_start FUN_020553D4 -FUN_020553D4: ; 0x020553D4 + thumb_func_start PlayerAvatar_OrrTransitionFlags +PlayerAvatar_OrrTransitionFlags: ; 0x020553D4 ldr r2, [r0, #0x4] orr r1, r2 str r1, [r0, #0x4] bx lr - thumb_func_start FUN_020553DC -FUN_020553DC: ; 0x020553DC + thumb_func_start PlayerAvatar_SetTransitionFlags +PlayerAvatar_SetTransitionFlags: ; 0x020553DC str r1, [r0, #0x4] bx lr - thumb_func_start FUN_020553E0 -FUN_020553E0: ; 0x020553E0 + thumb_func_start PlayerAvatar_GetTransitionFlags +PlayerAvatar_GetTransitionFlags: ; 0x020553E0 ldr r0, [r0, #0x4] bx lr @@ -696,7 +696,7 @@ FUN_020554EC: ; 0x020554EC add r4, r1, #0x0 add r6, r2, #0x0 add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 add r2, r6, #0x0 bl FUN_02058DBC @@ -716,7 +716,7 @@ FUN_02055514: ; 0x02055514 add r7, r2, #0x0 add r5, r0, #0x0 add r4, r3, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r6, #0x0 mov r2, #0x0 add r3, r7, #0x0 @@ -735,7 +735,7 @@ FUN_02055540: ; 0x02055540 push {r4-r5, lr} sub sp, #0xc add r5, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 add r1, sp, #0x0 bl FUN_02058B5C @@ -750,7 +750,7 @@ FUN_02055540: ; 0x02055540 FUN_02055560: ; 0x02055560 push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject cmp r4, #0x1 bne _02055574 mov r1, #0x0 @@ -765,7 +765,7 @@ _02055574: FUN_0205557C: ; 0x0205557C push {r3-r5, lr} add r5, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 cmp r5, #0x1 bne _02055598 @@ -779,8 +779,8 @@ _02055598: bl FUN_02058960 pop {r3-r5, pc} - thumb_func_start FUN_020555A0 -FUN_020555A0: ; 0x020555A0 + thumb_func_start PlayerAvatar_GetSpriteByStateAndGender +PlayerAvatar_GetSpriteByStateAndGender: ; 0x020555A0 push {r3, lr} cmp r1, #0x0 bne _020555F2 diff --git a/arm9/asm/unk_020557F4.s b/arm9/asm/unk_020557F4.s index 7112182ad..ba3c14284 100644 --- a/arm9/asm/unk_020557F4.s +++ b/arm9/asm/unk_020557F4.s @@ -50,7 +50,7 @@ _02055812: add r2, r6, #0x0 bl FUN_02055900 add r0, r5, #0x0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r0, r5, #0x0 add r1, r4, #0x0 bl FUN_02055BD4 @@ -106,7 +106,7 @@ FUN_020558A0: ; 0x020558A0 push {r4-r6, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0x0 bl FUN_0205AD98 cmp r0, #0x1 @@ -192,7 +192,7 @@ FUN_02055928: ; 0x02055928 mov r1, #0x0 bl FUN_0205574C add r0, r4, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0x0 bl FUN_02058A18 _02055964: @@ -207,7 +207,7 @@ FUN_02055968: ; 0x02055968 cmp r0, #0x1 bne _02055A20 add r0, r4, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_02058720 lsl r0, r0, #0x18 @@ -298,7 +298,7 @@ FUN_02055A38: ; 0x02055A38 bl FUN_02055378 add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 @@ -438,7 +438,7 @@ _02055B5C: pop {r3-r5, pc} _02055B60: add r0, r5, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_0205AD98 cmp r0, #0x1 @@ -469,7 +469,7 @@ FUN_02055B8C: ; 0x02055B8C mov r1, #0x0 bl FUN_02055374 add r0, r4, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 add r1, r5, #0x0 bl FUN_020584AC @@ -507,7 +507,7 @@ FUN_02055BEC: ; 0x02055BEC add r5, r0, #0x0 add r6, r1, #0x0 mov r4, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058720 add r7, r0, #0x0 add r0, r5, #0x0 @@ -582,7 +582,7 @@ FUN_02055C6C: ; 0x02055C6C FUN_02055C78: ; 0x02055C78 push {r3-r7, lr} add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_020584D4 add r6, r0, #0x0 @@ -716,7 +716,7 @@ FUN_02055DAC: ; 0x02055DAC push {r3-r7, lr} add r5, r0, #0x0 add r7, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0x0 bl FUN_020584D4 add r4, r0, #0x0 @@ -858,7 +858,7 @@ _02055EF4: .word 0x00000654 FUN_02055EF8: ; 0x02055EF8 push {r3-r5, lr} add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_020584D4 add r0, r5, #0x0 @@ -893,7 +893,7 @@ _02055F40: .word 0x00000656 FUN_02055F44: ; 0x02055F44 push {r3-r5, lr} add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_020584D4 add r0, r5, #0x0 @@ -928,7 +928,7 @@ _02055F8C: .word 0x00000656 FUN_02055F90: ; 0x02055F90 push {r3-r5, lr} add r5, r0, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 add r0, r5, #0x0 add r1, r4, #0x0 @@ -979,7 +979,7 @@ FUN_02055FFC: ; 0x02055FFC cmp r0, #0x1 bne _0205603E add r0, r4, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0x6 lsl r1, r1, #0x6 bl FUN_02058418 @@ -1007,9 +1007,9 @@ FUN_02056040: ; 0x02056040 push {r4-r6, lr} sub sp, #0x18 add r5, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r6, r0, #0x0 add r0, r4, #0x0 add r1, sp, #0xc @@ -1083,7 +1083,7 @@ FUN_020560D0: ; 0x020560D0 push {r3-r7, lr} add r5, r0, #0x0 add r6, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0x0 add r0, r5, #0x0 mov r4, #0x10 @@ -1124,7 +1124,7 @@ FUN_02056110: ; 0x02056110 bl PlayerAvatar_GetState add r4, r0, #0x0 add r0, r6, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r0, #0x0 cmp r4, #0x0 beq _02056136 @@ -2547,7 +2547,7 @@ FUN_02056C0C: ; 0x02056C0C orr r4, r0 _02056C60: add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr ldr r2, [sp, #0x14] add r1, sp, #0x18 str r1, [sp, #0x0] @@ -2610,7 +2610,7 @@ FUN_02056CCC: ; 0x02056CCC cmp r4, r0 beq _02056D54 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x0] add r0, r5, #0x0 bl FUN_02058B2C @@ -2679,7 +2679,7 @@ FUN_02056D58: ; 0x02056D58 cmp r4, r0 beq _02056E00 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r7, r0, #0x0 add r0, r5, #0x0 bl FUN_02058B2C @@ -2763,7 +2763,7 @@ FUN_02056E04: ; 0x02056E04 cmp r5, r0 beq _02056E68 add r0, r4, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x0] add r0, r4, #0x0 bl FUN_02058B2C @@ -2813,7 +2813,7 @@ FUN_02056E6C: ; 0x02056E6C cmp r4, r0 beq _02056EC2 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x0] add r0, r5, #0x0 bl FUN_02058B2C @@ -2857,7 +2857,7 @@ FUN_02056EC8: ; 0x02056EC8 cmp r4, r0 beq _02056F72 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x4] add r0, r5, #0x0 bl FUN_02058B2C @@ -2945,7 +2945,7 @@ FUN_02056F78: ; 0x02056F78 cmp r0, #0x1 bne _0205701A add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x0] add r0, r5, #0x0 bl FUN_02058B2C @@ -3114,7 +3114,7 @@ _020570C0: thumb_func_start FUN_020570C4 FUN_020570C4: ; 0x020570C4 push {r4, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_0205AD98 cmp r0, #0x1 @@ -3262,7 +3262,7 @@ _020571C6: pop {r3-r7, pc} _020571D4: add r0, r5, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r0, [sp, #0x1c] mov r4, #0x4 add r1, r0, #0x0 @@ -3336,7 +3336,7 @@ _02057250: .word 0x00000601 thumb_func_start FUN_02057254 FUN_02057254: ; 0x02057254 push {r3, lr} - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_0205AD98 pop {r3, pc} @@ -3345,7 +3345,7 @@ FUN_02057260: ; 0x02057260 push {r3-r5, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r0, #0x0 add r0, r5, #0x0 add r2, r4, #0x0 @@ -3357,7 +3357,7 @@ FUN_02057260: ; 0x02057260 FUN_02057278: ; 0x02057278 push {r4, lr} add r4, r1, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_02059C90 pop {r4, pc} @@ -3403,8 +3403,8 @@ FUN_020572B8: ; 0x020572B8 thumb_func_start FUN_020572D4 FUN_020572D4: ; 0x020572D4 push {r3, lr} - bl FUN_020553A0 - bl FUN_02058738 + bl PlayerAvatar_GetMapObject + bl MapObject_GetFieldSysPtr ldr r0, [r0, #0xc] bl Save_GameStats_Get mov r1, #0x5 @@ -3481,7 +3481,7 @@ _0205735A: pop {r3-r5, pc} _02057368: add r0, r5, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0x0 bl FUN_02059B94 cmp r0, #0x1 diff --git a/arm9/asm/unk_02057380.s b/arm9/asm/unk_02057380.s index 7195736df..21f033fd7 100644 --- a/arm9/asm/unk_02057380.s +++ b/arm9/asm/unk_02057380.s @@ -365,7 +365,7 @@ FUN_02057688: ; 0x02057688 bl FUN_02058490 add r5, r0, #0x0 add r0, r4, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr lsl r1, r5, #0x10 lsr r1, r1, #0x10 bl FlagSet @@ -2691,8 +2691,8 @@ FUN_02058730: ; 0x02058730 bx lr .balign 4 - thumb_func_start FUN_02058738 -FUN_02058738: ; 0x02058738 + thumb_func_start MapObject_GetFieldSysPtr +MapObject_GetFieldSysPtr: ; 0x02058738 push {r3, lr} bl FUN_02058580 bl FUN_020583E8 diff --git a/arm9/asm/unk_02058EE8.s b/arm9/asm/unk_02058EE8.s index 105b2203a..d61374e46 100644 --- a/arm9/asm/unk_02058EE8.s +++ b/arm9/asm/unk_02058EE8.s @@ -2374,7 +2374,7 @@ FUN_02059874: ; 0x02059874 orr r4, r0 _02059896: add r0, r6, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, sp, #0xc str r1, [sp, #0x0] ldr r1, [sp, #0x4] @@ -2606,7 +2606,7 @@ FUN_02059A60: ; 0x02059A60 add r6, r1, #0x0 add r7, r2, #0x0 add r5, r3, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x0] add r0, r4, #0x0 bl FUN_02058720 @@ -2906,7 +2906,7 @@ FUN_02059C90: ; 0x02059C90 bl FUN_02059C00 add r5, r0, #0x0 add r0, r4, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr ldr r2, [sp, #0x0] add r1, r6, r7 add r2, r2, r5 @@ -2992,7 +2992,7 @@ _02059D4E: bl FUN_02058AE4 add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, sp, #0x0 add r2, r4, #0x0 bl FUN_02059EC8 @@ -3043,7 +3043,7 @@ FUN_02059DB4: ; 0x02059DB4 bl FUN_02058B24 add r6, r0, #0x0 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r4, #0x0 add r2, r6, #0x0 add r7, r0, #0x0 diff --git a/arm9/asm/unk_02059F04.s b/arm9/asm/unk_02059F04.s index 307cf88af..6d3de04ff 100644 --- a/arm9/asm/unk_02059F04.s +++ b/arm9/asm/unk_02059F04.s @@ -1694,7 +1694,7 @@ FUN_0205AB20: ; 0x0205AB20 pop {r3-r7, pc} _0205AB36: add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 add r6, r0, #0x0 bl FUN_02057124 @@ -1724,7 +1724,7 @@ _0205AB68: pop {r3-r7, pc} _0205AB72: add r0, r6, #0x0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058BE4 add r4, r0, #0x0 add r0, r5, #0x0 @@ -1823,7 +1823,7 @@ _0205AC22: bl FUN_02058B4C str r0, [sp, #0x4] ldr r0, [sp, #0x0] - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 str r0, [sp, #0xc] bl GetPlayerXCoord diff --git a/arm9/asm/unk_0205C334.s b/arm9/asm/unk_0205C334.s index 6327651cc..9046c18ee 100644 --- a/arm9/asm/unk_0205C334.s +++ b/arm9/asm/unk_0205C334.s @@ -66,7 +66,7 @@ FUN_0205C390: ; 0x0205C390 bl FUN_020585B0 add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r5, #0x0 bl FUN_0204B5FC strh r0, [r4, #0x0] @@ -104,7 +104,7 @@ FUN_0205C3D0: ; 0x0205C3D0 bl FUN_02058628 add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r5, #0x0 bl FUN_0204B5FC add r6, r0, #0x0 @@ -121,7 +121,7 @@ FUN_0205C3D0: ; 0x0205C3D0 add r1, #0x8 bl MOD05_021F2094 add r0, r5, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r5, #0x0 bl FUN_0204B61C add r1, r6, #0x0 diff --git a/arm9/asm/unk_0205C598.s b/arm9/asm/unk_0205C598.s index cb2e106cf..2e13f4390 100644 --- a/arm9/asm/unk_0205C598.s +++ b/arm9/asm/unk_0205C598.s @@ -789,7 +789,7 @@ FUN_0205CB5C: ; 0x0205CB5C push {r4, lr} add r4, r0, #0x0 ldr r0, [r4, #0x28] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_0205AE28 cmp r0, #0x0 bne _0205CB72 @@ -1022,7 +1022,7 @@ FUN_0205CCEC: ; 0x0205CCEC push {r3-r7, lr} add r5, r0, #0x0 ldr r0, [r5, #0x28] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0x0 bl FUN_02058B2C add r6, r0, #0x0 @@ -1079,7 +1079,7 @@ FUN_0205CD68: ; 0x0205CD68 push {r3-r5, lr} add r4, r0, #0x0 ldr r0, [r4, #0x28] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0x0 bl FUN_0205AE28 cmp r0, #0x0 diff --git a/arm9/asm/unk_0205CE48.s b/arm9/asm/unk_0205CE48.s index 5875ce204..8f598113b 100644 --- a/arm9/asm/unk_0205CE48.s +++ b/arm9/asm/unk_0205CE48.s @@ -582,43 +582,43 @@ _0205D296: cmp r0, #0x1 bne _0205D2D6 ldr r0, [r4, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058914 ldr r0, [r4, #0x38] mov r1, #0x1 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags ldr r0, [r4, #0x38] - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r0, r4, #0x0 mov r1, #0x0 - bl FUN_0204AB20 + bl FieldSystem_SetSavedMusicId ldr r1, [r4, #0x1c] add r0, r4, #0x0 ldr r1, [r1, #0x0] - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r1, r0, #0x0 add r0, r4, #0x0 mov r2, #0x1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId b _0205D30C _0205D2D6: mov r1, #0x12 add r0, r4, #0x0 lsl r1, r1, #0x6 - bl FUN_0204AB20 + bl FieldSystem_SetSavedMusicId mov r1, #0x12 add r0, r4, #0x0 lsl r1, r1, #0x6 mov r2, #0x1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId ldr r0, [r4, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058914 ldr r0, [r4, #0x38] mov r1, #0x2 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags ldr r0, [r4, #0x38] - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r4, #0x90 ldr r0, [r4, #0x0] bl FUN_0205DD40 @@ -658,7 +658,7 @@ _0205D336: pop {r3-r5, pc} _0205D344: ldr r0, [r4, #0x14] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldrh r1, [r4, #0xe] add r5, r0, #0x0 bl FUN_02059BB4 @@ -1357,7 +1357,7 @@ _0205D86E: bne _0205D8AC _0205D898: ldr r0, [r4, #0x14] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058A68 cmp r0, #0x1 bne _0205D8AC diff --git a/arm9/asm/unk_0205DD18.s b/arm9/asm/unk_0205DD18.s index 189d41b85..26f119973 100644 --- a/arm9/asm/unk_0205DD18.s +++ b/arm9/asm/unk_0205DD18.s @@ -219,11 +219,11 @@ _0205DE90: add r1, r0, #0x0 ldr r1, [r1, #0x1c] ldr r1, [r1, #0x0] - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r1, r0, #0x0 ldr r0, [sp, #0xc] mov r2, #0x1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId b _0205DEC4 _0205DEBE: ldr r0, [sp, #0x18] @@ -558,11 +558,11 @@ _0205E102: ldr r1, [r7, #0x1c] add r0, r7, #0x0 ldr r1, [r1, #0x0] - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r1, r0, #0x0 add r0, r7, #0x0 mov r2, #0x1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId _0205E126: pop {r3-r7, pc} diff --git a/arm9/asm/unk_0205E4EC.s b/arm9/asm/unk_0205E4EC.s index 5b80931b9..204a92a75 100644 --- a/arm9/asm/unk_0205E4EC.s +++ b/arm9/asm/unk_0205E4EC.s @@ -155,7 +155,7 @@ _0205E5DA: FUN_0205E5E0: ; 0x0205E5E0 push {r3-r5, lr} add r5, r1, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 mov r1, #0x1 add r4, r0, #0x0 @@ -174,7 +174,7 @@ FUN_0205E5E0: ; 0x0205E5E0 FUN_0205E608: ; 0x0205E608 push {r4-r6, lr} add r5, r1, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 add r6, r0, #0x0 beq _0205E638 @@ -201,7 +201,7 @@ _0205E638: FUN_0205E63C: ; 0x0205E63C push {r3-r5, lr} add r5, r1, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 add r4, r0, #0x0 bl GetPlayerXCoord @@ -215,7 +215,7 @@ FUN_0205E63C: ; 0x0205E63C thumb_func_start FUN_0205E65C FUN_0205E65C: ; 0x0205E65C push {r3, lr} - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 bl FUN_02055464 add r1, r0, #0x0 @@ -253,7 +253,7 @@ FUN_0205E698: ; 0x0205E698 push {r3-r7, lr} sub sp, #0x8 add r5, r0, #0x0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr bl FUN_02055698 add r4, r0, #0x0 add r0, r5, #0x0 diff --git a/arm9/asm/unk_02063948.s b/arm9/asm/unk_02063948.s index a40202947..d7f9b610f 100644 --- a/arm9/asm/unk_02063948.s +++ b/arm9/asm/unk_02063948.s @@ -138,7 +138,7 @@ _02063A18: _02063A2C: ldr r0, [r5, #0xc] bl Save_LocalFieldData_Get - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType cmp r0, #0xe beq _02063A42 cmp r0, #0x10 diff --git a/arm9/global.inc b/arm9/global.inc index f16713bb5..9670fbe7c 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -2554,8 +2554,8 @@ .extern FUN_02034DD0 .extern FUN_02034DD4 .extern FUN_02034DE8 -.extern FUN_02034DEC -.extern FUN_02034DF4 +.extern LocalFieldData_GetWeatherType +.extern LocalFieldData_SetWeatherType .extern FUN_02034DFC .extern FUN_02034E04 .extern FUN_02034E0C @@ -2886,8 +2886,8 @@ .extern ScrCmd_Cut .extern ScrCmd_ApplyContestDress .extern ScrCmd_CheckBike -.extern ScrCmd_Unk00C8 -.extern ScrCmd_Unk02BF +.extern ScrCmd_RideBike +.extern ScrCmd_DummyRideBike .extern ScrCmd_Unk00C9 .extern ScrCmd_Unk00CA .extern ScrCmd_Unk00CB @@ -3524,11 +3524,11 @@ .extern FUN_0204AA5C .extern FUN_0204AAD4 .extern FUN_0204AB0C -.extern FUN_0204AB20 +.extern FieldSystem_SetSavedMusicId .extern FUN_0204AB44 -.extern FUN_0204AB58 +.extern FieldSystem_GetOverriddenMusicId .extern FUN_0204ABA8 -.extern FUN_0204ABDC +.extern FieldSystem_PlayOrFadeToNewMusicId .extern FUN_0204ACA8 .extern FUN_0204AD0C .extern FUN_0204AD60 @@ -3912,12 +3912,12 @@ .extern FUN_02055374 .extern FUN_02055378 .extern FUN_0205537C -.extern FUN_020553A0 -.extern FUN_020553A8 +.extern PlayerAvatar_GetMapObject +.extern PlayerAvatar_SetState .extern PlayerAvatar_GetState -.extern FUN_020553D4 -.extern FUN_020553DC -.extern FUN_020553E0 +.extern PlayerAvatar_OrrTransitionFlags +.extern PlayerAvatar_SetTransitionFlags +.extern PlayerAvatar_GetTransitionFlags .extern PlayerAvatar_GetGender .extern FUN_02055408 .extern FUN_0205540C @@ -3941,7 +3941,7 @@ .extern FUN_02055540 .extern FUN_02055560 .extern FUN_0205557C -.extern FUN_020555A0 +.extern PlayerAvatar_GetSpriteByStateAndGender .extern FUN_02055648 .extern FUN_02055698 .extern FUN_0205569C @@ -4071,7 +4071,7 @@ .extern FUN_02058720 .extern FUN_02058728 .extern FUN_02058730 -.extern FUN_02058738 +.extern MapObject_GetFieldSysPtr .extern FUN_02058744 .extern FUN_02058750 .extern FUN_02058768 @@ -6676,8 +6676,8 @@ .extern MOD05_021E5E10 .extern MOD05_021E5E2C .extern MOD05_021E5E8C -.extern MOD05_021E5FD8 -.extern MOD05_021E5FE0 +.extern Field_PlayerAvatar_OrrTransitionFlags +.extern Field_PlayerAvatar_ApplyTransitionFlags .extern MOD05_021E61A4 .extern CallFieldTask_Surf .extern MOD05_021E643C diff --git a/arm9/modules/05/asm/mod05_021D74E0.s b/arm9/modules/05/asm/mod05_021D74E0.s index 00d2b8262..c157565f0 100644 --- a/arm9/modules/05/asm/mod05_021D74E0.s +++ b/arm9/modules/05/asm/mod05_021D74E0.s @@ -130,7 +130,7 @@ _021D75DE: bl MOD05_021D7E4C ldr r0, [r4, #0xc] bl Save_LocalFieldData_Get - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType add r1, r0, #0 ldr r0, [r4, #4] ldr r0, [r0, #0xc] @@ -463,15 +463,15 @@ _021D78CE: ldr r1, [r5, #0x1c] add r0, r5, #0 ldr r1, [r1] - bl FUN_0204AB58 + bl FieldSystem_GetOverriddenMusicId add r1, r0, #0 add r0, r5, #0 mov r2, #1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId add r0, r5, #0 bl FUN_02034AC8 add r0, r7, #0 - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType add r1, r0, #0 ldr r0, [r5, #4] ldr r0, [r0, #0xc] diff --git a/arm9/modules/05/asm/mod05_021DA5B8.s b/arm9/modules/05/asm/mod05_021DA5B8.s index 16b689622..be71b506c 100644 --- a/arm9/modules/05/asm/mod05_021DA5B8.s +++ b/arm9/modules/05/asm/mod05_021DA5B8.s @@ -179,7 +179,7 @@ _021DA6EC: b _021DA78E _021DA700: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0xc bl FUN_0205ADDC ldr r0, [r4] @@ -188,7 +188,7 @@ _021DA700: b _021DA78E _021DA714: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -430,7 +430,7 @@ _021DA8F6: cmp r0, #0 beq _021DA9BE ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0 bl FUN_0205889C ldr r0, [r4] @@ -439,7 +439,7 @@ _021DA8F6: b _021DA9BE _021DA916: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0xd bl FUN_0205ADDC ldr r0, [r4] @@ -448,7 +448,7 @@ _021DA916: b _021DA9BE _021DA92A: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -743,7 +743,7 @@ _021DAB5E: pop {r3, r4, r5, r6, r7, pc} _021DAB68: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -768,7 +768,7 @@ _021DAB8E: mov r2, #0 bl MOD05_021DA514 ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -792,7 +792,7 @@ _021DABC6: b _021DAC60 _021DABCE: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -806,7 +806,7 @@ _021DABCE: b _021DAC60 _021DABEE: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -826,7 +826,7 @@ _021DAC08: b _021DAC60 _021DAC16: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -964,7 +964,7 @@ _021DAD2A: pop {r3, r4, r5, r6, r7, pc} _021DAD34: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -987,7 +987,7 @@ _021DAD5A: mov r2, #0 bl MOD05_021DA514 ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -1011,7 +1011,7 @@ _021DAD8C: b _021DAE04 _021DAD94: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AD98 cmp r0, #1 @@ -1027,7 +1027,7 @@ _021DAD94: b _021DAE04 _021DADBA: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -1369,7 +1369,7 @@ _021DB066: ; jump table .short _021DB106 - _021DB066 - 2 ; case 3 _021DB06E: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 ldr r0, [r5, #0x38] bl PlayerAvatar_GetFacingDirection @@ -1411,7 +1411,7 @@ _021DB096: b _021DB126 _021DB0CA: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 mov r1, #0 bl FUN_0205889C @@ -1424,7 +1424,7 @@ _021DB0CA: b _021DB126 _021DB0E8: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -1482,7 +1482,7 @@ MOD05_021DB144: ; 0x021DB144 b _021DB1B4 _021DB164: ldr r0, [r4, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #1 bl FUN_0205889C mov r0, #0 @@ -1620,7 +1620,7 @@ _021DB276: ; jump table .short _021DB348 - _021DB276 - 2 ; case 3 _021DB27E: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [sp, #0x14] ldr r0, [r5, #0x38] bl PlayerAvatar_GetFacingDirection @@ -1693,7 +1693,7 @@ _021DB2EE: b _021DB368 _021DB30C: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 mov r1, #0 bl FUN_0205889C @@ -1706,7 +1706,7 @@ _021DB30C: b _021DB368 _021DB32A: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -1771,7 +1771,7 @@ _021DB3A6: ; jump table .short _021DB432 - _021DB3A6 - 2 ; case 3 _021DB3AE: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 ldr r0, [r5, #0x38] bl PlayerAvatar_GetFacingDirection @@ -1805,7 +1805,7 @@ _021DB3DA: b _021DB446 _021DB3F6: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 mov r1, #0 bl FUN_0205889C @@ -1818,7 +1818,7 @@ _021DB3F6: b _021DB446 _021DB414: ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AE28 cmp r0, #1 diff --git a/arm9/modules/05/asm/mod05_021E4AE4.s b/arm9/modules/05/asm/mod05_021E4AE4.s index 6b124bb10..6fac2a61d 100644 --- a/arm9/modules/05/asm/mod05_021E4AE4.s +++ b/arm9/modules/05/asm/mod05_021E4AE4.s @@ -182,7 +182,7 @@ MOD05_021E4C20: ; 0x021E4C20 thumb_func_start MOD05_021E4C24 MOD05_021E4C24: ; 0x021E4C24 push {r3, lr} - bl FUN_02058738 + bl MapObject_GetFieldSysPtr ldr r0, [r0, #0x3c] pop {r3, pc} .balign 4, 0 diff --git a/arm9/modules/05/asm/mod05_021E5FD8.s b/arm9/modules/05/asm/mod05_021E5FD8.s index b12408c52..80530e960 100644 --- a/arm9/modules/05/asm/mod05_021E5FD8.s +++ b/arm9/modules/05/asm/mod05_021E5FD8.s @@ -3,20 +3,20 @@ .section .text .balign 4, 0 - thumb_func_start MOD05_021E5FD8 -MOD05_021E5FD8: ; 0x021E5FD8 - ldr r3, _021E5FDC ; =FUN_020553D4 + thumb_func_start Field_PlayerAvatar_OrrTransitionFlags +Field_PlayerAvatar_OrrTransitionFlags: ; 0x021E5FD8 + ldr r3, _021E5FDC ; =PlayerAvatar_OrrTransitionFlags bx r3 .balign 4, 0 -_021E5FDC: .word FUN_020553D4 +_021E5FDC: .word PlayerAvatar_OrrTransitionFlags - thumb_func_start MOD05_021E5FE0 -MOD05_021E5FE0: ; 0x021E5FE0 + thumb_func_start Field_PlayerAvatar_ApplyTransitionFlags +Field_PlayerAvatar_ApplyTransitionFlags: ; 0x021E5FE0 push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 mov r6, #0 - bl FUN_020553E0 - ldr r5, _021E6010 ; =UNK05_021F7734 + bl PlayerAvatar_GetTransitionFlags + ldr r5, _021E6010 ; =sPlayerAvatarBitUpdateFuncs add r4, r0, #0 _021E5FEE: mov r0, #1 @@ -33,10 +33,10 @@ _021E5FFA: blo _021E5FEE add r0, r7, #0 mov r1, #0 - bl FUN_020553DC + bl PlayerAvatar_SetTransitionFlags pop {r3, r4, r5, r6, r7, pc} nop -_021E6010: .word UNK05_021F7734 +_021E6010: .word sPlayerAvatarBitUpdateFuncs thumb_func_start MOD05_021E6014 MOD05_021E6014: ; 0x021E6014 @@ -45,13 +45,13 @@ MOD05_021E6014: ; 0x021E6014 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #0 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C add r0, r4, #0 mov r1, #0 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r0, r4, #0 bl FUN_02055410 add r0, r4, #0 @@ -73,13 +73,13 @@ MOD05_021E6054: ; 0x021E6054 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #1 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C add r0, r4, #0 mov r1, #1 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r0, r4, #0 bl FUN_02055410 add r0, r4, #0 @@ -105,13 +105,13 @@ MOD05_021E609C: ; 0x021E609C bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #2 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r5, #0 bl MOD05_021E726C add r0, r5, #0 mov r1, #2 - bl FUN_020553A8 + bl PlayerAvatar_SetState add r0, r5, #0 bl FUN_02055410 add r0, r5, #0 @@ -127,9 +127,9 @@ _021E60D2: bl PlayerAvatar_GetFacingDirection add r4, r0, #0 add r0, r5, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr mov r0, #1 mov r1, #0 str r0, [sp] @@ -159,7 +159,7 @@ MOD05_021E6118: ; 0x021E6118 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #4 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C @@ -173,7 +173,7 @@ MOD05_021E6134: ; 0x021E6134 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #6 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C @@ -187,7 +187,7 @@ MOD05_021E6150: ; 0x021E6150 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #7 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C @@ -201,7 +201,7 @@ MOD05_021E616C: ; 0x021E616C bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #8 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C @@ -215,7 +215,7 @@ MOD05_021E6188: ; 0x021E6188 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #9 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 add r0, r4, #0 bl MOD05_021E726C @@ -436,7 +436,7 @@ MOD05_021E632C: ; 0x021E632C bl FUN_0204652C add r4, r0, #0 ldr r0, [r4, #0xc] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 ldr r0, [r4] ldr r5, [r4, #0x10] @@ -519,7 +519,7 @@ MOD05_021E63D4: ; 0x021E63D4 str r6, [r4, #0x1c] ldr r0, [r6, #0x38] str r0, [r4, #0x20] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r2, r4, #0 str r0, [r4, #0x24] add r2, #0xc @@ -561,7 +561,7 @@ MOD05_021E643C: ; 0x021E643C push {r4, r5, r6, lr} add r4, r2, #0 add r5, r1, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 lsl r0, r4, #0x18 lsr r0, r0, #0x18 @@ -619,11 +619,11 @@ _021E649E: ; jump table _021E64AE: ldr r0, [r4, #0x1c] mov r1, #0 - bl FUN_0204AB20 + bl FieldSystem_SetSavedMusicId ldr r0, [r4, #0x1c] ldr r1, _021E65E8 ; =0x0000047F mov r2, #1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId ldr r0, [r4] add r0, r0, #1 add r0, r0, #1 @@ -696,7 +696,7 @@ _021E6514: bl FUN_02055450 ldr r0, [r4, #0x20] mov r1, #2 - bl FUN_020553A8 + bl PlayerAvatar_SetState ldr r0, [r4] add r0, r0, #1 str r0, [r4] @@ -711,7 +711,7 @@ _021E655E: bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #0 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 ldr r0, [r4, #0x20] bl MOD05_021E726C @@ -750,7 +750,7 @@ _021E65AC: bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #2 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 ldr r0, [r4, #0x20] bl MOD05_021E726C @@ -781,7 +781,7 @@ _021E6602: pop {r4, r5, r6, pc} _021E6606: add r0, r5, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r0, #0 add r0, r5, #0 add r2, r4, #0 @@ -818,7 +818,7 @@ MOD05_021E6638: ; 0x021E6638 str r5, [r4, #8] str r7, [r4, #0xc] add r0, r7, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x10] add r0, r7, #0 bl FUN_02055454 @@ -855,7 +855,7 @@ _021E668C: bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #0 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 ldr r0, [r4, #0xc] bl MOD05_021E726C @@ -886,7 +886,7 @@ _021E66CC: bl FUN_02055450 ldr r0, [r4, #0xc] mov r1, #0 - bl FUN_020553A8 + bl PlayerAvatar_SetState ldr r0, [r4, #8] ldr r1, [r0, #0x1c] ldr r1, [r1] @@ -894,7 +894,7 @@ _021E66CC: add r1, r0, #0 ldr r0, [r4, #8] mov r2, #1 - bl FUN_0204ABDC + bl FieldSystem_PlayOrFadeToNewMusicId add r0, r4, #0 bl MOD05_021E72DC mov r0, #1 @@ -952,7 +952,7 @@ MOD05_021E6758: ; 0x021E6758 pop {r4, r5, r6, pc} _021E676C: add r0, r4, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058720 lsl r0, r0, #0x18 lsr r6, r0, #0x18 @@ -999,7 +999,7 @@ MOD05_021E67C0: ; 0x021E67C0 bl FUN_0204652C add r4, r0, #0 ldr r0, [r4, #0xc] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0 ldr r0, [r4] cmp r0, #0 @@ -1127,7 +1127,7 @@ MOD05_021E68D8: ; 0x021E68D8 add r4, r1, #0 add r5, r0, #0 add r0, r4, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_0205AD98 cmp r0, #0 bne _021E68F0 @@ -1196,7 +1196,7 @@ MOD05_021E6954: ; 0x021E6954 str r6, [r4, #0xc] ldr r0, [r6, #0x38] str r0, [r4, #0x10] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r2, r4, #0 str r0, [r4, #0x14] add r2, #0x1c @@ -1504,7 +1504,7 @@ _021E6BB8: .word 0x63A06BB0 thumb_func_start MOD05_021E6BBC MOD05_021E6BBC: ; 0x021E6BBC ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x3c] cmp r5, #0 beq _021E6BD4 @@ -2096,7 +2096,7 @@ MOD05_021E703C: ; 0x021E703C str r5, [r4] ldr r0, [r5, #0x38] str r0, [r4, #4] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #8] ldr r0, [r4, #4] bl PlayerAvatar_GetGender @@ -2138,7 +2138,7 @@ _021E7096: bne _021E70E2 ldr r1, [r4, #0x10] mov r0, #5 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0 ldr r0, [r4, #4] bl MOD05_021E726C @@ -2174,7 +2174,7 @@ _021E70EC: .word UNK05_021F77BC MOD05_021E70F0: ; 0x021E70F0 push {r3, r4, r5, lr} add r4, r0, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_02058934 cmp r0, #0 @@ -2189,16 +2189,16 @@ MOD05_021E70F0: ; 0x021E70F0 cmp r0, #1 bls _021E7136 add r0, r4, #0 - bl FUN_020553E0 + bl PlayerAvatar_GetTransitionFlags add r5, r0, #0 add r0, r4, #0 mov r1, #0x40 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags add r0, r4, #0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r0, r4, #0 add r1, r5, #0 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags _021E7136: pop {r3, r4, r5, pc} @@ -2206,7 +2206,7 @@ _021E7136: MOD05_021E7138: ; 0x021E7138 push {r3, r4, r5, lr} add r4, r0, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_02058934 cmp r0, #0 @@ -2223,16 +2223,16 @@ MOD05_021E7138: ; 0x021E7138 bne _021E7180 _021E7162: add r0, r4, #0 - bl FUN_020553E0 + bl PlayerAvatar_GetTransitionFlags add r5, r0, #0 add r0, r4, #0 mov r1, #1 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags add r0, r4, #0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r0, r4, #0 add r1, r5, #0 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags _021E7180: pop {r3, r4, r5, pc} .balign 4, 0 @@ -2250,7 +2250,7 @@ MOD05_021E7184: ; 0x021E7184 pop {r3, r4, r5, r6, r7, pc} _021E7198: add r0, r5, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [sp] mov r0, #4 mov r1, #0x10 @@ -2265,9 +2265,9 @@ _021E7198: bl FUN_02058914 add r0, r5, #0 mov r1, #0x80 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags add r0, r5, #0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags ldr r0, _021E71E0 ; =MOD05_021E7218 ldr r2, _021E71E4 ; =0x0000FFFF add r1, r4, #0 @@ -2294,7 +2294,7 @@ MOD05_021E71E8: ; 0x021E71E8 bl PlayerAvatar_GetGender add r1, r0, #0 mov r0, #0 - bl FUN_020555A0 + bl PlayerAvatar_GetSpriteByStateAndGender add r0, r4, #0 bl MOD05_021E6014 add r0, r6, #0 @@ -2308,7 +2308,7 @@ _021E7216: MOD05_021E7218: ; 0x021E7218 push {r3, lr} ldr r0, [r1, #0xc] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_020586A0 pop {r3, pc} .balign 4, 0 @@ -2357,7 +2357,7 @@ _021E7268: MOD05_021E726C: ; 0x021E726C push {r4, lr} add r4, r1, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0 bl MOD05_021F3490 pop {r4, pc} @@ -2379,7 +2379,7 @@ MOD05_021E727C: ; 0x021E727C bl FUN_02059C00 add r5, r0, #0 add r0, r4, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject bl FUN_02058578 ldr r2, [sp] add r1, r6, r7 @@ -2444,8 +2444,8 @@ UNK05_021F7714: ; 0x021F7714 .word MOD05_021E6A28, MOD05_021E6A40, MOD05_021E6A58, MOD05_021E6AAC .word MOD05_021E6AD4, MOD05_021E6AF4, MOD05_021E6B1C, MOD05_021E6B80 - .global UNK05_021F7734 -UNK05_021F7734: ; 0x021F7734 + .global sPlayerAvatarBitUpdateFuncs +sPlayerAvatarBitUpdateFuncs: ; 0x021F7734 .word MOD05_021E6014, MOD05_021E6054, MOD05_021E609C, MOD05_021E610C .word MOD05_021E6118, MOD05_021E6134, MOD05_021E6150, MOD05_021E616C .word MOD05_021E6188 diff --git a/arm9/modules/05/asm/mod05_021E7504.s b/arm9/modules/05/asm/mod05_021E7504.s index d44cbd1f4..34e368a2d 100644 --- a/arm9/modules/05/asm/mod05_021E7504.s +++ b/arm9/modules/05/asm/mod05_021E7504.s @@ -52,7 +52,7 @@ MOD05_021E7544: ; 0x021E7544 add r7, r0, #0 ldr r0, [r5] ldr r0, [r0, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 ldr r0, [r5, #8] cmp r0, #0 @@ -149,7 +149,7 @@ MOD05_021E7618: ; 0x021E7618 add r6, r0, #0 ldr r0, [r5] ldr r0, [r0, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r1, [r5, #8] add r4, r0, #0 cmp r1, #0 diff --git a/arm9/modules/05/asm/mod05_021ED9C0.s b/arm9/modules/05/asm/mod05_021ED9C0.s index 962a3c632..ebb95e8c4 100644 --- a/arm9/modules/05/asm/mod05_021ED9C0.s +++ b/arm9/modules/05/asm/mod05_021ED9C0.s @@ -81,7 +81,7 @@ MOD05_021EDA48: ; 0x021EDA48 bl MOD05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x18 diff --git a/arm9/modules/05/asm/mod05_021EDB70.s b/arm9/modules/05/asm/mod05_021EDB70.s index 832d04cfa..2ef3dcb38 100644 --- a/arm9/modules/05/asm/mod05_021EDB70.s +++ b/arm9/modules/05/asm/mod05_021EDB70.s @@ -63,7 +63,7 @@ MOD05_021EDBC8: ; 0x021EDBC8 str r1, [r2, #4] add r5, r0, #0 str r1, [r2, #8] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r4, r0, #0 bl MOD05_021E4C24 add r6, r0, #0 @@ -102,7 +102,7 @@ MOD05_021EDC14: ; 0x021EDC14 ldr r0, [r3] str r0, [r2] ldr r0, [r4, #8] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject mov r1, #0 mvn r1, r1 add r4, r0, #0 @@ -128,7 +128,7 @@ MOD05_021EDC50: ; 0x021EDC50 str r0, [sp] ldr r0, [r5, #0x2c] str r0, [sp, #4] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r1, [r5, #0x14] ldr r2, [r5, #0x18] add r6, r0, #0 diff --git a/arm9/modules/05/asm/mod05_021F5C44.s b/arm9/modules/05/asm/mod05_021F5C44.s index a6b321e1e..965002f53 100644 --- a/arm9/modules/05/asm/mod05_021F5C44.s +++ b/arm9/modules/05/asm/mod05_021F5C44.s @@ -164,7 +164,7 @@ MOD05_021F5D7C: ; 0x021F5D7C ldr r0, [r5, #0x20] ldr r6, [r0, #0x38] add r0, r6, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r7, _021F5DA4 ; =UNK05_021FC9B8 add r4, r0, #0 _021F5D8E: @@ -208,9 +208,9 @@ MOD05_021F5DC0: ; 0x021F5DC0 bl FUN_0205AE50 add r0, r4, #0 mov r1, #0x20 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags add r0, r4, #0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags add r0, r6, #0 mov r1, #1 bl FUN_02058544 @@ -542,9 +542,9 @@ _021F602C: bl FUN_02055648 add r1, r0, #0 add r0, r4, #0 - bl MOD05_021E5FD8 + bl Field_PlayerAvatar_OrrTransitionFlags add r0, r4, #0 - bl MOD05_021E5FE0 + bl Field_PlayerAvatar_ApplyTransitionFlags mov r0, #0 str r0, [r5, #0x10] mov r0, #0x10 diff --git a/arm9/modules/05/src/mod05_021E72FC.c b/arm9/modules/05/src/mod05_021E72FC.c index cc24904eb..59463b129 100644 --- a/arm9/modules/05/src/mod05_021E72FC.c +++ b/arm9/modules/05/src/mod05_021E72FC.c @@ -5,7 +5,7 @@ #include "unk_020051F4.h" extern void FUN_020463CC(u32 param0, void *func, UnkStruct021E7358 *param2); -extern u32 FUN_020553A0(u32 param0); +extern u32 PlayerAvatar_GetMapObject(u32 param0); extern u32 FUN_02058720(u32 param0); extern BOOL FUN_02054B30(u8 param0); extern BOOL FUN_02054B3C(u8 param0); @@ -22,7 +22,7 @@ extern void FUN_02058418(u32 param0, u32 param1); BOOL MOD05_021E72FC(u32 param0, u32 param1) { - u8 res = (u8)FUN_02058720(FUN_020553A0(param1)); + u8 res = (u8)FUN_02058720(PlayerAvatar_GetMapObject(param1)); u32 r2; if (FUN_02054B30(res) == TRUE) { @@ -79,7 +79,7 @@ u32 MOD05_021E7388(u32 param0) BOOL MOD05_021E73B4(UnkStruct021E7358 *param0) { UnkStruct021E7358 *strct = FUN_0204652C(param0); - u32 res = FUN_020553A0(strct->Unk10); + u32 res = PlayerAvatar_GetMapObject(strct->Unk10); u8 res2 = (u8)FUN_02058720(res); switch (strct->Unk08) { diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s index 4fb593c53..5d6e0c9e9 100644 --- a/arm9/modules/06/asm/module_06.s +++ b/arm9/modules/06/asm/module_06.s @@ -4875,7 +4875,7 @@ _0223BA42: _0223BA8C: ldr r0, [r5, #0xc] bl Save_LocalFieldData_Get - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType add r3, r0, #0 ldr r0, [sp, #0x20] add r1, sp, #0x24 @@ -5205,7 +5205,7 @@ _0223BD2E: ldr r0, [sp, #8] ldr r0, [r0, #0xc] bl Save_LocalFieldData_Get - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType add r3, r0, #0 ldr r0, [sp, #0x14] add r1, r5, #0 @@ -5657,7 +5657,7 @@ _0223C0CE: _0223C118: ldr r0, [r5, #0xc] bl Save_LocalFieldData_Get - bl FUN_02034DEC + bl LocalFieldData_GetWeatherType add r3, r0, #0 ldr r0, [sp, #0x1c] add r1, sp, #0x20 @@ -17290,7 +17290,7 @@ MOD06_02241F7C: ; 0x02241F7C ldr r0, [r7, #4] ldr r5, [r0, #0x24] ldr r0, [r7, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r1, [r4] add r6, r0, #0 cmp r1, #4 @@ -17449,7 +17449,7 @@ MOD06_022420CC: ; 0x022420CC ldr r0, [r6, #4] ldr r5, [r0, #0x24] ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject ldr r1, [r4] add r7, r0, #0 cmp r1, #4 @@ -17572,7 +17572,7 @@ _022421CC: b _02242214 _022421E4: ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -18265,7 +18265,7 @@ MOD06_02242744: ; 0x02242744 ldr r0, [r6, #4] ldr r5, [r0, #0x24] ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r7, r0, #0 ldr r0, [r4] cmp r0, #3 @@ -18352,7 +18352,7 @@ _022427FE: b _0224283A _02242808: ldr r0, [r6, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_0205AE28 cmp r0, #1 @@ -24251,7 +24251,7 @@ MOD06_02245544: ; 0x02245544 add r4, r1, #0 add r7, r2, #0 str r3, [sp] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r6, r0, #0 ldr r0, [r5, #0x38] add r1, sp, #4 @@ -26510,7 +26510,7 @@ MOD06_02246658: ; 0x02246658 push {r4, lr} ldr r0, [r0, #0x38] add r4, r1, #0 - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r4, #0 bl FUN_0205889C pop {r4, pc} @@ -30713,7 +30713,7 @@ MOD06_02248654: ; 0x02248654 ldr r0, [r0, #0x60] add r4, r1, #0 ldr r0, [r0, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r5, r0, #0 bl FUN_02058914 add r0, r5, #0 @@ -33028,7 +33028,7 @@ MOD06_022497E8: ; 0x022497E8 sub sp, #0x24 add r5, r0, #0 add r4, r1, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #8] add r0, r5, #0 bl MOD05_021E4C24 @@ -34577,7 +34577,7 @@ _0224A3A6: cmp r0, #1 beq _0224A3C8 add r0, r4, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r4, #0 bl FUN_0204B5FC cmp r0, #0 @@ -34589,7 +34589,7 @@ _0224A3C8: pop {r3, r4, r5, r6, pc} _0224A3D0: add r0, r4, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr add r1, r4, #0 bl FUN_0204B684 str r0, [r5, #0xc] @@ -35649,7 +35649,7 @@ MOD06_0224ABAC: ; 0x0224ABAC cmp r0, #0 bne _0224ABF6 add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr mov r1, #2 lsl r2, r4, #0x10 lsl r1, r1, #0xe @@ -36083,7 +36083,7 @@ MOD06_0224AEE8: ; 0x0224AEE8 str r4, [sp, #0x1c] str r0, [sp, #0x18] add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x20] add r0, r4, #0 mov r1, #0x12 @@ -37464,7 +37464,7 @@ MOD06_0224B9E0: ; 0x0224B9E0 bl MOD05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x17 @@ -37719,7 +37719,7 @@ MOD06_0224BBEC: ; 0x0224BBEC bl MOD05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x19 @@ -39086,7 +39086,7 @@ MOD06_0224C700: ; 0x0224C700 str r0, [r4, #8] str r5, [r4, #0x1c] ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x18] add r0, r4, #0 pop {r3, r4, r5, pc} @@ -39311,7 +39311,7 @@ MOD06_0224C8C8: ; 0x0224C8C8 str r6, [r4, #8] str r5, [r4, #0x1c] ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x18] add r0, r4, #0 pop {r4, r5, r6, pc} @@ -39537,7 +39537,7 @@ MOD06_0224CA88: ; 0x0224CA88 str r0, [r4, #8] str r5, [r4, #0x1c] ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x18] str r6, [r4, #0x20] add r0, r4, #0 @@ -39626,7 +39626,7 @@ MOD06_0224CB30: ; 0x0224CB30 str r0, [r4, #8] str r5, [r4, #0x1c] ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject str r0, [r4, #0x18] str r6, [r4, #0x20] add r0, r4, #0 @@ -40651,7 +40651,7 @@ MOD06_0224D2E0: ; 0x0224D2E0 bl MOD05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl FUN_02058738 + bl MapObject_GetFieldSysPtr str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x1d diff --git a/arm9/modules/18/asm/module_18.s b/arm9/modules/18/asm/module_18.s index 1cf8c4dbe..5eb437fde 100644 --- a/arm9/modules/18/asm/module_18.s +++ b/arm9/modules/18/asm/module_18.s @@ -27262,7 +27262,7 @@ _022468CC: ldr r0, _02246AD0 ; =0x0000061E bl PlaySE ldr r0, [r5, #0x38] - bl FUN_020553A0 + bl PlayerAvatar_GetMapObject add r1, r7, #0 add r2, r1, #0 add r3, r1, #0 diff --git a/arm9/src/scrcmd.c b/arm9/src/scrcmd.c index be759dd28..2d4f13a54 100644 --- a/arm9/src/scrcmd.c +++ b/arm9/src/scrcmd.c @@ -6,6 +6,8 @@ #include "camera.h" #include "constants/global_fieldmap.h" #include "constants/items.h" +#include "constants/sndseq.h" +#include "constants/weather.h" #include "fashion_case.h" #include "hall_of_fame.h" #include "main.h" @@ -72,7 +74,7 @@ extern LocalMapObject *FUN_02058060(u32 param0, u16 eventId); extern BOOL FUN_0205AEF0(u32 param0); extern void FUN_0205AEFC(u32 param0); extern void FUN_02058780(u32 param0); -extern LocalMapObject *FUN_020553A0(struct PlayerAvatar *playerAvatar); +extern LocalMapObject *PlayerAvatar_GetMapObject(struct PlayerAvatar *playerAvatar); extern u32 FUN_0205AE28(LocalMapObject *event); extern void FUN_02058908(LocalMapObject *event); extern u32 FUN_02058854(LocalMapObject *event); @@ -162,9 +164,9 @@ extern void CallFieldTask_RockClimb(TaskManager *taskManager, u32 playerDirectio extern void FUN_0205DD40(u32 param0); extern void CallFieldTask_Surf(TaskManager *taskManager, u32 playerDirection, u16 partyPosition); extern void FUN_02049274(FieldSystem *fieldSystem, u16 mapId, s32 warpId, u16 x, u16 y, u32 direction); -extern u32 FUN_02034DEC(LocalFieldData *localFieldData); +extern u32 LocalFieldData_GetWeatherType(LocalFieldData *localFieldData); extern void MOD05_021DC174(u32 param0, u32 weather); -extern void FUN_02034DF4(LocalFieldData *localFieldData, u32 weather); +extern void LocalFieldData_SetWeatherType(LocalFieldData *localFieldData, u32 weather); extern void CallFieldTask_Waterfall(TaskManager *taskManager, u32 playerDirection, u16 partyPosition); extern u32 PlayerAvatar_GetGender(PlayerAvatar *avatar); extern void *MOD06_0224666C(FieldSystem *fieldSystem, u32 param1, Pokemon *mon, u32 playerGender); @@ -172,6 +174,11 @@ extern BOOL MOD06_022466A0(void *param0); extern void MOD06_022466AC(void *param0); extern void MOD05_021E7030(TaskManager *taskManager); extern u32 PlayerAvatar_GetState(PlayerAvatar *avatar); +extern void FieldSystem_SetSavedMusicId(FieldSystem *fieldSystem, u16 musicId); +extern void FieldSystem_PlayOrFadeToNewMusicId(FieldSystem *fieldSystem, u16 musicId, u32 param2); +extern void Field_PlayerAvatar_OrrTransitionFlags(PlayerAvatar *playerAvatar, u32 transitionFlags); +extern void Field_PlayerAvatar_ApplyTransitionFlags(PlayerAvatar *playerAvatar); +extern u16 FieldSystem_GetOverriddenMusicId(FieldSystem *fieldSystem, u32 mapId); u8 UNK_021C5A0C[4]; @@ -1578,10 +1585,10 @@ BOOL ScrCmd_LockAllEvents(struct ScriptContext *ctx) //0060 static BOOL FUN_0203B218(struct ScriptContext *ctx) { struct FieldSystem *fieldSystem = ctx->fieldSystem; LocalMapObject **lastInteracted = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_LAST_INTERACTED); - LocalMapObject *unk0 = FUN_020553A0(fieldSystem->playerAvatar); + LocalMapObject *playerAvatar = PlayerAvatar_GetMapObject(fieldSystem->playerAvatar); if (UNK_021C5A0C[0] & 1) { - if (FUN_0205AE28(unk0) == 1) { - FUN_02058908(unk0); + if (FUN_0205AE28(playerAvatar) == 1) { + FUN_02058908(playerAvatar); UNK_021C5A0C[0] &= 0xfe; } } @@ -1616,16 +1623,16 @@ static BOOL FUN_0203B218(struct ScriptContext *ctx) { BOOL ScrCmd_LockAllEvents2(struct ScriptContext *ctx) { //02B4 struct FieldSystem *fieldSystem = ctx->fieldSystem; LocalMapObject **lastInteracted = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_LAST_INTERACTED); - LocalMapObject *unk0 = FUN_020553A0(fieldSystem->playerAvatar); + LocalMapObject *playerAvatar = PlayerAvatar_GetMapObject(fieldSystem->playerAvatar); LocalMapObject *unk1 = FUN_020580B4(fieldSystem->unk34, 48); LocalMapObject *unk2 = FUN_0205E7C4(*lastInteracted); u32 unk34 = fieldSystem->unk34; UNK_021C5A0C[0] = 0; FUN_02058780(unk34); - if (FUN_0205AE28(unk0) == 0) { + if (FUN_0205AE28(playerAvatar) == 0) { UNK_021C5A0C[0] |= 1; - FUN_02058914(unk0); + FUN_02058914(playerAvatar); } if (FUN_02058854(*lastInteracted) != 0) { UNK_021C5A0C[0] |= 4; @@ -1678,7 +1685,7 @@ BOOL ScrCmd_AddOverworldEvent(struct ScriptContext *ctx) //0064 u16 eventId = ScriptGetVar(ctx); u32 unk0 = FUN_02034B64(fieldSystem); u32 unk1 = FUN_02034B6C(fieldSystem); - u32 res = FUN_020575D4(fieldSystem->unk34, eventId, unk0, *fieldSystem->mapId, unk1); + u32 res = FUN_020575D4(fieldSystem->unk34, eventId, unk0, fieldSystem->location->mapId, unk1); GF_ASSERT(res); return FALSE; @@ -1697,7 +1704,7 @@ BOOL ScrCmd_LockCamera(struct ScriptContext *ctx) //0066 u16 x = ScriptGetVar(ctx); u16 y = ScriptGetVar(ctx); LocalMapObject **targetPtr = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_CAMERA_TARGET); - *targetPtr = FUN_0205753C(ctx->fieldSystem->unk34, x, y, 0, 0x2000, 0, *ctx->fieldSystem->mapId); + *targetPtr = FUN_0205753C(ctx->fieldSystem->unk34, x, y, 0, 0x2000, 0, ctx->fieldSystem->location->mapId); FUN_02059D1C(*targetPtr); FUN_0205889C(*targetPtr, 1); FUN_020588B8(*targetPtr, 0); @@ -1777,7 +1784,7 @@ BOOL ScrCmd_Unk006B(struct ScriptContext *ctx) //006B - todo: CheckPersonPositio vector.y = FX32_CONST(y); vector.z = FX32_CONST(z); - FUN_02058BB4(FUN_020553A0(ctx->fieldSystem->playerAvatar), &vector); + FUN_02058BB4(PlayerAvatar_GetMapObject(ctx->fieldSystem->playerAvatar), &vector); Camera_OffsetLookAtPosAndTarget(&vector, ctx->fieldSystem->camera); return FALSE; } @@ -2476,7 +2483,7 @@ BOOL ScrCmd_GetPreviousMapID(ScriptContext *ctx) { //0200 BOOL ScrCmd_GetCurrentMapID(ScriptContext *ctx) { //0201 u16 *var = ScriptGetVarPointer(ctx); - *var = *ctx->fieldSystem->mapId; + *var = ctx->fieldSystem->location->mapId; return FALSE; } @@ -2512,15 +2519,15 @@ BOOL ScrCmd_Fly(ScriptContext *ctx) { //00C2 BOOL ScrCmd_Flash(ScriptContext *ctx) { //00C3 LocalFieldData *localFieldData = Save_LocalFieldData_Get(ctx->fieldSystem->saveData); - FUN_02034DF4(localFieldData, 0); //clear weather - MOD05_021DC174(ctx->fieldSystem->unk04->unk0C, FUN_02034DEC(localFieldData)); //CallFieldTask_SetWeather? second param is get weather + LocalFieldData_SetWeatherType(localFieldData, WEATHER_SUNNY); //clear weather + MOD05_021DC174(ctx->fieldSystem->unk04->unk0C, LocalFieldData_GetWeatherType(localFieldData)); //CallFieldTask_SetWeather? second param is get weather return TRUE; } BOOL ScrCmd_Defog(ScriptContext *ctx) { //00C4 LocalFieldData *localFieldData = Save_LocalFieldData_Get(ctx->fieldSystem->saveData); - FUN_02034DF4(localFieldData, 0); //clear weather - MOD05_021DC174(ctx->fieldSystem->unk04->unk0C, FUN_02034DEC(localFieldData)); //CallFieldTask_SetWeather? second param is get weather + LocalFieldData_SetWeatherType(localFieldData, WEATHER_SUNNY); //clear weather + MOD05_021DC174(ctx->fieldSystem->unk04->unk0C, LocalFieldData_GetWeatherType(localFieldData)); //CallFieldTask_SetWeather? second param is get weather return TRUE; } @@ -2557,3 +2564,25 @@ BOOL ScrCmd_CheckBike(ScriptContext *ctx) { //00C7 } return FALSE; } + +BOOL ScrCmd_RideBike(ScriptContext *ctx) { //00C8 + u8 action = ScriptReadByte(ctx); + if (action == TRUE) { + FieldSystem_SetSavedMusicId(ctx->fieldSystem, SEQ_BICYCLE); + FieldSystem_PlayOrFadeToNewMusicId(ctx->fieldSystem, SEQ_BICYCLE, 1); + Field_PlayerAvatar_OrrTransitionFlags(ctx->fieldSystem->playerAvatar, PLAYER_TRANSITION_CYCLING); + Field_PlayerAvatar_ApplyTransitionFlags(ctx->fieldSystem->playerAvatar); + } else { + Field_PlayerAvatar_OrrTransitionFlags(ctx->fieldSystem->playerAvatar, PLAYER_TRANSITION_WALKING); + Field_PlayerAvatar_ApplyTransitionFlags(ctx->fieldSystem->playerAvatar); + FieldSystem_SetSavedMusicId(ctx->fieldSystem, 0); + FieldSystem_PlayOrFadeToNewMusicId(ctx->fieldSystem, FieldSystem_GetOverriddenMusicId(ctx->fieldSystem, ctx->fieldSystem->location->mapId), 1); + } + return FALSE; +} + +BOOL ScrCmd_DummyRideBike(ScriptContext *ctx) { //02BF + Field_PlayerAvatar_OrrTransitionFlags(ctx->fieldSystem->playerAvatar, PLAYER_TRANSITION_CYCLING); + FieldSystem_SetSavedMusicId(ctx->fieldSystem, SEQ_BICYCLE); + return FALSE; +} diff --git a/arm9/src/scrcmd_party.c b/arm9/src/scrcmd_party.c index ed8a98d63..3a10e7e2f 100644 --- a/arm9/src/scrcmd_party.c +++ b/arm9/src/scrcmd_party.c @@ -16,7 +16,7 @@ extern u16 FUN_02054DEC(struct SaveBlock2* sav2); BOOL ScrCmd_GiveMon(struct ScriptContext* ctx) //0096 - todo: GivePokemon? { - u32 mapSec = MapHeader_GetMapSec(*(ctx->fieldSystem->mapId)); + u32 mapSec = MapHeader_GetMapSec(ctx->fieldSystem->location->mapId); struct FieldSystem *fieldSystem = ctx->fieldSystem; u16 species = ScriptGetVar(ctx); u16 level = ScriptGetVar(ctx); @@ -305,7 +305,7 @@ BOOL ScrCmd_AddPartyMonFriendship(struct ScriptContext* ctx) //01BA struct FieldSystem *fieldSystem = ctx->fieldSystem; u16 friendship_to_add = ScriptGetVar(ctx); u16 mon_slot = ScriptGetVar(ctx); - u16 map_sec = MapHeader_GetMapSec(*ctx->fieldSystem->mapId); + u16 map_sec = MapHeader_GetMapSec(ctx->fieldSystem->location->mapId); struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData); struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot); diff --git a/arm9/src/scrcmd_sound.c b/arm9/src/scrcmd_sound.c index 24775099f..59b816312 100644 --- a/arm9/src/scrcmd_sound.c +++ b/arm9/src/scrcmd_sound.c @@ -7,7 +7,7 @@ extern BOOL FUN_02005CBC(void); extern void PlaySound(u16); -extern void FUN_0204AB20(struct FieldSystem *fieldSystem, u16); +extern void FieldSystem_SetSavedMusicId(struct FieldSystem *fieldSystem, u16); extern u16 FUN_0204ABA8(struct FieldSystem *fieldSystem, u32); extern void FUN_0200521C(u16); extern void FUN_02005308(u32, u16); @@ -48,14 +48,14 @@ BOOL ScrCmd_StopBgm(struct ScriptContext *ctx) //0051 BOOL ScrCmd_PlayDefaultBgm(struct ScriptContext *ctx) //0052 { - u16 unk0 = FUN_0204ABA8(ctx->fieldSystem, *ctx->fieldSystem->mapId); + u16 unk0 = FUN_0204ABA8(ctx->fieldSystem, ctx->fieldSystem->location->mapId); FUN_0200521C(unk0); return FALSE; } BOOL ScrCmd_Unk0053(struct ScriptContext *ctx) //0053 - todo: SetMusic? SpecialMusic? { - FUN_0204AB20(ctx->fieldSystem, ScriptReadHalfword(ctx)); + FieldSystem_SetSavedMusicId(ctx->fieldSystem, ScriptReadHalfword(ctx)); return FALSE; } diff --git a/arm9/src/unk_0206015C.c b/arm9/src/unk_0206015C.c index 2ce169241..0a50952ae 100644 --- a/arm9/src/unk_0206015C.c +++ b/arm9/src/unk_0206015C.c @@ -27,7 +27,7 @@ extern u32 MOD06_022451F0(u32); extern void FUN_02049160(struct TaskManager *taskManager, u32); extern void FUN_0204C1B4(struct TaskManager *taskManager, u32,u32,u32,u32,u32,u32,u32); -extern struct Vecx32 *FUN_020553A0(struct PlayerAvatar *playerAvatar); +extern struct Vecx32 *PlayerAvatar_GetMapObject(struct PlayerAvatar *playerAvatar); extern void FUN_0205889C(struct Vecx32 *param0, u32); extern void FUN_0205F1C4(struct ScriptState *); extern void FUN_0205F1D4(struct ScriptState *); @@ -85,7 +85,7 @@ BOOL FUN_02060194(struct TaskManager *taskManager) break; case 4: - struct Vecx32 *unk0 = FUN_020553A0(fieldSystem->playerAvatar); + struct Vecx32 *unk0 = PlayerAvatar_GetMapObject(fieldSystem->playerAvatar); unkStruct1->unkD += 1; if (unkStruct1->unkD <= 5) { diff --git a/include/constants/global_fieldmap.h b/include/constants/global_fieldmap.h index bbf4be67b..11da02339 100644 --- a/include/constants/global_fieldmap.h +++ b/include/constants/global_fieldmap.h @@ -12,4 +12,9 @@ #define PLAYER_STATE_CYCLING 1 #define PLAYER_STATE_SURFING 2 +// Player transition bits +#define PLAYER_TRANSITION_WALKING 1 << 0 +#define PLAYER_TRANSITION_CYCLING 1 << 1 +#define PLAYER_TRANSITION_SURFING 1 << 2 + #endif //POKEDIAMOND_CONSTANTS_GLOBAL_FIELDMAP_H diff --git a/include/constants/weather.h b/include/constants/weather.h new file mode 100644 index 000000000..44fefa17a --- /dev/null +++ b/include/constants/weather.h @@ -0,0 +1,36 @@ +#ifndef POKEDIAMOND_CONSTANTS_WEATHER_H +#define POKEDIAMOND_CONSTANTS_WEATHER_H + +#define WEATHER_SUNNY 0 +#define WEATHER_CLOUDY 1 +#define WEATHER_RAIN_1 2 +#define WEATHER_RAIN_2 3 +#define WEATHER_RAIN_3 4 +#define WEATHER_SNOW_1 5 +#define WEATHER_SNOW_2 6 +#define WEATHER_SNOW_3 7 +#define WEATHER_FOG 8 +#define WEATHER_ASH 9 +#define WEATHER_SANDSTORM 10 +#define WEATHER_DIAMOND_DUST 11 +#define WEATHER_UNKNOWN_12 12 //WEATHER_SPIRIT? +#define WEATHER_UNKNOWN_13 13 //WEATHER_MYSTIC? +#define WEATHER_UNKNOWN_14 14 //WEATHER_MIST_1? +#define WEATHER_UNKNOWN_15 15 //WEATHER_MIST_2? +#define WEATHER_FLASH 16 +#define WEATHER_UNKNOWN_17 17 //WEATHER_SPARK? +#define WEATHER_UNKNOWN_18 18 //WEATHER_FOGS? +#define WEATHER_UNKNOWN_19 19 //WEATHER_FOGM? +#define WEATHER_UNKNOWN_20 20 //WEATHER_RAINBOW? +#define WEATHER_UNKNOWN_21 21 //WEATHER_SNOW_STORM? +#define WEATHER_UNKNOWN_22 22 //WEATHER_STORM? +#define WEATHER_UNKNOWN_23 23 //WEATHER_KOGOREBI?? +#define WEATHER_CAVE_1 24 +#define WEATHER_CAVE_2 25 +#define WEATHER_UNKNOWN_26 26 //WEATHER_GALAXY? +#define WEATHER_LOST_TOWER 27 +#define WEATHER_UNKNOWN_28 28 //WEATHER_HARD_MOUNTAIN? +#define WEATHER_CAVE_3 29 +#define WEATHER_LOW_LIGHT 30 + +#endif //POKEDIAMOND_CONSTANTS_WEATHER_H \ No newline at end of file diff --git a/include/scrcmd.h b/include/scrcmd.h index 6f467a47d..d8b3c3c87 100644 --- a/include/scrcmd.h +++ b/include/scrcmd.h @@ -222,6 +222,8 @@ BOOL ScrCmd_Defog(ScriptContext *ctx); BOOL ScrCmd_Cut(ScriptContext *ctx); BOOL ScrCmd_ApplyContestDress(ScriptContext *ctx); BOOL ScrCmd_CheckBike(ScriptContext *ctx); +BOOL ScrCmd_RideBike(ScriptContext *ctx); +BOOL ScrCmd_DummyRideBike(ScriptContext *ctx); // scrcmd_mart.c BOOL ScrCmd_NormalMart(struct ScriptContext * ctx); diff --git a/include/script.h b/include/script.h index 72e76967b..c72ae3242 100644 --- a/include/script.h +++ b/include/script.h @@ -98,7 +98,7 @@ typedef struct FieldSystem //todo move to field_system.c struct SaveBlock2 *saveData; //0xC TaskManager *taskManager; u8 padding2[0x8]; - u32 *mapId; //0x1C + Location *location; struct Camera *camera; u32 unk24; u8 padding3[0xC]; From 6b84d45d9383e85cb30d4197c9657b88711fa043 Mon Sep 17 00:00:00 2001 From: red031000 Date: Wed, 14 Jun 2023 21:54:01 +0100 Subject: [PATCH 2/4] newline --- include/constants/weather.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/constants/weather.h b/include/constants/weather.h index 44fefa17a..8ca78570d 100644 --- a/include/constants/weather.h +++ b/include/constants/weather.h @@ -33,4 +33,4 @@ #define WEATHER_CAVE_3 29 #define WEATHER_LOW_LIGHT 30 -#endif //POKEDIAMOND_CONSTANTS_WEATHER_H \ No newline at end of file +#endif //POKEDIAMOND_CONSTANTS_WEATHER_H From 5498f93b47870adbc6a7f58a6cda6f5e22bf2325 Mon Sep 17 00:00:00 2001 From: red031000 Date: Thu, 15 Jun 2023 23:54:35 +0100 Subject: [PATCH 3/4] few more commands --- arm9/asm/scrcmd_asm.s | 57 ------------------------------------- arm9/asm/unk_02038C78.s | 8 +++--- arm9/global.inc | 8 +++--- arm9/src/scrcmd.c | 24 ++++++++++++++++ include/constants/weather.h | 2 +- include/scrcmd.h | 4 +++ 6 files changed, 37 insertions(+), 66 deletions(-) diff --git a/arm9/asm/scrcmd_asm.s b/arm9/asm/scrcmd_asm.s index a731885d1..17ba73501 100644 --- a/arm9/asm/scrcmd_asm.s +++ b/arm9/asm/scrcmd_asm.s @@ -10,63 +10,6 @@ .text - thumb_func_start ScrCmd_Unk00C9 -ScrCmd_Unk00C9: ; 0x0203CB08 - push {r3, lr} - ldr r2, [r0, #0x8] - add r1, r2, #0x1 - str r1, [r0, #0x8] - add r0, #0x80 - ldr r0, [r0, #0x0] - ldrb r1, [r2, #0x0] - ldr r0, [r0, #0x38] - bl FUN_02055720 - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start ScrCmd_Unk00CA -ScrCmd_Unk00CA: ; 0x0203CB20 - push {r3-r5, lr} - add r5, r0, #0x0 - bl ScriptReadHalfword - add r1, r0, #0x0 - add r0, r5, #0x0 - add r0, #0x80 - ldr r0, [r0, #0x0] - bl GetVarPointer - add r5, #0x80 - add r4, r0, #0x0 - ldr r0, [r5, #0x0] - ldr r0, [r0, #0x38] - bl PlayerAvatar_GetState - strh r0, [r4, #0x0] - mov r0, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start ScrCmd_Unk00CB -ScrCmd_Unk00CB: ; 0x0203CB48 - push {r4, lr} - add r4, r0, #0x0 - bl ScriptReadHalfword - add r4, #0x80 - add r1, r0, #0x0 - ldr r0, [r4, #0x0] - ldr r0, [r0, #0x38] - bl PlayerAvatar_OrrTransitionFlags - mov r0, #0x1 - pop {r4, pc} - - thumb_func_start ScrCmd_Unk00CC -ScrCmd_Unk00CC: ; 0x0203CB60 - push {r3, lr} - add r0, #0x80 - ldr r0, [r0, #0x0] - ldr r0, [r0, #0x38] - bl Field_PlayerAvatar_ApplyTransitionFlags - mov r0, #0x0 - pop {r3, pc} - thumb_func_start ScrCmd_Unk00E3 ScrCmd_Unk00E3: ; 0x0203CB70 push {r4-r6, lr} diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s index 77831d6cf..72feb0750 100644 --- a/arm9/asm/unk_02038C78.s +++ b/arm9/asm/unk_02038C78.s @@ -350,10 +350,10 @@ gScriptCmdTable: ; 0x020F355C .word ScrCmd_ApplyContestDress .word ScrCmd_CheckBike .word ScrCmd_RideBike - .word ScrCmd_Unk00C9 - .word ScrCmd_Unk00CA - .word ScrCmd_Unk00CB - .word ScrCmd_Unk00CC + .word ScrCmd_CyclingRoad + .word ScrCmd_GetPlayerState + .word ScrCmd_SetPlayerState + .word ScrCmd_ApplyPlayerState .word ScrCmd_GetPlayerName .word ScrCmd_GetRivalName .word ScrCmd_GetFriendName diff --git a/arm9/global.inc b/arm9/global.inc index 9670fbe7c..da880c66d 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -2888,10 +2888,10 @@ .extern ScrCmd_CheckBike .extern ScrCmd_RideBike .extern ScrCmd_DummyRideBike -.extern ScrCmd_Unk00C9 -.extern ScrCmd_Unk00CA -.extern ScrCmd_Unk00CB -.extern ScrCmd_Unk00CC +.extern ScrCmd_CyclingRoad +.extern ScrCmd_GetPlayerState +.extern ScrCmd_SetPlayerState +.extern ScrCmd_ApplyPlayerState .extern ScrCmd_Unk00E3 .extern ScrCmd_Unk00DE .extern ScrCmd_Unk00E6 diff --git a/arm9/src/scrcmd.c b/arm9/src/scrcmd.c index 2d4f13a54..356a93d0f 100644 --- a/arm9/src/scrcmd.c +++ b/arm9/src/scrcmd.c @@ -179,6 +179,7 @@ extern void FieldSystem_PlayOrFadeToNewMusicId(FieldSystem *fieldSystem, u16 mus extern void Field_PlayerAvatar_OrrTransitionFlags(PlayerAvatar *playerAvatar, u32 transitionFlags); extern void Field_PlayerAvatar_ApplyTransitionFlags(PlayerAvatar *playerAvatar); extern u16 FieldSystem_GetOverriddenMusicId(FieldSystem *fieldSystem, u32 mapId); +extern void FUN_02055720(PlayerAvatar *avatar, u8 action); u8 UNK_021C5A0C[4]; @@ -2586,3 +2587,26 @@ BOOL ScrCmd_DummyRideBike(ScriptContext *ctx) { //02BF FieldSystem_SetSavedMusicId(ctx->fieldSystem, SEQ_BICYCLE); return FALSE; } + +BOOL ScrCmd_CyclingRoad(ScriptContext *ctx) { //00C9 + u8 action = ScriptReadByte(ctx); + FUN_02055720(ctx->fieldSystem->playerAvatar, action); + return FALSE; +} + +BOOL ScrCmd_GetPlayerState(ScriptContext *ctx) { //00CA + u16 *var = ScriptGetVarPointer(ctx); + *var = PlayerAvatar_GetState(ctx->fieldSystem->playerAvatar); + return FALSE; +} + +BOOL ScrCmd_SetPlayerState(ScriptContext *ctx) { //00CB + u16 state = ScriptReadHalfword(ctx); + PlayerAvatar_OrrTransitionFlags(ctx->fieldSystem->playerAvatar, state); + return TRUE; +} + +BOOL ScrCmd_ApplyPlayerState(ScriptContext *ctx) { //00CC + Field_PlayerAvatar_ApplyTransitionFlags(ctx->fieldSystem->playerAvatar); + return FALSE; +} diff --git a/include/constants/weather.h b/include/constants/weather.h index 8ca78570d..abf4c6554 100644 --- a/include/constants/weather.h +++ b/include/constants/weather.h @@ -24,7 +24,7 @@ #define WEATHER_UNKNOWN_20 20 //WEATHER_RAINBOW? #define WEATHER_UNKNOWN_21 21 //WEATHER_SNOW_STORM? #define WEATHER_UNKNOWN_22 22 //WEATHER_STORM? -#define WEATHER_UNKNOWN_23 23 //WEATHER_KOGOREBI?? +#define WEATHER_CANOPY 23 #define WEATHER_CAVE_1 24 #define WEATHER_CAVE_2 25 #define WEATHER_UNKNOWN_26 26 //WEATHER_GALAXY? diff --git a/include/scrcmd.h b/include/scrcmd.h index d8b3c3c87..c53de2c57 100644 --- a/include/scrcmd.h +++ b/include/scrcmd.h @@ -224,6 +224,10 @@ BOOL ScrCmd_ApplyContestDress(ScriptContext *ctx); BOOL ScrCmd_CheckBike(ScriptContext *ctx); BOOL ScrCmd_RideBike(ScriptContext *ctx); BOOL ScrCmd_DummyRideBike(ScriptContext *ctx); +BOOL ScrCmd_CyclingRoad(ScriptContext *ctx); +BOOL ScrCmd_GetPlayerState(ScriptContext *ctx); +BOOL ScrCmd_SetPlayerState(ScriptContext *ctx); +BOOL ScrCmd_ApplyPlayerState(ScriptContext *ctx); // scrcmd_mart.c BOOL ScrCmd_NormalMart(struct ScriptContext * ctx); From 3e858629010f6802014845551e998e9439c1561f Mon Sep 17 00:00:00 2001 From: red031000 Date: Fri, 16 Jun 2023 00:14:25 +0100 Subject: [PATCH 4/4] forgot this --- arm9/src/scrcmd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arm9/src/scrcmd.c b/arm9/src/scrcmd.c index 356a93d0f..c09306e45 100644 --- a/arm9/src/scrcmd.c +++ b/arm9/src/scrcmd.c @@ -180,6 +180,7 @@ extern void Field_PlayerAvatar_OrrTransitionFlags(PlayerAvatar *playerAvatar, u3 extern void Field_PlayerAvatar_ApplyTransitionFlags(PlayerAvatar *playerAvatar); extern u16 FieldSystem_GetOverriddenMusicId(FieldSystem *fieldSystem, u32 mapId); extern void FUN_02055720(PlayerAvatar *avatar, u8 action); +extern void PlayerAvatar_OrrTransitionFlags(PlayerAvatar *playerAvatar, u32 transitionFlags); u8 UNK_021C5A0C[4];