mirror of
https://github.com/pret/pokediamond.git
synced 2026-09-11 02:26:32 -05:00
1
.editorconfig
Normal file
1
.editorconfig
Normal file
@@ -0,0 +1 @@
|
||||
end_of_line = crlf
|
||||
@@ -10,241 +10,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C0
|
||||
ScrCmd_Unk00C0: ; 0x0203C874
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
add r0, #0x90
|
||||
ldr r0, [r0, #0x0]
|
||||
bl FUN_0205DD40
|
||||
add r0, r5, #0x0
|
||||
bl ScriptReadHalfword
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
bl VarGet
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl PlayerAvatar_GetFacingDirection
|
||||
add r1, r0, #0x0
|
||||
ldr r0, [r5, #0x74]
|
||||
add r2, r4, #0x0
|
||||
bl MOD05_021E6410
|
||||
mov r0, #0x1
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C1
|
||||
ScrCmd_Unk00C1: ; 0x0203C8B4
|
||||
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 VarGet
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl PlayerAvatar_GetFacingDirection
|
||||
add r1, r0, #0x0
|
||||
ldr r0, [r5, #0x74]
|
||||
add r2, r4, #0x0
|
||||
bl MOD05_021E6BF4
|
||||
mov r0, #0x1
|
||||
pop {r3-r5, pc}
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C2
|
||||
ScrCmd_Unk00C2: ; 0x0203C8E4
|
||||
push {r4-r6, lr}
|
||||
sub sp, #0x8
|
||||
add r5, r0, #0x0
|
||||
bl ScriptReadHalfword
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl ScriptReadHalfword
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
bl VarGet
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl ScriptReadHalfword
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
bl VarGet
|
||||
str r0, [sp, #0x0]
|
||||
mov r2, #0x1
|
||||
str r2, [sp, #0x4]
|
||||
add r5, #0x80
|
||||
ldr r0, [r5, #0x0]
|
||||
add r1, r4, #0x0
|
||||
sub r2, r2, #0x2
|
||||
add r3, r6, #0x0
|
||||
bl FUN_02049274
|
||||
mov r0, #0x1
|
||||
add sp, #0x8
|
||||
pop {r4-r6, pc}
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C3
|
||||
ScrCmd_Unk00C3: ; 0x0203C930
|
||||
push {r3-r5, lr}
|
||||
add r4, r0, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
add r5, r0, #0x0
|
||||
mov r1, #0x0
|
||||
bl FUN_02034DF4
|
||||
add r0, r5, #0x0
|
||||
bl FUN_02034DEC
|
||||
add r4, #0x80
|
||||
add r1, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
ldr r0, [r0, #0x4]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl MOD05_021DC174
|
||||
mov r0, #0x1
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C4
|
||||
ScrCmd_Unk00C4: ; 0x0203C960
|
||||
push {r3-r5, lr}
|
||||
add r4, r0, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
add r5, r0, #0x0
|
||||
mov r1, #0x0
|
||||
bl FUN_02034DF4
|
||||
add r0, r5, #0x0
|
||||
bl FUN_02034DEC
|
||||
add r4, #0x80
|
||||
add r1, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
ldr r0, [r0, #0x4]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl MOD05_021DC174
|
||||
mov r0, #0x1
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C5
|
||||
ScrCmd_Unk00C5: ; 0x0203C990
|
||||
push {r4-r6, lr}
|
||||
add r5, r0, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
mov r1, #0x14
|
||||
bl FieldSysGetAttrAddr
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl ScriptReadHalfword
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
bl VarGet
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl SaveArray_PlayerParty_Get
|
||||
add r1, r6, #0x0
|
||||
bl GetPartyMonByIndex
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553E8
|
||||
add r3, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
mov r1, #0x0
|
||||
add r2, r6, #0x0
|
||||
bl MOD06_0224666C
|
||||
str r0, [r4, #0x0]
|
||||
ldr r1, _0203C9F4 ; =FUN_0203C9F8
|
||||
add r0, r5, #0x0
|
||||
bl SetupNativeScript
|
||||
mov r0, #0x1
|
||||
pop {r4-r6, pc}
|
||||
nop
|
||||
_0203C9F4: .word FUN_0203C9F8
|
||||
|
||||
thumb_func_start FUN_0203C9F8
|
||||
FUN_0203C9F8: ; 0x0203C9F8
|
||||
push {r4, lr}
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
mov r1, #0x14
|
||||
bl FieldSysGetAttrAddr
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
bl MOD06_022466A0
|
||||
cmp r0, #0x1
|
||||
bne _0203CA1A
|
||||
ldr r0, [r4, #0x0]
|
||||
bl MOD06_022466AC
|
||||
mov r0, #0x1
|
||||
pop {r4, pc}
|
||||
_0203CA1A:
|
||||
mov r0, #0x0
|
||||
pop {r4, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C6
|
||||
ScrCmd_Unk00C6: ; 0x0203CA20
|
||||
push {r3, lr}
|
||||
ldr r0, [r0, #0x74]
|
||||
bl MOD05_021E7030
|
||||
mov r0, #0x1
|
||||
pop {r3, pc}
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C7
|
||||
ScrCmd_Unk00C7: ; 0x0203CA2C
|
||||
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 FUN_020553C4
|
||||
cmp r0, #0x1
|
||||
bne _0203CA54
|
||||
mov r0, #0x1
|
||||
b _0203CA56
|
||||
_0203CA54:
|
||||
mov r0, #0x0
|
||||
_0203CA56:
|
||||
strh r0, [r4, #0x0]
|
||||
mov r0, #0x0
|
||||
pop {r3-r5, pc}
|
||||
|
||||
thumb_func_start ScrCmd_Unk00C8
|
||||
ScrCmd_Unk00C8: ; 0x0203CA5C
|
||||
push {r4, lr}
|
||||
@@ -356,7 +121,7 @@ ScrCmd_Unk00CA: ; 0x0203CB20
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0x0]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
strh r0, [r4, #0x0]
|
||||
mov r0, #0x0
|
||||
pop {r3-r5, pc}
|
||||
@@ -745,7 +510,7 @@ ScrCmd_Unk011B: ; 0x0203CE0C
|
||||
str r0, [sp, #0x10]
|
||||
ldr r0, [r4, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r1, sp, #0x0
|
||||
bl FUN_02034DD4
|
||||
mov r0, #0x0
|
||||
@@ -767,7 +532,7 @@ ScrCmd_Unk011C: ; 0x0203CE8C
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
ldr r0, [r0, #0x0]
|
||||
bl MOD05_021E2608
|
||||
@@ -2006,7 +1771,7 @@ ScrCmd_Unk014C: ; 0x0203D874
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r1, r4, #0x0
|
||||
bl FUN_02034E04
|
||||
mov r0, #0x0
|
||||
@@ -3668,7 +3433,7 @@ ScrCmd_Unk0202: ; 0x0203E5DC
|
||||
add r0, #0x80
|
||||
ldr r0, [r0, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r7, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x80
|
||||
@@ -6428,7 +6193,7 @@ ScrCmd_Unk02B5: ; 0x0203FBBC
|
||||
add r7, r0, #0x0
|
||||
ldr r0, [r5, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
str r4, [r0, #0x0]
|
||||
str r6, [r0, #0x8]
|
||||
|
||||
@@ -155,8 +155,8 @@ FUN_02034E2C: ; 0x02034E2C
|
||||
add r0, #0x94
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_02034E30
|
||||
FUN_02034E30: ; 0x02034E30
|
||||
thumb_func_start Save_LocalFieldData_Get
|
||||
Save_LocalFieldData_Get: ; 0x02034E30
|
||||
ldr r3, _02034E38 ; =SaveArray_Get
|
||||
mov r1, #0x6
|
||||
bx r3
|
||||
|
||||
@@ -1009,7 +1009,7 @@ _020357D6:
|
||||
cmp r6, #0x0
|
||||
bne _02035834
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E24
|
||||
mov r1, #0x0
|
||||
add r2, r0, #0x0
|
||||
|
||||
@@ -224,7 +224,7 @@ FUN_02037400: ; 0x02037400
|
||||
mov r0, #0x0
|
||||
str r0, [r4, #0x10]
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DC0
|
||||
str r0, [r4, #0x1c]
|
||||
bl MapMatrix_New
|
||||
|
||||
@@ -46,7 +46,7 @@ _020377DC: .word UNK_020F2BB0
|
||||
thumb_func_start FUN_020377E0
|
||||
FUN_020377E0: ; 0x020377E0
|
||||
push {r3, lr}
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DC0
|
||||
bl FUN_020377B0
|
||||
pop {r3, pc}
|
||||
|
||||
@@ -281,7 +281,7 @@ FUN_02037844: ; 0x02037844
|
||||
lsr r1, r1, #0x10
|
||||
bl FUN_0206E360
|
||||
ldr r0, [r5, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _02037884
|
||||
add r0, r4, #0x0
|
||||
@@ -1079,7 +1079,7 @@ FUN_02037EB8: ; 0x02037EB8
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E0C
|
||||
mov r1, #0x5
|
||||
mov r0, #0xb
|
||||
|
||||
@@ -341,14 +341,14 @@ gScriptCmdTable: ; 0x020F355C
|
||||
.word ScrCmd_WaitFadeScreen
|
||||
.word ScrCmd_Warp
|
||||
.word ScrCmd_RockClimb
|
||||
.word ScrCmd_Unk00C0
|
||||
.word ScrCmd_Unk00C1
|
||||
.word ScrCmd_Unk00C2
|
||||
.word ScrCmd_Unk00C3
|
||||
.word ScrCmd_Unk00C4
|
||||
.word ScrCmd_Unk00C5
|
||||
.word ScrCmd_Unk00C6
|
||||
.word ScrCmd_Unk00C7
|
||||
.word ScrCmd_Surf
|
||||
.word ScrCmd_Waterfall
|
||||
.word ScrCmd_Fly
|
||||
.word ScrCmd_Flash
|
||||
.word ScrCmd_Defog
|
||||
.word ScrCmd_Cut
|
||||
.word ScrCmd_ApplyContestDress
|
||||
.word ScrCmd_CheckBike
|
||||
.word ScrCmd_Unk00C8
|
||||
.word ScrCmd_Unk00C9
|
||||
.word ScrCmd_Unk00CA
|
||||
|
||||
@@ -878,7 +878,7 @@ FUN_02046C1C: ; 0x02046C1C
|
||||
bl FUN_02046530
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r6, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E24
|
||||
str r0, [sp, #0x0]
|
||||
ldr r0, [r4, #0x0]
|
||||
@@ -962,7 +962,7 @@ _02046CD4:
|
||||
cmp r0, #0x4
|
||||
beq _02046CFE
|
||||
ldr r0, [r6, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r1, r0, #0x0
|
||||
add r0, r7, #0x0
|
||||
|
||||
@@ -486,7 +486,7 @@ FUN_02047A78: ; 0x02047A78
|
||||
bl Save_PlayerData_GetOptionsAddr
|
||||
str r0, [sp, #0xc]
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
str r0, [sp, #0x10]
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
@@ -1022,7 +1022,7 @@ FUN_02047F38: ; 0x02047F38
|
||||
bl Save_Pokedex_Get
|
||||
str r0, [sp, #0x4]
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E24
|
||||
add r5, r0, #0x0
|
||||
add r0, r4, #0x0
|
||||
@@ -1156,7 +1156,7 @@ FUN_0204806C: ; 0x0204806C
|
||||
add r4, r1, #0x0
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E20
|
||||
add r6, r0, #0x0
|
||||
ldr r0, [r4, #0x1c]
|
||||
|
||||
@@ -334,7 +334,7 @@ _020483A2: ; jump table (using 16-bit offset)
|
||||
.short _02048482 - _020483A2 - 2; case 6
|
||||
_020483B0:
|
||||
ldr r0, [r6, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r7, r0, #0x0
|
||||
bl FUN_02034DFC
|
||||
add r1, sp, #0x4
|
||||
@@ -404,7 +404,7 @@ _02048442:
|
||||
bl FUN_02034E8C
|
||||
add r7, r0, #0x0
|
||||
ldr r0, [r6, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DFC
|
||||
cmp r7, r0
|
||||
bne _0204846E
|
||||
|
||||
@@ -271,11 +271,11 @@ CallTask_GameClear: ; 0x02048694
|
||||
bl Save_PlayerData_GetProfileAddr
|
||||
str r0, [sp, #0x0]
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
str r0, [sp, #0x8]
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
str r0, [sp, #0x4]
|
||||
add r0, r6, #0x0
|
||||
|
||||
@@ -74,7 +74,7 @@ FUN_02048958: ; 0x02048958
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
add r4, r1, #0x0
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r6, r0, #0x0
|
||||
bl FUN_02034DC8
|
||||
add r2, r0, #0x0
|
||||
@@ -161,7 +161,7 @@ FUN_020489FC: ; 0x020489FC
|
||||
add r4, r1, #0x0
|
||||
ldr r7, [r0, #0x0]
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
str r0, [sp, #0x4]
|
||||
add r0, r5, #0x0
|
||||
bl FUN_0204AB44
|
||||
@@ -272,7 +272,7 @@ FUN_02048AE4: ; 0x02048AE4
|
||||
bl PlayerProfile_GetTrainerGender
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E20
|
||||
ldr r3, [r5, #0x1c]
|
||||
ldr r1, [r0, #0x4]
|
||||
@@ -317,7 +317,7 @@ FUN_02048B50: ; 0x02048B50
|
||||
add r0, r5, #0x0
|
||||
bl FUN_02034E60
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E20
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
@@ -462,7 +462,7 @@ FUN_02048C80: ; 0x02048C80
|
||||
cmp r0, #0x0
|
||||
beq _02048CAE
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
ldr r0, [r0, #0x0]
|
||||
mov r1, #0xb
|
||||
@@ -528,7 +528,7 @@ FUN_02048D04: ; 0x02048D04
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
@@ -671,7 +671,7 @@ _02048E10:
|
||||
cmp r0, #0x0
|
||||
beq _02048E78
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r7, r0, #0x0
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02048CDC
|
||||
@@ -1435,7 +1435,7 @@ FUN_02049430: ; 0x02049430
|
||||
pop {r4-r6, pc}
|
||||
_02049452:
|
||||
ldr r0, [r5, #0x38]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl MOD06_022483BC
|
||||
@@ -1839,7 +1839,7 @@ FUN_0204976C: ; 0x0204976C
|
||||
push {r4-r6, lr}
|
||||
add r6, r0, #0x0
|
||||
ldr r0, [r6, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r4, r0, #0x0
|
||||
mov r0, #0xb
|
||||
@@ -2610,7 +2610,7 @@ FUN_02049D9C: ; 0x02049D9C
|
||||
push {r4-r6, lr}
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r4, r0, #0x0
|
||||
mov r0, #0xb
|
||||
@@ -2741,7 +2741,7 @@ FUN_02049EA4: ; 0x02049EA4
|
||||
bl FUN_02046528
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r7, r0, #0x0
|
||||
mov r0, #0xb
|
||||
@@ -2858,7 +2858,7 @@ FUN_02049F98: ; 0x02049F98
|
||||
bl FUN_02046528
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r1, r4, #0x0
|
||||
bl FUN_02048CB0
|
||||
@@ -2899,7 +2899,7 @@ FUN_02049FFC: ; 0x02049FFC
|
||||
bl FUN_02046528
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r1, r0, #0x0
|
||||
mov r0, #0x0
|
||||
|
||||
@@ -47,7 +47,7 @@ FUN_0204AB20: ; 0x0204AB20
|
||||
push {r4, lr}
|
||||
ldr r0, [r0, #0xc]
|
||||
add r4, r1, #0x0
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DE8
|
||||
strh r4, [r0, #0x0]
|
||||
pop {r4, pc}
|
||||
@@ -57,7 +57,7 @@ FUN_0204AB20: ; 0x0204AB20
|
||||
FUN_0204AB34: ; 0x0204AB34
|
||||
push {r3, lr}
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DE8
|
||||
ldrh r0, [r0, #0x0]
|
||||
pop {r3, pc}
|
||||
@@ -66,7 +66,7 @@ FUN_0204AB34: ; 0x0204AB34
|
||||
FUN_0204AB44: ; 0x0204AB44
|
||||
push {r3, lr}
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DE8
|
||||
mov r1, #0x0
|
||||
strh r1, [r0, #0x0]
|
||||
@@ -79,7 +79,7 @@ FUN_0204AB58: ; 0x0204AB58
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0x38]
|
||||
add r4, r1, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
bne _0204AB6C
|
||||
ldr r0, _0204ABA0 ; =0x0000047F
|
||||
@@ -147,7 +147,7 @@ FUN_0204ABDC: ; 0x0204ABDC
|
||||
ldr r0, [r5, #0x38]
|
||||
add r4, r1, #0x0
|
||||
add r7, r2, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
add r6, r0, #0x0
|
||||
bl FUN_02004104
|
||||
cmp r0, #0x1
|
||||
|
||||
@@ -864,7 +864,7 @@ FUN_0204B9CC: ; 0x0204B9CC
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
bl FUN_02055648
|
||||
add r1, r0, #0x0
|
||||
ldr r0, [r4, #0x38]
|
||||
|
||||
@@ -89,7 +89,7 @@ _02055118:
|
||||
add r0, r5, #0x0
|
||||
bl MOD05_021EDBC8
|
||||
add r0, r5, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
bne _0205515C
|
||||
add r0, r5, #0x0
|
||||
@@ -441,8 +441,8 @@ _020553B6:
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_020553C4
|
||||
FUN_020553C4: ; 0x020553C4
|
||||
thumb_func_start PlayerAvatar_GetState
|
||||
PlayerAvatar_GetState: ; 0x020553C4
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _020553CE
|
||||
@@ -474,8 +474,8 @@ FUN_020553E4: ; 0x020553E4
|
||||
str r1, [r0, #0x1c]
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_020553E8
|
||||
FUN_020553E8: ; 0x020553E8
|
||||
thumb_func_start PlayerAvatar_GetGender
|
||||
PlayerAvatar_GetGender: ; 0x020553E8
|
||||
ldr r0, [r0, #0x1c]
|
||||
bx lr
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ _02055812:
|
||||
pop {r3-r7, pc}
|
||||
_0205584E:
|
||||
add r0, r5, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x0
|
||||
bne _02055878
|
||||
add r0, r5, #0x0
|
||||
@@ -138,7 +138,7 @@ _020558E4:
|
||||
cmp r0, #0x20
|
||||
bne _020558F6
|
||||
add r0, r5, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
bne _020558F6
|
||||
mov r0, #0x1
|
||||
@@ -725,7 +725,7 @@ FUN_02055DAC: ; 0x02055DAC
|
||||
cmp r4, #0x0
|
||||
bne _02055E62
|
||||
add r0, r5, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _02055DFE
|
||||
add r0, r5, #0x0
|
||||
@@ -1121,7 +1121,7 @@ FUN_02056110: ; 0x02056110
|
||||
add r7, r1, #0x0
|
||||
str r2, [sp, #0x8]
|
||||
add r5, r3, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
add r4, r0, #0x0
|
||||
add r0, r6, #0x0
|
||||
bl FUN_020553A0
|
||||
@@ -1338,7 +1338,7 @@ FUN_020562A8: ; 0x020562A8
|
||||
bl FUN_02056B74
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
beq _0205632A
|
||||
mov r0, #0x4
|
||||
@@ -1492,7 +1492,7 @@ FUN_020563F0: ; 0x020563F0
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _0205642C
|
||||
mov r0, #0x2
|
||||
@@ -2878,7 +2878,7 @@ FUN_02056EC8: ; 0x02056EC8
|
||||
bl FUN_0204A6E0
|
||||
add r6, r0, #0x0
|
||||
ldr r0, [sp, #0x0]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _02056F54
|
||||
add r0, r5, #0x0
|
||||
@@ -2941,7 +2941,7 @@ FUN_02056F78: ; 0x02056F78
|
||||
mvn r1, r1
|
||||
cmp r4, r1
|
||||
beq _0205701A
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _0205701A
|
||||
add r0, r5, #0x0
|
||||
@@ -3200,7 +3200,7 @@ FUN_0205714C: ; 0x0205714C
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x0
|
||||
beq _02057162
|
||||
cmp r0, #0x1
|
||||
@@ -3467,7 +3467,7 @@ FUN_0205733C: ; 0x0205733C
|
||||
mov r0, #0x0
|
||||
pop {r3-r5, pc}
|
||||
_0205734E:
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
beq _0205735A
|
||||
mov r0, #0x0
|
||||
|
||||
@@ -79,7 +79,7 @@ FUN_0205CE80: ; 0x0205CE80
|
||||
bl FUN_0205ED3C
|
||||
str r0, [r5, #0x4]
|
||||
ldr r0, [r4, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
str r0, [r5, #0x8]
|
||||
ldr r0, [r4, #0x38]
|
||||
bl GetPlayerXCoord
|
||||
@@ -473,7 +473,7 @@ _0205D1C4:
|
||||
pop {r3-r5, pc}
|
||||
_0205D1CA:
|
||||
ldr r0, [r5, #0x14]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
bne _0205D1DA
|
||||
mov r0, #0x0
|
||||
@@ -578,7 +578,7 @@ _0205D290:
|
||||
b _0205D324
|
||||
_0205D296:
|
||||
ldr r0, [r4, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _0205D2D6
|
||||
ldr r0, [r4, #0x38]
|
||||
@@ -1037,7 +1037,7 @@ FUN_0205D628: ; 0x0205D628
|
||||
_0205D636:
|
||||
ldr r0, [r4, #0x18]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x1
|
||||
bne _0205D648
|
||||
mov r0, #0x0
|
||||
|
||||
@@ -28,7 +28,7 @@ FUN_0205F7A0: ; 0x0205F7A0
|
||||
add r7, r0, #0x0
|
||||
ldr r0, [sp, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
mov r2, #0x5
|
||||
str r0, [sp, #0xc]
|
||||
@@ -76,7 +76,7 @@ _0205F812:
|
||||
str r0, [r5, #0xc]
|
||||
ldr r0, [sp, #0x0]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E0C
|
||||
str r0, [sp, #0x8]
|
||||
ldr r0, [r0, #0x0]
|
||||
|
||||
@@ -99,7 +99,7 @@ _020636F8:
|
||||
bl FUN_0205F2B4
|
||||
_02063758:
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E20
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0x4]
|
||||
@@ -126,7 +126,7 @@ _02063786:
|
||||
cmp r0, #0x0
|
||||
beq _020637A6
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E0C
|
||||
ldr r2, [r5, #0x1c]
|
||||
ldr r1, [r2, #0x8]
|
||||
@@ -224,7 +224,7 @@ FUN_0206384C: ; 0x0206384C
|
||||
sub sp, #0x4
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DC8
|
||||
ldr r1, [r5, #0x1c]
|
||||
ldr r6, [r0, #0x0]
|
||||
|
||||
@@ -50,7 +50,7 @@ FUN_020638BC: ; 0x020638BC
|
||||
_020638DA:
|
||||
ldr r0, [r4, #0x0]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r3, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
ldr r2, [r4, #0x10]
|
||||
|
||||
@@ -137,7 +137,7 @@ _02063A18:
|
||||
strh r0, [r4, #0xc]
|
||||
_02063A2C:
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DEC
|
||||
cmp r0, #0xe
|
||||
beq _02063A42
|
||||
@@ -408,7 +408,7 @@ _02063C26:
|
||||
_02063C3A:
|
||||
ldr r0, [r4, #0x4]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0x2
|
||||
bne _02063C4A
|
||||
mov r0, #0x4
|
||||
|
||||
@@ -2565,7 +2565,7 @@
|
||||
.extern FUN_02034E24
|
||||
.extern FUN_02034E28
|
||||
.extern FUN_02034E2C
|
||||
.extern FUN_02034E30
|
||||
.extern Save_LocalFieldData_Get
|
||||
.extern FUN_02034E48
|
||||
.extern FUN_02034E60
|
||||
.extern FUN_02034E8C
|
||||
@@ -2878,14 +2878,14 @@
|
||||
.extern ScrCmd_GetPreviousMapID
|
||||
.extern ScrCmd_GetCurrentMapID
|
||||
.extern ScrCmd_RockClimb
|
||||
.extern ScrCmd_Unk00C0
|
||||
.extern ScrCmd_Unk00C1
|
||||
.extern ScrCmd_Unk00C2
|
||||
.extern ScrCmd_Unk00C3
|
||||
.extern ScrCmd_Unk00C4
|
||||
.extern ScrCmd_Unk00C5
|
||||
.extern ScrCmd_Unk00C6
|
||||
.extern ScrCmd_Unk00C7
|
||||
.extern ScrCmd_Surf
|
||||
.extern ScrCmd_Waterfall
|
||||
.extern ScrCmd_Fly
|
||||
.extern ScrCmd_Flash
|
||||
.extern ScrCmd_Defog
|
||||
.extern ScrCmd_Cut
|
||||
.extern ScrCmd_ApplyContestDress
|
||||
.extern ScrCmd_CheckBike
|
||||
.extern ScrCmd_Unk00C8
|
||||
.extern ScrCmd_Unk02BF
|
||||
.extern ScrCmd_Unk00C9
|
||||
@@ -3914,11 +3914,11 @@
|
||||
.extern FUN_0205537C
|
||||
.extern FUN_020553A0
|
||||
.extern FUN_020553A8
|
||||
.extern FUN_020553C4
|
||||
.extern PlayerAvatar_GetState
|
||||
.extern FUN_020553D4
|
||||
.extern FUN_020553DC
|
||||
.extern FUN_020553E0
|
||||
.extern FUN_020553E8
|
||||
.extern PlayerAvatar_GetGender
|
||||
.extern FUN_02055408
|
||||
.extern FUN_0205540C
|
||||
.extern FUN_02055410
|
||||
@@ -6679,11 +6679,11 @@
|
||||
.extern MOD05_021E5FD8
|
||||
.extern MOD05_021E5FE0
|
||||
.extern MOD05_021E61A4
|
||||
.extern MOD05_021E6410
|
||||
.extern CallFieldTask_Surf
|
||||
.extern MOD05_021E643C
|
||||
.extern CallFieldTask_RockClimb
|
||||
.extern MOD05_021E69BC
|
||||
.extern MOD05_021E6BF4
|
||||
.extern CallFieldTask_Waterfall
|
||||
.extern MOD05_021E7030
|
||||
.extern MOD05_021E70F0
|
||||
.extern MOD05_021E7138
|
||||
|
||||
@@ -129,7 +129,7 @@ _021D75DE:
|
||||
add r0, r4, #0
|
||||
bl MOD05_021D7E4C
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DEC
|
||||
add r1, r0, #0
|
||||
ldr r0, [r4, #4]
|
||||
@@ -435,7 +435,7 @@ MOD05_021D7894: ; 0x021D7894
|
||||
pop {r3, r4, r5, r6, r7, pc}
|
||||
_021D78CE:
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
add r7, r0, #0
|
||||
ldr r0, [r5, #0x1c]
|
||||
add r1, r4, #0
|
||||
@@ -546,7 +546,7 @@ MOD05_021D79B4: ; 0x021D79B4
|
||||
cmp r0, #0
|
||||
beq _021D79FE
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E0C
|
||||
add r7, r0, #0
|
||||
ldr r0, [r5, #0x38]
|
||||
@@ -1105,7 +1105,7 @@ MOD05_021D7E4C: ; 0x021D7E4C
|
||||
bl MOD05_021DBA00
|
||||
str r0, [r4, #0x44]
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E10
|
||||
add r5, r0, #0
|
||||
ldr r0, [r4, #0x38]
|
||||
|
||||
@@ -1444,7 +1444,7 @@ _021D8C78:
|
||||
pop {r3, r4, r5, r6, r7, pc}
|
||||
_021D8C88:
|
||||
ldr r0, [r5, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #2
|
||||
beq _021D8CE0
|
||||
ldr r0, [r5, #0xc]
|
||||
@@ -1877,7 +1877,7 @@ MOD05_021D9010: ; 0x021D9010
|
||||
bl SaveArray_PlayerParty_Get
|
||||
add r4, r0, #0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E2C
|
||||
ldrh r1, [r0]
|
||||
add r1, r1, #1
|
||||
@@ -1945,7 +1945,7 @@ MOD05_021D9090: ; 0x021D9090
|
||||
pop {r4, pc}
|
||||
_021D90A6:
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E24
|
||||
ldrh r0, [r0]
|
||||
cmp r0, #0
|
||||
@@ -1958,7 +1958,7 @@ _021D90A6:
|
||||
pop {r4, pc}
|
||||
_021D90C4:
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E28
|
||||
ldrh r1, [r0]
|
||||
add r1, r1, #1
|
||||
@@ -2121,7 +2121,7 @@ _021D91DC:
|
||||
bl GF_AssertFail
|
||||
_021D91F2:
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r2, r0, #0
|
||||
ldmia r2!, {r0, r1}
|
||||
@@ -2143,7 +2143,7 @@ _021D920C:
|
||||
str r0, [r5, #0x10]
|
||||
_021D921E:
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DC4
|
||||
add r5, r0, #0
|
||||
ldr r0, [r4, #0x38]
|
||||
@@ -2169,7 +2169,7 @@ MOD05_021D9248: ; 0x021D9248
|
||||
add r7, r1, #0
|
||||
str r2, [sp]
|
||||
add r4, r3, #0
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
add r6, r0, #0
|
||||
ldr r3, [r5, #0x1c]
|
||||
|
||||
@@ -42,7 +42,7 @@ _021E6010: .word UNK05_021F7734
|
||||
MOD05_021E6014: ; 0x021E6014
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #0
|
||||
bl FUN_020555A0
|
||||
@@ -70,7 +70,7 @@ _021E6048:
|
||||
MOD05_021E6054: ; 0x021E6054
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #1
|
||||
bl FUN_020555A0
|
||||
@@ -102,7 +102,7 @@ MOD05_021E609C: ; 0x021E609C
|
||||
push {r3, r4, r5, r6, lr}
|
||||
sub sp, #4
|
||||
add r5, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #2
|
||||
bl FUN_020555A0
|
||||
@@ -156,7 +156,7 @@ _021E6114: .word FUN_020556C8
|
||||
MOD05_021E6118: ; 0x021E6118
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #4
|
||||
bl FUN_020555A0
|
||||
@@ -170,7 +170,7 @@ MOD05_021E6118: ; 0x021E6118
|
||||
MOD05_021E6134: ; 0x021E6134
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #6
|
||||
bl FUN_020555A0
|
||||
@@ -184,7 +184,7 @@ MOD05_021E6134: ; 0x021E6134
|
||||
MOD05_021E6150: ; 0x021E6150
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #7
|
||||
bl FUN_020555A0
|
||||
@@ -198,7 +198,7 @@ MOD05_021E6150: ; 0x021E6150
|
||||
MOD05_021E616C: ; 0x021E616C
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #8
|
||||
bl FUN_020555A0
|
||||
@@ -212,7 +212,7 @@ MOD05_021E616C: ; 0x021E616C
|
||||
MOD05_021E6188: ; 0x021E6188
|
||||
push {r4, lr}
|
||||
add r4, r0, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #9
|
||||
bl FUN_020555A0
|
||||
@@ -535,8 +535,8 @@ MOD05_021E63D4: ; 0x021E63D4
|
||||
nop
|
||||
_021E640C: .word MOD05_021E6484
|
||||
|
||||
thumb_func_start MOD05_021E6410
|
||||
MOD05_021E6410: ; 0x021E6410
|
||||
thumb_func_start CallFieldTask_Surf
|
||||
CallFieldTask_Surf: ; 0x021E6410
|
||||
push {r4, r5, r6, lr}
|
||||
sub sp, #0x10
|
||||
add r6, r2, #0
|
||||
@@ -708,7 +708,7 @@ _021E655E:
|
||||
cmp r0, #0xa
|
||||
ble _021E65E4
|
||||
ldr r0, [r4, #0x20]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #0
|
||||
bl FUN_020555A0
|
||||
@@ -747,7 +747,7 @@ _021E65AC:
|
||||
mov r1, #1
|
||||
bl MOD06_0224ADF8
|
||||
ldr r0, [r4, #0x20]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #2
|
||||
bl FUN_020555A0
|
||||
@@ -773,7 +773,7 @@ MOD05_021E65EC: ; 0x021E65EC
|
||||
cmp r3, #1
|
||||
bne _021E6602
|
||||
add r0, r5, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #2
|
||||
beq _021E6606
|
||||
_021E6602:
|
||||
@@ -852,7 +852,7 @@ _021E668C:
|
||||
cmp r0, #1
|
||||
bne _021E6710
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #0
|
||||
bl FUN_020555A0
|
||||
@@ -914,7 +914,7 @@ MOD05_021E6714: ; 0x021E6714
|
||||
cmp r3, #1
|
||||
bne _021E672E
|
||||
add r0, r5, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #2
|
||||
beq _021E6732
|
||||
_021E672E:
|
||||
@@ -1532,8 +1532,8 @@ MOD05_021E6BD8: ; 0x021E6BD8
|
||||
nop
|
||||
_021E6BF0: .word MOD05_021E6C30
|
||||
|
||||
thumb_func_start MOD05_021E6BF4
|
||||
MOD05_021E6BF4: ; 0x021E6BF4
|
||||
thumb_func_start CallFieldTask_Waterfall
|
||||
CallFieldTask_Waterfall: ; 0x021E6BF4
|
||||
push {r3, r4, r5, r6, r7, lr}
|
||||
sub sp, #0x10
|
||||
add r7, r2, #0
|
||||
@@ -2099,7 +2099,7 @@ MOD05_021E703C: ; 0x021E703C
|
||||
bl FUN_020553A0
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #4]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
str r0, [r4, #0x10]
|
||||
ldr r0, [r5, #0x10]
|
||||
ldr r1, _021E7068 ; =MOD05_021E706C
|
||||
@@ -2180,7 +2180,7 @@ MOD05_021E70F0: ; 0x021E70F0
|
||||
cmp r0, #0
|
||||
beq _021E7136
|
||||
add r0, r4, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0
|
||||
bne _021E7136
|
||||
add r0, r5, #0
|
||||
@@ -2212,7 +2212,7 @@ MOD05_021E7138: ; 0x021E7138
|
||||
cmp r0, #0
|
||||
beq _021E7180
|
||||
add r0, r4, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #0
|
||||
bne _021E7180
|
||||
add r0, r5, #0
|
||||
@@ -2243,7 +2243,7 @@ MOD05_021E7184: ; 0x021E7184
|
||||
add r6, r0, #0
|
||||
ldr r5, [r6, #0x38]
|
||||
add r0, r5, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
add r7, r0, #0
|
||||
beq _021E7198
|
||||
mov r0, #0
|
||||
@@ -2291,7 +2291,7 @@ MOD05_021E71E8: ; 0x021E71E8
|
||||
add r6, r0, #0
|
||||
ldr r4, [r6, #0xc]
|
||||
add r0, r4, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r1, r0, #0
|
||||
mov r0, #0
|
||||
bl FUN_020555A0
|
||||
@@ -2321,7 +2321,7 @@ MOD05_021E7228: ; 0x021E7228
|
||||
str r2, [r4]
|
||||
str r1, [r4, #8]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
str r0, [r4, #4]
|
||||
pop {r4, pc}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ MOD05_021E8310: ; 0x021E8310
|
||||
ldr r4, [r1, #0xc]
|
||||
add r5, r0, #0
|
||||
add r0, r4, #0
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DC0
|
||||
add r6, r0, #0
|
||||
add r0, r4, #0
|
||||
|
||||
@@ -538,7 +538,7 @@ _021F602C:
|
||||
add r0, r5, #0
|
||||
bl MOD05_021F60FC
|
||||
add r0, r4, #0
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
bl FUN_02055648
|
||||
add r1, r0, #0
|
||||
add r0, r4, #0
|
||||
|
||||
@@ -58,7 +58,7 @@ _021F63AC:
|
||||
_021F63CC:
|
||||
ldr r0, [sp]
|
||||
ldr r0, [r0, #0x38]
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r3, r0, #0
|
||||
ldr r0, [sp]
|
||||
ldr r2, [r6]
|
||||
|
||||
@@ -4874,7 +4874,7 @@ _0223BA42:
|
||||
strb r0, [r1, #0x18]
|
||||
_0223BA8C:
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DEC
|
||||
add r3, r0, #0
|
||||
ldr r0, [sp, #0x20]
|
||||
@@ -5204,7 +5204,7 @@ _0223BD2E:
|
||||
bl MOD06_0223D2DC
|
||||
ldr r0, [sp, #8]
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DEC
|
||||
add r3, r0, #0
|
||||
ldr r0, [sp, #0x14]
|
||||
@@ -5656,7 +5656,7 @@ _0223C0CE:
|
||||
strb r0, [r1, #0x14]
|
||||
_0223C118:
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DEC
|
||||
add r3, r0, #0
|
||||
ldr r0, [sp, #0x1c]
|
||||
@@ -6107,7 +6107,7 @@ _0223C4B0:
|
||||
b _0223C4D4
|
||||
_0223C4C4:
|
||||
ldr r0, [r5, #0x38]
|
||||
bl FUN_020553C4
|
||||
bl PlayerAvatar_GetState
|
||||
cmp r0, #1
|
||||
bne _0223C4D4
|
||||
add r4, #0x1e
|
||||
@@ -7593,7 +7593,7 @@ MOD06_0223CFD0: ; 0x0223CFD0
|
||||
pop {r4, pc}
|
||||
_0223CFE4:
|
||||
ldr r0, [r0, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034E24
|
||||
add r1, r0, #0
|
||||
ldrh r1, [r1]
|
||||
@@ -19910,7 +19910,7 @@ MOD06_022433B8: ; 0x022433B8
|
||||
push {r4, r5, r6, lr}
|
||||
add r5, r0, #0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DD0
|
||||
add r4, r0, #0
|
||||
ldr r0, [r5, #0x38]
|
||||
@@ -39275,7 +39275,7 @@ MOD06_0224C888: ; 0x0224C888
|
||||
add r5, r0, #0
|
||||
ldr r0, [r1, #0xc]
|
||||
add r4, r2, #0
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
ldr r1, [r4, #8]
|
||||
cmp r1, #2
|
||||
bne _0224C8B2
|
||||
@@ -39580,7 +39580,7 @@ MOD06_0224CAE8: ; 0x0224CAE8
|
||||
add r5, r1, #0
|
||||
ldr r0, [r5, #0x38]
|
||||
add r4, r2, #0
|
||||
bl FUN_020553E8
|
||||
bl PlayerAvatar_GetGender
|
||||
add r3, r0, #0
|
||||
ldr r2, [r4, #0x20]
|
||||
add r0, r5, #0
|
||||
|
||||
@@ -134,7 +134,7 @@ _02254932:
|
||||
bl MOD20_02252C38
|
||||
add r4, r0, #0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
add r6, r0, #0
|
||||
ldr r0, [r4, #0x1c]
|
||||
@@ -522,7 +522,7 @@ MOD42_02254C04: ; 0x02254C04
|
||||
bl MOD20_02252C38
|
||||
add r4, r0, #0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
add r6, r0, #0
|
||||
ldr r0, [r4, #0x1c]
|
||||
|
||||
@@ -57,7 +57,7 @@ MOD43_0225489C: ; 0x0225489C
|
||||
bl MOD20_02252C38
|
||||
add r4, r0, #0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
add r6, r0, #0
|
||||
ldr r0, [r4, #0x1c]
|
||||
@@ -390,7 +390,7 @@ MOD43_02254AF8: ; 0x02254AF8
|
||||
bl MOD20_02252C38
|
||||
add r4, r0, #0
|
||||
ldr r0, [r4, #0xc]
|
||||
bl FUN_02034E30
|
||||
bl Save_LocalFieldData_Get
|
||||
bl FUN_02034DCC
|
||||
add r7, r0, #0
|
||||
ldr r0, [r4, #0x1c]
|
||||
|
||||
@@ -2044,7 +2044,7 @@ BOOL MOD59_MasterController(MOD59_IntroOverlayData *data)
|
||||
|
||||
case 21: //Display Yes/No touchscreen buttons
|
||||
#ifdef __MWERKS__
|
||||
u32 arr[5];
|
||||
u32 arr[5]; //todo - this is 100% a struct
|
||||
arr = MOD59_021D9E44;
|
||||
#else
|
||||
u32 arr[5] = {};
|
||||
@@ -2313,7 +2313,7 @@ BOOL MOD59_MasterController(MOD59_IntroOverlayData *data)
|
||||
break;
|
||||
}
|
||||
#ifdef __MWERKS__
|
||||
u32 arr2[3];
|
||||
u32 arr2[3]; //todo - this is 100% a struct
|
||||
arr2 = MOD59_021D9DC0;
|
||||
#else
|
||||
u32 arr2[3] = {};
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "bag.h"
|
||||
#include "bg_window.h"
|
||||
#include "camera.h"
|
||||
#include "constants/global_fieldmap.h"
|
||||
#include "constants/items.h"
|
||||
#include "fashion_case.h"
|
||||
#include "hall_of_fame.h"
|
||||
@@ -155,9 +156,22 @@ extern BOOL IsPaletteFadeFinished(void);
|
||||
extern void CallTask_ScriptWarp(TaskManager *taskManager, u16 mapId, s32 param2, u16 xVar, u16 yVar, u16 dir);
|
||||
extern void FUN_02049F98(TaskManager *taskManager, u16 mapId, s32 param2, u16 xVar, u16 yVar, u16 dir);
|
||||
extern void FUN_02049FFC(TaskManager *taskManager);
|
||||
extern void *FUN_02034E30(struct SaveBlock2 *save);
|
||||
extern Location *FUN_02034DC8(void *param0);
|
||||
extern LocalFieldData *Save_LocalFieldData_Get(struct SaveBlock2 *save);
|
||||
extern Location *FUN_02034DC8(LocalFieldData *localFieldData);
|
||||
extern void CallFieldTask_RockClimb(TaskManager *taskManager, u32 playerDirection, u16 partyPosition);
|
||||
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 void MOD05_021DC174(u32 param0, u32 weather);
|
||||
extern void FUN_02034DF4(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);
|
||||
extern BOOL MOD06_022466A0(void *param0);
|
||||
extern void MOD06_022466AC(void *param0);
|
||||
extern void MOD05_021E7030(TaskManager *taskManager);
|
||||
extern u32 PlayerAvatar_GetState(PlayerAvatar *avatar);
|
||||
|
||||
u8 UNK_021C5A0C[4];
|
||||
|
||||
@@ -190,6 +204,7 @@ static BOOL CheckPortraitSlotFullInternal(struct FieldSystem *fieldSystem, BOOL
|
||||
static FashionAppData *FUN_0203BC6C(u32 heapId, struct FieldSystem *fieldSystem, BOOL isContest, u32 portraitSlot);
|
||||
static BOOL FUN_0203BE9C(ScriptContext *ctx);
|
||||
static BOOL FUN_0203C71C(ScriptContext *ctx);
|
||||
static BOOL FUN_0203C9F8(ScriptContext *ctx);
|
||||
|
||||
extern u8 sScriptConditionTable[6][3];
|
||||
|
||||
@@ -684,7 +699,7 @@ BOOL ScrCmd_Unk01FF(struct ScriptContext *ctx) //01FF
|
||||
u8 flag = ScriptReadByte(ctx);
|
||||
u8 unk = 0;
|
||||
|
||||
MessageFormat *messageFormat = MOD06_02244210(fieldSystem->saveBlock2, poke, sex, flag, &unk);
|
||||
MessageFormat *messageFormat = MOD06_02244210(fieldSystem->saveData, poke, sex, flag, &unk);
|
||||
MOD05_021E2CBC(ctx, messageFormat, (u8)(msg + unk), 1);
|
||||
MessageFormat_Delete(messageFormat);
|
||||
|
||||
@@ -880,7 +895,7 @@ BOOL ScrCmd_Unk0033(struct ScriptContext *ctx) //0033 - todo: OpenMessageBox?
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u8 *unk = (u8 *)FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_UNKNOWN_06);
|
||||
FUN_020545B8(fieldSystem->bgConfig, (struct Window *)FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_WINDOW), 3);
|
||||
FUN_02054608((struct Window *)FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_WINDOW), Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveBlock2));
|
||||
FUN_02054608((struct Window *)FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_WINDOW), Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveData));
|
||||
*unk = 1;
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1063,7 +1078,7 @@ BOOL ScrCmd_Unk003A(struct ScriptContext *ctx) //003A - todo: CreateMessageBoxTe
|
||||
ReadMsgDataIntoString(ctx->msgData, msg, *stringBuffer1);
|
||||
StringExpandPlaceholders(*messageFormat, *stringBuffer0, *stringBuffer1);
|
||||
|
||||
*printerNumber = (u8)FUN_02054658(MOD05_021E8140(fieldSystem->unk60), *stringBuffer0, Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveBlock2), 1);
|
||||
*printerNumber = (u8)FUN_02054658(MOD05_021E8140(fieldSystem->unk60), *stringBuffer0, Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveData), 1);
|
||||
ctx->data[0] = wk;
|
||||
SetupNativeScript(ctx, FUN_0203A94C);
|
||||
return TRUE;
|
||||
@@ -1617,7 +1632,7 @@ BOOL ScrCmd_LockAllEvents2(struct ScriptContext *ctx) { //02B4
|
||||
FUN_02058914(*lastInteracted);
|
||||
}
|
||||
if (unk1 != NULL) {
|
||||
struct ScriptState *state = SaveArray_Flags_Get(fieldSystem->saveBlock2);
|
||||
struct ScriptState *state = SaveArray_Flags_Get(fieldSystem->saveData);
|
||||
if (FUN_0205ED3C(state) == TRUE) {
|
||||
if (FUN_02058854(unk1) != 0) {
|
||||
UNK_021C5A0C[0] |= 2;
|
||||
@@ -1807,7 +1822,7 @@ BOOL ScrCmd_OverworldEventStopFollowing(struct ScriptContext *ctx) //006E
|
||||
BOOL ScrCmd_Unk02AB(struct ScriptContext *ctx) //02AB
|
||||
{
|
||||
u16 *variable = ScriptGetVarPointer(ctx);
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveData);
|
||||
*variable = FUN_02029E0C(sealCase);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1816,7 +1831,7 @@ BOOL ScrCmd_GetSealCountFromId(struct ScriptContext *ctx) //0093
|
||||
{
|
||||
u16 sealId = ScriptGetVar(ctx);
|
||||
u16 *variable = ScriptGetVarPointer(ctx);
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveData);
|
||||
*variable = SealCase_CountSealOccurrenceAnywhere(sealCase, sealId);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1826,7 +1841,7 @@ BOOL ScrCmd_GiveSeals(struct ScriptContext *ctx) //0094
|
||||
u16 sealId = ScriptGetVar(ctx);
|
||||
u16 amount = ScriptGetVar(ctx);
|
||||
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct SealCase *sealCase = Save_SealCase_Get(ctx->fieldSystem->saveData);
|
||||
FUN_02029D44(sealCase, sealId, (s16)amount);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1836,7 +1851,7 @@ BOOL ScrCmd_GetPokemonForme(struct ScriptContext *ctx) //0095
|
||||
u16 partyPosition = ScriptGetVar(ctx);
|
||||
u16 *variable = ScriptGetVarPointer(ctx);
|
||||
|
||||
struct PlayerParty *party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty *party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
*variable = GetMonUnownLetter(GetPartyMonByIndex(party, partyPosition));
|
||||
|
||||
return FALSE;
|
||||
@@ -2002,7 +2017,7 @@ BOOL ScrCmd_TerminateOverworldProcess(ScriptContext *ctx) { //01F8
|
||||
}
|
||||
|
||||
static BOOL CheckPortraitSlotFullInternal(struct FieldSystem *fieldSystem, BOOL isContest, u32 portraitSlot) {
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(fieldSystem->saveBlock2);
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(fieldSystem->saveData);
|
||||
if (!isContest) {
|
||||
if (!CheckPortraitSlotFull(fashionData, portraitSlot)) {
|
||||
return FALSE;
|
||||
@@ -2016,7 +2031,7 @@ static BOOL CheckPortraitSlotFullInternal(struct FieldSystem *fieldSystem, BOOL
|
||||
}
|
||||
|
||||
static FashionAppData *FUN_0203BC6C(u32 heapId, struct FieldSystem *fieldSystem, BOOL isContest, u32 portraitSlot) {
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(fieldSystem->saveBlock2);
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(fieldSystem->saveData);
|
||||
if (!CheckPortraitSlotFullInternal(fieldSystem, isContest, portraitSlot)) {
|
||||
return NULL;
|
||||
}
|
||||
@@ -2065,7 +2080,7 @@ BOOL ScrCmd_ShowPokemonPic(ScriptContext *ctx) { //0208
|
||||
BOOL ScrCmd_ShowPartyPokemonPic(ScriptContext *ctx) { //028C
|
||||
PokepicManager **pokepicManager = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MISC_DATA_PTR);
|
||||
u16 partyId = ScriptGetVar(ctx);
|
||||
struct Pokemon *mon = GetPartyMonByIndex(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2), partyId);
|
||||
struct Pokemon *mon = GetPartyMonByIndex(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData), partyId);
|
||||
LoadUserFrameGfx1(ctx->fieldSystem->bgConfig, GF_BG_LYR_MAIN_3, 0x3D9, 11, 0, 4);
|
||||
*pokepicManager = DrawPokemonPicFromMon(ctx->fieldSystem->bgConfig, GF_BG_LYR_MAIN_3, 10, 5, 11, 0x3D9, mon, 4);
|
||||
u32 species = GetMonData(mon, MON_DATA_SPECIES, NULL);
|
||||
@@ -2122,7 +2137,7 @@ BOOL ScrCmd_DressupPokemon(ScriptContext *ctx) { //00A6
|
||||
u16 partyPos = ScriptGetVar(ctx);
|
||||
u16 *unk0 = ScriptGetVarPointer(ctx);
|
||||
u16 unk1 = ScriptGetVar(ctx);
|
||||
FUN_020380CC(ctx->fieldSystem->taskManager, unk0, ctx->fieldSystem->saveBlock2, partyPos, unk1);
|
||||
FUN_020380CC(ctx->fieldSystem->taskManager, unk0, ctx->fieldSystem->saveData, partyPos, unk1);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -2180,7 +2195,7 @@ BOOL ScrCmd_CheckContestPortraitSlot(ScriptContext *ctx) { //012F
|
||||
|
||||
BOOL ScrCmd_Unk0130(ScriptContext *ctx) { //0130
|
||||
u16 unk0 = ScriptGetVar(ctx);
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(ctx->fieldSystem->saveBlock2);
|
||||
SaveFashionData *fashionData = Save_FashionData_Get(ctx->fieldSystem->saveData);
|
||||
FUN_02027478(FUN_02027008(fashionData, 0), unk0);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -2192,7 +2207,7 @@ BOOL ScrCmd_ShowGeonetScreen(ScriptContext *ctx) { //0205
|
||||
}
|
||||
|
||||
BOOL ScrCmd_ShowSealCapsuleEditor(ScriptContext *ctx) { //00A9
|
||||
ShowSealCapsuleEditor(ctx->taskManager, ctx->fieldSystem->saveBlock2);
|
||||
ShowSealCapsuleEditor(ctx->taskManager, ctx->fieldSystem->saveData);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -2215,12 +2230,12 @@ BOOL ScrCmd_Unk01D7(ScriptContext *ctx) { //01D7 - TODO: ShowPoffinCaseScreen?
|
||||
|
||||
BOOL ScrCmd_Unk01D8(ScriptContext *ctx) { //01D8
|
||||
u16 *unk0 = ScriptGetVarPointer(ctx);
|
||||
struct Bag *bag = Save_Bag_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct Bag *bag = Save_Bag_Get(ctx->fieldSystem->saveData);
|
||||
if (!Bag_PocketNotEmpty(bag, POCKET_BERRIES)) {
|
||||
*unk0 = 1;
|
||||
return FALSE;
|
||||
}
|
||||
else if (FUN_020281B8(FUN_02028048(ctx->fieldSystem->saveBlock2)) >= 0x64) {
|
||||
else if (FUN_020281B8(FUN_02028048(ctx->fieldSystem->saveData)) >= 0x64) {
|
||||
*unk0 = 2;
|
||||
return FALSE;
|
||||
}
|
||||
@@ -2237,7 +2252,7 @@ BOOL ScrCmd_Unk01D9(ScriptContext *ctx) { //01D9
|
||||
MI_CpuFill8(unkStruct, 0, sizeof(ScrCmdUnkStruct01D9)); //consider inlining as is in heartgold
|
||||
unkStruct->unk04 = unk0;
|
||||
unkStruct->unk06 = unk1;
|
||||
unkStruct->save = ctx->fieldSystem->saveBlock2;
|
||||
unkStruct->save = ctx->fieldSystem->saveData;
|
||||
FUN_02037FE4(ctx->fieldSystem, *unkStructPtr);
|
||||
SetupNativeScript(ctx, FUN_0203BB90);
|
||||
return TRUE;
|
||||
@@ -2246,7 +2261,7 @@ BOOL ScrCmd_Unk01D9(ScriptContext *ctx) { //01D9
|
||||
BOOL ScrCmd_ShowPCBoxScreen(ScriptContext *ctx) { //00AB
|
||||
PCBoxAppData **pcBoxAppDataPtr = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_RUNNING_APP_DATA);
|
||||
PCBoxAppData *pcBoxAppData = AllocFromHeap(11, sizeof(PCBoxAppData)); //also seems inlined
|
||||
pcBoxAppData->save = ctx->fieldSystem->saveBlock2;
|
||||
pcBoxAppData->save = ctx->fieldSystem->saveData;
|
||||
pcBoxAppData->operation = (enum PCBoxOperation)ScriptReadByte(ctx);
|
||||
*pcBoxAppDataPtr = pcBoxAppData;
|
||||
LaunchStoragePCInterface(ctx->fieldSystem, *pcBoxAppDataPtr);
|
||||
@@ -2292,7 +2307,7 @@ BOOL ScrCmd_InitHallOfFame(ScriptContext *ctx) { //00B1
|
||||
BOOL ScrCmd_Unk00B2(ScriptContext *ctx) { //00B2
|
||||
u16 unk0 = ScriptGetVar(ctx);
|
||||
u16 *unk1 = ScriptGetVarPointer(ctx);
|
||||
if (FUN_0203384C(ctx->fieldSystem->saveBlock2)) {
|
||||
if (FUN_0203384C(ctx->fieldSystem->saveData)) {
|
||||
*unk1 = 1;
|
||||
FUN_020386E0(ctx->fieldSystem, unk0);
|
||||
SetupNativeScript(ctx, FUN_0203BC04);
|
||||
@@ -2313,7 +2328,7 @@ BOOL ScrCmd_StarterSelectionScreen(ScriptContext *ctx) { //00B4
|
||||
StarterSelectionData **starterSelectionPtr = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MISC_DATA_PTR);
|
||||
*starterSelectionPtr = AllocFromHeap(11, sizeof(StarterSelectionData));
|
||||
StarterSelectionData *starterSelectionData = *starterSelectionPtr; //consider inlining
|
||||
starterSelectionData->options = Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveBlock2);
|
||||
starterSelectionData->options = Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveData);
|
||||
FUN_020386A4(ctx->fieldSystem, *starterSelectionPtr);
|
||||
SetupNativeScript(ctx, FUN_0203BC04);
|
||||
return TRUE;
|
||||
@@ -2321,7 +2336,7 @@ BOOL ScrCmd_StarterSelectionScreen(ScriptContext *ctx) { //00B4
|
||||
|
||||
BOOL ScrCmd_EndStarterSelectionScreen(ScriptContext *ctx) { //00B5
|
||||
StarterSelectionData **starterSelectionData = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MISC_DATA_PTR);
|
||||
struct ScriptState *flags = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState *flags = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
FUN_0205F378(flags, (*starterSelectionData)->state);
|
||||
FreeToHeap(*starterSelectionData);
|
||||
return FALSE;
|
||||
@@ -2359,7 +2374,7 @@ BOOL ScrCmd_NamePokemonScreen(ScriptContext *ctx) { //00BB
|
||||
FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
|
||||
u16 partyPos = ScriptGetVar(ctx);
|
||||
PlayerParty *party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
PlayerParty *party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
Pokemon *mon = GetPartyMonByIndex(party, partyPos);
|
||||
|
||||
u16 monNick[20];
|
||||
@@ -2453,7 +2468,7 @@ BOOL ScrCmd_ExitBattleRoom(ScriptContext *ctx) { //0204
|
||||
}
|
||||
|
||||
BOOL ScrCmd_GetPreviousMapID(ScriptContext *ctx) { //0200
|
||||
Location *location = FUN_02034DC8(FUN_02034E30(ctx->fieldSystem->saveBlock2));
|
||||
Location *location = FUN_02034DC8(Save_LocalFieldData_Get(ctx->fieldSystem->saveData));
|
||||
u16 *var = ScriptGetVarPointer(ctx);
|
||||
*var = location->mapId;
|
||||
return FALSE;
|
||||
@@ -2471,3 +2486,74 @@ BOOL ScrCmd_RockClimb(ScriptContext *ctx) { //00BF
|
||||
CallFieldTask_RockClimb(ctx->taskManager, playerDirection, partyPosition);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_Surf(ScriptContext *ctx) { //00C0
|
||||
FUN_0205DD40(ctx->fieldSystem->unk90);
|
||||
u16 partyPosition = ScriptGetVar(ctx);
|
||||
u32 playerDirection = PlayerAvatar_GetFacingDirection(ctx->fieldSystem->playerAvatar);
|
||||
CallFieldTask_Surf(ctx->taskManager, playerDirection, partyPosition);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_Waterfall(ScriptContext *ctx) { //00C1
|
||||
u16 partyPosition = ScriptGetVar(ctx);
|
||||
u32 playerDirection = PlayerAvatar_GetFacingDirection(ctx->fieldSystem->playerAvatar);
|
||||
CallFieldTask_Waterfall(ctx->taskManager, playerDirection, partyPosition);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_Fly(ScriptContext *ctx) { //00C2
|
||||
u16 mapId = ScriptReadHalfword(ctx);
|
||||
u16 xVar = ScriptGetVar(ctx);
|
||||
u16 yVar = ScriptGetVar(ctx);
|
||||
FUN_02049274(ctx->fieldSystem, mapId, -1, xVar, yVar, DIR_SOUTH); //fly function
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
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
|
||||
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
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_Cut(ScriptContext *ctx) { //00C5
|
||||
void **miscData = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MISC_DATA_PTR); //todo identify
|
||||
u16 partyPosition = ScriptGetVar(ctx);
|
||||
Pokemon *mon = GetPartyMonByIndex(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData), partyPosition);
|
||||
u32 gender = PlayerAvatar_GetGender(ctx->fieldSystem->playerAvatar);
|
||||
*miscData = MOD06_0224666C(ctx->fieldSystem, 0, mon, gender);
|
||||
SetupNativeScript(ctx, FUN_0203C9F8);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static BOOL FUN_0203C9F8(ScriptContext *ctx) {
|
||||
void **miscData = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MISC_DATA_PTR); //todo identify
|
||||
if (MOD06_022466A0(*miscData) == TRUE) {
|
||||
MOD06_022466AC(*miscData);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_ApplyContestDress(ScriptContext *ctx) { //00C6
|
||||
MOD05_021E7030(ctx->taskManager);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScrCmd_CheckBike(ScriptContext *ctx) { //00C7
|
||||
u16 *var = ScriptGetVarPointer(ctx);
|
||||
if (PlayerAvatar_GetState(ctx->fieldSystem->playerAvatar) == PLAYER_STATE_CYCLING) {
|
||||
*var = TRUE;
|
||||
} else {
|
||||
*var = FALSE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ extern void FUN_0208089C(struct Pokemon* pokemon, struct PlayerData* player, u32
|
||||
|
||||
BOOL ScrCmd_Unk0253(struct ScriptContext* ctx) //0253
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u16 unk = ScriptGetVar(ctx);
|
||||
|
||||
if (unk == 0)
|
||||
@@ -45,7 +45,7 @@ BOOL ScrCmd_Unk0253(struct ScriptContext* ctx) //0253
|
||||
|
||||
BOOL ScrCmd_Unk0254(struct ScriptContext* ctx) //0254
|
||||
{
|
||||
void* unk = FUN_02022528(ctx->fieldSystem->saveBlock2);
|
||||
void* unk = FUN_02022528(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = AllocMonZeroed(32);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
@@ -63,11 +63,11 @@ BOOL ScrCmd_Unk0254(struct ScriptContext* ctx) //0254
|
||||
|
||||
BOOL ScrCmd_Unk0255(struct ScriptContext* ctx) //0255
|
||||
{
|
||||
void* unk = FUN_02022528(ctx->fieldSystem->saveBlock2);
|
||||
struct PCStorage* pc = GetStoragePCPointer(ctx->fieldSystem->saveBlock2);
|
||||
void* unk = FUN_02022528(ctx->fieldSystem->saveData);
|
||||
struct PCStorage* pc = GetStoragePCPointer(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = AllocMonZeroed(32);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2);
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveBlock2); // unused
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData);
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveData); // unused
|
||||
|
||||
for (s32 i = 0; i < PARTY_SIZE; i++)
|
||||
{
|
||||
@@ -77,7 +77,7 @@ BOOL ScrCmd_Unk0255(struct ScriptContext* ctx) //0255
|
||||
struct BoxPokemon* box_mon = FUN_020690E4(pokemon);
|
||||
GF_ASSERT(PCStorage_PlaceMonInFirstEmptySlotInAnyBox(pc, box_mon));
|
||||
|
||||
FUN_0202C144(ctx->fieldSystem->saveBlock2, pokemon);
|
||||
FUN_0202C144(ctx->fieldSystem->saveData, pokemon);
|
||||
}
|
||||
|
||||
FreeToHeap(pokemon);
|
||||
|
||||
@@ -101,7 +101,7 @@ static const u16 sAmitySquarePossibleAccessoriesByPokemon[6][10] = {
|
||||
|
||||
BOOL ScrCmd_ClearAmitySquareSteps(struct ScriptContext* ctx) //0215
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205F54C(state);
|
||||
|
||||
@@ -111,7 +111,7 @@ BOOL ScrCmd_ClearAmitySquareSteps(struct ScriptContext* ctx) //0215
|
||||
BOOL ScrCmd_CheckAmitySquareSteps(struct ScriptContext* ctx) //0216
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = FUN_0205F55C(state);
|
||||
return FALSE;
|
||||
|
||||
@@ -72,7 +72,7 @@ BOOL ScrCmd_SetBerryTreeMulch(struct ScriptContext* ctx) { //0182
|
||||
BOOL ScrCmd_SetBerryTreeType(struct ScriptContext* ctx) //0183 - todo: PlantBerryTree?
|
||||
{
|
||||
LocalMapObject **berryTree = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_LAST_INTERACTED);
|
||||
struct GameStats* gameStats = Save_GameStats_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct GameStats* gameStats = Save_GameStats_Get(ctx->fieldSystem->saveData);
|
||||
u16 treeType = ScriptGetVar(ctx);
|
||||
|
||||
FUN_0204B5A8(ctx->fieldSystem, *berryTree, treeType);
|
||||
@@ -103,7 +103,7 @@ BOOL ScrCmd_Unk0184(struct ScriptContext* ctx) //0184 - todo: SetBerryTreeWater/
|
||||
|
||||
BOOL ScrCmd_TakeBerryTreeBerries(struct ScriptContext* ctx) //0185
|
||||
{
|
||||
struct GameStats* gameStats = Save_GameStats_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct GameStats* gameStats = Save_GameStats_Get(ctx->fieldSystem->saveData);
|
||||
LocalMapObject **berryTree = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_LAST_INTERACTED);
|
||||
|
||||
FUN_0204B4FC(ctx->fieldSystem, *berryTree);
|
||||
|
||||
@@ -39,7 +39,7 @@ BOOL ScrCmd_UpdateCoinBox(struct ScriptContext * ctx) //0077
|
||||
|
||||
BOOL ScrCmd_GetCoins(struct ScriptContext * ctx) //0078 - todo: CheckCoins instead?
|
||||
{
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveData);
|
||||
u16 * ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
*ret_ptr = CheckCoins(coins_ptr);
|
||||
@@ -49,7 +49,7 @@ BOOL ScrCmd_GetCoins(struct ScriptContext * ctx) //0078 - todo: CheckCoins inste
|
||||
|
||||
BOOL ScrCmd_GiveCoins(struct ScriptContext * ctx) //0079
|
||||
{
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveData);
|
||||
u16 amount = ScriptGetVar(ctx);
|
||||
|
||||
GiveCoins(coins_ptr, amount);
|
||||
@@ -59,7 +59,7 @@ BOOL ScrCmd_GiveCoins(struct ScriptContext * ctx) //0079
|
||||
|
||||
BOOL ScrCmd_TakeCoinsImmediate(struct ScriptContext * ctx) //0080 - todo: TakeCoins instead?
|
||||
{
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveData);
|
||||
u16 amount = ScriptGetVar(ctx);
|
||||
|
||||
TakeCoins(coins_ptr, amount);
|
||||
@@ -69,7 +69,7 @@ BOOL ScrCmd_TakeCoinsImmediate(struct ScriptContext * ctx) //0080 - todo: TakeCo
|
||||
|
||||
BOOL ScrCmd_TakeCoinsAddress(struct ScriptContext * ctx) //02A8 - todo: TakeCoinsVar instead?
|
||||
{
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveData);
|
||||
u16 * amount = ScriptGetVarPointer(ctx);
|
||||
|
||||
TakeCoins(coins_ptr, *amount);
|
||||
@@ -83,7 +83,7 @@ BOOL ScrCmd_HasEnoughCoinsImmediate(struct ScriptContext * ctx) //0274 - todo: C
|
||||
struct SaveBlock2 * sav2 = ScriptEnvironment_GetSavePtr(fieldSystem);
|
||||
// Created, but discarded.
|
||||
struct PlayerData * player = Save_PlayerData_GetProfileAddr(sav2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(fieldSystem->saveData);
|
||||
u16 * ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
u32 amount = ScriptReadWord(ctx);
|
||||
@@ -107,7 +107,7 @@ BOOL ScrCmd_HasEnoughCoinsAddress(struct ScriptContext * ctx) //02A9 - todo: Can
|
||||
struct SaveBlock2 * sav2 = ScriptEnvironment_GetSavePtr(fieldSystem);
|
||||
// Created, but discarded
|
||||
struct PlayerData * player = Save_PlayerData_GetProfileAddr(sav2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(fieldSystem->saveData);
|
||||
u16 * ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
u16 amount = *ScriptGetVarPointer(ctx);
|
||||
@@ -127,7 +127,7 @@ BOOL ScrCmd_HasEnoughCoinsAddress(struct ScriptContext * ctx) //02A9 - todo: Can
|
||||
|
||||
BOOL ScrCmd_CanGiveCoins(struct ScriptContext * ctx) //0276
|
||||
{
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveBlock2);
|
||||
u16 * coins_ptr = Save_PlayerData_GetCoinsAddr(ctx->fieldSystem->saveData);
|
||||
u16 * ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 amount = ScriptGetVar(ctx);
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ extern u32 MOD05_021ED644(struct DayCare* daycare);
|
||||
|
||||
BOOL ScrCmd_GetDaycarePokemonNames(struct ScriptContext* ctx) //016D
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
struct DayCare* daycare = Save_DayCare_Get(sav2);
|
||||
|
||||
@@ -32,7 +32,7 @@ BOOL ScrCmd_GetDaycarePokemonNames(struct ScriptContext* ctx) //016D
|
||||
BOOL ScrCmd_GetDaycareStatus(struct ScriptContext* ctx) //016E
|
||||
{
|
||||
struct FieldSystem* fieldSystem = ctx->fieldSystem;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveData;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
|
||||
@@ -43,7 +43,7 @@ BOOL ScrCmd_GetDaycareStatus(struct ScriptContext* ctx) //016E
|
||||
|
||||
BOOL ScrCmd_DeleteDaycareEgg(struct ScriptContext* ctx) //01A8
|
||||
{
|
||||
struct DayCare* daycare = SaveArray_Get(ctx->fieldSystem->saveBlock2, 8);
|
||||
struct DayCare* daycare = SaveArray_Get(ctx->fieldSystem->saveData, 8);
|
||||
MOD05_021ECD64(daycare);
|
||||
|
||||
return FALSE;
|
||||
@@ -52,8 +52,8 @@ BOOL ScrCmd_DeleteDaycareEgg(struct ScriptContext* ctx) //01A8
|
||||
BOOL ScrCmd_GiveDaycareEgg(struct ScriptContext* ctx) //01A9
|
||||
{
|
||||
struct FieldSystem* fieldSystem = ctx->fieldSystem;
|
||||
struct DayCare* daycare = SaveArray_Get(fieldSystem->saveBlock2, 8);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct DayCare* daycare = SaveArray_Get(fieldSystem->saveData, 8);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct SaveBlock2* sav2 = ScriptEnvironment_GetSavePtr(ctx->fieldSystem);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(sav2);
|
||||
|
||||
@@ -66,11 +66,11 @@ BOOL ScrCmd_Unk01A4(struct ScriptContext* ctx) //01A4
|
||||
{
|
||||
struct FieldSystem* fieldSystem = ctx->fieldSystem;
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveData;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 idx = ScriptGetVar(ctx);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = MOD05_021EC71C(party, *messageFormat, daycare, (u8)idx);
|
||||
|
||||
@@ -81,7 +81,7 @@ BOOL ScrCmd_Unk01AA(struct ScriptContext* ctx) //01AA
|
||||
{
|
||||
struct FieldSystem* fieldSystem = ctx->fieldSystem;
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveData;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 idx = ScriptGetVar(ctx);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
@@ -93,7 +93,7 @@ BOOL ScrCmd_Unk01AA(struct ScriptContext* ctx) //01AA
|
||||
|
||||
BOOL ScrCmd_GetDaycareLevel(struct ScriptContext* ctx) //01AE
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 idx = ScriptGetVar(ctx);
|
||||
@@ -111,7 +111,7 @@ BOOL ScrCmd_Unk01AF(struct ScriptContext* ctx) //01AF
|
||||
u16 unused = ScriptReadHalfword(ctx);
|
||||
u16 idx = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = MOD05_021ED5C4(party, idx, *messageFormat);
|
||||
|
||||
@@ -121,9 +121,9 @@ BOOL ScrCmd_Unk01AF(struct ScriptContext* ctx) //01AF
|
||||
BOOL ScrCmd_Unk01B0(struct ScriptContext* ctx) //01B0
|
||||
{
|
||||
struct FieldSystem* fieldSystem = ctx->fieldSystem;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = fieldSystem->saveData;
|
||||
u16 idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
|
||||
MOD05_021EC57C(party, (u8)idx, daycare, sav2);
|
||||
@@ -133,7 +133,7 @@ BOOL ScrCmd_Unk01B0(struct ScriptContext* ctx) //01B0
|
||||
|
||||
BOOL ScrCmd_Unk01BC(struct ScriptContext* ctx) //01BC
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u16 idx1 = ScriptGetVar(ctx);
|
||||
u16 idx2 = ScriptGetVar(ctx);
|
||||
@@ -148,7 +148,7 @@ BOOL ScrCmd_Unk01BC(struct ScriptContext* ctx) //01BC
|
||||
|
||||
BOOL ScrCmd_Unk01BE(struct ScriptContext* ctx) //01BE
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
|
||||
@@ -159,7 +159,7 @@ BOOL ScrCmd_Unk01BE(struct ScriptContext* ctx) //01BE
|
||||
|
||||
BOOL ScrCmd_Unk01BF(struct ScriptContext* ctx) //01BF - todo: SaveEggPID?
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct DayCare* daycare = SaveArray_Get(sav2, 8);
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include "pokedex.h"
|
||||
|
||||
extern void* FUN_02034E20(void*);
|
||||
extern void* FUN_02034E30(void*);
|
||||
extern void* Save_LocalFieldData_Get(void*);
|
||||
extern BOOL FUN_02055474(void*);
|
||||
extern void FUN_02055488(void*, u32);
|
||||
extern void FUN_0205ECD4(struct ScriptState* state);
|
||||
@@ -31,7 +31,7 @@ const u8 UNK_020F457F[8] = {
|
||||
|
||||
BOOL ScrCmd_HasSinnohDex(struct ScriptContext* ctx) //0157
|
||||
{
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveData);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
*ret_ptr = (u16)Pokedex_GetSinnohDexFlag(pokedex);
|
||||
@@ -41,7 +41,7 @@ BOOL ScrCmd_HasSinnohDex(struct ScriptContext* ctx) //0157
|
||||
|
||||
BOOL ScrCmd_GiveSinnohDex(struct ScriptContext* ctx) //0158
|
||||
{
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct Pokedex* pokedex = Save_Pokedex_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
Pokedex_SetSinnohDexFlag(pokedex);
|
||||
|
||||
@@ -51,7 +51,7 @@ BOOL ScrCmd_GiveSinnohDex(struct ScriptContext* ctx) //0158
|
||||
BOOL ScrCmd_HasRunningShoes(struct ScriptContext* ctx) //0159
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
void* unk_sav_ptr = FUN_02034E30(ctx->fieldSystem->saveBlock2);
|
||||
void* unk_sav_ptr = Save_LocalFieldData_Get(ctx->fieldSystem->saveData);
|
||||
void* unk = FUN_02034E20(unk_sav_ptr);
|
||||
|
||||
*ret_ptr = (u16)FUN_02055474(unk);
|
||||
@@ -61,7 +61,7 @@ BOOL ScrCmd_HasRunningShoes(struct ScriptContext* ctx) //0159
|
||||
|
||||
BOOL ScrCmd_GiveRunningShoes(struct ScriptContext* ctx) //015A
|
||||
{
|
||||
void* unk_sav_ptr = FUN_02034E30(ctx->fieldSystem->saveBlock2);
|
||||
void* unk_sav_ptr = Save_LocalFieldData_Get(ctx->fieldSystem->saveData);
|
||||
void* unk = FUN_02034E20(unk_sav_ptr);
|
||||
|
||||
FUN_02055488(unk, 1);
|
||||
@@ -74,7 +74,7 @@ BOOL ScrCmd_HasBadge(struct ScriptContext* ctx) //015B
|
||||
u16 badge_no = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
GF_ASSERT(badge_no < 8);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)PlayerProfile_TestBadgeFlag(player, badge_no);
|
||||
|
||||
@@ -85,7 +85,7 @@ BOOL ScrCmd_GiveBadge(struct ScriptContext* ctx) //015C
|
||||
{
|
||||
u16 badge_no = ScriptGetVar(ctx);
|
||||
GF_ASSERT(badge_no < 8);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData);
|
||||
|
||||
PlayerProfile_SetBadgeFlag(player, badge_no);
|
||||
|
||||
@@ -95,7 +95,7 @@ BOOL ScrCmd_GiveBadge(struct ScriptContext* ctx) //015C
|
||||
BOOL ScrCmd_HasBag(struct ScriptContext* ctx) //015E
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)FUN_0205ECE0(state);
|
||||
|
||||
@@ -110,7 +110,7 @@ BOOL ScrCmd_GetTotalEarnedBadges(struct ScriptContext* ctx) //015D - todo: Count
|
||||
u16 badges;
|
||||
for (i = 0, badges = 0; i < 8; i++)
|
||||
{
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData);
|
||||
BOOL has_badge = PlayerProfile_TestBadgeFlag(player, UNK_020F457F[i]);
|
||||
if (has_badge == TRUE)
|
||||
{
|
||||
@@ -124,7 +124,7 @@ BOOL ScrCmd_GetTotalEarnedBadges(struct ScriptContext* ctx) //015D - todo: Count
|
||||
|
||||
BOOL ScrCmd_GiveBag(struct ScriptContext* ctx) //015F
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ECD4(state);
|
||||
|
||||
@@ -134,7 +134,7 @@ BOOL ScrCmd_GiveBag(struct ScriptContext* ctx) //015F
|
||||
BOOL ScrCmd_Unk0160(struct ScriptContext* ctx) //0160 - todo: HasPartner? CheckPartner?
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)FUN_0205ED3C(state);
|
||||
|
||||
@@ -143,7 +143,7 @@ BOOL ScrCmd_Unk0160(struct ScriptContext* ctx) //0160 - todo: HasPartner? CheckP
|
||||
|
||||
BOOL ScrCmd_Unk0161(struct ScriptContext* ctx) //0161 - todo: GivePartner? SetPartner?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ED1C(state);
|
||||
|
||||
@@ -152,7 +152,7 @@ BOOL ScrCmd_Unk0161(struct ScriptContext* ctx) //0161 - todo: GivePartner? SetPa
|
||||
|
||||
BOOL ScrCmd_Unk0162(struct ScriptContext* ctx) //0162 - todo: RemovePartner? ClearPartner?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ED2C(state);
|
||||
|
||||
@@ -162,7 +162,7 @@ BOOL ScrCmd_Unk0162(struct ScriptContext* ctx) //0162 - todo: RemovePartner? Cle
|
||||
BOOL ScrCmd_Unk0163(struct ScriptContext* ctx) //0163 - todo: GetSteps? CheckSteps? GetStepFlag? CheckStepFlag?
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)FUN_0205ED6C(state);
|
||||
|
||||
@@ -171,7 +171,7 @@ BOOL ScrCmd_Unk0163(struct ScriptContext* ctx) //0163 - todo: GetSteps? CheckSte
|
||||
|
||||
BOOL ScrCmd_Unk0164(struct ScriptContext* ctx) //0164 - todo: SetStepFlag?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ED4C(state);
|
||||
|
||||
@@ -180,7 +180,7 @@ BOOL ScrCmd_Unk0164(struct ScriptContext* ctx) //0164 - todo: SetStepFlag?
|
||||
|
||||
BOOL ScrCmd_Unk0165(struct ScriptContext* ctx) //0165 - todo: ClearStepFlag?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ED5C(state);
|
||||
|
||||
@@ -190,7 +190,7 @@ BOOL ScrCmd_Unk0165(struct ScriptContext* ctx) //0165 - todo: ClearStepFlag?
|
||||
BOOL ScrCmd_CheckGameCompleted(struct ScriptContext* ctx) //0166
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)FUN_0205ED0C(state);
|
||||
|
||||
@@ -199,7 +199,7 @@ BOOL ScrCmd_CheckGameCompleted(struct ScriptContext* ctx) //0166
|
||||
|
||||
BOOL ScrCmd_SetGameCompleted(struct ScriptContext* ctx) //0167
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
FUN_0205ECFC(state);
|
||||
|
||||
@@ -208,7 +208,7 @@ BOOL ScrCmd_SetGameCompleted(struct ScriptContext* ctx) //0167
|
||||
|
||||
BOOL ScrCmd_GetSetStrength(struct ScriptContext* ctx) //01CF - todo: Strength?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u8 option = ScriptReadByte(ctx);
|
||||
u16* ret_ptr;
|
||||
|
||||
@@ -234,7 +234,7 @@ BOOL ScrCmd_GetSetStrength(struct ScriptContext* ctx) //01CF - todo: Strength?
|
||||
|
||||
BOOL ScrCmd_GetSetFlash(struct ScriptContext* ctx) //01D0 - todo Flash?
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u8 option = ScriptReadByte(ctx);
|
||||
u16* ret_ptr;
|
||||
|
||||
@@ -260,7 +260,7 @@ BOOL ScrCmd_GetSetFlash(struct ScriptContext* ctx) //01D0 - todo Flash?
|
||||
|
||||
BOOL ScrCmd_GetSetDefog(struct ScriptContext* ctx) //01D1 - todo: Defog
|
||||
{
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u8 option = ScriptReadByte(ctx);
|
||||
u16* ret_ptr;
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ BOOL ScrCmd_CountFossils(struct ScriptContext * ctx) //01F1
|
||||
u16 total;
|
||||
for (i = 0, total = 0; i < 7; i++)
|
||||
{
|
||||
total += Bag_GetQuantity(Save_Bag_Get(fieldSystem->saveBlock2), gFossilPokemonMap[i][0], 4);
|
||||
total += Bag_GetQuantity(Save_Bag_Get(fieldSystem->saveData), gFossilPokemonMap[i][0], 4);
|
||||
}
|
||||
|
||||
*ret_ptr = total;
|
||||
@@ -62,7 +62,7 @@ BOOL ScrCmd_GetFossilMinimumAmount(struct ScriptContext * ctx) //01F5
|
||||
u16 total = 0;
|
||||
for (; i < 7; i++)
|
||||
{
|
||||
total += Bag_GetQuantity(Save_Bag_Get(fieldSystem->saveBlock2), gFossilPokemonMap[i][0], 4);
|
||||
total += Bag_GetQuantity(Save_Bag_Get(fieldSystem->saveData), gFossilPokemonMap[i][0], 4);
|
||||
if (total >= needed_amount)
|
||||
{
|
||||
*ret_ptr1 = gFossilPokemonMap[i][0];
|
||||
|
||||
@@ -11,7 +11,7 @@ BOOL ScrCmd_GiveItem(struct ScriptContext* ctx) //007B
|
||||
u16 item_id = ScriptGetVar(ctx);
|
||||
u16 quantity = ScriptGetVar(ctx);
|
||||
u16* item_was_added = ScriptGetVarPointer(ctx);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveBlock2);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveData);
|
||||
|
||||
*item_was_added = (u16)Bag_AddItem(bag, item_id, quantity, 4);
|
||||
|
||||
@@ -25,7 +25,7 @@ BOOL ScrCmd_TakeItem(struct ScriptContext* ctx) //007C
|
||||
u16 item_id = ScriptGetVar(ctx);
|
||||
u16 quantity = ScriptGetVar(ctx);
|
||||
u16* item_was_taken = ScriptGetVarPointer(ctx);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveBlock2);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveData);
|
||||
|
||||
*item_was_taken = (u16)Bag_TakeItem(bag, item_id, quantity, 4);
|
||||
|
||||
@@ -39,7 +39,7 @@ BOOL ScrCmd_HasSpaceForItem(struct ScriptContext* ctx) //007D
|
||||
u16 item_id = ScriptGetVar(ctx);
|
||||
u16 quantity = ScriptGetVar(ctx);
|
||||
u16* has_space = ScriptGetVarPointer(ctx);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveBlock2);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveData);
|
||||
|
||||
*has_space = (u16)Bag_HasSpaceForItem(bag, item_id, quantity, 4);
|
||||
|
||||
@@ -53,7 +53,7 @@ BOOL ScrCmd_HasItem(struct ScriptContext* ctx) //007E
|
||||
u16 item_id = ScriptGetVar(ctx);
|
||||
u16 quantity = ScriptGetVar(ctx);
|
||||
u16* has_item = ScriptGetVarPointer(ctx);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveBlock2);
|
||||
struct Bag* bag = Save_Bag_Get(fieldSystem->saveData);
|
||||
|
||||
*has_item = (u16)Bag_HasItem(bag, item_id, quantity, 11);
|
||||
|
||||
|
||||
@@ -355,7 +355,7 @@ BOOL ScrCmd_NormalMart(struct ScriptContext * ctx) //0147 - todo: Pokemart?
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
if (PlayerProfile_TestBadgeFlag(Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2), i) == TRUE)
|
||||
if (PlayerProfile_TestBadgeFlag(Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData), i) == TRUE)
|
||||
badgeCount++;
|
||||
}
|
||||
switch (badgeCount)
|
||||
|
||||
@@ -46,7 +46,7 @@ BOOL ScrCmd_Unk021E(struct ScriptContext* ctx) //021E
|
||||
BOOL ScrCmd_Unk021F(struct ScriptContext* ctx) { //021F
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = GetPartyMonByIndex(party, mon_idx);
|
||||
u16 *eligibleMoves = GetEligibleLevelUpMoves(pokemon, 32);
|
||||
|
||||
@@ -66,7 +66,7 @@ void FUN_02045E74(struct ScriptContext* ctx, u8 a1, struct Pokemon* pokemon, u16
|
||||
struct SaveBlock2* sav2 = ScriptEnvironment_GetSavePtr(ctx->fieldSystem);
|
||||
moveRelearner->player = Save_PlayerData_GetProfileAddr(sav2);
|
||||
|
||||
moveRelearner->options = Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveBlock2);
|
||||
moveRelearner->options = Save_PlayerData_GetOptionsAddr(ctx->fieldSystem->saveData);
|
||||
moveRelearner->eligibleMoves = eligibleMoves;
|
||||
moveRelearner->unk15 = a1;
|
||||
FUN_02038864(ctx->fieldSystem, moveRelearner);
|
||||
@@ -84,7 +84,7 @@ BOOL ScrCmd_Unk0220(struct ScriptContext* ctx) //0220
|
||||
BOOL ScrCmd_Unk0221(struct ScriptContext* ctx) //0221 - todo: RememberMove?
|
||||
{
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = GetPartyMonByIndex(party, mon_idx);
|
||||
u16 *eligibleMoves = GetEligibleLevelUpMoves(pokemon, 32);
|
||||
|
||||
@@ -96,7 +96,7 @@ BOOL ScrCmd_Unk0224(struct ScriptContext* ctx) //0224 - todo: TeachMove?
|
||||
{
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
u16 move = ScriptGetVar(ctx);
|
||||
struct PlayerParty *party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty *party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon *pokemon = GetPartyMonByIndex(party, mon_idx);
|
||||
|
||||
u16 *eligibleMoves = AllocFromHeap(32, 2 * sizeof(u16));
|
||||
|
||||
@@ -39,7 +39,7 @@ BOOL ScrCmd_GetRivalName(struct ScriptContext* ctx) //00CE - todo: BufferRivalNa
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
|
||||
BufferRivalsName(*messageFormat, idx, fieldSystem->saveBlock2);
|
||||
BufferRivalsName(*messageFormat, idx, fieldSystem->saveData);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
@@ -50,7 +50,7 @@ BOOL ScrCmd_GetFriendName(struct ScriptContext* ctx) //00CF - todo: BufferFriend
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
|
||||
BufferFriendsName(*messageFormat, idx, fieldSystem->saveBlock2);
|
||||
BufferFriendsName(*messageFormat, idx, fieldSystem->saveData);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
@@ -61,7 +61,7 @@ BOOL ScrCmd_GetPokemonName(struct ScriptContext* ctx) //00D0 - todo: BufferParty
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* mon = GetPartyMonByIndex(party, mon_idx);
|
||||
|
||||
BufferBoxMonSpeciesName(*messageFormat, idx, &mon->box);
|
||||
@@ -153,7 +153,7 @@ BOOL ScrCmd_GetPokemonNickname(struct ScriptContext* ctx) //00D6 - todo: BufferP
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = GetPartyMonByIndex(party, mon_idx);
|
||||
|
||||
BufferBoxMonNickname(*messageFormat, idx, &pokemon->box);
|
||||
@@ -164,7 +164,7 @@ BOOL ScrCmd_GetPokemonNickname(struct ScriptContext* ctx) //00D6 - todo: BufferP
|
||||
BOOL ScrCmd_Unk0251(struct ScriptContext* ctx) //0251 - todo: BufferBoxPokemonNickname? TextBoxPokemonNickname?
|
||||
{
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
struct PCStorage* pc = GetStoragePCPointer(fieldSystem->saveBlock2);
|
||||
struct PCStorage* pc = GetStoragePCPointer(fieldSystem->saveData);
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
u16 box_mon_idx = ScriptGetVar(ctx);
|
||||
@@ -243,7 +243,7 @@ BOOL ScrCmd_GetPlayerStarterName(struct ScriptContext* ctx) //00DB - todo: Buffe
|
||||
{
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u32 msg_no = FUN_0205F388(state);
|
||||
struct String* str = FUN_02040AE4(msg_no, 4);
|
||||
|
||||
@@ -257,7 +257,7 @@ BOOL ScrCmd_GetRivalStarterName(struct ScriptContext* ctx) //00DC - todo: Buffer
|
||||
{
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u32 msg_no = FUN_0205F398(state);
|
||||
struct String* str = FUN_02040AE4(msg_no, 4);
|
||||
|
||||
@@ -271,7 +271,7 @@ BOOL ScrCmd_GetCounterpartStarterName(struct ScriptContext* ctx) //00DD - todo:
|
||||
{
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u32 msg_no = FUN_0205F3C0(state);
|
||||
struct String* str = FUN_02040AE4(msg_no, 4);
|
||||
|
||||
@@ -369,7 +369,7 @@ BOOL ScrCmd_GetWhiteRockInscription(struct ScriptContext* ctx) //0272 - todo: Bu
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
struct String* str = String_New(11, 11);
|
||||
struct UnkStruct_02024E64* unk = FUN_02024EB4(ctx->fieldSystem->saveBlock2);
|
||||
struct UnkStruct_02024E64* unk = FUN_02024EB4(ctx->fieldSystem->saveData);
|
||||
u16* unk_buffer = FUN_02024F0C(unk);
|
||||
|
||||
CopyU16ArrayToString(str, unk_buffer);
|
||||
@@ -386,7 +386,7 @@ BOOL ScrCmd_GetPokemonMoveName(struct ScriptContext* ctx) //01CB - todo: BufferP
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
u16 mon_idx = ScriptGetVar(ctx);
|
||||
u16 mon_move_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* pokemon = GetPartyMonByIndex(party, mon_idx);
|
||||
u16 move = (u16)GetMonData(pokemon, MON_DATA_MOVE1 + mon_move_idx, NULL);
|
||||
|
||||
@@ -490,7 +490,7 @@ BOOL ScrCmd_Unk02CA(struct ScriptContext* ctx) //02CA - todo: BufferIndefFriendS
|
||||
{
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u8 idx = ScriptReadByte(ctx);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(ctx->fieldSystem->saveData);
|
||||
u32 species = FUN_0205F3C0(state);
|
||||
|
||||
BufferSpeciesNameWithArticle(*messageFormat, idx, species);
|
||||
|
||||
@@ -22,8 +22,8 @@ BOOL ScrCmd_GiveMon(struct ScriptContext* ctx) //0096 - todo: GivePokemon?
|
||||
u16 level = ScriptGetVar(ctx);
|
||||
u16 item = ScriptGetVar(ctx);
|
||||
u16 * varPtr = ScriptGetVarPointer(ctx);
|
||||
struct PlayerParty * party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
*varPtr = (u16)GiveMon(11, fieldSystem->saveBlock2, species, (u8)level, item, mapSec, 12);
|
||||
struct PlayerParty * party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
*varPtr = (u16)GiveMon(11, fieldSystem->saveData, species, (u8)level, item, mapSec, 12);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ BOOL ScrCmd_GetPartyMonSpecies(struct ScriptContext* ctx) //0198 - todo: GetPart
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* mon_slot = GetVarPointer(ctx->fieldSystem, ScriptReadHalfword(ctx)); //for some reason this is *required* for matching, cannot use ScriptGetVarPointer here
|
||||
ret_ptr = GetVarPointer(ctx->fieldSystem, ScriptReadHalfword(ctx));
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, *mon_slot);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -61,7 +61,7 @@ BOOL ScrCmd_CheckPartyMonOTID(struct ScriptContext* ctx) //0199 - todo: CheckPar
|
||||
u16* mon_slot = ScriptGetVarPointer(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, *mon_slot);
|
||||
|
||||
u16 party_mon_otid = (u16)GetMonData(party_mon, MON_DATA_OTID, NULL);
|
||||
@@ -81,10 +81,10 @@ BOOL ScrCmd_CheckPartyMonOTID(struct ScriptContext* ctx) //0199 - todo: CheckPar
|
||||
BOOL ScrCmd_GiveEgg(struct ScriptContext* ctx) //0097
|
||||
{
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(fieldSystem->saveBlock2);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(fieldSystem->saveData);
|
||||
u16 species = ScriptGetVar(ctx);
|
||||
u16 unk = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
u8 party_count = (u8)GetPartyCount(party);
|
||||
|
||||
if (party_count < PARTY_SIZE)
|
||||
@@ -107,7 +107,7 @@ BOOL ScrCmd_SetPartyMonMove(struct ScriptContext* ctx) //0098 - todo: ReplacePar
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 move_slot = ScriptGetVar(ctx);
|
||||
u16 move = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
PartyMonSetMoveInSlot(party, mon_slot, move_slot, move);
|
||||
|
||||
@@ -120,7 +120,7 @@ BOOL ScrCmd_PartyMonHasMove(struct ScriptContext* ctx) //0099
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 required_move = ScriptGetVar(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = 0;
|
||||
@@ -147,12 +147,12 @@ BOOL ScrCmd_FindPartyMonWithMove(struct ScriptContext* ctx) //009A - todo: Check
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 required_move = ScriptGetVar(ctx);
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u8 i;
|
||||
for (i = 0, *ret_ptr = PARTY_SIZE; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -176,7 +176,7 @@ BOOL ScrCmd_SurvivePsn(struct ScriptContext* ctx) //01F7
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)SurvivePoisoning(party_mon);
|
||||
@@ -191,12 +191,12 @@ BOOL ScrCmd_CountPartyMonsAtOrBelowLevel(struct ScriptContext* ctx) //01F6
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 highest_level = ScriptGetVar(ctx);
|
||||
party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u8 mons;
|
||||
for (i = 0, mons = 0, *ret_ptr = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -219,7 +219,7 @@ BOOL ScrCmd_GetPartyMonLevel(struct ScriptContext* ctx) //0278
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = 0;
|
||||
@@ -238,7 +238,7 @@ BOOL ScrCmd_GetPartyMonNature(struct ScriptContext* ctx) //0212
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
if (mon_slot >= party_count)
|
||||
{
|
||||
@@ -246,7 +246,7 @@ BOOL ScrCmd_GetPartyMonNature(struct ScriptContext* ctx) //0212
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -265,12 +265,12 @@ BOOL ScrCmd_FindPartyMonWithNature(struct ScriptContext* ctx) //0213 - todo: Che
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 required_nature = ScriptGetVar(ctx);
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u8 i;
|
||||
for (i = 0, *ret_ptr = 0xFF; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -293,7 +293,7 @@ BOOL ScrCmd_GetPartyMonFriendship(struct ScriptContext* ctx) //01B9
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, MON_DATA_FRIENDSHIP, NULL);
|
||||
@@ -306,7 +306,7 @@ BOOL ScrCmd_AddPartyMonFriendship(struct ScriptContext* ctx) //01BA
|
||||
u16 friendship_to_add = ScriptGetVar(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 map_sec = MapHeader_GetMapSec(*ctx->fieldSystem->mapId);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
u16 friendship = (u16)GetMonData(party_mon, MON_DATA_FRIENDSHIP, NULL);
|
||||
@@ -349,7 +349,7 @@ BOOL ScrCmd_SubtractPartyMonFriendship(struct ScriptContext* ctx) //01BB
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16 friendship_to_deplete = ScriptGetVar(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
u16 friendship = (u16)GetMonData(party_mon, MON_DATA_FRIENDSHIP, NULL);
|
||||
@@ -372,7 +372,7 @@ BOOL ScrCmd_GetPartyMonContestCondition(struct ScriptContext* ctx) //0281
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 contest_condition_id = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, MON_DATA_COOL + contest_condition_id, NULL);
|
||||
@@ -383,7 +383,7 @@ BOOL ScrCmd_GetLeadingPartyMonSlot(struct ScriptContext* ctx) //0247
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
*ret_ptr = FUN_02054DEC(ctx->fieldSystem->saveBlock2);
|
||||
*ret_ptr = FUN_02054DEC(ctx->fieldSystem->saveData);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -393,7 +393,7 @@ BOOL ScrCmd_GetPartyMonTypes(struct ScriptContext* ctx) //0248
|
||||
u16* type1 = ScriptGetVarPointer(ctx);
|
||||
u16* type2 = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*type1 = (u16)GetMonData(party_mon, MON_DATA_TYPE_1, NULL);
|
||||
@@ -405,7 +405,7 @@ BOOL ScrCmd_CountPartyMons(struct ScriptContext* ctx) //0177
|
||||
{
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
|
||||
*ret_ptr = (u16)GetPartyCount(party);
|
||||
return FALSE;
|
||||
@@ -418,11 +418,11 @@ BOOL ScrCmd_CountPartyMons_OmitEggs(struct ScriptContext* ctx) //019A
|
||||
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
s32 party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
s32 party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
for (i = 0, non_egg_mons = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -445,7 +445,7 @@ BOOL ScrCmd_CountAvailablePartyMons_IgnoreSlot(struct ScriptContext* ctx) //019B
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
slot_to_ignore = ScriptGetVar(ctx);
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u32 available_mons;
|
||||
s32 i;
|
||||
@@ -453,7 +453,7 @@ BOOL ScrCmd_CountAvailablePartyMons_IgnoreSlot(struct ScriptContext* ctx) //019B
|
||||
{
|
||||
if (i != slot_to_ignore)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -479,14 +479,14 @@ BOOL ScrCmd_CountAvailablePartyAndPCMons(struct ScriptContext* ctx) //019C
|
||||
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
pc = GetStoragePCPointer(fieldSystem->saveBlock2);
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
pc = GetStoragePCPointer(fieldSystem->saveData);
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u32 mons;
|
||||
s32 i;
|
||||
for (i = 0, mons = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -511,12 +511,12 @@ BOOL ScrCmd_GetPartyEggCount(struct ScriptContext* ctx) //019D
|
||||
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
party_count = GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
s32 i;
|
||||
for (i = 0, eggs_in_party = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -537,11 +537,11 @@ BOOL ScrCmd_CheckPartyForPokerus(struct ScriptContext* ctx) //0119
|
||||
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
for (i = 0, *ret_ptr = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_has_pokerus = (BOOL)GetMonData(party_mon, MON_DATA_POKERUS, NULL);
|
||||
@@ -559,7 +559,7 @@ BOOL ScrCmd_GetPartyMonGender(struct ScriptContext* ctx) //011A
|
||||
{
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, MON_DATA_GENDER, NULL);
|
||||
@@ -574,7 +574,7 @@ BOOL ScrCmd_CountPartyMonMoves(struct ScriptContext* ctx) //01C8
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -619,7 +619,7 @@ BOOL ScrCmd_ForgetPartyMonMove(struct ScriptContext* ctx) //01C9
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 move_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
FUN_020699A4(party_mon, move_slot);
|
||||
@@ -633,7 +633,7 @@ BOOL ScrCmd_GetPartyMonMove(struct ScriptContext* ctx) //01CA
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 move_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, MON_DATA_MOVE1 + move_slot, NULL);
|
||||
@@ -645,7 +645,7 @@ BOOL ScrCmd_GetPartyMonHeldItem(struct ScriptContext* ctx) //01EE
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, MON_DATA_HELD_ITEM, NULL);
|
||||
@@ -656,7 +656,7 @@ BOOL ScrCmd_ResetPartyMonHeldItem(struct ScriptContext* ctx) //01F0
|
||||
{
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
u16 party_mon_held_item = ITEM_NONE;
|
||||
@@ -670,12 +670,12 @@ BOOL ScrCmd_CheckPartyForSpecies(struct ScriptContext* ctx) //01C0
|
||||
struct FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 species = ScriptGetVar(ctx);
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveBlock2));
|
||||
u8 party_count = (u8)GetPartyCount(SaveArray_PlayerParty_Get(fieldSystem->saveData));
|
||||
|
||||
u8 i;
|
||||
for (i = 0, *ret_ptr = 0; i < party_count; i++)
|
||||
{
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, i);
|
||||
|
||||
BOOL party_mon_is_egg = (BOOL)GetMonData(party_mon, MON_DATA_IS_EGG, NULL);
|
||||
@@ -697,7 +697,7 @@ BOOL ScrCmd_CountPartyMonRibbons(struct ScriptContext* ctx) //022E
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
u16 ribbon_idx;
|
||||
@@ -722,8 +722,8 @@ BOOL ScrCmd_CountTotalPartyRibbons(struct ScriptContext* ctx) //022F
|
||||
u16 ribbons;
|
||||
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2));
|
||||
party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
u16 party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData));
|
||||
party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
for (ribbon_idx = 0, ribbons = 0; ribbon_idx < 80; ribbon_idx++)
|
||||
{
|
||||
@@ -757,7 +757,7 @@ BOOL ScrCmd_PartyMonHasRibbon(struct ScriptContext* ctx) //0230
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 ribbon_idx = ScriptGetVar(ctx);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
*ret_ptr = (u16)GetMonData(party_mon, FUN_0207FC5C((u8)ribbon_idx, 0), NULL);
|
||||
@@ -769,7 +769,7 @@ BOOL ScrCmd_GivePartyMonRibbon(struct ScriptContext* ctx) //0231
|
||||
u16 mon_slot = ScriptGetVar(ctx);
|
||||
u16 ribbon_idx = ScriptGetVar(ctx);
|
||||
u8 mon_has_ribbon = TRUE;
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
struct Pokemon* party_mon = GetPartyMonByIndex(party, mon_slot);
|
||||
|
||||
SetMonData(party_mon, (s32)FUN_0207FC5C((u8)ribbon_idx, 0), &mon_has_ribbon);
|
||||
@@ -782,8 +782,8 @@ BOOL ScrCmd_CheckPartyForBadEgg(struct ScriptContext* ctx) //02B7
|
||||
u16 ribbon_idx;
|
||||
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2));
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveBlock2);
|
||||
u16 party_count = (u16)GetPartyCount(SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData));
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(ctx->fieldSystem->saveData);
|
||||
|
||||
// BUG: Probably a copy-paste fail. Checks if your party has a Bad Egg in it,
|
||||
// 80 times.
|
||||
|
||||
@@ -198,7 +198,7 @@ BOOL ScrCmd_CheckChatotCry(struct ScriptContext* ctx) //0059
|
||||
{
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
struct SaveChatotSoundClip* chatotSoundClip = Save_Chatot_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct SaveChatotSoundClip* chatotSoundClip = Save_Chatot_Get(ctx->fieldSystem->saveData);
|
||||
if (Chatot_checkCry(chatotSoundClip) == 1)
|
||||
{
|
||||
*ret_ptr = 1;
|
||||
@@ -236,7 +236,7 @@ BOOL ScrCmd_StopChatotRecord(struct ScriptContext* ctx) //005B
|
||||
|
||||
BOOL ScrCmd_SaveChatotCry(struct ScriptContext* ctx) //005C
|
||||
{
|
||||
struct SaveChatotSoundClip* chatotSoundClip = Save_Chatot_Get(ctx->fieldSystem->saveBlock2);
|
||||
struct SaveChatotSoundClip* chatotSoundClip = Save_Chatot_Get(ctx->fieldSystem->saveData);
|
||||
Chatot_saveRecording(chatotSoundClip);
|
||||
|
||||
return TRUE;
|
||||
|
||||
@@ -11,7 +11,7 @@ extern BOOL FUN_020260C4(void*, u16, u16);
|
||||
|
||||
BOOL ScrCmd_GiveSecretBaseDecoration(struct ScriptContext* ctx) //0083
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16 unk1 = ScriptGetVar(ctx);
|
||||
u16 unused = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
@@ -33,7 +33,7 @@ BOOL ScrCmd_TakeSecretBaseDecoration(struct ScriptContext* ctx) //0084
|
||||
|
||||
BOOL ScrCmd_HasSpaceForDecoration(struct ScriptContext* ctx) //0085
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16 unk1 = ScriptGetVar(ctx);
|
||||
u16 unused = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
@@ -55,7 +55,7 @@ BOOL ScrCmd_GetDecorationCount(struct ScriptContext* ctx) //0086 - somewhat unsu
|
||||
|
||||
BOOL ScrCmd_GiveUndergroundTrap(struct ScriptContext* ctx) //0087
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16 unk1 = ScriptGetVar(ctx);
|
||||
u16 unused = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
@@ -95,7 +95,7 @@ BOOL ScrCmd_GetTrapCount(struct ScriptContext* ctx) //008A
|
||||
|
||||
BOOL ScrCmd_GiveTreasure(struct ScriptContext* ctx) //008B
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16 unused1 = ScriptGetVar(ctx);
|
||||
u16 unused2 = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
@@ -133,7 +133,7 @@ BOOL ScrCmd_GetTreasureCount(struct ScriptContext* ctx) //008E
|
||||
|
||||
BOOL ScrCmd_GiveUndergroundSphere(struct ScriptContext* ctx) //008F
|
||||
{
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
u16 unk1 = ScriptGetVar(ctx);
|
||||
u16 unk2 = ScriptGetVar(ctx);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
|
||||
@@ -13,8 +13,8 @@ extern BOOL FUN_020612F8(struct FieldSystem*);
|
||||
BOOL ScrCmd_UnionGroup(struct ScriptContext* ctx) //021D
|
||||
{
|
||||
MessageFormat **messageFormat = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_MESSAGE_FORMAT);
|
||||
struct UnkSaveStruct_020286F8* unk_sav_ptr = FUN_0202881C(ctx->fieldSystem->saveBlock2);
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveBlock2;
|
||||
struct UnkSaveStruct_020286F8* unk_sav_ptr = FUN_0202881C(ctx->fieldSystem->saveData);
|
||||
struct SaveBlock2* sav2 = ctx->fieldSystem->saveData;
|
||||
|
||||
u16 option = ScriptReadHalfword(ctx);
|
||||
switch (option)
|
||||
@@ -68,7 +68,7 @@ BOOL ScrCmd_UnionGroup(struct ScriptContext* ctx) //021D
|
||||
}
|
||||
case 6: { //create a group
|
||||
struct String* player_name = String_New(64, 32);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveBlock2);
|
||||
struct PlayerData* player = Save_PlayerData_GetProfileAddr(ctx->fieldSystem->saveData);
|
||||
|
||||
PlayerName_FlatToString(player, player_name);
|
||||
FUN_020287C0(unk_sav_ptr, 0, 1, player_name);
|
||||
|
||||
@@ -29,7 +29,7 @@ void FUN_0204B0F8(struct FieldSystem *fieldSystem)
|
||||
RTCDate date;
|
||||
RTCTime time;
|
||||
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
if (rtc_info->field_00 != 0)
|
||||
{
|
||||
GF_RTC_CopyDateTime(&date, &time);
|
||||
@@ -82,20 +82,20 @@ void FUN_0204B1DC(struct FieldSystem *fieldSystem, s32 a1)
|
||||
struct SaveBlock2* sav2 = ScriptEnvironment_GetSavePtr(fieldSystem);
|
||||
FUN_02025A60(sav2, a1);
|
||||
FUN_0203959C(fieldSystem);
|
||||
FUN_02060344(fieldSystem->saveBlock2, a1);
|
||||
FUN_02060344(fieldSystem->saveData, a1);
|
||||
|
||||
void* unk_sav_ptr1 = FUN_0202881C(fieldSystem->saveBlock2);
|
||||
void* unk_sav_ptr1 = FUN_0202881C(fieldSystem->saveData);
|
||||
FUN_02028754(unk_sav_ptr1, (u32)a1);
|
||||
|
||||
void* unk_sav_ptr2 = FUN_0202A9B0(fieldSystem->saveBlock2);
|
||||
unk_sav_ptr1 = FUN_0202881C(fieldSystem->saveBlock2);
|
||||
void* unk_sav_ptr2 = FUN_0202A9B0(fieldSystem->saveData);
|
||||
unk_sav_ptr1 = FUN_0202881C(fieldSystem->saveData);
|
||||
u32 unk1 = FUN_020287A4(unk_sav_ptr1);
|
||||
FUN_0202A988(unk_sav_ptr2, unk1);
|
||||
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveBlock2);
|
||||
struct PlayerParty* party = SaveArray_PlayerParty_Get(fieldSystem->saveData);
|
||||
Party_UpdatePokerus(party, a1);
|
||||
|
||||
struct ScriptState* state = SaveArray_Flags_Get(fieldSystem->saveBlock2);
|
||||
struct ScriptState* state = SaveArray_Flags_Get(fieldSystem->saveData);
|
||||
s32 unk2 = FUN_0205F594(state);
|
||||
|
||||
u16 unk3;
|
||||
@@ -109,90 +109,90 @@ void FUN_0204B1DC(struct FieldSystem *fieldSystem, s32 a1)
|
||||
}
|
||||
|
||||
FUN_0205F5A4(state, unk3);
|
||||
FUN_0205F618(fieldSystem->saveBlock2, (u16)a1);
|
||||
FUN_0205F668(fieldSystem->saveBlock2);
|
||||
FUN_0206007C(fieldSystem->saveBlock2);
|
||||
FUN_0205F618(fieldSystem->saveData, (u16)a1);
|
||||
FUN_0205F668(fieldSystem->saveData);
|
||||
FUN_0206007C(fieldSystem->saveData);
|
||||
|
||||
void* unk_sav_ptr3 = FUN_02029AFC(fieldSystem->saveBlock2);
|
||||
void* unk_sav_ptr3 = FUN_02029AFC(fieldSystem->saveData);
|
||||
FUN_02029C08(unk_sav_ptr3);
|
||||
}
|
||||
|
||||
void FUN_0204B270(struct FieldSystem *fieldSystem, s32 a1, struct RTCTime* time)
|
||||
{
|
||||
FUN_0204B3D0(fieldSystem, a1);
|
||||
FUN_0202A9D0(fieldSystem->saveBlock2, a1);
|
||||
FUN_0202A9D0(fieldSystem->saveData, a1);
|
||||
BOOL unk_bool = FUN_0204B33C(fieldSystem);
|
||||
FUN_02025B60(fieldSystem->saveBlock2, a1, unk_bool);
|
||||
void* unk_sav_ptr = FUN_02022504(fieldSystem->saveBlock2);
|
||||
FUN_02025B60(fieldSystem->saveData, a1, unk_bool);
|
||||
void* unk_sav_ptr = FUN_02022504(fieldSystem->saveData);
|
||||
FUN_0202B3C4(unk_sav_ptr, a1, time->minute);
|
||||
}
|
||||
|
||||
u32 Script_GetTimeOfDay(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return GF_RTC_GetTimeOfDayByHour(rtc_info->time.hour);
|
||||
}
|
||||
|
||||
u32 Script_GetMonth(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return rtc_info->date.month;
|
||||
}
|
||||
|
||||
u32 Script_GetDay(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return rtc_info->date.day;
|
||||
}
|
||||
|
||||
RTCWeek Script_GetWeekday(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return rtc_info->date.week;
|
||||
}
|
||||
|
||||
u32 Script_GetHour(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return rtc_info->time.hour;
|
||||
}
|
||||
|
||||
u32 Script_GetMinute(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return rtc_info->time.minute;
|
||||
}
|
||||
|
||||
void Script_SavRTC_x24toDateTime(struct FieldSystem *fieldSystem, struct RTCDate* date, struct RTCTime* time)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
RTC_ConvertSecondToDateTime(date, time, rtc_info->secondsSinceNitroEpoch);
|
||||
}
|
||||
|
||||
void Script_SavRTC_x2CtoDateTime(struct FieldSystem *fieldSystem, struct RTCDate* date, struct RTCTime* time)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
RTC_ConvertSecondToDateTime(date, time, rtc_info->field_2C);
|
||||
}
|
||||
|
||||
void Script_SavRTC_DateTimeTox2C(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
rtc_info->field_2C = GF_RTC_DateTimeToSec();
|
||||
}
|
||||
|
||||
BOOL FUN_0204B33C(struct FieldSystem *fieldSystem)
|
||||
{
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveBlock2);
|
||||
struct UnkSaveStruct_0202376C_sub* rtc_info = Save_SysInfo_RTC_Get(fieldSystem->saveData);
|
||||
|
||||
return FUN_02023874(rtc_info);
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ u32 FUN_0205FA2C(
|
||||
struct UnkPlayerStruct1_0205FA2C *ptr = (struct UnkPlayerStruct1_0205FA2C *)AllocFromHeapAtEnd(
|
||||
heap_id, sizeof(struct UnkPlayerStruct1_0205FA2C));
|
||||
|
||||
struct SaveBlock2 *sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2 *sav2 = fieldSystem->saveData;
|
||||
MI_CpuFill8(ptr, 0, sizeof(struct UnkPlayerStruct1_0205FA2C));
|
||||
|
||||
ptr->options = Save_PlayerData_GetOptionsAddr(sav2);
|
||||
@@ -101,7 +101,7 @@ u32 FUN_0205FAD8(
|
||||
u32 FUN_0205FB34(
|
||||
struct UnkCallbackStruct1_0205FA2C *param0, struct FieldSystem *fieldSystem, u32 heap_id)
|
||||
{
|
||||
struct SaveBlock2 *sav2 = fieldSystem->saveBlock2;
|
||||
struct SaveBlock2 *sav2 = fieldSystem->saveData;
|
||||
|
||||
struct UnkPlayerStruct2_0205FA2C *ptr = (struct UnkPlayerStruct2_0205FA2C *)AllocFromHeapAtEnd(
|
||||
heap_id, sizeof(struct UnkPlayerStruct2_0205FA2C));
|
||||
@@ -206,7 +206,7 @@ void FUN_0205FC50(struct TaskManager *taskManager,
|
||||
u32 FUN_0205FC9C(
|
||||
struct UnkCallbackStruct2_0205FA2C *param0, struct FieldSystem *fieldSystem)
|
||||
{
|
||||
if (FUN_0203384C(fieldSystem->saveBlock2))
|
||||
if (FUN_0203384C(fieldSystem->saveData))
|
||||
{
|
||||
|
||||
param0->unk08 = FUN_02038790(fieldSystem, param0->unk12, param0->unk14);
|
||||
|
||||
@@ -65,7 +65,7 @@ BOOL FUN_02060194(struct TaskManager *taskManager)
|
||||
break;
|
||||
|
||||
case 2:
|
||||
struct ScriptState *scrState = SaveArray_Flags_Get(fieldSystem->saveBlock2);
|
||||
struct ScriptState *scrState = SaveArray_Flags_Get(fieldSystem->saveData);
|
||||
u8 unkD = unkStruct1->unkD;
|
||||
if (unkD == 0)
|
||||
{
|
||||
|
||||
15
include/constants/global_fieldmap.h
Normal file
15
include/constants/global_fieldmap.h
Normal file
@@ -0,0 +1,15 @@
|
||||
#ifndef POKEDIAMOND_CONSTANTS_GLOBAL_FIELDMAP_H
|
||||
#define POKEDIAMOND_CONSTANTS_GLOBAL_FIELDMAP_H
|
||||
|
||||
// Facing direction
|
||||
#define DIR_NORTH 0
|
||||
#define DIR_SOUTH 1
|
||||
#define DIR_WEST 2
|
||||
#define DIR_EAST 3
|
||||
|
||||
// Player avatar state
|
||||
#define PLAYER_STATE_WALKING 0
|
||||
#define PLAYER_STATE_CYCLING 1
|
||||
#define PLAYER_STATE_SURFING 2
|
||||
|
||||
#endif //POKEDIAMOND_CONSTANTS_GLOBAL_FIELDMAP_H
|
||||
@@ -214,6 +214,14 @@ BOOL ScrCmd_ExitBattleRoom(ScriptContext *ctx);
|
||||
BOOL ScrCmd_GetPreviousMapID(ScriptContext *ctx);
|
||||
BOOL ScrCmd_GetCurrentMapID(ScriptContext *ctx);
|
||||
BOOL ScrCmd_RockClimb(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Surf(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Waterfall(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Fly(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Flash(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Defog(ScriptContext *ctx);
|
||||
BOOL ScrCmd_Cut(ScriptContext *ctx);
|
||||
BOOL ScrCmd_ApplyContestDress(ScriptContext *ctx);
|
||||
BOOL ScrCmd_CheckBike(ScriptContext *ctx);
|
||||
|
||||
// scrcmd_mart.c
|
||||
BOOL ScrCmd_NormalMart(struct ScriptContext * ctx);
|
||||
|
||||
@@ -81,12 +81,21 @@ typedef struct Location {
|
||||
u32 direction;
|
||||
} Location;
|
||||
|
||||
typedef struct UnkFieldStruct04 {
|
||||
u8 padding[0xC];
|
||||
u32 unk0C;
|
||||
} UnkFieldStruct04;
|
||||
|
||||
typedef struct LocalFieldData {
|
||||
|
||||
} LocalFieldData; //todo fill out and move to own file
|
||||
|
||||
typedef struct FieldSystem //todo move to field_system.c
|
||||
{
|
||||
u32 *unk00;
|
||||
u8 padding[0x4];
|
||||
UnkFieldStruct04 *unk04;
|
||||
struct BgConfig *bgConfig;
|
||||
struct SaveBlock2 *saveBlock2; //0xC
|
||||
struct SaveBlock2 *saveData; //0xC
|
||||
TaskManager *taskManager;
|
||||
u8 padding2[0x8];
|
||||
u32 *mapId; //0x1C
|
||||
@@ -99,9 +108,11 @@ typedef struct FieldSystem //todo move to field_system.c
|
||||
u32 unk60;
|
||||
u8 padding5[0x14];
|
||||
u32 unk78;
|
||||
u8 padding6[0x1C];
|
||||
u8 padding6[0x14];
|
||||
u32 unk90;
|
||||
u8 padding7[0x4];
|
||||
u32 *unk98;
|
||||
u8 padding7[0xC];
|
||||
u8 padding8[0xC];
|
||||
struct UnkStruct_02046444 * unkA8;
|
||||
} FieldSystem;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user