summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2020-08-12 15:19:31 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2020-08-12 15:19:31 -0400
commitdda861d78ad47a85a54c4c6a2dd3f7e301e65fa5 (patch)
tree6b521d42b21dd9f932806ca5ef6c7a83c50a0b24
parentca2af0a5d0cf80c38995dde9e4d05246c11128e7 (diff)
Decompile unk_02046294.s --> event_data.c
-rw-r--r--arm9/arm9.lsf2
-rw-r--r--arm9/asm/save.s4
-rw-r--r--arm9/asm/scrcmd.s20
-rw-r--r--arm9/asm/scrcmd_12.s6
-rw-r--r--arm9/asm/scrcmd_16.s8
-rw-r--r--arm9/asm/scrcmd_18.s96
-rw-r--r--arm9/asm/scrcmd_24.s6
-rw-r--r--arm9/asm/scrcmd_3.s2
-rw-r--r--arm9/asm/scrcmd_4.s6
-rw-r--r--arm9/asm/scrcmd_5.s4
-rw-r--r--arm9/asm/scrcmd_7.s2
-rw-r--r--arm9/asm/scrcmd_9.s6
-rw-r--r--arm9/asm/unk_02025658.s2
-rw-r--r--arm9/asm/unk_02035068.s20
-rw-r--r--arm9/asm/unk_020377F0.s18
-rw-r--r--arm9/asm/unk_02046294.s167
-rw-r--r--arm9/asm/unk_0204653C.s6
-rw-r--r--arm9/asm/unk_020476CC.s26
-rw-r--r--arm9/asm/unk_020484A8.s8
-rw-r--r--arm9/asm/unk_0204A01C.s8
-rw-r--r--arm9/asm/unk_0204B0A0.s2
-rw-r--r--arm9/asm/unk_0204FBA8.s4
-rw-r--r--arm9/asm/unk_02050E48.s18
-rw-r--r--arm9/asm/unk_02054C14.s6
-rw-r--r--arm9/asm/unk_0205CE48.s6
-rw-r--r--arm9/asm/unk_0205FA2C.s4
-rw-r--r--arm9/asm/unk_02060CCC.s2
-rw-r--r--arm9/asm/unk_0206439C.s2
-rw-r--r--arm9/asm/unk_020653EC.s4
-rw-r--r--arm9/asm/unk_0206ABC4.s10
-rw-r--r--arm9/asm/unk_0206BF90.s14
-rw-r--r--arm9/asm/unk_0206C700.s2
-rw-r--r--arm9/asm/unk_02073DA8.s2
-rw-r--r--arm9/asm/unk_02080C38.s4
-rw-r--r--arm9/asm/unk_02083B84.s2
-rw-r--r--arm9/asm/unk_020859C0.s2
-rw-r--r--arm9/asm/unk_02087D00.s2
-rw-r--r--arm9/global.inc22
-rw-r--r--arm9/modules/05/asm/mod05_021D80E8.s12
-rw-r--r--arm9/modules/05/asm/module_05.s14
-rw-r--r--arm9/modules/06/asm/module_06.s44
-rw-r--r--arm9/modules/11/asm/module_11_thumb1.s20
-rw-r--r--arm9/modules/11/asm/module_11_thumb2.s14
-rw-r--r--arm9/modules/14/asm/module_14.s14
-rw-r--r--arm9/modules/27/asm/module_27.s4
-rw-r--r--arm9/modules/28/asm/module_28.s2
-rw-r--r--arm9/modules/39/asm/module_39.s2
-rw-r--r--arm9/modules/56/asm/module_56.s4
-rw-r--r--arm9/modules/71/asm/module_71.s6
-rw-r--r--arm9/modules/80/asm/module_80.s6
-rw-r--r--arm9/src/event_data.c78
-rw-r--r--arm9/src/party.c31
-rw-r--r--include/event_data.h19
-rw-r--r--include/party.h21
-rw-r--r--include/pokemon.h3
-rw-r--r--include/proto.h1
-rw-r--r--include/save_block_2.h17
57 files changed, 387 insertions, 450 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 27d530ed..5d663de4 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -175,7 +175,7 @@ Static arm9
Object scrcmd_24.o
Object scrcmd_25.o
Object unk_02046030.o
- Object unk_02046294.o
+ Object event_data.o
Object unk_0204639C.o
Object unk_0204653C.o
Object unk_02047500.o
diff --git a/arm9/asm/save.s b/arm9/asm/save.s
index 7f02ab02..a8ee71f8 100644
--- a/arm9/asm/save.s
+++ b/arm9/asm/save.s
@@ -20,9 +20,9 @@ UNK_020EE6E0: ; 0x020EE6E0
UNK_020EE700: ; 0x020EE700
.word 0x00, 0x00, FUN_0202376C, FUN_02023770
.word 0x01, 0x00, FUN_020238C4, FUN_020238C8
- .word 0x02, 0x00, FUN_0206B8A4, FUN_0206B8C0
+ .word 0x02, 0x00, SavArray_Party_sizeof, SavArray_Party_init
.word 0x03, 0x00, FUN_0206EB80, FUN_0206EBA0
- .word 0x04, 0x00, SavArray_Flags_sizeof, SavArray_Flags_memclear
+ .word 0x04, 0x00, SavArray_Flags_sizeof, SavArray_Flags_init
.word 0x05, 0x00, FUN_0204BE14, FUN_0204BE18
.word 0x06, 0x00, FUN_02034D7C, FUN_02034D98
.word 0x07, 0x00, FUN_02023D64, FUN_02024378
diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s
index 751c0e4d..924df1ce 100644
--- a/arm9/asm/scrcmd.s
+++ b/arm9/asm/scrcmd.s
@@ -3953,7 +3953,7 @@ FUN_0203B8A0: ; 0x0203B8A0
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
bl FUN_020690CC
@@ -4602,7 +4602,7 @@ FUN_0203BDB8: ; 0x0203BDB8
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r4, r0, #0x0
@@ -5526,7 +5526,7 @@ FUN_0203C520: ; 0x0203C520
bl VarGet
add r6, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
mov r1, #0x74
@@ -6063,7 +6063,7 @@ FUN_0203C990: ; 0x0203C990
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
add r6, r0, #0x0
@@ -7939,7 +7939,7 @@ FUN_0203D8D0: ; 0x0203D8D0
ldr r0, [r0, #0x74]
bl FUN_02046528
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_02085140
mov r0, #0x0
pop {r3, pc}
@@ -10081,7 +10081,7 @@ FUN_0203E9CC: ; 0x0203E9CC
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r5, r0, #0x0
@@ -10193,7 +10193,7 @@ FUN_0203EAB0: ; 0x0203EAB0
add r7, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
mov r1, #0x5
@@ -10679,7 +10679,7 @@ FUN_0203EE98: ; 0x0203EE98
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl PartyHasMon
strh r0, [r4, #0x0]
@@ -10703,7 +10703,7 @@ FUN_0203EED8: ; 0x0203EED8
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x0]
bl GetPartyCount
add r4, #0x80
@@ -10761,7 +10761,7 @@ FUN_0203EF58: ; 0x0203EF58
str r0, [sp, #0x0]
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0xc]
bl GetPartyCount
add r2, sp, #0x18
diff --git a/arm9/asm/scrcmd_12.s b/arm9/asm/scrcmd_12.s
index beedb7f2..5b300555 100644
--- a/arm9/asm/scrcmd_12.s
+++ b/arm9/asm/scrcmd_12.s
@@ -283,7 +283,7 @@ _02042F0C: .word UNK_020F43E4
FUN_02042F10: ; 0x02042F10
push {r3, lr}
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
cmp r0, #0x6
bge _02042F24
@@ -656,9 +656,9 @@ _0204322C:
bl CalcMonLevelAndStats
ldr r0, [sp, #0x4]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
cmp r0, #0x0
beq _02043266
ldr r0, [sp, #0x4]
diff --git a/arm9/asm/scrcmd_16.s b/arm9/asm/scrcmd_16.s
index 60549188..9a1daf47 100644
--- a/arm9/asm/scrcmd_16.s
+++ b/arm9/asm/scrcmd_16.s
@@ -66,7 +66,7 @@ FUN_02043E68: ; 0x02043E68
bl SavArray_get
add r6, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
@@ -110,7 +110,7 @@ FUN_02043E9C: ; 0x02043E9C
bl SavArray_get
add r6, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
lsl r3, r4, #0x18
ldr r1, [r7, #0x0]
add r2, r6, #0x0
@@ -224,7 +224,7 @@ FUN_02043FA0: ; 0x02043FA0
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r2, [r6, #0x0]
add r1, r7, #0x0
bl MOD05_021ED5C4
@@ -248,7 +248,7 @@ FUN_02043FF4: ; 0x02043FF4
bl VarGet
add r6, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r4, r0, #0x0
add r0, r5, #0x0
mov r1, #0x8
diff --git a/arm9/asm/scrcmd_18.s b/arm9/asm/scrcmd_18.s
index e85d33b2..f14155fc 100644
--- a/arm9/asm/scrcmd_18.s
+++ b/arm9/asm/scrcmd_18.s
@@ -49,7 +49,7 @@ FUN_020442BC: ; 0x020442BC
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r0, [sp, #0x10]
lsl r3, r7, #0x18
str r0, [sp, #0x0]
@@ -89,7 +89,7 @@ FUN_0204434C: ; 0x0204434C
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldrh r1, [r6, #0x0]
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -136,7 +136,7 @@ FUN_020443A8: ; 0x020443A8
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldrh r1, [r6, #0x0]
bl GetPartyMonByIndex
mov r1, #0x7
@@ -185,7 +185,7 @@ FUN_02044414: ; 0x02044414
bl VarGet
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0x0
bl GetPartyCount
lsl r0, r0, #0x18
@@ -209,7 +209,7 @@ FUN_02044414: ; 0x02044414
bl MOD05_021ECF14
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
add r0, r4, #0x0
bl FreeToHeap
_02044494:
@@ -248,7 +248,7 @@ FUN_0204449C: ; 0x0204449C
add r7, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
add r2, r6, #0x0
add r3, r7, #0x0
@@ -287,7 +287,7 @@ FUN_020444F4: ; 0x020444F4
bl VarGet
add r4, r0, #0x0
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
mov r2, #0x0
@@ -357,7 +357,7 @@ FUN_02044598: ; 0x02044598
add r5, r0, #0x0
ldr r0, [sp, #0x4]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x18
lsr r7, r0, #0x18
@@ -369,7 +369,7 @@ FUN_02044598: ; 0x02044598
_020445E4:
ldr r0, [sp, #0x4]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -442,7 +442,7 @@ FUN_02044658: ; 0x02044658
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
bl FUN_0204A32C
@@ -473,7 +473,7 @@ FUN_0204469C: ; 0x0204469C
bl VarGet
str r0, [sp, #0x0]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x18
lsr r0, r0, #0x18
@@ -487,7 +487,7 @@ FUN_0204469C: ; 0x0204469C
bls _02044726
_020446EA:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -542,7 +542,7 @@ FUN_02044730: ; 0x02044730
bl VarGet
add r5, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r2, #0x0
@@ -584,7 +584,7 @@ FUN_0204478C: ; 0x0204478C
bl VarGet
add r6, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x18
lsr r0, r0, #0x18
@@ -595,7 +595,7 @@ FUN_0204478C: ; 0x0204478C
pop {r4-r6, pc}
_020447D2:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -638,7 +638,7 @@ FUN_02044800: ; 0x02044800
bl VarGet
str r0, [sp, #0x0]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x18
lsr r6, r0, #0x18
@@ -649,7 +649,7 @@ FUN_02044800: ; 0x02044800
beq _0204487E
_02044848:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -702,7 +702,7 @@ FUN_0204488C: ; 0x0204488C
bl VarGet
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x9
@@ -742,7 +742,7 @@ FUN_020448D4: ; 0x020448D4
bl FUN_02034824
add r7, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r1, [sp, #0x0]
bl GetPartyMonByIndex
mov r1, #0x9
@@ -832,7 +832,7 @@ FUN_020449A4: ; 0x020449A4
bl VarGet
add r5, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x9
@@ -888,7 +888,7 @@ FUN_02044A0C: ; 0x02044A0C
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
add r4, #0x13
@@ -950,7 +950,7 @@ FUN_02044A94: ; 0x02044A94
bl VarGet
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
add r4, r0, #0x0
@@ -981,7 +981,7 @@ FUN_02044B00: ; 0x02044B00
bl GetVarPointer
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
strh r0, [r5, #0x0]
mov r0, #0x0
@@ -1002,7 +1002,7 @@ FUN_02044B2C: ; 0x02044B2C
bl GetVarPointer
str r0, [sp, #0x0]
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
mov r5, #0x0
add r7, r0, #0x0
@@ -1011,7 +1011,7 @@ FUN_02044B2C: ; 0x02044B2C
ble _02044B7A
_02044B5A:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1054,7 +1054,7 @@ FUN_02044B84: ; 0x02044B84
bl VarGet
str r0, [sp, #0x0]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
mov r5, #0x0
add r4, r5, #0x0
@@ -1066,7 +1066,7 @@ _02044BC8:
cmp r5, r0
beq _02044BF8
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1113,7 +1113,7 @@ FUN_02044C0C: ; 0x02044C0C
bl FUN_02022510
str r0, [sp, #0x4]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
mov r5, #0x0
add r4, r5, #0x0
@@ -1122,7 +1122,7 @@ FUN_02044C0C: ; 0x02044C0C
ble _02044C76
_02044C44:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1167,7 +1167,7 @@ FUN_02044C88: ; 0x02044C88
bl GetVarPointer
str r0, [sp, #0x0]
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
mov r5, #0x0
add r7, r0, #0x0
@@ -1176,7 +1176,7 @@ FUN_02044C88: ; 0x02044C88
ble _02044CD6
_02044CB6:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1210,7 +1210,7 @@ FUN_02044CE0: ; 0x02044CE0
bl GetVarPointer
str r0, [sp, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x10
lsr r6, r0, #0x10
@@ -1221,7 +1221,7 @@ FUN_02044CE0: ; 0x02044CE0
mov r7, #0x99
_02044D12:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r1, r7, #0x0
@@ -1267,7 +1267,7 @@ FUN_02044D44: ; 0x02044D44
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
mov r1, #0x6f
@@ -1299,7 +1299,7 @@ FUN_02044D8C: ; 0x02044D8C
bl VarGet
add r4, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1380,7 +1380,7 @@ FUN_02044E34: ; 0x02044E34
bl VarGet
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
add r1, r4, #0x0
@@ -1418,7 +1418,7 @@ FUN_02044E78: ; 0x02044E78
bl VarGet
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
add r4, #0x36
@@ -1452,7 +1452,7 @@ FUN_02044ED8: ; 0x02044ED8
bl VarGet
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x6
@@ -1476,7 +1476,7 @@ FUN_02044F20: ; 0x02044F20
bl VarGet
add r5, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r2, #0x0
@@ -1511,7 +1511,7 @@ FUN_02044F58: ; 0x02044F58
bl VarGet
str r0, [sp, #0x0]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x18
lsr r6, r0, #0x18
@@ -1521,7 +1521,7 @@ FUN_02044F58: ; 0x02044F58
beq _02044FDE
_02044F9E:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
@@ -1578,7 +1578,7 @@ FUN_02044FE8: ; 0x02044FE8
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
mov r4, #0x0
@@ -1627,14 +1627,14 @@ FUN_0204505C: ; 0x0204505C
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x10
add r4, #0x80
lsr r6, r0, #0x10
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0xc]
mov r0, #0x0
str r0, [sp, #0x8]
@@ -1723,7 +1723,7 @@ FUN_02045104: ; 0x02045104
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
add r5, r0, #0x0
@@ -1766,7 +1766,7 @@ FUN_02045170: ; 0x02045170
strb r1, [r0, #0x0]
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
add r5, r0, #0x0
@@ -1799,14 +1799,14 @@ FUN_020451D0: ; 0x020451D0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x10
add r4, #0x80
lsr r6, r0, #0x10
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r7, r0, #0x0
mov r0, #0x0
str r0, [sp, #0x4]
diff --git a/arm9/asm/scrcmd_24.s b/arm9/asm/scrcmd_24.s
index 21d69bf9..4d73925a 100644
--- a/arm9/asm/scrcmd_24.s
+++ b/arm9/asm/scrcmd_24.s
@@ -100,7 +100,7 @@ FUN_02045E20: ; 0x02045E20
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
mov r1, #0x20
@@ -183,7 +183,7 @@ FUN_02045EE4: ; 0x02045EE4
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r4, r0, #0x0
@@ -220,7 +220,7 @@ FUN_02045F24: ; 0x02045F24
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
add r6, r0, #0x0
diff --git a/arm9/asm/scrcmd_3.s b/arm9/asm/scrcmd_3.s
index 94f3a29e..32cfa293 100644
--- a/arm9/asm/scrcmd_3.s
+++ b/arm9/asm/scrcmd_3.s
@@ -117,7 +117,7 @@ FUN_0203FF10: ; 0x0203FF10
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
bl GetPartyMonByIndex
str r0, [sp, #0x10]
diff --git a/arm9/asm/scrcmd_4.s b/arm9/asm/scrcmd_4.s
index 01a329ac..f74b9d43 100644
--- a/arm9/asm/scrcmd_4.s
+++ b/arm9/asm/scrcmd_4.s
@@ -90,7 +90,7 @@ FUN_02040748: ; 0x02040748
bl VarGet
add r5, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
add r2, r0, #0x0
@@ -313,7 +313,7 @@ FUN_0204091C: ; 0x0204091C
bl VarGet
add r5, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
add r2, r0, #0x0
@@ -941,7 +941,7 @@ FUN_02040E4C: ; 0x02040E4C
bl VarGet
add r4, r0, #0x0
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r1, [sp, #0x0]
bl GetPartyMonByIndex
add r4, #0x36
diff --git a/arm9/asm/scrcmd_5.s b/arm9/asm/scrcmd_5.s
index 7236adb1..e69b3a3e 100644
--- a/arm9/asm/scrcmd_5.s
+++ b/arm9/asm/scrcmd_5.s
@@ -74,7 +74,7 @@ FUN_020411C4: ; 0x020411C4
bl VarGet
str r0, [sp, #0x0]
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x10
lsr r6, r0, #0x10
@@ -85,7 +85,7 @@ FUN_020411C4: ; 0x020411C4
beq _02041286
_0204123C:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x4c
diff --git a/arm9/asm/scrcmd_7.s b/arm9/asm/scrcmd_7.s
index 217985cb..1a6a6584 100644
--- a/arm9/asm/scrcmd_7.s
+++ b/arm9/asm/scrcmd_7.s
@@ -590,7 +590,7 @@ FUN_02041B70: ; 0x02041B70
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_0204A248
strh r0, [r4, #0x0]
mov r0, #0x0
diff --git a/arm9/asm/scrcmd_9.s b/arm9/asm/scrcmd_9.s
index 5237dbff..944243af 100644
--- a/arm9/asm/scrcmd_9.s
+++ b/arm9/asm/scrcmd_9.s
@@ -242,7 +242,7 @@ FUN_02042000: ; 0x02042000
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
@@ -407,7 +407,7 @@ _02042170:
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
@@ -548,7 +548,7 @@ FUN_02042288: ; 0x02042288
push {r4, lr}
ldr r0, [r0, #0xc]
add r4, r1, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_0204A20C
bl FUN_020690E4
add r2, r0, #0x0
diff --git a/arm9/asm/unk_02025658.s b/arm9/asm/unk_02025658.s
index 4b843054..d2e91382 100644
--- a/arm9/asm/unk_02025658.s
+++ b/arm9/asm/unk_02025658.s
@@ -91,7 +91,7 @@ FUN_020256DC: ; 0x020256DC
bl InitSealsObject
add r0, r7, #0x0
strb r6, [r5, #0x7]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x0]
add r0, r7, #0x0
bl FUN_020238F4
diff --git a/arm9/asm/unk_02035068.s b/arm9/asm/unk_02035068.s
index 92b5c194..4366c8a2 100644
--- a/arm9/asm/unk_02035068.s
+++ b/arm9/asm/unk_02035068.s
@@ -1848,7 +1848,7 @@ _02035ECC:
bl AllocFromHeap
add r7, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
bl LoadPlayerDataAddress
@@ -1900,7 +1900,7 @@ _02035F4A:
bl AllocFromHeap
add r7, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
bl LoadPlayerDataAddress
@@ -1957,7 +1957,7 @@ _02035FD0:
bl AllocFromHeap
add r7, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
bl LoadPlayerDataAddress
@@ -2051,7 +2051,7 @@ _0203609C:
b _0203625E
_020360AC:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r6, #0x0
add r1, #0x22
ldrb r1, [r1, #0x0]
@@ -2399,7 +2399,7 @@ _0203638A:
add r5, r0, #0x0
bl memset
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r5, #0x0]
ldr r0, [r6, #0xc]
bl FUN_0206F158
@@ -2438,7 +2438,7 @@ _0203638A:
b _020364F8
_020363F6:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x4]
mov r0, #0x7f
lsl r0, r0, #0x2
@@ -2991,7 +2991,7 @@ FUN_0203684C: ; 0x0203684C
add r5, r0, #0x0
bl memset
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r5, #0x0]
ldr r0, [r6, #0xc]
bl FUN_0206F158
@@ -3280,7 +3280,7 @@ FUN_02036AB8: ; 0x02036AB8
b _02036B82
_02036B0E:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
add r2, r0, #0x0
@@ -3520,7 +3520,7 @@ FUN_02036CEC: ; 0x02036CEC
add r4, r0, #0x0
bl memset
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl FUN_0206F158
@@ -3650,7 +3650,7 @@ FUN_02036E08: ; 0x02036E08
lsl r2, r0, #0x10
bl FUN_0201681C
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldrb r1, [r5, #0x0]
str r0, [sp, #0x20]
bl GetPartyMonByIndex
diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s
index e275d614..a69aa9f1 100644
--- a/arm9/asm/unk_020377F0.s
+++ b/arm9/asm/unk_020377F0.s
@@ -397,7 +397,7 @@ FUN_0203797C: ; 0x0203797C
mov r2, #0x40
bl MIi_CpuClearFast
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl FUN_0206F158
@@ -723,7 +723,7 @@ FUN_02037C00: ; 0x02037C00
bl AllocFromHeap
add r4, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl LoadPlayerDataAddress
@@ -782,7 +782,7 @@ FUN_02037C7C: ; 0x02037C7C
bl LoadPlayerDataAddress
str r0, [r4, #0x4]
add r0, r5, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
mov r0, #0x1
strb r0, [r4, #0x11]
@@ -828,7 +828,7 @@ FUN_02037CF0: ; 0x02037CF0
add r4, r0, #0x0
bl memset
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl LoadPlayerDataAddress
@@ -1229,7 +1229,7 @@ FUN_0203800C: ; 0x0203800C
add r4, r0, #0x0
bl memset
add r0, r5, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
str r0, [r4, #0x0]
@@ -1378,7 +1378,7 @@ FUN_02038144: ; 0x02038144
bl FUN_020238F4
str r0, [r5, #0x4]
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r5, #0x8]
ldr r0, [r4, #0xc]
mov r1, #0x9
@@ -1904,7 +1904,7 @@ _02038580:
pop {r3-r5, pc}
_02038590:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r1, [r4, #0x4]
bl GetPartyMonByIndex
ldr r2, [r4, #0xc]
@@ -1971,7 +1971,7 @@ FUN_020385CC: ; 0x020385CC
b _02038660
_02038620:
ldr r0, [r7, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r1, [r4, #0x4]
bl GetPartyMonByIndex
mov r1, #0x6f
@@ -2297,7 +2297,7 @@ FUN_020388B4: ; 0x020388B4
sub sp, #0x10
add r4, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl MOD05_021ED49C
add r5, r0, #0x0
bne _020388CC
diff --git a/arm9/asm/unk_02046294.s b/arm9/asm/unk_02046294.s
deleted file mode 100644
index 32424277..00000000
--- a/arm9/asm/unk_02046294.s
+++ /dev/null
@@ -1,167 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .bss
-
- .global UNK_021C5A14
-UNK_021C5A14: ; 0x021C5A14
- .space 0x8
-
- .text
-
- thumb_func_start SavArray_Flags_sizeof
-SavArray_Flags_sizeof: ; 0x02046294
- mov r0, #0xeb
- lsl r0, r0, #0x2
- bx lr
- .balign 4
-
- thumb_func_start SavArray_Flags_memclear
-SavArray_Flags_memclear: ; 0x0204629C
- ldr r3, _020462A8 ; =memset
- mov r2, #0xeb
- mov r1, #0x0
- lsl r2, r2, #0x2
- bx r3
- nop
-_020462A8: .word memset
-
- thumb_func_start SavArray_Flags_get
-SavArray_Flags_get: ; 0x020462AC
- ldr r3, _020462B4 ; =SavArray_get
- mov r1, #0x4
- bx r3
- nop
-_020462B4: .word SavArray_get
-
- thumb_func_start CheckFlagInArray
-CheckFlagInArray: ; 0x020462B8
- push {r3-r5, lr}
- add r4, r1, #0x0
- bl GetFlagAddr
- cmp r0, #0x0
- beq _020462DE
- lsr r3, r4, #0x1f
- lsl r2, r4, #0x1d
- ldrb r5, [r0, #0x0]
- sub r2, r2, r3
- mov r1, #0x1d
- ror r2, r1
- mov r0, #0x1
- add r1, r3, r2
- add r2, r0, #0x0
- lsl r2, r1
- add r1, r5, #0x0
- tst r1, r2
- bne _020462E0
-_020462DE:
- mov r0, #0x0
-_020462E0:
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start SetFlagInArray
-SetFlagInArray: ; 0x020462E4
- push {r4-r6, lr}
- add r4, r1, #0x0
- bl GetFlagAddr
- cmp r0, #0x0
- beq _02046308
- lsr r5, r4, #0x1f
- lsl r3, r4, #0x1d
- sub r3, r3, r5
- mov r2, #0x1d
- ror r3, r2
- mov r6, #0x1
- add r2, r5, r3
- add r3, r6, #0x0
- ldrb r1, [r0, #0x0]
- lsl r3, r2
- orr r1, r3
- strb r1, [r0, #0x0]
-_02046308:
- pop {r4-r6, pc}
- .balign 4
-
- thumb_func_start ClearFlagInArray
-ClearFlagInArray: ; 0x0204630C
- push {r4-r6, lr}
- add r4, r1, #0x0
- bl GetFlagAddr
- cmp r0, #0x0
- beq _02046334
- lsr r5, r4, #0x1f
- lsl r3, r4, #0x1d
- sub r3, r3, r5
- mov r2, #0x1d
- ror r3, r2
- mov r6, #0x1
- add r2, r5, r3
- add r3, r6, #0x0
- lsl r3, r2
- mov r2, #0xff
- ldrb r1, [r0, #0x0]
- eor r2, r3
- and r1, r2
- strb r1, [r0, #0x0]
-_02046334:
- pop {r4-r6, pc}
- .balign 4
-
- thumb_func_start GetFlagAddr
-GetFlagAddr: ; 0x02046338
- push {r3-r5, lr}
- add r5, r0, #0x0
- cmp r1, #0x0
- bne _02046344
- mov r0, #0x0
- pop {r3-r5, pc}
-_02046344:
- mov r0, #0x1
- lsl r0, r0, #0xe
- cmp r1, r0
- bhs _02046364
- mov r0, #0x5b
- lsr r4, r1, #0x3
- lsl r0, r0, #0x2
- cmp r4, r0
- blt _0204635A
- bl ErrorHandling
-_0204635A:
- mov r0, #0x9
- lsl r0, r0, #0x6
- add r0, r5, r0
- add r0, r0, r4
- pop {r3-r5, pc}
-_02046364:
- sub r1, r1, r0
- asr r0, r1, #0x2
- lsr r0, r0, #0x1d
- add r0, r1, r0
- asr r4, r0, #0x3
- cmp r4, #0x8
- blt _02046376
- bl ErrorHandling
-_02046376:
- ldr r0, _0204637C ; =UNK_021C5A14
- add r0, r0, r4
- pop {r3-r5, pc}
- .balign 4
-_0204637C: .word UNK_021C5A14
-
- thumb_func_start GetVarAddr
-GetVarAddr: ; 0x02046380
- push {r3-r5, lr}
- add r5, r0, #0x0
- mov r0, #0x1
- lsl r0, r0, #0xe
- sub r4, r1, r0
- mov r0, #0x12
- lsl r0, r0, #0x4
- cmp r4, r0
- blt _02046396
- bl ErrorHandling
-_02046396:
- lsl r0, r4, #0x1
- add r0, r5, r0
- pop {r3-r5, pc}
diff --git a/arm9/asm/unk_0204653C.s b/arm9/asm/unk_0204653C.s
index d8e5f610..727dd5ea 100644
--- a/arm9/asm/unk_0204653C.s
+++ b/arm9/asm/unk_0204653C.s
@@ -202,7 +202,7 @@ _020466A4:
cmp r0, #0x0
beq _020466BC
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_02085140
_020466BC:
ldr r1, [r5, #0x10]
@@ -770,7 +770,7 @@ _02046B3E:
cmp r0, #0x0
beq _02046B56
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_02085140
_02046B56:
ldr r1, [r4, #0x10]
@@ -1018,7 +1018,7 @@ _02046D5C:
bl FUN_02022510
str r0, [sp, #0x8]
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r5, r0, #0x0
ldr r0, [sp, #0x8]
bl FUN_0206B334
diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s
index f8f5f1af..6d65edbc 100644
--- a/arm9/asm/unk_020476CC.s
+++ b/arm9/asm/unk_020476CC.s
@@ -75,7 +75,7 @@ _020476FA:
add r4, r7, #0x0
_02047748:
add r0, r5, #0x0
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
str r0, [r4, #0x4]
add r6, r6, #0x1
add r4, r4, #0x4
@@ -268,7 +268,7 @@ FUN_02047814: ; 0x02047814
bl CreateMon
ldr r0, [r4, #0x4]
add r1, r6, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
mov r0, #0x0
str r0, [sp, #0x0]
str r0, [sp, #0x4]
@@ -281,7 +281,7 @@ FUN_02047814: ; 0x02047814
bl CreateMon
ldr r0, [r4, #0x8]
add r1, r6, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
add r0, r6, #0x0
bl FreeToHeap
ldr r0, [r5, #0xc]
@@ -405,7 +405,7 @@ _02047A0C:
add r0, r5, r0
ldr r0, [r0, #0x4]
add r1, r6, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
cmp r0, #0x0
bne _02047A20
bl ErrorHandling
@@ -427,7 +427,7 @@ _02047A34:
add r1, r5, r1
ldr r1, [r1, #0x4]
add r0, r6, #0x0
- bl FUN_0206BAD0
+ bl CopyPlayerParty
pop {r4-r6, pc}
.balign 4
@@ -471,7 +471,7 @@ FUN_02047A78: ; 0x02047A78
bl FUN_020238F4
add r6, r0, #0x0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r7, r0, #0x0
ldr r0, [r4, #0xc]
bl FUN_0206F158
@@ -616,7 +616,7 @@ FUN_02047BC0: ; 0x02047BC0
add r4, r0, #0x0
ldr r0, [sp, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x14]
ldr r0, [sp, #0x0]
ldr r0, [r0, #0xc]
@@ -652,7 +652,7 @@ FUN_02047BC0: ; 0x02047BC0
bl GetPartyCount
add r1, r0, #0x0
ldr r0, [r6, #0x4]
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
ldr r0, [sp, #0x14]
mov r4, #0x0
bl GetPartyCount
@@ -848,7 +848,7 @@ _02047DD8:
str r0, [sp, #0x8]
ldr r0, [r5, #0x4]
add r1, r4, #0x0
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
mov r6, #0x0
cmp r4, #0x0
ble _02047E0E
@@ -995,7 +995,7 @@ FUN_02047F1C: ; 0x02047F1C
add r5, r0, #0x0
ldr r0, [r4, #0xc]
add r6, r2, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r2, r0, #0x0
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1013,7 +1013,7 @@ FUN_02047F38: ; 0x02047F38
bl FUN_020238F4
add r6, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r7, r0, #0x0
ldr r0, [r5, #0xc]
bl FUN_0206F158
@@ -1032,7 +1032,7 @@ FUN_02047F38: ; 0x02047F38
bl FUN_0202393C
ldr r0, [r4, #0x4]
add r1, r7, #0x0
- bl FUN_0206BAD0
+ bl CopyPlayerParty
mov r0, #0x42
lsl r0, r0, #0x2
ldr r0, [r4, r0]
@@ -1058,7 +1058,7 @@ FUN_02047FA4: ; 0x02047FA4
ldr r0, [r5, #0xc]
bl FUN_020238F4
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r0, [r5, #0xc]
bl FUN_0206F158
ldr r0, [r5, #0xc]
diff --git a/arm9/asm/unk_020484A8.s b/arm9/asm/unk_020484A8.s
index 09dafdbb..2a914271 100644
--- a/arm9/asm/unk_020484A8.s
+++ b/arm9/asm/unk_020484A8.s
@@ -41,7 +41,7 @@ _020484C6:
bl FUN_0202B03C
_020484CC:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0x0
add r0, sp, #0x4
bl FUN_020126B4
@@ -158,7 +158,7 @@ _020485AE:
b _02048688
_020485C0:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_02085140
bl FUN_02022830
ldr r0, [r6, #0xc]
@@ -285,7 +285,7 @@ FUN_02048694: ; 0x02048694
bl FUN_020238F4
str r0, [r5, #0x4]
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r5, #0x8]
ldr r0, [r4, #0xc]
bl FUN_02023918
@@ -308,7 +308,7 @@ FUN_02048694: ; 0x02048694
bl FUN_0204B328
_0204871E:
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_0204A25C
ldr r0, [sp, #0x8]
bl FUN_020377B0
diff --git a/arm9/asm/unk_0204A01C.s b/arm9/asm/unk_0204A01C.s
index 10664314..aadf8f4c 100644
--- a/arm9/asm/unk_0204A01C.s
+++ b/arm9/asm/unk_0204A01C.s
@@ -40,7 +40,7 @@ FUN_0204A048: ; 0x0204A048
bl FUN_020238F4
str r0, [sp, #0x14]
add r0, r6, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x18]
add r0, r5, #0x0
bl AllocMonZeroed
@@ -73,7 +73,7 @@ FUN_0204A048: ; 0x0204A048
bl SetMonData
ldr r0, [sp, #0x18]
add r1, r4, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
add r5, r0, #0x0
beq _0204A0BC
add r0, r6, #0x0
@@ -97,7 +97,7 @@ FUN_0204A0C8: ; 0x0204A0C8
bl FUN_020238F4
str r0, [sp, #0x8]
add r0, r4, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0x0
mov r0, #0x20
bl AllocMonZeroed
@@ -116,7 +116,7 @@ FUN_0204A0C8: ; 0x0204A0C8
bl MOD05_021ECF14
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
add r5, r0, #0x0
add r0, r4, #0x0
bl FreeToHeap
diff --git a/arm9/asm/unk_0204B0A0.s b/arm9/asm/unk_0204B0A0.s
index 4ac82dfe..1495eb48 100644
--- a/arm9/asm/unk_0204B0A0.s
+++ b/arm9/asm/unk_0204B0A0.s
@@ -147,7 +147,7 @@ FUN_0204B1DC: ; 0x0204B1DC
add r0, r6, #0x0
bl FUN_0202A988
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl FUN_02069D50
ldr r0, [r5, #0xc]
diff --git a/arm9/asm/unk_0204FBA8.s b/arm9/asm/unk_0204FBA8.s
index bb050ce7..43c89f86 100644
--- a/arm9/asm/unk_0204FBA8.s
+++ b/arm9/asm/unk_0204FBA8.s
@@ -1755,14 +1755,14 @@ FUN_02050968: ; 0x02050968
add r4, r1, #0x0
beq _02050986
mov r0, #0xb
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
ldr r1, _020509AC ; =UNK_021C5A6C
ldr r2, [r1, #0x0]
str r0, [r2, #0x44]
ldr r1, [r1, #0x0]
add r0, r4, #0x0
ldr r1, [r1, #0x44]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
_02050986:
cmp r5, #0x0
beq _02050994
diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s
index 34d0ee1c..dc21a9c4 100644
--- a/arm9/asm/unk_02050E48.s
+++ b/arm9/asm/unk_02050E48.s
@@ -94,7 +94,7 @@ FUN_02050ED4: ; 0x02050ED4
str r0, [r4, #0x14]
ldr r0, [r5, #0x24]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0x24]
ldr r0, [r0, #0xc]
@@ -627,7 +627,7 @@ _02051308:
_0205130E:
ldr r0, [r4, #0x24]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r2, r0, #0x0
mov r0, #0x0
str r0, [sp, #0x0]
@@ -1377,10 +1377,10 @@ _02051938:
bl AllocFromHeapAtEnd
str r0, [r4, #0x48]
mov r0, #0xb
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
mov r1, #0x3
str r0, [r4, #0x50]
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
add r0, r4, #0x0
mov r1, #0x5
add r0, #0x44
@@ -1464,7 +1464,7 @@ FUN_020519F0: ; 0x020519F0
ldr r0, [r7, #0x24]
add r5, r1, #0x0
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x0]
ldr r4, [r7, #0x4c]
bl FUN_020690C4
@@ -1611,7 +1611,7 @@ FUN_02051AF0: ; 0x02051AF0
add r6, r0, #0x0
ldr r0, [r5, #0x50]
mov r1, #0x3
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
mov r4, #0x0
_02051B04:
add r1, r4, #0x0
@@ -1619,7 +1619,7 @@ _02051B04:
mul r1, r6
ldr r0, [r5, #0x50]
add r1, r2, r1
- bl FUN_0206B900
+ bl AddMonToParty
add r4, r4, #0x1
cmp r4, #0x3
blt _02051B04
@@ -1650,7 +1650,7 @@ FUN_02051B1C: ; 0x02051B1C
bl MI_CpuCopy8
ldr r0, [r6, #0x50]
mov r1, #0x3
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
mov r5, #0x0
_02051B52:
add r1, r5, #0x0
@@ -1658,7 +1658,7 @@ _02051B52:
mul r1, r4
ldr r0, [r6, #0x50]
add r1, r2, r1
- bl FUN_0206B900
+ bl AddMonToParty
add r5, r5, #0x1
cmp r5, #0x3
blt _02051B52
diff --git a/arm9/asm/unk_02054C14.s b/arm9/asm/unk_02054C14.s
index cdf629de..c8085b1a 100644
--- a/arm9/asm/unk_02054C14.s
+++ b/arm9/asm/unk_02054C14.s
@@ -288,7 +288,7 @@ _02054DE8: .word 0x0000010D
FUN_02054DEC: ; 0x02054DEC
push {r3-r7, lr}
add r6, r0, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl GetPartyCount
lsl r0, r0, #0x10
lsr r5, r0, #0x10
@@ -297,7 +297,7 @@ FUN_02054DEC: ; 0x02054DEC
mov r7, #0x4c
_02054E02:
add r0, r6, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r1, r7, #0x0
@@ -324,7 +324,7 @@ FUN_02054E30: ; 0x02054E30
push {r3-r7, lr}
sub sp, #0x10
mov r7, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x0]
bl GetPartyCount
add r4, r0, #0x0
diff --git a/arm9/asm/unk_0205CE48.s b/arm9/asm/unk_0205CE48.s
index 68b5eb85..e8178beb 100644
--- a/arm9/asm/unk_0205CE48.s
+++ b/arm9/asm/unk_0205CE48.s
@@ -288,7 +288,7 @@ FUN_0205D024: ; 0x0205D024
add r4, r0, #0x0
bl memset
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl FUN_0206F158
@@ -771,7 +771,7 @@ FUN_0205D400: ; 0x0205D400
add r4, r0, #0x0
bl memset
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl FUN_0206F158
@@ -1502,7 +1502,7 @@ FUN_0205D9A8: ; 0x0205D9A8
add r4, r0, #0x0
bl memset
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
bl FUN_0206F158
diff --git a/arm9/asm/unk_0205FA2C.s b/arm9/asm/unk_0205FA2C.s
index 18304f39..2e8b043f 100644
--- a/arm9/asm/unk_0205FA2C.s
+++ b/arm9/asm/unk_0205FA2C.s
@@ -29,7 +29,7 @@ FUN_0205FA2C: ; 0x0205FA2C
bl LoadPlayerDataAddress
str r0, [r4, #0xc]
add r0, r6, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
add r0, r6, #0x0
bl FUN_0206F158
@@ -162,7 +162,7 @@ FUN_0205FB34: ; 0x0205FB34
bl LoadPlayerDataAddress
str r0, [r4, #0x4]
add r0, r5, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
add r0, r5, #0x0
bl FUN_0206BB28
diff --git a/arm9/asm/unk_02060CCC.s b/arm9/asm/unk_02060CCC.s
index 84bc9deb..e050902b 100644
--- a/arm9/asm/unk_02060CCC.s
+++ b/arm9/asm/unk_02060CCC.s
@@ -2172,7 +2172,7 @@ FUN_02061C5C: ; 0x02061C5C
add r5, r0, #0x0
ldr r0, [r5, #0xc]
add r4, r1, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_0204A20C
add r1, sp, #0x8
add r2, sp, #0x4
diff --git a/arm9/asm/unk_0206439C.s b/arm9/asm/unk_0206439C.s
index 76ea9f7f..4cc91f4f 100644
--- a/arm9/asm/unk_0206439C.s
+++ b/arm9/asm/unk_0206439C.s
@@ -12,7 +12,7 @@ FUN_0206439C: ; 0x0206439C
bl AllocFromHeapAtEnd
add r4, r0, #0x0
add r0, r6, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0x0
bl GetPartyMonByIndex
str r0, [r4, #0x0]
diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s
index 3f2c8545..51d345ca 100644
--- a/arm9/asm/unk_020653EC.s
+++ b/arm9/asm/unk_020653EC.s
@@ -1808,7 +1808,7 @@ FUN_020661F8: ; 0x020661F8
lsl r0, r0, #0x2
ldr r0, [r5, r0]
bl FUN_020377AC
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0x0
bl GetPartyMonByIndex
add r2, r0, #0x0
@@ -2377,7 +2377,7 @@ _02066676:
lsl r0, r0, #0x2
ldr r0, [r5, r0]
bl FUN_020377AC
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r4, #0x0]
mov r0, #0x5b
lsl r0, r0, #0x2
diff --git a/arm9/asm/unk_0206ABC4.s b/arm9/asm/unk_0206ABC4.s
index cd1030b7..ddce6b39 100644
--- a/arm9/asm/unk_0206ABC4.s
+++ b/arm9/asm/unk_0206ABC4.s
@@ -334,7 +334,7 @@ FUN_0206AE0C: ; 0x0206AE0C
add r0, r4, r6
ldr r0, [r0, #0x4]
mov r1, #0x6
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
add r0, r5, #0x0
mov r1, #0x60
bl AllocFromHeap
@@ -447,7 +447,7 @@ _0206AECE:
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x40]
ldr r0, [r0, #0x4]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [sp, #0x28]
add r0, r0, #0x6
str r0, [sp, #0x28]
@@ -543,7 +543,7 @@ _0206AFB0:
ldr r0, [sp, #0x2c]
ldr r1, [sp, #0x40]
ldr r0, [r0, #0x4]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [sp, #0x30]
add r0, #0xe
str r0, [sp, #0x30]
@@ -626,7 +626,7 @@ _0206B030:
ldr r0, [sp, #0x34]
ldr r1, [sp, #0x40]
ldr r0, [r0, #0x4]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [sp, #0x1c]
add r7, #0x8
add r0, r0, #0x1
@@ -725,7 +725,7 @@ _0206B120:
ldr r0, [sp, #0x38]
ldr r1, [sp, #0x40]
ldr r0, [r0, #0x4]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [sp, #0x3c]
add r0, #0x10
str r0, [sp, #0x3c]
diff --git a/arm9/asm/unk_0206BF90.s b/arm9/asm/unk_0206BF90.s
index bab339f2..5099fa54 100644
--- a/arm9/asm/unk_0206BF90.s
+++ b/arm9/asm/unk_0206BF90.s
@@ -83,10 +83,10 @@ _0206C00C: .word FUN_02023924
thumb_func_start FUN_0206C010
FUN_0206C010: ; 0x0206C010
- ldr r3, _0206C014 ; =FUN_0206B8A4
+ ldr r3, _0206C014 ; =SavArray_Party_sizeof
bx r3
.balign 4
-_0206C014: .word FUN_0206B8A4
+_0206C014: .word SavArray_Party_sizeof
thumb_func_start FUN_0206C018
FUN_0206C018: ; 0x0206C018
@@ -514,7 +514,7 @@ _0206C2E8:
add r4, #0x20
ldr r0, [r0, #0x4]
add r1, r4, #0x0
- bl FUN_0206BAD0
+ bl CopyPlayerParty
mov r0, #0x1
pop {r4, pc}
@@ -537,7 +537,7 @@ _0206C30C:
mov r0, #0x0
pop {r4, pc}
_0206C31A:
- bl FUN_0206B8A4
+ bl SavArray_Party_sizeof
add r4, #0x20
add r2, r0, #0x0
mov r0, #0x1b
@@ -788,7 +788,7 @@ _0206C4DA:
add r5, #0x20
ldr r0, [r0, #0x4]
add r1, r5, #0x0
- bl FUN_0206BAD0
+ bl CopyPlayerParty
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
@@ -817,7 +817,7 @@ _0206C508:
_0206C518:
cmp r4, #0x1
bne _0206C52E
- bl FUN_0206B8A4
+ bl SavArray_Party_sizeof
add r5, #0x20
add r2, r0, #0x0
mov r0, #0x1f
@@ -825,7 +825,7 @@ _0206C518:
bl FUN_02030A78
pop {r4-r6, pc}
_0206C52E:
- bl FUN_0206B8A4
+ bl SavArray_Party_sizeof
add r5, #0x20
add r2, r0, #0x0
mov r0, #0x20
diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s
index 2c651288..94b4217b 100644
--- a/arm9/asm/unk_0206C700.s
+++ b/arm9/asm/unk_0206C700.s
@@ -2195,7 +2195,7 @@ _0206D8EA:
bl CalcMonLevelAndStats
ldr r0, [r4, #0x24]
add r1, r5, #0x0
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [r4, #0x48]
add r1, r5, #0x0
bl FUN_02024AF0
diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s
index 4dc42878..cf11907a 100644
--- a/arm9/asm/unk_02073DA8.s
+++ b/arm9/asm/unk_02073DA8.s
@@ -1226,7 +1226,7 @@ _020747CE:
ldrb r1, [r4, r1]
ldrb r2, [r4, r2]
ldr r0, [r0, #0x0]
- bl FUN_0206BA38
+ bl SwapSlotsInParty
ldr r0, _02074840 ; =0x000005C8
mov r1, #0x1
ldr r0, [r5, r0]
diff --git a/arm9/asm/unk_02080C38.s b/arm9/asm/unk_02080C38.s
index 30769699..a1d4b4a4 100644
--- a/arm9/asm/unk_02080C38.s
+++ b/arm9/asm/unk_02080C38.s
@@ -106,7 +106,7 @@ _02080CA6:
b _02080DF2
_02080CB4:
ldr r0, [r6, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0x0
bl GetPartyMonByIndex
add r7, r0, #0x0
@@ -899,7 +899,7 @@ _020812B6:
mov r1, #0xb
bl FUN_02082ED0
mov r0, #0x14
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
mov r1, #0x56
lsl r1, r1, #0x2
str r0, [r4, r1]
diff --git a/arm9/asm/unk_02083B84.s b/arm9/asm/unk_02083B84.s
index a0e5d7ca..9049ff02 100644
--- a/arm9/asm/unk_02083B84.s
+++ b/arm9/asm/unk_02083B84.s
@@ -64,7 +64,7 @@ FUN_02083BAC: ; 0x02083BAC
ldr r0, [r4, #0x58]
add r0, r0, #0x1
str r0, [r4, #0x58]
- bl FUN_0206B8A4
+ bl SavArray_Party_sizeof
mov r1, #0x59
ldr r2, [r4, #0x58]
lsl r1, r1, #0x4
diff --git a/arm9/asm/unk_020859C0.s b/arm9/asm/unk_020859C0.s
index e810dde1..dc27000d 100644
--- a/arm9/asm/unk_020859C0.s
+++ b/arm9/asm/unk_020859C0.s
@@ -571,7 +571,7 @@ _02085DDC:
mov r1, #0x0
bl FUN_02085D8C
ldr r0, [r6, #0x10]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r7, #0x1c]
bl GetPartyCount
mov r4, #0x0
diff --git a/arm9/asm/unk_02087D00.s b/arm9/asm/unk_02087D00.s
index 644d8dc5..9fd82bab 100644
--- a/arm9/asm/unk_02087D00.s
+++ b/arm9/asm/unk_02087D00.s
@@ -63,7 +63,7 @@ FUN_02087D00: ; 0x02087D00
bl FUN_020238F4
str r0, [r7, #0xc]
add r0, r4, #0x0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [r7, #0x10]
add r0, r4, #0x0
bl FUN_0206F158
diff --git a/arm9/global.inc b/arm9/global.inc
index 966a1683..b5c4f6cc 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -3423,7 +3423,7 @@
.extern FUN_0204602C
.extern FUN_02046030
.extern SavArray_Flags_sizeof
-.extern SavArray_Flags_memclear
+.extern SavArray_Flags_init
.extern SavArray_Flags_get
.extern CheckFlagInArray
.extern SetFlagInArray
@@ -4879,19 +4879,19 @@
.extern FUN_0206B898
.extern FUN_0206B89C
.extern FUN_0206B8A0
-.extern FUN_0206B8A4
-.extern FUN_0206B8AC
-.extern FUN_0206B8C0
-.extern FUN_0206B8CC
-.extern FUN_0206B900
-.extern FUN_0206B938
+.extern SavArray_Party_sizeof
+.extern SavArray_Party_alloc
+.extern SavArray_Party_init
+.extern InitPartyWithMaxSize
+.extern AddMonToParty
+.extern RemoveMonFromParty
.extern GetPartyCount
.extern GetPartyMonByIndex
-.extern FUN_0206B9DC
-.extern FUN_0206BA38
-.extern FUN_0206BAD0
+.extern ReplacePartySlotWithMon
+.extern SwapSlotsInParty
+.extern CopyPlayerParty
.extern PartyHasMon
-.extern FUN_0206BB1C
+.extern SavArray_PlayerParty_get
.extern FUN_0206BB28
.extern FUN_0206BB34
.extern FUN_0206BB48
diff --git a/arm9/modules/05/asm/mod05_021D80E8.s b/arm9/modules/05/asm/mod05_021D80E8.s
index 14425f2d..15241646 100644
--- a/arm9/modules/05/asm/mod05_021D80E8.s
+++ b/arm9/modules/05/asm/mod05_021D80E8.s
@@ -318,7 +318,7 @@ _021D8342:
lsr r0, r0, #0x1f
bne _021D8384
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
bl FUN_0204A248
add r6, r0, #0
ldr r0, [r4, #0xc]
@@ -385,7 +385,7 @@ _021D83C2:
orr r6, r0
_021D83E4:
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0x7f
bl FUN_0204A138
cmp r0, #0xff
@@ -1471,7 +1471,7 @@ _021D8C88:
cmp r0, #0
beq _021D8CE0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0x39
bl FUN_0204A138
cmp r0, #0xff
@@ -1762,7 +1762,7 @@ MOD05_021D8F38: ; 0x021D8F38
push {r3, r4, r5, lr}
add r4, r0, #0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r5, r0, #0
ldr r0, [r4, #0xc]
bl FUN_02023D58
@@ -1842,7 +1842,7 @@ MOD05_021D8FD0: ; 0x021D8FD0
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0
ldr r0, [r4, #0x1c]
ldr r0, [r0]
@@ -1874,7 +1874,7 @@ MOD05_021D9010: ; 0x021D9010
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r4, r0, #0
ldr r0, [r5, #0xc]
bl FUN_02034E30
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index 1172f733..6d2dcb07 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -9333,7 +9333,7 @@ MOD05_021E72E8: ; 0x021E72E8
push {r4, lr}
ldr r0, [r0, #0xc]
add r4, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0
bl GetPartyMonByIndex
pop {r4, pc}
@@ -19634,7 +19634,7 @@ _021EC544:
bl FUN_02023CA0
ldr r1, [sp]
add r0, r6, #0
- bl FUN_0206B938
+ bl RemoveMonFromParty
ldr r1, _021EC578 ; =0x000001B9
add r0, r6, #0
bl PartyHasMon
@@ -19828,7 +19828,7 @@ _021EC6E0:
_021EC6FA:
ldr r0, [sp]
add r1, r4, #0
- bl FUN_0206B900
+ bl AddMonToParty
add r0, r5, #0
bl ZeroBoxMonData
add r0, r6, #0
@@ -21149,7 +21149,7 @@ _021ED168:
bl SetMonData
ldr r0, [sp, #4]
add r1, r4, #0
- bl FUN_0206B900
+ bl AddMonToParty
add r0, r5, #0
bl MOD05_021ECD64
add r0, r4, #0
@@ -34755,7 +34755,7 @@ MOD05_021F3A18: ; 0x021F3A18
add r4, r0, #0
ldr r0, [r4, #0xc]
add r5, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0
bl GetPartyMonByIndex
mov r1, #5
@@ -34824,7 +34824,7 @@ MOD05_021F3AB4: ; 0x021F3AB4
add r4, r0, #0
ldr r0, [r4, #0xc]
add r5, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r5, #0
bl GetPartyMonByIndex
bl MOD05_021F38CC
@@ -34920,7 +34920,7 @@ MOD05_021F3B7C: ; 0x021F3B7C
ldr r0, [r5, #0xc]
add r4, r3, #0
add r7, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r4, #0
bl GetPartyMonByIndex
mov r1, #5
diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s
index 561761c1..cc2792bc 100644
--- a/arm9/modules/06/asm/module_06.s
+++ b/arm9/modules/06/asm/module_06.s
@@ -4844,7 +4844,7 @@ MOD06_0223BA04: ; 0x0223BA04
pop {r4, r5, r6, r7, pc}
_0223BA42:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r7, r0, #0
add r0, r5, #0
bl FUN_02034CE0
@@ -5193,7 +5193,7 @@ MOD06_0223BD14: ; 0x0223BD14
_0223BD2E:
ldr r0, [sp, #8]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0
bl GetPartyMonByIndex
str r0, [sp, #0x14]
@@ -5370,7 +5370,7 @@ MOD06_0223BE70: ; 0x0223BE70
pop {r4, r5, r6, r7, pc}
_0223BEA4:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0
add r0, r5, #0
bl FUN_02034CE0
@@ -5626,7 +5626,7 @@ MOD06_0223C08C: ; 0x0223C08C
pop {r4, r5, r6, r7, pc}
_0223C0CE:
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r6, r0, #0
add r0, r5, #0
bl FUN_02034CE0
@@ -7181,7 +7181,7 @@ MOD06_0223CCDC: ; 0x0223CCDC
bl MOD05_021F51D0
str r0, [sp, #8]
ldr r0, [r5, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0
bl GetPartyMonByIndex
str r0, [sp, #0xc]
@@ -7257,7 +7257,7 @@ MOD06_0223CD7C: ; 0x0223CD7C
ldr r0, [r5, #0xc]
add r7, r1, #0
add r6, r3, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0
bl GetPartyMonByIndex
add r4, r0, #0
@@ -7702,7 +7702,7 @@ MOD06_0223D044: ; 0x0223D044
bl SetMonData
ldr r0, [r6, #8]
add r1, r4, #0
- bl FUN_0206B900
+ bl AddMonToParty
cmp r0, #0
bne _0223D0D8
bl ErrorHandling
@@ -7911,7 +7911,7 @@ _0223D25C:
lsl r0, r0, #2
add r0, r7, r0
ldr r0, [r0, #4]
- bl FUN_0206B900
+ bl AddMonToParty
add sp, #0xc
pop {r4, r5, r6, r7, pc}
nop
@@ -15300,7 +15300,7 @@ MOD06_02240F40: ; 0x02240F40
add r4, r0, #0
ldr r0, [r4, #0x10]
ldr r0, [r0, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r0, #0
ldr r0, [r4, #0x10]
ldr r2, [r4, #0x6c]
@@ -19798,7 +19798,7 @@ MOD06_022432E4: ; 0x022432E4
sub sp, #0x28
str r0, [sp]
add r0, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #4]
bl GetPartyCount
lsl r0, r0, #0x18
@@ -20327,7 +20327,7 @@ _02243706:
pop {r4, r5, r6, r7, pc}
_02243716:
add r0, r2, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #8]
ldrb r0, [r5, #0xe]
mov r4, #0
@@ -20383,7 +20383,7 @@ MOD06_02243780: ; 0x02243780
sub sp, #0x1c
str r0, [sp]
add r0, r1, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #4]
ldr r0, [sp]
mov r5, #0
@@ -20638,7 +20638,7 @@ MOD06_02243938: ; 0x02243938
bne _02243980
_0224394A:
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldrb r1, [r5, #0xf]
cmp r1, #0
bne _0224396C
@@ -21506,7 +21506,7 @@ MOD06_02243FDC: ; 0x02243FDC
mov r2, #1
add r1, sp, #8
strb r2, [r1]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp]
mov r7, #0
ldrb r0, [r5, #0xe]
@@ -21729,7 +21729,7 @@ MOD06_02244190: ; 0x02244190
str r0, [sp, #4]
bl MI_CpuFill8
add r0, r4, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r5, [sp, #4]
add r7, r0, #0
mov r4, #0
@@ -22189,7 +22189,7 @@ MOD06_02244558: ; 0x02244558
bl FUN_020476CC
add r7, r0, #0
ldr r0, [r4, #0xc]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #4]
add r0, r7, #0
add r1, r4, #0
@@ -22206,7 +22206,7 @@ MOD06_02244558: ; 0x02244558
add r4, r0, #0
ldrb r1, [r5, #0xe]
ldr r0, [r7, #4]
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
ldrb r0, [r5, #0xe]
mov r6, #0
cmp r0, #0
@@ -22401,7 +22401,7 @@ MOD06_022446FC: ; 0x022446FC
ldr r1, _02244750 ; =0x0000083E
strh r0, [r6, r1]
add r0, r4, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r7, r0, #0
mov r4, #0
add r5, r6, #0
@@ -23257,7 +23257,7 @@ _02244D8A:
bl MOD06_02244388
ldr r0, [r7, #4]
add r1, r4, #0
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [sp]
add r6, r6, #1
add r5, #0x38
@@ -31059,10 +31059,10 @@ MOD06_022488FC: ; 0x022488FC
ldr r0, [r5, #0xc]
add r4, r1, #0
add r6, r2, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
ldr r2, [r4, #4]
add r1, r6, #0
- bl FUN_0206B9DC
+ bl ReplacePartySlotWithMon
ldr r0, [r5, #0xc]
ldr r1, [r4, #4]
bl FUN_0202C144
@@ -31077,7 +31077,7 @@ MOD06_0224891C: ; 0x0224891C
add r7, r2, #0
add r5, r1, #0
add r4, r3, #0
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r7, #0
bl GetPartyMonByIndex
mov r1, #0xa0
diff --git a/arm9/modules/11/asm/module_11_thumb1.s b/arm9/modules/11/asm/module_11_thumb1.s
index ed9b4dc3..3da91ac5 100644
--- a/arm9/modules/11/asm/module_11_thumb1.s
+++ b/arm9/modules/11/asm/module_11_thumb1.s
@@ -1153,7 +1153,7 @@ _0222DFE4:
_0222DFEC:
ldr r0, [r5, #0x68]
ldr r1, [r6, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [r5, #0x68]
bl FreeToHeap
add r1, r6, #0
@@ -1945,7 +1945,7 @@ _0222E69E:
mov r7, #5
_0222E6D2:
add r0, r7, #0
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
str r0, [r5, #0x68]
add r6, r6, #1
add r5, r5, #4
@@ -1997,7 +1997,7 @@ _0222E734:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2102,7 +2102,7 @@ _0222E810:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2212,7 +2212,7 @@ _0222E8FE:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2342,7 +2342,7 @@ _0222EA0C:
ldr r0, [sp, #4]
ldr r1, [r7, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [r7, #0x68]
mov r5, #0
bl GetPartyCount
@@ -2428,7 +2428,7 @@ _0222EAC0:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2555,7 +2555,7 @@ _0222EBC6:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2664,7 +2664,7 @@ _0222ECA6:
ldr r0, [sp, #4]
ldr r1, [r5, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [sp, #4]
add r6, r6, #1
add r0, r0, #4
@@ -2797,7 +2797,7 @@ _0222EDBC:
ldr r0, [sp, #4]
ldr r1, [r7, #0x68]
ldr r0, [r0, #4]
- bl FUN_0206BAD0
+ bl CopyPlayerParty
ldr r0, [r7, #0x68]
mov r5, #0
bl GetPartyCount
diff --git a/arm9/modules/11/asm/module_11_thumb2.s b/arm9/modules/11/asm/module_11_thumb2.s
index 92756469..1dae40e9 100644
--- a/arm9/modules/11/asm/module_11_thumb2.s
+++ b/arm9/modules/11/asm/module_11_thumb2.s
@@ -25766,7 +25766,7 @@ _0223BC8A:
bl MOD11_022564A8
ldr r0, [sp, #0x28]
add r1, r6, #0
- bl FUN_0206B900
+ bl AddMonToParty
cmp r0, #1
bne _0223BD1E
ldr r0, [r4, #0x28]
@@ -63816,7 +63816,7 @@ MOD11_0224E130: ; 0x0224E130
ldr r1, [r4, #8]
str r0, [r1, #4]
mov r0, #5
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
ldr r1, [r4, #8]
mov r6, #0
ldr r1, [r1, #4]
@@ -70358,7 +70358,7 @@ _02251662:
mov r1, #6
ldr r0, [r0, #4]
ldr r0, [r0]
- bl FUN_0206B8CC
+ bl InitPartyWithMaxSize
ldr r0, [sp, #0x14]
mov r6, #0
bl GetPartyCount
@@ -70376,7 +70376,7 @@ _02251680:
ldr r0, [r4, #8]
ldr r0, [r0, #4]
ldr r0, [r0]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r1, [r4, #8]
ldrb r0, [r5, #0x18]
ldr r1, [r1, #4]
@@ -71710,7 +71710,7 @@ _02252146:
bl AllocFromHeap
str r0, [r4, #4]
mov r0, #5
- bl FUN_0206B8AC
+ bl SavArray_Party_alloc
ldr r1, [r4, #4]
str r0, [r1]
ldr r0, [r4]
@@ -71753,7 +71753,7 @@ _022521AE:
ldr r0, [r4, #4]
add r1, r6, #0
ldr r0, [r0]
- bl FUN_0206B900
+ bl AddMonToParty
add r5, r5, #1
cmp r5, #6
blt _022521AE
@@ -71904,7 +71904,7 @@ _022522E2:
add r1, r0, #0
ldr r0, [r4, #4]
ldr r0, [r0]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [r4, #4]
ldrb r1, [r6, #0x1c]
add r0, r0, r5
diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s
index c8d6e847..0958064d 100644
--- a/arm9/modules/14/asm/module_14.s
+++ b/arm9/modules/14/asm/module_14.s
@@ -7527,7 +7527,7 @@ MOD14_021DB220: ; 0x021DB220
sub r0, r1, #4
str r2, [r5, r0]
ldr r0, [r4]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0x49
lsl r1, r1, #2
str r0, [r5, r1]
@@ -8661,7 +8661,7 @@ _021DBA98:
lsl r0, r0, #2
ldrsb r1, [r5, r1]
ldr r0, [r7, r0]
- bl FUN_0206B938
+ bl RemoveMonFromParty
mov r0, #1
_021DBAB6:
strb r0, [r4, #0xb]
@@ -8878,7 +8878,7 @@ _021DBC42:
lsl r0, r0, #2
ldr r0, [r5, r0]
ldr r1, [r4]
- bl FUN_0206B900
+ bl AddMonToParty
b _021DBC70
_021DBC56:
mov r1, #0x1a
@@ -8891,7 +8891,7 @@ _021DBC56:
ldr r0, [r5, r1]
add r1, #0x7c
ldr r1, [r5, r1]
- bl FUN_0206B900
+ bl AddMonToParty
_021DBC70:
mov r0, #0x49
lsl r0, r0, #2
@@ -9056,7 +9056,7 @@ _021DBDB0:
ldrsb r1, [r1, r2]
add r3, #0x7c
ldr r2, [r5, r3]
- bl FUN_0206B9DC
+ bl ReplacePartySlotWithMon
mov r0, #1
strb r0, [r4, #0xb]
_021DBDC8:
@@ -9108,7 +9108,7 @@ MOD14_021DBE00: ; 0x021DBE00
lsl r0, r0, #2
ldrsb r1, [r4, r1]
ldr r0, [r5, r0]
- bl FUN_0206B938
+ bl RemoveMonFromParty
add r0, r5, #0
bl MOD14_021DB934
mov r0, #1
@@ -9154,7 +9154,7 @@ _021DBE70:
lsl r0, r0, #2
ldrsb r1, [r4, r1]
ldr r0, [r5, r0]
- bl FUN_0206B938
+ bl RemoveMonFromParty
_021DBE7E:
add r0, r5, #0
bl MOD14_021DB934
diff --git a/arm9/modules/27/asm/module_27.s b/arm9/modules/27/asm/module_27.s
index 3ac786b0..9fa91fb4 100644
--- a/arm9/modules/27/asm/module_27.s
+++ b/arm9/modules/27/asm/module_27.s
@@ -56,7 +56,7 @@ MOD27_0225489C: ; 0x0225489C
strb r0, [r5, #2]
add r0, r4, #0
bl MOD20_02252C40
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r0, #0
add r0, r5, #4
bl MOD27_02254A48
@@ -223,7 +223,7 @@ _0225499C:
blo _02254A02
ldr r0, [r4, #0x78]
bl MOD20_02252C40
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
add r1, r0, #0
add r0, r4, #4
bl MOD27_02254A48
diff --git a/arm9/modules/28/asm/module_28.s b/arm9/modules/28/asm/module_28.s
index 16acbd62..618309d1 100644
--- a/arm9/modules/28/asm/module_28.s
+++ b/arm9/modules/28/asm/module_28.s
@@ -57,7 +57,7 @@ MOD28_0225489C: ; 0x0225489C
strb r0, [r7, #2]
str r4, [r7, #0x60]
bl FUN_020225F8
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
mov r1, #0
str r0, [sp, #4]
str r1, [sp]
diff --git a/arm9/modules/39/asm/module_39.s b/arm9/modules/39/asm/module_39.s
index 6ee54fe8..a850e16a 100644
--- a/arm9/modules/39/asm/module_39.s
+++ b/arm9/modules/39/asm/module_39.s
@@ -49,7 +49,7 @@ MOD39_0225489C: ; 0x0225489C
str r1, [sp, #8]
str r2, [sp, #0xc]
bl MOD20_02252C40
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0x10]
bl GetPartyCount
ldr r1, [sp, #4]
diff --git a/arm9/modules/56/asm/module_56.s b/arm9/modules/56/asm/module_56.s
index 8fb23c76..3f445873 100644
--- a/arm9/modules/56/asm/module_56.s
+++ b/arm9/modules/56/asm/module_56.s
@@ -210,7 +210,7 @@ MOD56_02211F88: ; 0x02211F88
push {r3, r4, r5, r6, r7, lr}
add r0, #0xc4
ldr r0, [r0]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp]
bl GetPartyCount
mov r5, #0
@@ -1984,7 +1984,7 @@ MOD56_02212E0C: ; 0x02212E0C
add r0, r5, #0
add r0, #0xc4
ldr r0, [r0]
- bl FUN_0206BB1C
+ bl SavArray_PlayerParty_get
str r0, [sp, #0xc]
add r0, r5, #0
add r0, #0xc4
diff --git a/arm9/modules/71/asm/module_71.s b/arm9/modules/71/asm/module_71.s
index a409c3fb..b4e8e297 100644
--- a/arm9/modules/71/asm/module_71.s
+++ b/arm9/modules/71/asm/module_71.s
@@ -2143,7 +2143,7 @@ MOD71_0222E76C: ; 0x0222E76C
str r0, [r5, r1]
ldr r0, [r4, #0x10]
str r0, [r5, #4]
- bl FUN_0206B8A4
+ bl SavArray_Party_sizeof
add r1, r0, #0
mov r0, #0x1a
bl AllocFromHeap
@@ -2151,8 +2151,8 @@ MOD71_0222E76C: ; 0x0222E76C
str r0, [r5, r1]
ldr r0, [r5, r1]
mov r1, #6
- bl FUN_0206B8CC
- bl FUN_0206B8A4
+ bl InitPartyWithMaxSize
+ bl SavArray_Party_sizeof
add r2, r0, #0
ldr r0, _0222E844 ; =0x0000221C
mov r1, #0xff
diff --git a/arm9/modules/80/asm/module_80.s b/arm9/modules/80/asm/module_80.s
index 63810310..8e97f574 100644
--- a/arm9/modules/80/asm/module_80.s
+++ b/arm9/modules/80/asm/module_80.s
@@ -16117,7 +16117,7 @@ _02235590:
add r1, #0xba
ldrh r1, [r1]
ldr r0, [r0, #8]
- bl FUN_0206B938
+ bl RemoveMonFromParty
ldr r0, [r5]
ldr r1, _022355EC ; =0x000001B9
ldr r0, [r0, #8]
@@ -16186,7 +16186,7 @@ _02235640:
ldr r0, [r5]
add r1, r4, #0
ldr r0, [r0, #8]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [r5]
ldr r0, [r0, #8]
bl GetPartyCount
@@ -16265,7 +16265,7 @@ _022356D2:
ldr r0, [r5]
add r1, r4, #0
ldr r0, [r0, #8]
- bl FUN_0206B900
+ bl AddMonToParty
ldr r0, [r5]
ldr r0, [r0, #8]
bl GetPartyCount
diff --git a/arm9/src/event_data.c b/arm9/src/event_data.c
new file mode 100644
index 00000000..cf33b201
--- /dev/null
+++ b/arm9/src/event_data.c
@@ -0,0 +1,78 @@
+#include "global.h"
+#include "save_block_2.h"
+#include "event_data.h"
+
+#pragma thumb on
+
+u8 UNK_021C5A14[8];
+
+u8 * GetFlagAddr(struct ScriptState * state, u16 flag_id);
+
+u32 SavArray_Flags_sizeof(void)
+{
+ return sizeof(struct ScriptState);
+}
+
+void SavArray_Flags_init(struct ScriptState * state)
+{
+ memset(state, 0, sizeof(struct ScriptState));
+}
+
+struct ScriptState * SavArray_Flags_get(struct SaveBlock2 * sav2)
+{
+ return (struct ScriptState *)SavArray_get(sav2, 4);
+}
+
+BOOL CheckFlagInArray(struct ScriptState * state, u16 flag_id)
+{
+ u8 * ptr = GetFlagAddr(state, flag_id);
+ if (ptr != NULL)
+ {
+ int mask = 1 << (flag_id % 8);
+ if (*ptr & mask)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void SetFlagInArray(struct ScriptState * state, u16 flag_id)
+{
+ u8 * ptr = GetFlagAddr(state, flag_id);
+ if (ptr != NULL)
+ {
+ int mask = 1 << (flag_id % 8);
+ *ptr |= mask;
+ }
+}
+
+void ClearFlagInArray(struct ScriptState * state, u16 flag_id)
+{
+ u8 * ptr = GetFlagAddr(state, flag_id);
+ if (ptr != NULL)
+ {
+ int mask = 1 << (flag_id % 8);
+ *ptr &= 0xFF ^ mask;
+ }
+}
+
+u8 * GetFlagAddr(struct ScriptState * state, u16 flag_id)
+{
+ if (flag_id == 0)
+ return 0;
+ if (flag_id < 0x4000)
+ {
+ GF_ASSERT((flag_id / 8) < 364);
+ return &state->flags[flag_id / 8];
+ }
+ else
+ {
+ GF_ASSERT(((flag_id - 0x4000) / 8) < 8);
+ return &UNK_021C5A14[(flag_id - 0x4000) / 8];
+ }
+}
+
+u16 * GetVarAddr(struct ScriptState * state, u16 var_id)
+{
+ GF_ASSERT((var_id - 0x4000) < 288);
+ return &state->vars[var_id - 0x4000];
+}
diff --git a/arm9/src/party.c b/arm9/src/party.c
index e0eb2a93..1b9c505f 100644
--- a/arm9/src/party.c
+++ b/arm9/src/party.c
@@ -1,42 +1,41 @@
#include "global.h"
#include "party.h"
#include "heap.h"
-#include "proto.h"
#pragma thumb on
-void FUN_0206B8C0(struct PlayerParty * party);
-void FUN_0206B8CC(struct PlayerParty * party, int count);
+void SavArray_Party_init(struct PlayerParty * party);
+void InitPartyWithMaxSize(struct PlayerParty * party, int count);
-u32 FUN_0206B8A4(void)
+u32 SavArray_Party_sizeof(void)
{
return sizeof(struct PlayerParty);
}
-struct PlayerParty * FUN_0206B8AC(u32 heap_id)
+struct PlayerParty * SavArray_Party_alloc(u32 heap_id)
{
struct PlayerParty * ret = (struct PlayerParty *)AllocFromHeap(heap_id, sizeof(struct PlayerParty));
- FUN_0206B8C0(ret);
+ SavArray_Party_init(ret);
return ret;
}
-void FUN_0206B8C0(struct PlayerParty * party)
+void SavArray_Party_init(struct PlayerParty * party)
{
- FUN_0206B8CC(party, PARTY_SIZE);
+ InitPartyWithMaxSize(party, PARTY_SIZE);
}
-void FUN_0206B8CC(struct PlayerParty * party, int count)
+void InitPartyWithMaxSize(struct PlayerParty * party, int count)
{
int i;
GF_ASSERT(count <= PARTY_SIZE);
memset(party, 0, sizeof(struct PlayerParty));
party->curCount = 0;
party->maxCount = count;
- for (i = 0; i < 6; i++)
+ for (i = 0; i < PARTY_SIZE; i++)
ZeroMonData(&party->mons[i]);
}
-BOOL FUN_0206B900(struct PlayerParty * party, struct Pokemon * pokemon)
+BOOL AddMonToParty(struct PlayerParty * party, struct Pokemon * pokemon)
{
if (party->curCount >= party->maxCount)
return FALSE;
@@ -45,7 +44,7 @@ BOOL FUN_0206B900(struct PlayerParty * party, struct Pokemon * pokemon)
return TRUE;
}
-BOOL FUN_0206B938(struct PlayerParty * party, int pos)
+BOOL RemoveMonFromParty(struct PlayerParty * party, int pos)
{
int i;
@@ -77,7 +76,7 @@ struct Pokemon * GetPartyMonByIndex(struct PlayerParty * party, int pos)
return &party->mons[pos];
}
-void FUN_0206B9DC(struct PlayerParty * party, int pos, struct Pokemon * pokemon)
+void ReplacePartySlotWithMon(struct PlayerParty * party, int pos, struct Pokemon * pokemon)
{
int r2;
GF_ASSERT(pos >= 0);
@@ -88,7 +87,7 @@ void FUN_0206B9DC(struct PlayerParty * party, int pos, struct Pokemon * pokemon)
party->curCount += r2;
}
-BOOL FUN_0206BA38(struct PlayerParty * party, int pos1, int pos2)
+BOOL SwapSlotsInParty(struct PlayerParty * party, int pos1, int pos2)
{
struct Pokemon * buffer;
GF_ASSERT(pos1 >= 0);
@@ -105,7 +104,7 @@ BOOL FUN_0206BA38(struct PlayerParty * party, int pos1, int pos2)
return FALSE;
}
-void FUN_0206BAD0(struct PlayerParty * src, struct PlayerParty * dest)
+void CopyPlayerParty(struct PlayerParty * src, struct PlayerParty * dest)
{
*dest = *src;
}
@@ -121,7 +120,7 @@ BOOL PartyHasMon(struct PlayerParty * party, u16 species)
return i != party->curCount;
}
-struct PlayerParty * FUN_0206BB1C(void * ptr)
+struct PlayerParty * SavArray_PlayerParty_get(struct SaveBlock2 * ptr)
{
return (struct PlayerParty *)SavArray_get(ptr, 2);
}
diff --git a/include/event_data.h b/include/event_data.h
new file mode 100644
index 00000000..e1d46348
--- /dev/null
+++ b/include/event_data.h
@@ -0,0 +1,19 @@
+#ifndef GUARD_SCRIPT_STATE_H
+#define GUARD_SCRIPT_STATE_H
+
+struct ScriptState
+{
+ u16 vars[288];
+ u8 flags[364];
+};
+
+u32 SavArray_Flags_sizeof(void);
+void SavArray_Flags_init(struct ScriptState * state);
+struct ScriptState * SavArray_Flags_get(struct SaveBlock2 * sav2);
+BOOL CheckFlagInArray(struct ScriptState * state, u16 flag_id);
+void SetFlagInArray(struct ScriptState * state, u16 flag_id);
+void ClearFlagInArray(struct ScriptState * state, u16 flag_id);
+u8 * GetFlagAddr(struct ScriptState * state, u16 flag_id);
+u16 * GetVarAddr(struct ScriptState * state, u16 var_id);
+
+#endif //GUARD_SCRIPT_STATE_H
diff --git a/include/party.h b/include/party.h
index eca62239..2d06705c 100644
--- a/include/party.h
+++ b/include/party.h
@@ -2,19 +2,20 @@
#define POKEDIAMOND_PARTY_H
#include "pokemon.h"
+#include "save_block_2.h"
BOOL PartyHasMon(struct PlayerParty * party_p, u16 species);
int GetPartyCount(struct PlayerParty * party_p);
struct Pokemon * GetPartyMonByIndex(struct PlayerParty * party_p, int idx);
-u32 FUN_0206B8A4(void);
-struct PlayerParty * FUN_0206B8AC(u32 heap_id);
-void FUN_0206B8C0(struct PlayerParty * party);
-void FUN_0206B8CC(struct PlayerParty * party, int count);
-BOOL FUN_0206B900(struct PlayerParty * party, struct Pokemon * pokemon);
-BOOL FUN_0206B938(struct PlayerParty * party, int pos);
-void FUN_0206B9DC(struct PlayerParty * party, int pos, struct Pokemon * pokemon);
-BOOL FUN_0206BA38(struct PlayerParty * party, int pos1, int pos2);
-void FUN_0206BAD0(struct PlayerParty * src, struct PlayerParty * dest);
-struct PlayerParty * FUN_0206BB1C(void * ptr);
+u32 SavArray_Party_sizeof(void);
+struct PlayerParty * SavArray_Party_alloc(u32 heap_id);
+void SavArray_Party_init(struct PlayerParty * party);
+void InitPartyWithMaxSize(struct PlayerParty * party, int count);
+BOOL AddMonToParty(struct PlayerParty * party, struct Pokemon * pokemon);
+BOOL RemoveMonFromParty(struct PlayerParty * party, int pos);
+void ReplacePartySlotWithMon(struct PlayerParty * party, int pos, struct Pokemon * pokemon);
+BOOL SwapSlotsInParty(struct PlayerParty * party, int pos1, int pos2);
+void CopyPlayerParty(struct PlayerParty * src, struct PlayerParty * dest);
+struct PlayerParty * SavArray_PlayerParty_get(struct SaveBlock2 * ptr);
#endif //POKEDIAMOND_PARTY_H
diff --git a/include/pokemon.h b/include/pokemon.h
index 2387ef78..6148544f 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -9,7 +9,6 @@
#include "seals.h"
#include "constants/pokemon.h"
#include "string16.h"
-#include "save_block_2.h"
struct BaseStats {
/* 0x00 */ u8 hp;
@@ -199,6 +198,8 @@ struct PlayerParty
struct Pokemon mons[PARTY_SIZE];
};
+#include "save_block_2.h"
+
void ZeroMonData(struct Pokemon * pokemon);
void ZeroBoxMonData(struct BoxPokemon * boxmon);
u32 SizeOfStructPokemon(void);
diff --git a/include/proto.h b/include/proto.h
index 506d0992..fb2f8a78 100644
--- a/include/proto.h
+++ b/include/proto.h
@@ -16,7 +16,6 @@ void FUN_02005E80(int);
void FUN_02005E90(int, int, int, int);
void FUN_020056AC(int, int, int, int, int);
void FUN_020808AC(struct BoxPokemon *, int, int, int, int);
-void * SavArray_get(void *, int);
void StringExpandPlaceholders(u32 *, struct String *, struct String *);
#endif //POKEDIAMOND_PROTO_H
diff --git a/include/save_block_2.h b/include/save_block_2.h
index ac5a2044..b086e566 100644
--- a/include/save_block_2.h
+++ b/include/save_block_2.h
@@ -1,18 +1,25 @@
#ifndef POKEDIAMOND_SAVE_BLOCK_2_H
#define POKEDIAMOND_SAVE_BLOCK_2_H
+#include "pokemon.h"
+
struct SaveBlock2
{
- u16 playerName[OT_NAME_LENGTH + 1];
- u32 playerId;
- u8 filler_14[4];
- u8 gender;
- u8 padding[3];
+ /* 0x00000 */ u16 playerName[OT_NAME_LENGTH + 1];
+ /* 0x00010 */ u32 playerId;
+ /* 0x00014 */ u32 money;
+ /* 0x00018 */ u8 gender;
+ /* 0x00019 */ u8 origin;
+ /* 0x0001A */ u8 badges;
+ /* 0x0001B */ u8 avatar;
+ /* 0x0001C */ u8 filler_0001C[0x14];
+ /* 0x00030 */ struct PlayerParty party;
// TODO: finish this st ruct
};
struct String * FUN_020239A0(struct SaveBlock2 *, u32 heap_id);
u32 FUN_020239BC(struct SaveBlock2 *);
u32 FUN_020239CC(struct SaveBlock2 *);
+void * SavArray_get(struct SaveBlock2 *, int);
#endif //POKEDIAMOND_SAVE_BLOCK_2_H