summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--INSTALL.md2
-rw-r--r--arm9/arm9.lsf6
-rw-r--r--arm9/asm/scrcmd.s2
-rw-r--r--arm9/asm/scrcmd_12.s2
-rw-r--r--arm9/asm/unk_0202BE98.s4
-rw-r--r--arm9/asm/unk_020377F0.s2
-rw-r--r--arm9/asm/unk_0204653C.s2
-rw-r--r--arm9/asm/unk_020476CC.s4
-rw-r--r--arm9/asm/unk_0204B0A0.s2
-rw-r--r--arm9/asm/unk_0206ABC4.s749
-rw-r--r--arm9/asm/unk_0206B688.s357
-rw-r--r--arm9/asm/unk_0206BB28.s37
-rw-r--r--arm9/asm/unk_0206C700.s4
-rw-r--r--arm9/asm/unk_0206F3FC.s4
-rw-r--r--arm9/asm/unk_02073DA8.s6
-rw-r--r--arm9/asm/unk_02079C70.s10
-rw-r--r--arm9/asm/unk_0207D5BC.s2
-rw-r--r--arm9/asm/unk_0207FD00.s12
-rw-r--r--arm9/asm/unk_02080C38.s2
-rw-r--r--arm9/global.inc44
-rw-r--r--arm9/modules/05/asm/module_05.s10
-rw-r--r--arm9/modules/06/asm/module_06.s12
-rw-r--r--arm9/modules/07/asm/module_07.s16
-rw-r--r--arm9/modules/11/asm/module_11_thumb2.s62
-rw-r--r--arm9/modules/14/asm/module_14.s8
-rw-r--r--arm9/modules/23/asm/module_23.s2
-rw-r--r--arm9/modules/62/asm/module_62.s4
-rw-r--r--arm9/modules/71/asm/module_71.s14
-rw-r--r--arm9/modules/80/asm/module_80.s12
-rw-r--r--arm9/src/pokemon.c201
-rw-r--r--arm9/src/trainer_data.c403
-rw-r--r--arm9/src/unk_0206B688.c185
-rw-r--r--arm9/src/unk_0206BB28.c25
-rw-r--r--files/poketool/trainer/trdata.json1698
-rw-r--r--files/poketool/trainer/trdata.json.txt2
-rw-r--r--include/pokedex.h2
-rw-r--r--include/pokemon.h35
-rw-r--r--include/proto.h2
-rw-r--r--include/seal.h24
-rw-r--r--include/trainer_data.h13
-rw-r--r--include/unk_0206B688.h21
-rw-r--r--include/unk_0206BB28.h12
42 files changed, 1781 insertions, 2235 deletions
diff --git a/INSTALL.md b/INSTALL.md
index 4d4f038b..35eb054d 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -46,6 +46,8 @@ You will still require the following packages:
Install them using either the Cygwin package manager or using pacman on Msys2.
+**NOTE FOR MSYS2:** You will need to compile and install [libpng](https://www.libpng.org/pub/png/libpng.html) from source.
+
### 4. Build ROM
Run `make` to build the ROM. The ROM will be output as `build/diamond.us/pokediamond.us.nds`
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 29b8e407..6abd904a 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -246,9 +246,11 @@ Static arm9
Object unk_02064E90.o
Object unk_020653EC.o
Object unk_02066840.o
+
+ ##poketool##
Object pokemon.o
Object waza.o
- Object unk_0206ABC4.o
+ Object trainer_data.o
Object pokemon_storage_system.o
Object unk_0206B688.o
Object party.o
@@ -259,6 +261,8 @@ Static arm9
Object unk_0206DE24.o
Object unk_0206E0F0.o
Object unk_0206E2F0.o
+
+ ##itemtool##
Object itemtool.o
Object bag.o
Object unk_0206F1F0.o
diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s
index b874b757..affbe1c1 100644
--- a/arm9/asm/scrcmd.s
+++ b/arm9/asm/scrcmd.s
@@ -6376,7 +6376,7 @@ FUN_0203CBE8: ; 0x0203CBE8
ldr r0, [sp, #0x0]
ldr r2, [r6, #0x0]
mov r3, #0xb
- bl FUN_0206AD4C
+ bl GetTrainerMessageByIdPair
add r0, r4, #0x0
mov r1, #0x1
bl FUN_02039438
diff --git a/arm9/asm/scrcmd_12.s b/arm9/asm/scrcmd_12.s
index 137140a8..a434a5cb 100644
--- a/arm9/asm/scrcmd_12.s
+++ b/arm9/asm/scrcmd_12.s
@@ -625,7 +625,7 @@ _020431D4:
add r7, r0, #0x0
add r0, r4, #0x0
add r1, r7, #0x0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add r0, r7, #0x0
mov r1, #0x90
add r2, r5, #0x0
diff --git a/arm9/asm/unk_0202BE98.s b/arm9/asm/unk_0202BE98.s
index 2b1b2f16..37bc1c4e 100644
--- a/arm9/asm/unk_0202BE98.s
+++ b/arm9/asm/unk_0202BE98.s
@@ -133,10 +133,10 @@ FUN_0202BF7C: ; 0x0202BF7C
mov r1, #0xec
mul r1, r2
add r1, r3, r1
- ldr r3, _0202BF8C ; =FUN_02069A64
+ ldr r3, _0202BF8C ; =CopyBoxPokemonToPokemon
bx r3
nop
-_0202BF8C: .word FUN_02069A64
+_0202BF8C: .word CopyBoxPokemonToPokemon
thumb_func_start FUN_0202BF90
FUN_0202BF90: ; 0x0202BF90
diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s
index d0d60821..e7d630f6 100644
--- a/arm9/asm/unk_020377F0.s
+++ b/arm9/asm/unk_020377F0.s
@@ -1687,7 +1687,7 @@ _02038386:
bl GetPartyMonByIndex
add r1, r0, #0x0
ldr r0, [r4, #0x44]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [r4, #0x60]
bl FUN_0206C92C
mov r0, #0x1a
diff --git a/arm9/asm/unk_0204653C.s b/arm9/asm/unk_0204653C.s
index b74847fc..4309494e 100644
--- a/arm9/asm/unk_0204653C.s
+++ b/arm9/asm/unk_0204653C.s
@@ -1482,7 +1482,7 @@ _0204711A:
ldr r1, [r7, #0xc]
ldr r2, [sp, #0x20]
add r0, r4, #0x0
- bl FUN_0206ABC4
+ bl EnemyTrainerSet_Init
ldr r0, [r7, #0xc]
bl FUN_02029FC8
mov r1, #0x8
diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s
index 374ab418..568c4b5d 100644
--- a/arm9/asm/unk_020476CC.s
+++ b/arm9/asm/unk_020476CC.s
@@ -663,7 +663,7 @@ _02047C40:
add r1, r4, #0x0
bl GetPartyMonByIndex
add r1, r5, #0x0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add r0, r5, #0x0
mov r1, #0xa0
mov r2, #0x0
@@ -858,7 +858,7 @@ _02047DEE:
sub r1, r1, #0x1
bl GetPartyMonByIndex
ldr r1, [sp, #0x8]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r1, [sp, #0x8]
add r0, r5, #0x0
mov r2, #0x0
diff --git a/arm9/asm/unk_0204B0A0.s b/arm9/asm/unk_0204B0A0.s
index f2e46ab6..a78c13d0 100644
--- a/arm9/asm/unk_0204B0A0.s
+++ b/arm9/asm/unk_0204B0A0.s
@@ -149,7 +149,7 @@ FUN_0204B1DC: ; 0x0204B1DC
ldr r0, [r5, #0xc]
bl SavArray_PlayerParty_get
add r1, r4, #0x0
- bl FUN_02069D50
+ bl Party_UpdatePokerus
ldr r0, [r5, #0xc]
bl SavArray_Flags_get
add r6, r0, #0x0
diff --git a/arm9/asm/unk_0206ABC4.s b/arm9/asm/unk_0206ABC4.s
deleted file mode 100644
index b4b3d88e..00000000
--- a/arm9/asm/unk_0206ABC4.s
+++ /dev/null
@@ -1,749 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .rodata
-
- .global UNK_020F8010
-UNK_020F8010: ; 0x020F8010
- .byte 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0
- .byte 0, 1, 1, 0, 0, 1, 1, 2, 0, 1, 1, 0, 0, 0, 1, 2
- .byte 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 2
- .byte 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0
- .byte 0, 0, 1, 0, 0, 1, 2, 0, 1, 0, 1, 0, 1, 1, 1, 0
- .byte 1, 0, 2, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0
- .byte 1, 0, 0, 0
-
- .text
-
- thumb_func_start FUN_0206ABC4
-FUN_0206ABC4: ; 0x0206ABC4
- push {r3-r7, lr}
- sub sp, #0x48
- str r2, [sp, #0x4]
- ldr r2, _0206AC70 ; =0x0000022F
- str r0, [sp, #0x0]
- add r4, r1, #0x0
- ldr r3, [sp, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- str r0, [sp, #0x10]
- add r0, r4, #0x0
- bl FUN_02024EC0
- bl FUN_02024EE8
- ldr r4, [sp, #0x0]
- str r0, [sp, #0xc]
- add r0, r4, #0x0
- add r5, r4, #0x0
- mov r7, #0x0
- str r0, [sp, #0x8]
- add r5, #0x3c
-_0206ABF4:
- ldr r0, [r4, #0x18]
- cmp r0, #0x0
- beq _0206AC48
- add r1, sp, #0x14
- bl TrainerData_ReadTrData
- ldr r3, [sp, #0x8]
- add r6, sp, #0x14
- add r3, #0x28
- mov r2, #0x6
-_0206AC08:
- ldmia r6!, {r0-r1}
- stmia r3!, {r0-r1}
- sub r2, r2, #0x1
- bne _0206AC08
- ldr r0, [r6, #0x0]
- str r0, [r3, #0x0]
- add r0, sp, #0x14
- ldrb r0, [r0, #0x1]
- cmp r0, #0x3f
- bne _0206AC26
- ldr r1, [sp, #0xc]
- add r0, r5, #0x0
- bl CopyU16StringArray
- b _0206AC3E
-_0206AC26:
- ldr r0, [sp, #0x10]
- ldr r1, [r4, #0x18]
- bl NewString_ReadMsgData
- add r6, r0, #0x0
- add r1, r5, #0x0
- mov r2, #0x8
- bl CopyStringToU16Array
- add r0, r6, #0x0
- bl String_dtor
-_0206AC3E:
- ldr r0, [sp, #0x0]
- ldr r2, [sp, #0x4]
- add r1, r7, #0x0
- bl LoadTrainerParty
-_0206AC48:
- ldr r0, [sp, #0x8]
- add r7, r7, #0x1
- add r0, #0x34
- add r4, r4, #0x4
- add r5, #0x34
- str r0, [sp, #0x8]
- cmp r7, #0x4
- blt _0206ABF4
- ldr r0, [sp, #0x0]
- ldr r1, [r0, #0x0]
- ldr r0, [sp, #0x24]
- orr r1, r0
- ldr r0, [sp, #0x0]
- str r1, [r0, #0x0]
- ldr r0, [sp, #0x10]
- bl DestroyMsgData
- add sp, #0x48
- pop {r3-r7, pc}
- nop
-_0206AC70: .word 0x0000022F
-
- thumb_func_start TrainerData_GetAttr
-TrainerData_GetAttr: ; 0x0206AC74
- push {r4-r5, lr}
- sub sp, #0x34
- add r5, r1, #0x0
- add r1, sp, #0x0
- bl TrainerData_ReadTrData
- cmp r5, #0x9
- bhi _0206ACCC
- add r0, r5, r5
- add r0, pc
- ldrh r0, [r0, #0x6]
- lsl r0, r0, #0x10
- asr r0, r0, #0x10
- add pc, r0
-_0206AC90: ; jump table (using 16-bit offset)
- .short _0206ACA4 - _0206AC90 - 2; case 0
- .short _0206ACAA - _0206AC90 - 2; case 1
- .short _0206ACB0 - _0206AC90 - 2; case 2
- .short _0206ACB6 - _0206AC90 - 2; case 3
- .short _0206ACBC - _0206AC90 - 2; case 4
- .short _0206ACBC - _0206AC90 - 2; case 5
- .short _0206ACBC - _0206AC90 - 2; case 6
- .short _0206ACBC - _0206AC90 - 2; case 7
- .short _0206ACC6 - _0206AC90 - 2; case 8
- .short _0206ACCA - _0206AC90 - 2; case 9
-_0206ACA4:
- add r0, sp, #0x0
- ldrb r4, [r0, #0x0]
- b _0206ACCC
-_0206ACAA:
- add r0, sp, #0x0
- ldrb r4, [r0, #0x1]
- b _0206ACCC
-_0206ACB0:
- add r0, sp, #0x0
- ldrb r4, [r0, #0x2]
- b _0206ACCC
-_0206ACB6:
- add r0, sp, #0x0
- ldrb r4, [r0, #0x3]
- b _0206ACCC
-_0206ACBC:
- sub r0, r5, #0x4
- lsl r1, r0, #0x1
- add r0, sp, #0x4
- ldrh r4, [r0, r1]
- b _0206ACCC
-_0206ACC6:
- ldr r4, [sp, #0xc]
- b _0206ACCC
-_0206ACCA:
- ldr r4, [sp, #0x10]
-_0206ACCC:
- add r0, r4, #0x0
- add sp, #0x34
- pop {r4-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0206ACD4
-FUN_0206ACD4: ; 0x0206ACD4
- push {r4-r7, lr}
- sub sp, #0x14
- add r5, r0, #0x0
- mov r0, #0x0
- str r0, [sp, #0x4]
- add r7, r1, #0x0
- ldr r1, [sp, #0x4]
- mov r0, #0x3b
- add r4, r2, #0x0
- bl GetNarcMemberSizeByIdPair
- add r6, r0, #0x0
- mov r0, #0x2
- str r0, [sp, #0x0]
- add r0, sp, #0xc
- mov r1, #0x89
- mov r2, #0x0
- lsl r3, r5, #0x1
- bl ReadFromNarcMemberByIdPair
- mov r0, #0x3b
- add r1, r4, #0x0
- bl NARC_ctor
- add r4, sp, #0xc
- ldrh r2, [r4, #0x0]
- str r0, [sp, #0x8]
- cmp r2, r6
- beq _0206AD40
-_0206AD0E:
- add r0, sp, #0xc
- add r0, #0x2
- str r0, [sp, #0x0]
- ldr r0, [sp, #0x8]
- mov r1, #0x0
- mov r3, #0x4
- bl NARC_ReadFromMember
- ldrh r1, [r4, #0x2]
- cmp r1, r5
- bne _0206AD30
- ldrh r0, [r4, #0x4]
- cmp r0, r7
- bne _0206AD30
- mov r0, #0x1
- str r0, [sp, #0x4]
- b _0206AD40
-_0206AD30:
- cmp r1, r5
- bne _0206AD40
- ldrh r0, [r4, #0x0]
- add r0, r0, #0x4
- strh r0, [r4, #0x0]
- ldrh r2, [r4, #0x0]
- cmp r2, r6
- bne _0206AD0E
-_0206AD40:
- ldr r0, [sp, #0x8]
- bl NARC_dtor
- ldr r0, [sp, #0x4]
- add sp, #0x14
- pop {r4-r7, pc}
-
- thumb_func_start FUN_0206AD4C
-FUN_0206AD4C: ; 0x0206AD4C
- push {r3-r7, lr}
- sub sp, #0x18
- add r6, r0, #0x0
- add r7, r1, #0x0
- mov r0, #0x3b
- mov r1, #0x0
- str r2, [sp, #0x4]
- str r3, [sp, #0x8]
- bl GetNarcMemberSizeByIdPair
- add r5, r0, #0x0
- mov r0, #0x2
- str r0, [sp, #0x0]
- add r0, sp, #0x10
- mov r1, #0x89
- mov r2, #0x0
- lsl r3, r6, #0x1
- bl ReadFromNarcMemberByIdPair
- ldr r1, [sp, #0x8]
- mov r0, #0x3b
- bl NARC_ctor
- add r4, sp, #0x10
- ldrh r2, [r4, #0x0]
- str r0, [sp, #0xc]
- cmp r2, r5
- beq _0206ADC2
-_0206AD84:
- add r0, sp, #0x10
- add r0, #0x2
- str r0, [sp, #0x0]
- ldr r0, [sp, #0xc]
- mov r1, #0x0
- mov r3, #0x4
- bl NARC_ReadFromMember
- ldrh r0, [r4, #0x2]
- cmp r0, r6
- bne _0206ADB6
- ldrh r0, [r4, #0x4]
- cmp r0, r7
- bne _0206ADB6
- ldr r0, [sp, #0x4]
- add r2, sp, #0x10
- str r0, [sp, #0x0]
- ldrh r2, [r2, #0x0]
- ldr r1, _0206ADDC ; =0x0000022E
- ldr r3, [sp, #0x8]
- mov r0, #0x1a
- lsr r2, r2, #0x2
- bl ReadMsgData_NewNarc_ExistingString
- b _0206ADC2
-_0206ADB6:
- ldrh r0, [r4, #0x0]
- add r0, r0, #0x4
- strh r0, [r4, #0x0]
- ldrh r2, [r4, #0x0]
- cmp r2, r5
- bne _0206AD84
-_0206ADC2:
- ldr r0, [sp, #0xc]
- bl NARC_dtor
- add r0, sp, #0x10
- ldrh r0, [r0, #0x0]
- cmp r0, r5
- bne _0206ADD6
- ldr r0, [sp, #0x4]
- bl StringSetEmpty
-_0206ADD6:
- add sp, #0x18
- pop {r3-r7, pc}
- nop
-_0206ADDC: .word 0x0000022E
-
- thumb_func_start TrainerData_ReadTrData
-TrainerData_ReadTrData: ; 0x0206ADE0
- ldr r3, _0206ADEC ; =ReadWholeNarcMemberByIdPair
- add r2, r0, #0x0
- add r0, r1, #0x0
- mov r1, #0x39
- bx r3
- nop
-_0206ADEC: .word ReadWholeNarcMemberByIdPair
-
- thumb_func_start TrainerData_ReadTrPoke
-TrainerData_ReadTrPoke: ; 0x0206ADF0
- ldr r3, _0206ADFC ; =ReadWholeNarcMemberByIdPair
- add r2, r0, #0x0
- add r0, r1, #0x0
- mov r1, #0x3a
- bx r3
- nop
-_0206ADFC: .word ReadWholeNarcMemberByIdPair
-
- thumb_func_start FUN_0206AE00
-FUN_0206AE00: ; 0x0206AE00
- ldr r1, _0206AE08 ; =UNK_020F8010
- ldrb r0, [r1, r0]
- bx lr
- nop
-_0206AE08: .word UNK_020F8010
-
- thumb_func_start LoadTrainerParty
-LoadTrainerParty: ; 0x0206AE0C
- push {r3-r7, lr}
- sub sp, #0x50
- add r7, r1, #0x0
- add r4, r0, #0x0
- add r5, r2, #0x0
- bl GetLCRNGSeed
- lsl r6, r7, #0x2
- str r0, [sp, #0x44]
- add r0, r4, r6
- ldr r0, [r0, #0x4]
- mov r1, #0x6
- bl InitPartyWithMaxSize
- add r0, r5, #0x0
- mov r1, #0x60
- bl AllocFromHeap
- str r0, [sp, #0x4c]
- add r0, r5, #0x0
- bl AllocMonZeroed
- str r0, [sp, #0x40]
- add r0, r4, r6
- ldr r0, [r0, #0x18]
- ldr r1, [sp, #0x4c]
- bl TrainerData_ReadTrPoke
- mov r0, #0x34
- add r5, r7, #0x0
- mul r5, r0
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- bl FUN_0206AE00
- cmp r0, #0x1
- bne _0206AE5E
- mov r0, #0x78
- str r0, [sp, #0x10]
- b _0206AE62
-_0206AE5E:
- mov r0, #0x88
- str r0, [sp, #0x10]
-_0206AE62:
- add r0, r4, r5
- add r0, #0x28
- ldrb r0, [r0, #0x0]
- cmp r0, #0x3
- bhi _0206AF26
- add r0, r0, r0
- add r0, pc
- ldrh r0, [r0, #0x6]
- lsl r0, r0, #0x10
- asr r0, r0, #0x10
- add pc, r0
-_0206AE78: ; jump table (using 16-bit offset)
- .short _0206AE80 - _0206AE78 - 2; case 0
- .short _0206AF28 - _0206AE78 - 2; case 1
- .short _0206AFE8 - _0206AE78 - 2; case 2
- .short _0206B08C - _0206AE78 - 2; case 3
-_0206AE80:
- mov r0, #0x0
- str r0, [sp, #0x48]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r0, [r0, #0x0]
- cmp r0, #0x0
- ble _0206AF26
- ldr r0, [sp, #0x4c]
- str r0, [sp, #0x28]
- add r0, r4, r6
- str r0, [sp, #0x24]
-_0206AE96:
- ldr r0, [sp, #0x24]
- ldr r2, [sp, #0x28]
- ldr r1, [r0, #0x18]
- ldr r0, [sp, #0x28]
- ldrh r3, [r2, #0x0]
- ldrh r2, [r2, #0x2]
- ldrh r0, [r0, #0x4]
- add r2, r3, r2
- add r0, r0, r2
- add r7, r1, r0
- add r0, r7, #0x0
- bl SetLCRNGSeed
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- ble _0206AECE
-_0206AEBC:
- bl LCRandom
- add r7, r0, #0x0
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- add r6, r6, #0x1
- cmp r6, r0
- blt _0206AEBC
-_0206AECE:
- ldr r0, [sp, #0x10]
- lsl r1, r7, #0x8
- add r6, r1, r0
- ldr r0, [sp, #0x28]
- ldrh r1, [r0, #0x0]
- mov r0, #0x1f
- mul r0, r1
- mov r1, #0xff
- bl _s32_div_f
- add r3, r0, #0x0
- mov r0, #0x1
- str r0, [sp, #0x0]
- lsl r3, r3, #0x18
- str r6, [sp, #0x4]
- mov r0, #0x2
- str r0, [sp, #0x8]
- mov r0, #0x0
- str r0, [sp, #0xc]
- ldr r1, [sp, #0x28]
- ldr r2, [sp, #0x28]
- ldrh r1, [r1, #0x4]
- ldrh r2, [r2, #0x2]
- ldr r0, [sp, #0x40]
- lsr r3, r3, #0x18
- bl CreateMon
- ldr r0, [sp, #0x24]
- ldr r1, [sp, #0x40]
- ldr r0, [r0, #0x4]
- bl AddMonToParty
- ldr r0, [sp, #0x28]
- add r0, r0, #0x6
- str r0, [sp, #0x28]
- ldr r0, [sp, #0x48]
- add r0, r0, #0x1
- str r0, [sp, #0x48]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r1, [r0, #0x0]
- ldr r0, [sp, #0x48]
- cmp r0, r1
- blt _0206AE96
-_0206AF26:
- b _0206B156
-_0206AF28:
- mov r0, #0x0
- str r0, [sp, #0x18]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r0, [r0, #0x0]
- cmp r0, #0x0
- ble _0206AFE6
- ldr r0, [sp, #0x4c]
- str r0, [sp, #0x30]
- add r0, r4, r6
- str r0, [sp, #0x2c]
-_0206AF3E:
- ldr r0, [sp, #0x2c]
- ldr r2, [sp, #0x30]
- ldr r1, [r0, #0x18]
- ldr r0, [sp, #0x30]
- ldrh r3, [r2, #0x0]
- ldrh r2, [r2, #0x2]
- ldrh r0, [r0, #0x4]
- add r2, r3, r2
- add r0, r0, r2
- add r7, r1, r0
- add r0, r7, #0x0
- bl SetLCRNGSeed
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- ble _0206AF76
-_0206AF64:
- bl LCRandom
- add r7, r0, #0x0
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- add r6, r6, #0x1
- cmp r6, r0
- blt _0206AF64
-_0206AF76:
- ldr r0, [sp, #0x10]
- lsl r1, r7, #0x8
- add r6, r1, r0
- ldr r0, [sp, #0x30]
- ldrh r1, [r0, #0x0]
- mov r0, #0x1f
- mul r0, r1
- mov r1, #0xff
- bl _s32_div_f
- add r3, r0, #0x0
- mov r0, #0x1
- str r0, [sp, #0x0]
- lsl r3, r3, #0x18
- str r6, [sp, #0x4]
- mov r0, #0x2
- str r0, [sp, #0x8]
- mov r0, #0x0
- str r0, [sp, #0xc]
- ldr r1, [sp, #0x30]
- ldr r2, [sp, #0x30]
- ldrh r1, [r1, #0x4]
- ldrh r2, [r2, #0x2]
- ldr r0, [sp, #0x40]
- lsr r3, r3, #0x18
- bl CreateMon
- ldr r7, [sp, #0x30]
- mov r6, #0x0
-_0206AFB0:
- ldrh r1, [r7, #0x6]
- lsl r2, r6, #0x18
- ldr r0, [sp, #0x40]
- lsr r2, r2, #0x18
- bl MonSetMoveInSlot
- add r6, r6, #0x1
- add r7, r7, #0x2
- cmp r6, #0x4
- blt _0206AFB0
- ldr r0, [sp, #0x2c]
- ldr r1, [sp, #0x40]
- ldr r0, [r0, #0x4]
- bl AddMonToParty
- ldr r0, [sp, #0x30]
- add r0, #0xe
- str r0, [sp, #0x30]
- ldr r0, [sp, #0x18]
- add r0, r0, #0x1
- str r0, [sp, #0x18]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r1, [r0, #0x0]
- ldr r0, [sp, #0x18]
- cmp r0, r1
- blt _0206AF3E
-_0206AFE6:
- b _0206B156
-_0206AFE8:
- mov r0, #0x0
- str r0, [sp, #0x1c]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r0, [r0, #0x0]
- cmp r0, #0x0
- ble _0206B08A
- add r0, r4, r6
- ldr r7, [sp, #0x4c]
- str r0, [sp, #0x34]
-_0206AFFC:
- ldr r0, [sp, #0x34]
- ldrh r3, [r7, #0x0]
- ldrh r2, [r7, #0x2]
- ldr r1, [r0, #0x18]
- ldrh r0, [r7, #0x4]
- add r2, r3, r2
- add r0, r0, r2
- add r0, r1, r0
- str r0, [sp, #0x14]
- bl SetLCRNGSeed
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- ble _0206B030
-_0206B01E:
- bl LCRandom
- str r0, [sp, #0x14]
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- add r6, r6, #0x1
- cmp r6, r0
- blt _0206B01E
-_0206B030:
- ldr r0, [sp, #0x14]
- lsl r1, r0, #0x8
- ldr r0, [sp, #0x10]
- add r6, r1, r0
- ldrh r1, [r7, #0x0]
- mov r0, #0x1f
- mul r0, r1
- mov r1, #0xff
- bl _s32_div_f
- add r3, r0, #0x0
- mov r0, #0x1
- str r0, [sp, #0x0]
- lsl r3, r3, #0x18
- str r6, [sp, #0x4]
- mov r0, #0x2
- str r0, [sp, #0x8]
- mov r0, #0x0
- str r0, [sp, #0xc]
- ldrh r1, [r7, #0x4]
- ldrh r2, [r7, #0x2]
- ldr r0, [sp, #0x40]
- lsr r3, r3, #0x18
- bl CreateMon
- ldr r0, [sp, #0x40]
- mov r1, #0x6
- add r2, r7, #0x6
- bl SetMonData
- ldr r0, [sp, #0x34]
- ldr r1, [sp, #0x40]
- ldr r0, [r0, #0x4]
- bl AddMonToParty
- ldr r0, [sp, #0x1c]
- add r7, #0x8
- add r0, r0, #0x1
- str r0, [sp, #0x1c]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r1, [r0, #0x0]
- ldr r0, [sp, #0x1c]
- cmp r0, r1
- blt _0206AFFC
-_0206B08A:
- b _0206B156
-_0206B08C:
- mov r0, #0x0
- str r0, [sp, #0x20]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r0, [r0, #0x0]
- cmp r0, #0x0
- ble _0206B156
- ldr r0, [sp, #0x4c]
- str r0, [sp, #0x3c]
- add r0, r4, r6
- str r0, [sp, #0x38]
-_0206B0A2:
- ldr r0, [sp, #0x38]
- ldr r2, [sp, #0x3c]
- ldr r1, [r0, #0x18]
- ldr r0, [sp, #0x3c]
- ldrh r3, [r2, #0x0]
- ldrh r2, [r2, #0x2]
- ldrh r0, [r0, #0x4]
- add r2, r3, r2
- add r0, r0, r2
- add r7, r1, r0
- add r0, r7, #0x0
- bl SetLCRNGSeed
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- ble _0206B0DA
-_0206B0C8:
- bl LCRandom
- add r7, r0, #0x0
- add r0, r4, r5
- add r0, #0x29
- ldrb r0, [r0, #0x0]
- add r6, r6, #0x1
- cmp r6, r0
- blt _0206B0C8
-_0206B0DA:
- ldr r0, [sp, #0x10]
- lsl r1, r7, #0x8
- add r6, r1, r0
- ldr r0, [sp, #0x3c]
- ldrh r1, [r0, #0x0]
- mov r0, #0x1f
- mul r0, r1
- mov r1, #0xff
- bl _s32_div_f
- add r3, r0, #0x0
- mov r0, #0x1
- str r0, [sp, #0x0]
- lsl r3, r3, #0x18
- str r6, [sp, #0x4]
- mov r0, #0x2
- str r0, [sp, #0x8]
- mov r0, #0x0
- str r0, [sp, #0xc]
- ldr r1, [sp, #0x3c]
- ldr r2, [sp, #0x3c]
- ldrh r1, [r1, #0x4]
- ldrh r2, [r2, #0x2]
- ldr r0, [sp, #0x40]
- lsr r3, r3, #0x18
- bl CreateMon
- ldr r2, [sp, #0x3c]
- ldr r0, [sp, #0x40]
- mov r1, #0x6
- add r2, r2, #0x6
- bl SetMonData
- ldr r7, [sp, #0x3c]
- mov r6, #0x0
-_0206B120:
- ldrh r1, [r7, #0x8]
- lsl r2, r6, #0x18
- ldr r0, [sp, #0x40]
- lsr r2, r2, #0x18
- bl MonSetMoveInSlot
- add r6, r6, #0x1
- add r7, r7, #0x2
- cmp r6, #0x4
- blt _0206B120
- ldr r0, [sp, #0x38]
- ldr r1, [sp, #0x40]
- ldr r0, [r0, #0x4]
- bl AddMonToParty
- ldr r0, [sp, #0x3c]
- add r0, #0x10
- str r0, [sp, #0x3c]
- ldr r0, [sp, #0x20]
- add r0, r0, #0x1
- str r0, [sp, #0x20]
- add r0, r4, r5
- add r0, #0x2b
- ldrb r1, [r0, #0x0]
- ldr r0, [sp, #0x20]
- cmp r0, r1
- blt _0206B0A2
-_0206B156:
- ldr r0, [sp, #0x4c]
- bl FreeToHeap
- ldr r0, [sp, #0x40]
- bl FreeToHeap
- ldr r0, [sp, #0x44]
- bl SetLCRNGSeed
- add sp, #0x50
- pop {r3-r7, pc}
diff --git a/arm9/asm/unk_0206B688.s b/arm9/asm/unk_0206B688.s
deleted file mode 100644
index c92d347d..00000000
--- a/arm9/asm/unk_0206B688.s
+++ /dev/null
@@ -1,357 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .rodata
-
- .global UNK_020F8074
-UNK_020F8074: ; 0x020F8074
- .byte 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02, 0x02
- .byte 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02
- .byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00
- .byte 0x00, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02
- .byte 0x02, 0x02, 0x00, 0x02, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
- .byte 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02
- .byte 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01
- .byte 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x02, 0x01, 0x00, 0x02
- .byte 0x02, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01
- .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02
- .byte 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x02
- .byte 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01
- .byte 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x02
- .byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00
- .byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01
- .byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00
- .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x02, 0x00, 0x02, 0x01, 0x01, 0x01
- .byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x02
- .byte 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x02, 0x01, 0x02, 0x00, 0x00, 0x02, 0x02, 0x02
- .byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x02, 0x00, 0x00
- .byte 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
- .byte 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00
- .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00
- .byte 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00
- .byte 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02
- .byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00
- .byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x01, 0x00
- .byte 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02
- .byte 0x02, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01
- .byte 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00
- .byte 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x02
- .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01
- .byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-
- .text
-
- thumb_func_start FUN_0206B688
-FUN_0206B688: ; 0x0206B688
- push {r3-r7, lr}
- add r5, r0, #0x0
- bl AcquireBoxMonLock
- add r7, r0, #0x0
- add r0, r5, #0x0
- mov r1, #0x5
- mov r2, #0x0
- bl GetBoxMonData
- add r4, r0, #0x0
- add r0, r5, #0x0
- mov r1, #0x4c
- mov r2, #0x0
- bl GetBoxMonData
- add r6, r0, #0x0
- add r0, r5, #0x0
- bl BoxMon_GetAlternateForme
- add r2, r0, #0x0
- add r0, r4, #0x0
- add r1, r6, #0x0
- bl FUN_0206B6D4
- add r4, r0, #0x0
- add r0, r5, #0x0
- add r1, r7, #0x0
- bl ReleaseBoxMonLock
- add r0, r4, #0x0
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0206B6C8
-FUN_0206B6C8: ; 0x0206B6C8
- push {r3, lr}
- bl FUN_020690E4
- bl FUN_0206B688
- pop {r3, pc}
-
- thumb_func_start FUN_0206B6D4
-FUN_0206B6D4: ; 0x0206B6D4
- cmp r1, #0x1
- bne _0206B6E8
- ldr r1, _0206B748 ; =0x000001EA
- cmp r0, r1
- bne _0206B6E2
- add r1, #0xc
- b _0206B6E4
-_0206B6E2:
- add r1, #0xb
-_0206B6E4:
- add r0, r1, #0x0
- bx lr
-_0206B6E8:
- cmp r2, #0x0
- beq _0206B73A
- ldr r3, _0206B74C ; =0x00000182
- cmp r0, r3
- bne _0206B6F8
- add r3, #0x74
- add r0, r2, r3
- bx lr
-_0206B6F8:
- cmp r0, #0xc9
- bne _0206B702
- add r3, #0x78
- add r0, r2, r3
- bx lr
-_0206B702:
- add r1, r3, #0x0
- add r1, #0x1a
- cmp r0, r1
- bne _0206B710
- add r3, #0x93
- add r0, r2, r3
- bx lr
-_0206B710:
- add r1, r3, #0x0
- add r1, #0x1b
- cmp r0, r1
- bne _0206B71E
- add r3, #0x95
- add r0, r2, r3
- bx lr
-_0206B71E:
- add r1, r3, #0x0
- add r1, #0x24
- cmp r0, r1
- bne _0206B72C
- add r3, #0x97
- add r0, r2, r3
- bx lr
-_0206B72C:
- add r1, r3, #0x0
- add r1, #0x25
- cmp r0, r1
- bne _0206B73A
- add r3, #0x98
- add r0, r2, r3
- bx lr
-_0206B73A:
- ldr r1, _0206B750 ; =0x000001ED
- cmp r0, r1
- bls _0206B742
- mov r0, #0x0
-_0206B742:
- add r0, r0, #0x7
- bx lr
- nop
-_0206B748: .word 0x000001EA
-_0206B74C: .word 0x00000182
-_0206B750: .word 0x000001ED
-
- thumb_func_start BoxMon_GetAlternateForme
-BoxMon_GetAlternateForme: ; 0x0206B754
- push {r4, lr}
- mov r1, #0xad
- mov r2, #0x0
- add r4, r0, #0x0
- bl GetBoxMonData
- ldr r2, _0206B7B8 ; =0x0000019D
- cmp r0, r2
- bhi _0206B784
- sub r1, r2, #0x1
- cmp r0, r1
- blo _0206B774
- beq _0206B7A4
- cmp r0, r2
- beq _0206B7A4
- b _0206B7B4
-_0206B774:
- cmp r0, #0xc9
- bhi _0206B77C
- beq _0206B79C
- b _0206B7B4
-_0206B77C:
- sub r2, #0x1b
- cmp r0, r2
- beq _0206B7A4
- b _0206B7B4
-_0206B784:
- add r1, r2, #0x0
- add r1, #0x9
- cmp r0, r1
- bhi _0206B794
- add r2, #0x9
- cmp r0, r2
- beq _0206B7A4
- b _0206B7B4
-_0206B794:
- add r2, #0xa
- cmp r0, r2
- beq _0206B7A4
- b _0206B7B4
-_0206B79C:
- add r0, r4, #0x0
- bl GetBoxMonUnownLetter
- pop {r4, pc}
-_0206B7A4:
- add r0, r4, #0x0
- mov r1, #0x70
- mov r2, #0x0
- bl GetBoxMonData
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- pop {r4, pc}
-_0206B7B4:
- mov r0, #0x0
- pop {r4, pc}
- .balign 4
-_0206B7B8: .word 0x0000019D
-
- thumb_func_start FUN_0206B7BC
-FUN_0206B7BC: ; 0x0206B7BC
- cmp r2, #0x1
- bne _0206B7CE
- ldr r1, _0206B830 ; =0x000001EA
- cmp r0, r1
- bne _0206B7CA
- add r0, r1, #0x5
- b _0206B82A
-_0206B7CA:
- add r0, r1, #0x4
- b _0206B82A
-_0206B7CE:
- ldr r3, _0206B834 ; =0x000001ED
- cmp r0, r3
- bls _0206B7D8
- mov r0, #0x0
- b _0206B82A
-_0206B7D8:
- cmp r1, #0x0
- beq _0206B82A
- add r2, r3, #0x0
- sub r2, #0x6b
- cmp r0, r2
- bne _0206B7EA
- add r0, r3, #0x2
- add r0, r1, r0
- b _0206B82A
-_0206B7EA:
- cmp r0, #0xc9
- bne _0206B7F4
- add r0, r3, #0x5
- add r0, r1, r0
- b _0206B82A
-_0206B7F4:
- add r2, r3, #0x0
- sub r2, #0x51
- cmp r0, r2
- bne _0206B802
- add r3, #0x21
- add r0, r1, r3
- b _0206B82A
-_0206B802:
- add r2, r3, #0x0
- sub r2, #0x50
- cmp r0, r2
- bne _0206B810
- add r3, #0x23
- add r0, r1, r3
- b _0206B82A
-_0206B810:
- add r2, r3, #0x0
- sub r2, #0x47
- cmp r0, r2
- bne _0206B81E
- add r3, #0x25
- add r0, r1, r3
- b _0206B82A
-_0206B81E:
- add r2, r3, #0x0
- sub r2, #0x46
- cmp r0, r2
- bne _0206B82A
- add r3, #0x26
- add r0, r1, r3
-_0206B82A:
- ldr r1, _0206B838 ; =UNK_020F8074
- ldrb r0, [r1, r0]
- bx lr
- .balign 4
-_0206B830: .word 0x000001EA
-_0206B834: .word 0x000001ED
-_0206B838: .word UNK_020F8074
-
- thumb_func_start FUN_0206B83C
-FUN_0206B83C: ; 0x0206B83C
- push {r3-r7, lr}
- add r5, r0, #0x0
- bl AcquireBoxMonLock
- add r4, r0, #0x0
- add r0, r5, #0x0
- bl BoxMon_GetAlternateForme
- add r6, r0, #0x0
- add r0, r5, #0x0
- mov r1, #0x5
- mov r2, #0x0
- bl GetBoxMonData
- add r7, r0, #0x0
- add r0, r5, #0x0
- mov r1, #0x4c
- mov r2, #0x0
- bl GetBoxMonData
- str r0, [sp, #0x0]
- add r0, r5, #0x0
- add r1, r4, #0x0
- bl ReleaseBoxMonLock
- ldr r2, [sp, #0x0]
- add r0, r7, #0x0
- add r1, r6, #0x0
- bl FUN_0206B7BC
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0206B87C
-FUN_0206B87C: ; 0x0206B87C
- push {r3, lr}
- bl FUN_020690E4
- bl FUN_0206B83C
- pop {r3, pc}
-
- thumb_func_start FUN_0206B888
-FUN_0206B888: ; 0x0206B888
- mov r0, #0x0
- bx lr
-
- thumb_func_start FUN_0206B88C
-FUN_0206B88C: ; 0x0206B88C
- mov r0, #0x2
- bx lr
-
- thumb_func_start FUN_0206B890
-FUN_0206B890: ; 0x0206B890
- mov r0, #0x4
- bx lr
-
- thumb_func_start FUN_0206B894
-FUN_0206B894: ; 0x0206B894
- mov r0, #0x6
- bx lr
-
- thumb_func_start FUN_0206B898
-FUN_0206B898: ; 0x0206B898
- mov r0, #0x1
- bx lr
-
- thumb_func_start FUN_0206B89C
-FUN_0206B89C: ; 0x0206B89C
- mov r0, #0x3
- bx lr
-
- thumb_func_start FUN_0206B8A0
-FUN_0206B8A0: ; 0x0206B8A0
- mov r0, #0x5
- bx lr
diff --git a/arm9/asm/unk_0206BB28.s b/arm9/asm/unk_0206BB28.s
deleted file mode 100644
index 15f4469e..00000000
--- a/arm9/asm/unk_0206BB28.s
+++ /dev/null
@@ -1,37 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0206BB28
-FUN_0206BB28: ; 0x0206BB28
- push {r3, lr}
- bl Sav2_Pokedex_get
- bl FUN_0206BB34
- pop {r3, pc}
-
- thumb_func_start FUN_0206BB34
-FUN_0206BB34: ; 0x0206BB34
- push {r3, lr}
- bl Pokedex_GetNatDexFlag
- cmp r0, #0x1
- bne _0206BB42
- mov r0, #0x1
- pop {r3, pc}
-_0206BB42:
- mov r0, #0x0
- pop {r3, pc}
- .balign 4
-
- thumb_func_start FUN_0206BB48
-FUN_0206BB48: ; 0x0206BB48
- push {r3, lr}
- cmp r0, #0x0
- bne _0206BB58
- lsl r0, r1, #0x10
- lsr r0, r0, #0x10
- bl SpeciesToSinnohDexNo
- add r1, r0, #0x0
-_0206BB58:
- add r0, r1, #0x0
- pop {r3, pc}
diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s
index c42b766a..f5a0873e 100644
--- a/arm9/asm/unk_0206C700.s
+++ b/arm9/asm/unk_0206C700.s
@@ -2096,7 +2096,7 @@ _0206D86E:
add r5, r0, #0x0
ldr r0, [r4, #0x28]
add r1, r5, #0x0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
mov r0, #0x49
lsl r0, r0, #0x2
str r0, [sp, #0x0]
@@ -2576,7 +2576,7 @@ FUN_0206DC80: ; 0x0206DC80
add r5, r0, #0x0
ldr r0, [r4, #0x28]
add r1, r5, #0x0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add r2, r4, #0x0
add r0, r5, #0x0
mov r1, #0x5
diff --git a/arm9/asm/unk_0206F3FC.s b/arm9/asm/unk_0206F3FC.s
index db3328a4..212030cc 100644
--- a/arm9/asm/unk_0206F3FC.s
+++ b/arm9/asm/unk_0206F3FC.s
@@ -5672,7 +5672,7 @@ FUN_02072080: ; 0x02072080
add r2, sp, #0x0
bl SetMonData
add r0, r5, #0x0
- bl FUN_02069EC4
+ bl Pokemon_UpdateArceusForme
ldr r1, _020720D8 ; =0x00000B25
ldr r0, _020720D4 ; =0x000005A4
ldrb r3, [r4, r1]
@@ -5715,7 +5715,7 @@ FUN_020720E0: ; 0x020720E0
add r2, sp, #0x1c
bl SetMonData
add r0, r5, #0x0
- bl FUN_02069EC4
+ bl Pokemon_UpdateArceusForme
ldr r1, _02072138 ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r4, r1]
diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s
index 8b8442a3..6635b399 100644
--- a/arm9/asm/unk_02073DA8.s
+++ b/arm9/asm/unk_02073DA8.s
@@ -246,7 +246,7 @@ _02073F66:
add r2, sp, #0x0
bl SetMonData
add r0, r6, #0x0
- bl FUN_02069EC4
+ bl Pokemon_UpdateArceusForme
ldr r2, _02074058 ; =0x0000069C
mov r1, #0x52
ldr r0, [r5, r2]
@@ -633,7 +633,7 @@ FUN_020742A8: ; 0x020742A8
add r2, sp, #0x0
bl SetMonData
add r0, r5, #0x0
- bl FUN_02069EC4
+ bl Pokemon_UpdateArceusForme
ldr r1, _02074330 ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r4, r1]
@@ -790,7 +790,7 @@ FUN_02074428: ; 0x02074428
ldrb r1, [r4, r1]
ldr r0, [r0, #0x0]
bl GetPartyMonByIndex
- bl FUN_0206AA84
+ bl Pokemon_RemoveCapsule
ldr r0, _0207444C ; =0x000005A4
mov r1, #0x0
ldr r0, [r4, r0]
diff --git a/arm9/asm/unk_02079C70.s b/arm9/asm/unk_02079C70.s
index c701f1a8..33c0a040 100644
--- a/arm9/asm/unk_02079C70.s
+++ b/arm9/asm/unk_02079C70.s
@@ -1536,7 +1536,7 @@ _0207A896:
add r4, r0, #0x0
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
b _0207A8C0
_0207A8BA:
bl FUN_0207B628
@@ -1825,7 +1825,7 @@ FUN_0207AAE0: ; 0x0207AAE0
add r4, r0, #0x0
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
add r0, r5, #0x0
add r1, r4, #0x0
add r2, r7, #0x0
@@ -2163,7 +2163,7 @@ _0207AD26:
_0207ADE0:
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_02069BC8
+ bl MonGetFlavorPreference
cmp r0, #0x1
bne _0207ADF4
add r0, r5, #0x0
@@ -2202,7 +2202,7 @@ _0207ADFE:
orr r0, r2
str r0, [r5, #0x50]
add r0, r6, #0x0
- bl FUN_02069E94
+ bl Pokemon_IsImmuneToPokerus
cmp r0, #0x1
bne _0207AE4E
ldr r1, [r5, #0x50]
@@ -2215,7 +2215,7 @@ _0207ADFE:
b _0207AE84
_0207AE4E:
add r0, r6, #0x0
- bl FUN_02069E74
+ bl Pokemon_HasPokerus
cmp r0, #0x1
bne _0207AE7C
ldr r2, [r5, #0x50]
diff --git a/arm9/asm/unk_0207D5BC.s b/arm9/asm/unk_0207D5BC.s
index ca5fef37..2546b905 100644
--- a/arm9/asm/unk_0207D5BC.s
+++ b/arm9/asm/unk_0207D5BC.s
@@ -1540,7 +1540,7 @@ FUN_0207E190: ; 0x0207E190
add r4, r0, #0x0
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r5, r0]
diff --git a/arm9/asm/unk_0207FD00.s b/arm9/asm/unk_0207FD00.s
index 294b8bfc..e48ad6f9 100644
--- a/arm9/asm/unk_0207FD00.s
+++ b/arm9/asm/unk_0207FD00.s
@@ -5,14 +5,14 @@
.global UNK_020FBB48
UNK_020FBB48: ; 0x020FBB48
- .byte 0x46, 0x00, 0x41, 0x00, 0x42, 0x00, 0x43, 0x00, 0x44, 0x00, 0x45, 0x00
+ .short 0x0046, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045
.global UNK_020FBB54
UNK_020FBB54: ; 0x020FBB54
- .byte 0x47, 0x00, 0x48, 0x00, 0x49, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x4D, 0x00, 0x4E, 0x00
- .byte 0x4F, 0x00, 0x50, 0x00, 0x51, 0x00, 0x52, 0x00, 0x53, 0x00, 0x54, 0x00, 0x55, 0x00, 0x56, 0x00
- .byte 0x57, 0x00, 0x58, 0x00, 0x59, 0x00, 0x5A, 0x00, 0x5B, 0x00, 0x5C, 0x00, 0x5D, 0x00, 0x5E, 0x00
- .byte 0x5F, 0x00, 0x60, 0x00, 0x61, 0x00, 0x62, 0x00, 0x63, 0x00, 0x64, 0x00
+ .short 0x0047, 0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E
+ .short 0x004F, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056
+ .short 0x0057, 0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E
+ .short 0x005F, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064
.text
@@ -1171,7 +1171,7 @@ FUN_02080678: ; 0x02080678
_0208068A:
ldr r0, [r5, #0xc]
add r1, r4, #0x0
- bl FUN_02069BC8
+ bl MonGetFlavorPreference
cmp r0, #0x1
bne _02080698
add r6, r4, #0x1
diff --git a/arm9/asm/unk_02080C38.s b/arm9/asm/unk_02080C38.s
index 458d4420..0f1630ed 100644
--- a/arm9/asm/unk_02080C38.s
+++ b/arm9/asm/unk_02080C38.s
@@ -930,7 +930,7 @@ _02081304:
bl FUN_02029F9C
ldr r0, [r6, #0x8]
ldr r1, [r4, #0x0]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
mov r0, #0x8
mov r1, #0x14
bl String_ctor
diff --git a/arm9/global.inc b/arm9/global.inc
index c039fd35..fa50aacb 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -4797,24 +4797,24 @@
.extern FUN_020698E0
.extern FUN_020698E8
.extern FUN_020699A4
-.extern FUN_02069A64
-.extern FUN_02069AEC
+.extern CopyBoxPokemonToPokemon
+.extern Party_GetMaxLevel
.extern SpeciesToSinnohDexNo
-.extern FUN_02069B60
-.extern FUN_02069B88
-.extern FUN_02069BA0
-.extern FUN_02069BB4
-.extern FUN_02069BC8
-.extern FUN_02069BE4
-.extern FUN_02069BFC
-.extern FUN_02069C4C
-.extern FUN_02069CF4
-.extern FUN_02069D50
-.extern FUN_02069DC8
-.extern FUN_02069E74
-.extern FUN_02069E94
-.extern FUN_02069EC4
-.extern FUN_02069ECC
+.extern SinnohDexNoToSpecies
+.extern CopyPokemonToPokemon
+.extern CopyPokemonToBoxPokemon
+.extern CopyBoxPokemonToBoxPokemon
+.extern MonGetFlavorPreference
+.extern GetFlavorPreferenceFromPID
+.extern Species_LoadLearnsetTable
+.extern Party_GivePokerusAtRandom
+.extern Party_MaskMonsWithPokerus
+.extern Party_UpdatePokerus
+.extern Party_SpreadPokerus
+.extern Pokemon_HasPokerus
+.extern Pokemon_IsImmuneToPokerus
+.extern Pokemon_UpdateArceusForme
+.extern BoxMon_UpdateArceusForme
.extern GetArceusTypeByHeldItemEffect
.extern LoadWotbl_HandleAlternateForme
.extern FUN_02069FB0
@@ -4831,19 +4831,19 @@
.extern FUN_0206A998
.extern FUN_0206A9AC
.extern FUN_0206AA30
-.extern FUN_0206AA84
+.extern Pokemon_RemoveCapsule
.extern RestoreBoxMonPP
.extern LoadAllWazaTbl
.extern GetWazaAttr
.extern WazaGetMaxPp
.extern GetAttrFromWazaTbl
-.extern FUN_0206ABC4
+.extern EnemyTrainerSet_Init
.extern TrainerData_GetAttr
-.extern FUN_0206ACD4
-.extern FUN_0206AD4C
+.extern TrainerMessageWithIdPairExists
+.extern GetTrainerMessageByIdPair
.extern TrainerData_ReadTrData
.extern TrainerData_ReadTrPoke
-.extern FUN_0206AE00
+.extern TrainerClass_GetGenderOrTrainerCount
.extern PCStorage_init
.extern PCStorage_sizeof
.extern PCStorage_PlaceMonInFirstEmptySlotInAnyBox
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index f9672ea0..b665a9b3 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -14436,7 +14436,7 @@ MOD05_021EC4F0: ; 0x021EC4F0
_021EC544:
ldr r1, [sp, #4]
add r0, r4, #0
- bl FUN_02069BB4
+ bl CopyBoxPokemonToBoxPokemon
add r0, r5, #0
mov r1, #0
bl DayCareMon_SetSteps
@@ -14599,7 +14599,7 @@ MOD05_021EC668: ; 0x021EC668
lsr r7, r0, #0x10
add r0, r5, #0
add r1, r4, #0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
add r0, r4, #0
mov r1, #0xa0
mov r2, #0
@@ -14680,7 +14680,7 @@ MOD05_021EC744: ; 0x021EC744
add r4, r0, #0
add r0, r6, #0
add r1, r4, #0
- bl FUN_02069BA0
+ bl CopyPokemonToBoxPokemon
add r0, r4, #0
mov r1, #8
mov r2, #0
@@ -15240,7 +15240,7 @@ MOD05_021ECB6C: ; 0x021ECB6C
ldr r0, [sp, #0x18]
ldr r1, [sp, #0xc]
add r2, #0x30
- bl FUN_02069BFC
+ bl Species_LoadLearnsetTable
lsl r0, r0, #0x10
lsr r0, r0, #0x10
str r0, [sp, #0x14]
@@ -16911,7 +16911,7 @@ _021ED7CE:
bl SetMonData
add r0, r6, #0
add r1, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [sp, #0x10]
bl String_dtor
add r0, r6, #0
diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s
index 2af29137..02bc8f52 100644
--- a/arm9/modules/06/asm/module_06.s
+++ b/arm9/modules/06/asm/module_06.s
@@ -5094,7 +5094,7 @@ _0223BC5A:
str r0, [r1, #0x20]
ldr r0, [sp, #0x2c]
ldr r1, [r5, #0xc]
- bl FUN_0206ABC4
+ bl EnemyTrainerSet_Init
add r0, sp, #0x30
str r0, [sp]
ldr r1, [sp, #0x20]
@@ -5531,7 +5531,7 @@ _0223BFFE:
str r0, [r1, #0x20]
ldr r0, [sp, #0x24]
ldr r1, [r5, #0xc]
- bl FUN_0206ABC4
+ bl EnemyTrainerSet_Init
add r0, sp, #0x28
str r0, [sp]
ldr r1, [sp, #0x18]
@@ -5841,7 +5841,7 @@ _0223C2A2:
str r0, [r1, #0x20]
ldr r0, [r4]
ldr r1, [r5, #0xc]
- bl FUN_0206ABC4
+ bl EnemyTrainerSet_Init
add r0, sp, #0x28
str r0, [sp]
ldr r1, [sp, #0x1c]
@@ -22218,7 +22218,7 @@ _022445A6:
ldr r0, [sp, #4]
bl GetPartyMonByIndex
add r1, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add r0, r4, #0
mov r1, #0xa0
mov r2, #0
@@ -31096,10 +31096,10 @@ MOD06_0224891C: ; 0x0224891C
bl CreateInGameTradeMon
ldr r1, [sp, #0x20]
add r0, r7, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [r5, #4]
ldr r1, [sp, #0x24]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [sp, #0x20]
bl FUN_020690E4
str r0, [r4]
diff --git a/arm9/modules/07/asm/module_07.s b/arm9/modules/07/asm/module_07.s
index 2659dd5c..05283e3d 100644
--- a/arm9/modules/07/asm/module_07.s
+++ b/arm9/modules/07/asm/module_07.s
@@ -5049,7 +5049,7 @@ MOD07_02214720: ; 0x02214720
add r0, r1, r0
add r0, #0x29
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0x10]
ldr r0, [r4, #0x24]
mov r1, #0x10
@@ -5101,7 +5101,7 @@ _022147BC:
add r0, r1, r0
add r0, #0x29
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0x14]
ldr r0, [r4, #0x24]
mov r1, #0x10
@@ -5134,7 +5134,7 @@ _02214808:
add r0, r1, r0
add r0, #0x29
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0x18]
ldr r0, [r4, #0x24]
mov r1, #0x10
@@ -5167,7 +5167,7 @@ _02214854:
add r0, r1, r0
add r0, #0x29
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0x1c]
ldr r0, [r4, #0x24]
mov r1, #0x10
@@ -5205,12 +5205,12 @@ _022148A0:
bne _022148EA
add r0, #0x5d
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #8]
ldr r0, [r4]
add r0, #0xc5
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0xc]
ldr r0, [r4, #0x18]
add r1, r5, #0
@@ -5224,12 +5224,12 @@ _022148A0:
_022148EA:
add r0, #0x29
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #8]
ldr r0, [r4]
add r0, #0x91
ldrb r0, [r0]
- bl FUN_0206AE00
+ bl TrainerClass_GetGenderOrTrainerCount
str r0, [sp, #0xc]
ldr r0, [r4, #0x14]
add r1, r5, #0
diff --git a/arm9/modules/11/asm/module_11_thumb2.s b/arm9/modules/11/asm/module_11_thumb2.s
index a962fbf2..6b184294 100644
--- a/arm9/modules/11/asm/module_11_thumb2.s
+++ b/arm9/modules/11/asm/module_11_thumb2.s
@@ -4694,7 +4694,7 @@ MOD11_0223158C: ; 0x0223158C
lsl r0, r0, #0x18
lsr r4, r0, #0x18
add r0, r5, #0
- bl FUN_02069AEC
+ bl Party_GetMaxLevel
ldr r1, _022315BC ; =MOD11_0225DC1C
lsl r0, r0, #2
ldrb r1, [r1, r4]
@@ -4914,7 +4914,7 @@ _0223174C:
add r0, r4, #0
add r1, r7, #0
mov r3, #5
- bl FUN_0206AD4C
+ bl GetTrainerMessageByIdPair
add r0, r6, #0
mov r1, #0xff
bl FUN_02019620
@@ -24749,7 +24749,7 @@ _0223B414:
lsl r1, r1, #0x18
ldr r0, [sp]
lsr r1, r1, #0x18
- bl FUN_02069CF4
+ bl Party_MaskMonsWithPokerus
cmp r0, #0
beq _0223B42E
lsl r0, r4, #0x11
@@ -38100,9 +38100,9 @@ MOD11_02241CF0: ; 0x02241CF0
mov r1, #0
bl MOD11_0222FF88
add r6, r0, #0
- bl FUN_02069C4C
+ bl Party_GivePokerusAtRandom
add r0, r6, #0
- bl FUN_02069DC8
+ bl Party_SpreadPokerus
_02241D16:
cmp r4, #0
beq _02241D20
@@ -45181,7 +45181,7 @@ _022452F8:
ldr r0, [sp, #8]
mov r1, #0xd
mov r2, #5
- bl FUN_0206ACD4
+ bl TrainerMessageWithIdPairExists
cmp r0, #0
beq _02245334
mov r1, #0x85
@@ -45219,7 +45219,7 @@ _0224533C:
ldr r0, [sp, #8]
mov r1, #0xe
mov r2, #5
- bl FUN_0206ACD4
+ bl TrainerMessageWithIdPairExists
cmp r0, #0
beq _0224537C
ldr r1, _0224548C ; =0x00002E7D
@@ -45276,7 +45276,7 @@ _022453C6:
ldr r0, [sp, #8]
mov r1, #0xf
mov r2, #5
- bl FUN_0206ACD4
+ bl TrainerMessageWithIdPairExists
cmp r0, #0
beq _022453F0
ldr r1, _0224548C ; =0x00002E7D
@@ -45340,7 +45340,7 @@ _0224543A:
ldr r0, [sp, #8]
mov r1, #0x10
mov r2, #5
- bl FUN_0206ACD4
+ bl TrainerMessageWithIdPairExists
cmp r0, #0
beq _02245472
ldr r1, _0224548C ; =0x00002E7D
@@ -52971,7 +52971,7 @@ _02248E3A:
str r1, [r4, r0]
ldr r0, _02248F68 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -53002,7 +53002,7 @@ _02248E76:
str r1, [r4, r0]
ldr r0, _02248F68 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -53033,7 +53033,7 @@ _02248EB2:
str r1, [r4, r0]
ldr r0, _02248F68 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -53067,7 +53067,7 @@ _02248EFC:
str r1, [r4, r0]
ldr r0, _02248F68 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -53108,7 +53108,7 @@ _02248F64: .word 0x00002DB0
_02248F68: .word 0x00002DA8
_02248F6C:
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -54103,7 +54103,7 @@ _02249708: .word 0x00002DCC
_0224970C: .word 0x00002DA8
_02249710:
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -54135,7 +54135,7 @@ _0224972C:
str r1, [r4, r0]
ldr r0, _02249A5C ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -54167,7 +54167,7 @@ _0224976A:
str r1, [r4, r0]
ldr r0, _02249A5C ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -54199,7 +54199,7 @@ _022497A8:
str r1, [r4, r0]
ldr r0, _02249A5C ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -54234,7 +54234,7 @@ _022497F4:
str r1, [r4, r0]
ldr r0, _02249A5C ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
mov r1, #0
mvn r1, r1
cmp r0, r1
@@ -55536,7 +55536,7 @@ _0224A1B6:
add r2, r4, r0
ldr r0, _0224A344 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r6, #1
cmp r0, r1
bne _0224A1F6
@@ -55572,7 +55572,7 @@ _0224A1FC:
add r2, r4, r0
ldr r0, _0224A344 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r6, #1
cmp r0, r1
bne _0224A23C
@@ -55608,7 +55608,7 @@ _0224A242:
add r2, r4, r0
ldr r0, _0224A344 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r6, #1
cmp r0, r1
bne _0224A282
@@ -55644,7 +55644,7 @@ _0224A288:
add r2, r4, r0
ldr r0, _0224A344 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r6, #1
cmp r0, r1
bne _0224A2C8
@@ -55680,7 +55680,7 @@ _0224A2CE:
add r2, r4, r0
ldr r0, _0224A344 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r6, #1
cmp r0, r1
bne _0224A30E
@@ -56300,7 +56300,7 @@ _0224A77A:
add r2, r4, r0
ldr r0, _0224A874 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r5, #1
cmp r0, r1
ldr r0, _0224A850 ; =0x00003118
@@ -56333,7 +56333,7 @@ _0224A7BC:
add r2, r4, r0
ldr r0, _0224A874 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r5, #1
cmp r0, r1
ldr r0, _0224A850 ; =0x00003118
@@ -56366,7 +56366,7 @@ _0224A7FE:
add r2, r4, r0
ldr r0, _0224A874 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r5, #1
cmp r0, r1
ldr r0, _0224A850 ; =0x00003118
@@ -56413,7 +56413,7 @@ _0224A878:
add r2, r4, r0
ldr r0, _0224AB18 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r5, #1
cmp r0, r1
ldr r0, _0224AB1C ; =0x00003118
@@ -56446,7 +56446,7 @@ _0224A8B0:
add r2, r4, r0
ldr r0, _0224AB18 ; =0x00002DA8
ldr r0, [r2, r0]
- bl FUN_02069BE4
+ bl GetFlavorPreferenceFromPID
sub r1, r5, #1
cmp r0, r1
ldr r0, _0224AB1C ; =0x00003118
@@ -71782,7 +71782,7 @@ _022521DC:
bl GetPartyMonByIndex
add r1, r0, #0
ldr r0, [sp, #0x1c]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [r4, #4]
ldrb r1, [r5, #0x1c]
add r0, r0, r6
@@ -71822,7 +71822,7 @@ _02252232:
bl GetPartyMonByIndex
add r1, r0, #0
ldr r0, [sp, #0x20]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [r4, #4]
ldrb r1, [r5, #0x1c]
add r0, r0, r7
diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s
index 7b1720cb..53969b45 100644
--- a/arm9/modules/14/asm/module_14.s
+++ b/arm9/modules/14/asm/module_14.s
@@ -8885,7 +8885,7 @@ _021DBC56:
lsl r1, r1, #4
ldr r0, [r4]
ldr r1, [r5, r1]
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
mov r1, #0x49
lsl r1, r1, #2
ldr r0, [r5, r1]
@@ -9038,7 +9038,7 @@ _021DBD8E:
lsl r1, r1, #4
ldr r1, [r5, r1]
add r0, r7, r6
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
b _021DBDB0
_021DBDA2:
mov r1, #0x1a
@@ -9367,7 +9367,7 @@ _021DC034:
lsl r1, r1, #4
ldr r0, [sp]
ldr r1, [r5, r1]
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
mov r0, #0x1a
lsl r0, r0, #4
ldr r0, [r5, r0]
@@ -9633,7 +9633,7 @@ _021DC254:
cmp r0, r1
bne _021DC26A
ldr r0, [r4]
- bl FUN_02069ECC
+ bl BoxMon_UpdateArceusForme
_021DC26A:
add sp, #4
pop {r3, r4, r5, r6}
diff --git a/arm9/modules/23/asm/module_23.s b/arm9/modules/23/asm/module_23.s
index f3a4f14c..5550c76b 100644
--- a/arm9/modules/23/asm/module_23.s
+++ b/arm9/modules/23/asm/module_23.s
@@ -1032,7 +1032,7 @@ MOD23_02254F94: ; 0x02254F94
_02254FCE:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
- bl FUN_02069B60
+ bl SinnohDexNoToSpecies
add r4, r0, #0
_02254FD8:
cmp r4, #0
diff --git a/arm9/modules/62/asm/module_62.s b/arm9/modules/62/asm/module_62.s
index 79190f60..73025559 100644
--- a/arm9/modules/62/asm/module_62.s
+++ b/arm9/modules/62/asm/module_62.s
@@ -4466,7 +4466,7 @@ MOD62_0222F80C: ; 0x0222F80C
add r1, #0x64
ldr r0, [r0, #4]
ldr r1, [r5, r1]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
pop {r3, r4, r5, r6, r7, pc}
_0222F832:
ldr r1, [r5]
@@ -4487,7 +4487,7 @@ _0222F83E:
ldr r1, _0222F86C ; =0x00000428
add r0, r7, #0
ldr r1, [r5, r1]
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
pop {r3, r4, r5, r6, r7, pc}
_0222F85C:
ldr r1, [r5]
diff --git a/arm9/modules/71/asm/module_71.s b/arm9/modules/71/asm/module_71.s
index 4f418110..b77c8662 100644
--- a/arm9/modules/71/asm/module_71.s
+++ b/arm9/modules/71/asm/module_71.s
@@ -6329,12 +6329,12 @@ MOD71_022309E8: ; 0x022309E8
add r1, r6, #0
bl GetPartyMonByIndex
add r1, r7, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [sp, #8]
ldr r1, [sp, #0xc]
bl GetPartyMonByIndex
add r1, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add r0, r4, #0
mov r1, #0x4c
mov r2, #0
@@ -6359,13 +6359,13 @@ _02230A40:
mov r3, #0
bl FUN_0208089C
add r0, r4, #0
- bl FUN_0206AA84
+ bl Pokemon_RemoveCapsule
ldr r1, [r5, #0x3c]
add r0, r7, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r1, [r5, #0x40]
add r0, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
bl FUN_02031190
mov r1, #1
eor r0, r1
@@ -6390,13 +6390,13 @@ _02230A98:
bl GetPartyMonByIndex
add r1, r0, #0
add r0, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [sp, #8]
ldr r1, [sp, #0xc]
bl GetPartyMonByIndex
add r1, r0, #0
add r0, r7, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
ldr r0, [r5, #0x1c]
add r1, r4, #0
bl MOD71_02230AE4
diff --git a/arm9/modules/80/asm/module_80.s b/arm9/modules/80/asm/module_80.s
index 8e74df8f..667a4ae1 100644
--- a/arm9/modules/80/asm/module_80.s
+++ b/arm9/modules/80/asm/module_80.s
@@ -13583,7 +13583,7 @@ _022342B0:
add r0, #0xbc
ldr r0, [r0]
add r1, r5, #0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
_022342BC:
ldr r0, [r4]
ldr r0, [r0, #0x1c]
@@ -14618,7 +14618,7 @@ MOD80_02234AC0: ; 0x02234AC0
push {r4, lr}
add r4, r0, #0
add r0, #0xd4
- bl FUN_0206AA84
+ bl Pokemon_RemoveCapsule
add r0, r4, #0
add r0, #0xd4
bl MOD80_0222DBC4
@@ -14939,7 +14939,7 @@ MOD80_02234CFC: ; 0x02234CFC
push {r4, lr}
add r4, r0, #0
add r0, #0xd4
- bl FUN_0206AA84
+ bl Pokemon_RemoveCapsule
add r0, r4, #0
add r0, #0xc4
ldr r1, [r0]
@@ -16076,7 +16076,7 @@ MOD80_02235534: ; 0x02235534
ldr r0, [r0, #0xc]
bl PCStorage_GetMonByIndexPair
add r1, r4, #0
- bl FUN_02069A64
+ bl CopyBoxPokemonToPokemon
add r2, r5, #0
ldr r0, [r5]
add r2, #0xb8
@@ -16104,7 +16104,7 @@ _02235590:
ldr r0, [r0, #8]
bl GetPartyMonByIndex
add r4, r0, #0
- bl FUN_0206AA84
+ bl Pokemon_RemoveCapsule
add r2, r5, #0
ldr r0, [r5]
add r2, #0xb8
@@ -17720,7 +17720,7 @@ MOD80_02236218: ; 0x02236218
bl GetPartyMonByIndex
add r1, r0, #0
add r0, r4, #0
- bl FUN_02069B88
+ bl CopyPokemonToPokemon
add sp, #8
pop {r3, r4, r5, pc}
_02236248:
diff --git a/arm9/src/pokemon.c b/arm9/src/pokemon.c
index 48b1a225..7fe8191a 100644
--- a/arm9/src/pokemon.c
+++ b/arm9/src/pokemon.c
@@ -10,7 +10,7 @@
#include "math_util.h"
#include "move_data.h"
#include "string_util.h"
-#include "text.h"
+#include "seal.h"
#include "msgdata.h"
#include "itemtool.h"
#include "constants/abilities.h"
@@ -21,8 +21,6 @@
#pragma thumb on
-extern void FUN_02029C74(const u8 *, u8 *);
-
u32 GetMonDataInternal(struct Pokemon * pokemon, int attr, void * ptr);
u32 GetBoxMonDataInternal(struct BoxPokemon * pokemon, int attr, void * ptr);
void SetMonDataInternal(struct Pokemon * pokemon, int attr, void * ptr);
@@ -39,12 +37,12 @@ u32 FUN_020696A8(struct BoxPokemon * boxmon, u16 move);
void FUN_02069718(struct BoxPokemon * boxmon, u16 move);
void BoxMonSetMoveInSlot(struct BoxPokemon * boxmon, u16 move, u8 slot);
void FUN_020698E8(struct BoxPokemon * boxmon, int slot1, int slot2);
-s8 FUN_02069BD0(struct BoxPokemon * boxmon, int flavor);
-s8 FUN_02069BE4(u32 personality, int flavor);
-u8 FUN_02069CF4(struct PlayerParty * party_p, u8 mask);
-BOOL FUN_02069E7C(struct BoxPokemon * boxmon);
-BOOL FUN_02069E9C(struct BoxPokemon * boxmon);
-void FUN_02069ECC(struct BoxPokemon * boxmon);
+s8 BoxMonGetFlavorPreference(struct BoxPokemon * boxmon, int flavor);
+s8 GetFlavorPreferenceFromPID(u32 personality, int flavor);
+u8 Party_MaskMonsWithPokerus(struct PlayerParty * party_p, u8 mask);
+BOOL BoxMon_HasPokerus(struct BoxPokemon * boxmon);
+BOOL BoxMon_IsImmuneToPokerus(struct BoxPokemon * boxmon);
+void BoxMon_UpdateArceusForme(struct BoxPokemon * boxmon);
void LoadWotbl_HandleAlternateForme(int species, int forme, u16 * wotbl);
void FUN_0206A054(struct BoxPokemon * boxmon, struct PlayerData * a1, u32 pokeball, u32 a3, u32 encounterType, u32 heap_id);
BOOL MonHasMove(struct Pokemon * pokemon, u16 move);
@@ -118,61 +116,62 @@ const u16 sLegendaryMonsList[] = {
SPECIES_ARCEUS,
};
-const s8 UNK_020F7F16[][5] = {
- // Atk, Def, Spd, SpA, SpD
- { 0, 0, 0, 0, 0},
- { 1, 0, 0, 0, -1},
- { 1, 0, -1, 0, 0},
- { 1, -1, 0, 0, 0},
- { 1, 0, 0, -1, 0},
- { -1, 0, 0, 0, 1},
- { 0, 0, 0, 0, 0},
- { 0, 0, -1, 0, 1},
- { 0, -1, 0, 0, 1},
- { 0, 0, 0, -1, 1},
- { -1, 0, 1, 0, 0},
- { 0, 0, 1, 0, -1},
- { 0, 0, 0, 0, 0},
- { 0, -1, 1, 0, 0},
- { 0, 0, 1, -1, 0},
- { -1, 1, 0, 0, 0},
- { 0, 1, 0, 0, -1},
- { 0, 1, -1, 0, 0},
- { 0, 0, 0, 0, 0},
- { 0, 1, 0, -1, 0},
- { -1, 0, 0, 1, 0},
- { 0, 0, 0, 1, -1},
- { 0, 0, -1, 1, 0},
- { 0, -1, 0, 1, 0},
- { 0, 0, 0, 0, 0},
+const s8 sFlavorPreferencesByNature[][5] = {
+ // Spicy, Dry, Sweet, Bitter, Sour
+ { 0, 0, 0, 0, 0 }, // NATURE_HARDY
+ { 1, 0, 0, 0, -1 }, // NATURE_LONELY
+ { 1, 0, -1, 0, 0 }, // NATURE_BRAVE
+ { 1, -1, 0, 0, 0 }, // NATURE_ADAMANT
+ { 1, 0, 0, -1, 0 }, // NATURE_NAUGHTY
+ { -1, 0, 0, 0, 1 }, // NATURE_BOLD
+ { 0, 0, 0, 0, 0 }, // NATURE_DOCILE
+ { 0, 0, -1, 0, 1 }, // NATURE_RELAXED
+ { 0, -1, 0, 0, 1 }, // NATURE_IMPISH
+ { 0, 0, 0, -1, 1 }, // NATURE_LAX
+ { -1, 0, 1, 0, 0 }, // NATURE_TIMID
+ { 0, 0, 1, 0, -1 }, // NATURE_HASTY
+ { 0, 0, 0, 0, 0 }, // NATURE_SERIOUS
+ { 0, -1, 1, 0, 0 }, // NATURE_JOLLY
+ { 0, 0, 1, -1, 0 }, // NATURE_NAIVE
+ { -1, 1, 0, 0, 0 }, // NATURE_MODEST
+ { 0, 1, 0, 0, -1 }, // NATURE_MILD
+ { 0, 1, -1, 0, 0 }, // NATURE_QUIET
+ { 0, 0, 0, 0, 0 }, // NATURE_BASHFUL
+ { 0, 1, 0, -1, 0 }, // NATURE_RASH
+ { -1, 0, 0, 1, 0 }, // NATURE_CALM
+ { 0, 0, 0, 1, -1 }, // NATURE_GENTLE
+ { 0, 0, -1, 1, 0 }, // NATURE_SASSY
+ { 0, -1, 0, 1, 0 }, // NATURE_CAREFUL
+ { 0, 0, 0, 0, 0 }, // NATURE_QUIRKY
};
const s8 sNatureStatMods[][5] = {
- { 0, 0, 0, 0, 0 },
- { 1, -1, 0, 0, 0 },
- { 1, 0, -1, 0, 0 },
- { 1, 0, 0, -1, 0 },
- { 1, 0, 0, 0, -1 },
- { -1, 1, 0, 0, 0 },
- { 0, 0, 0, 0, 0 },
- { 0, 1, -1, 0, 0 },
- { 0, 1, 0, -1, 0 },
- { 0, 1, 0, 0, -1 },
- { -1, 0, 1, 0, 0 },
- { 0, -1, 1, 0, 0 },
- { 0, 0, 0, 0, 0 },
- { 0, 0, 1, -1, 0 },
- { 0, 0, 1, 0, -1 },
- { -1, 0, 0, 1, 0 },
- { 0, -1, 0, 1, 0 },
- { 0, 0, -1, 1, 0 },
- { 0, 0, 0, 0, 0 },
- { 0, 0, 0, 1, -1 },
- { -1, 0, 0, 0, 1 },
- { 0, -1, 0, 0, 1 },
- { 0, 0, -1, 0, 1 },
- { 0, 0, 0, -1, 1 },
- { 0, 0, 0, 0, 0 },
+ // Atk, Def, Speed, SpAtk, SpDef
+ { 0, 0, 0, 0, 0 }, // NATURE_HARDY
+ { 1, -1, 0, 0, 0 }, // NATURE_LONELY
+ { 1, 0, -1, 0, 0 }, // NATURE_BRAVE
+ { 1, 0, 0, -1, 0 }, // NATURE_ADAMANT
+ { 1, 0, 0, 0, -1 }, // NATURE_NAUGHTY
+ { -1, 1, 0, 0, 0 }, // NATURE_BOLD
+ { 0, 0, 0, 0, 0 }, // NATURE_DOCILE
+ { 0, 1, -1, 0, 0 }, // NATURE_RELAXED
+ { 0, 1, 0, -1, 0 }, // NATURE_IMPISH
+ { 0, 1, 0, 0, -1 }, // NATURE_LAX
+ { -1, 0, 1, 0, 0 }, // NATURE_TIMID
+ { 0, -1, 1, 0, 0 }, // NATURE_HASTY
+ { 0, 0, 0, 0, 0 }, // NATURE_SERIOUS
+ { 0, 0, 1, -1, 0 }, // NATURE_JOLLY
+ { 0, 0, 1, 0, -1 }, // NATURE_NAIVE
+ { -1, 0, 0, 1, 0 }, // NATURE_MODEST
+ { 0, -1, 0, 1, 0 }, // NATURE_MILD
+ { 0, 0, -1, 1, 0 }, // NATURE_QUIET
+ { 0, 0, 0, 0, 0 }, // NATURE_BASHFUL
+ { 0, 0, 0, 1, -1 }, // NATURE_RASH
+ { -1, 0, 0, 0, 1 }, // NATURE_CALM
+ { 0, -1, 0, 0, 1 }, // NATURE_GENTLE
+ { 0, 0, -1, 0, 1 }, // NATURE_SASSY
+ { 0, 0, 0, -1, 1 }, // NATURE_CAREFUL
+ { 0, 0, 0, 0, 0 }, // NATURE_QUIRKY
};
void ZeroMonData(struct Pokemon * pokemon)
@@ -563,10 +562,10 @@ u32 GetMonDataInternal(struct Pokemon * pokemon, int attr, void * dest)
case MON_DATA_SPDEF:
return pokemon->party.spdef;
case MON_DATA_MAIL_STRUCT:
- Mail_copy(&pokemon->party.seal_something, dest);
+ Mail_copy(&pokemon->party.mail, dest);
return 1;
case MON_DATA_SEAL_COORDS:
- FUN_02029C74(pokemon->party.sealCoords, dest);
+ FUN_02029C74(&pokemon->party.sealCoords, dest);
return 1;
default:
return GetBoxMonDataInternal(&pokemon->box, attr, dest);
@@ -1051,10 +1050,10 @@ void SetMonDataInternal(struct Pokemon * pokemon, int attr, void * value)
pokemon->party.spdef = VALUE(u16);
break;
case MON_DATA_MAIL_STRUCT:
- Mail_copy((const struct Mail *)value, &pokemon->party.seal_something);
+ Mail_copy((const struct Mail *)value, &pokemon->party.mail);
break;
case MON_DATA_SEAL_COORDS:
- FUN_02029C74((const u8 *)value, pokemon->party.sealCoords);
+ FUN_02029C74((CapsuleArray *)value, &pokemon->party.sealCoords);
break;
default:
SetBoxMonDataInternal(&pokemon->box, attr, value);
@@ -2990,10 +2989,10 @@ BOOL MonHasMove(struct Pokemon * pokemon, u16 move)
return FALSE;
}
-void FUN_02069A64(struct BoxPokemon * src, struct Pokemon * dest)
+void CopyBoxPokemonToPokemon(struct BoxPokemon * src, struct Pokemon * dest)
{
u32 sp0 = 0;
- u8 sp4[12][2];
+ CapsuleArray sp4;
struct Mail * mail;
dest->box = *src;
if (dest->box.box_lock)
@@ -3005,12 +3004,12 @@ void FUN_02069A64(struct BoxPokemon * src, struct Pokemon * dest)
SetMonData(dest, MON_DATA_MAIL_STRUCT, mail);
FreeToHeap(mail);
SetMonData(dest, MON_DATA_CAPSULE, &sp0);
- MIi_CpuClearFast(0, sp4, sizeof(sp4));
- SetMonData(dest, MON_DATA_SEAL_COORDS, sp4);
+ MIi_CpuClearFast(0, &sp4, sizeof(sp4));
+ SetMonData(dest, MON_DATA_SEAL_COORDS, &sp4);
CalcMonLevelAndStats(dest);
}
-u8 FUN_02069AEC(struct PlayerParty * party)
+u8 Party_GetMaxLevel(struct PlayerParty * party)
{
int i;
int r7 = GetPartyCount(party);
@@ -3037,7 +3036,7 @@ u16 SpeciesToSinnohDexNo(u16 species)
return ret;
}
-u16 FUN_02069B60(u16 sinnoh_dex)
+u16 SinnohDexNoToSpecies(u16 sinnoh_dex)
{
u16 ret = SPECIES_NONE;
if (sinnoh_dex <= SINNOH_DEX_COUNT)
@@ -3045,38 +3044,38 @@ u16 FUN_02069B60(u16 sinnoh_dex)
return ret;
}
-void FUN_02069B88(struct Pokemon * src, struct Pokemon * dest)
+void CopyPokemonToPokemon(struct Pokemon * src, struct Pokemon * dest)
{
*dest = *src;
}
-void FUN_02069BA0(struct Pokemon * src, struct BoxPokemon * dest)
+void CopyPokemonToBoxPokemon(struct Pokemon * src, struct BoxPokemon * dest)
{
*dest = src->box;
}
-void FUN_02069BB4(struct BoxPokemon * src, struct BoxPokemon * dest)
+void CopyBoxPokemonToBoxPokemon(struct BoxPokemon * src, struct BoxPokemon * dest)
{
*dest = *src;
}
-s8 FUN_02069BC8(struct Pokemon * pokemon, int flavor)
+s8 MonGetFlavorPreference(struct Pokemon * pokemon, int flavor)
{
- return FUN_02069BD0(&pokemon->box, flavor);
+ return BoxMonGetFlavorPreference(&pokemon->box, flavor);
}
-s8 FUN_02069BD0(struct BoxPokemon * boxmon, int flavor)
+s8 BoxMonGetFlavorPreference(struct BoxPokemon * boxmon, int flavor)
{
u32 personality = GetBoxMonData(boxmon, MON_DATA_PERSONALITY, NULL);
- return FUN_02069BE4(personality, flavor);
+ return GetFlavorPreferenceFromPID(personality, flavor);
}
-s8 FUN_02069BE4(u32 personality, int flavor)
+s8 GetFlavorPreferenceFromPID(u32 personality, int flavor)
{
- return UNK_020F7F16[GetNatureFromPersonality(personality)][flavor];
+ return sFlavorPreferencesByNature[GetNatureFromPersonality(personality)][flavor];
}
-int FUN_02069BFC(u16 species, u32 forme, u16 * dest)
+int Species_LoadLearnsetTable(u16 species, u32 forme, u16 * dest)
{
int i;
u16 * wotbl = AllocFromHeap(0, 22 * sizeof(u16));
@@ -3089,7 +3088,7 @@ int FUN_02069BFC(u16 species, u32 forme, u16 * dest)
return i;
}
-void FUN_02069C4C(struct PlayerParty * party)
+void Party_GivePokerusAtRandom(struct PlayerParty * party)
{
int count = GetPartyCount(party);
int idx;
@@ -3105,7 +3104,7 @@ void FUN_02069C4C(struct PlayerParty * party)
idx = LCRandom() % count;
pokemon = GetPartyMonByIndex(party, idx);
} while (GetMonData(pokemon, MON_DATA_SPECIES, NULL) == SPECIES_NONE || GetMonData(pokemon, MON_DATA_IS_EGG, NULL));
- if (!FUN_02069CF4(party, (u8)MaskOfFlagNo(idx)))
+ if (!Party_MaskMonsWithPokerus(party, (u8)MaskOfFlagNo(idx)))
{
do
{
@@ -3121,7 +3120,7 @@ void FUN_02069C4C(struct PlayerParty * party)
}
}
-u8 FUN_02069CF4(struct PlayerParty * party, u8 mask)
+u8 Party_MaskMonsWithPokerus(struct PlayerParty * party, u8 mask)
{
int i = 0;
u32 flag = 1;
@@ -3152,7 +3151,7 @@ u8 FUN_02069CF4(struct PlayerParty * party, u8 mask)
return ret;
}
-void FUN_02069D50(struct PlayerParty * party, int r5)
+void Party_UpdatePokerus(struct PlayerParty * party, int r5)
{
int i;
u8 pokerus;
@@ -3178,7 +3177,7 @@ void FUN_02069D50(struct PlayerParty * party, int r5)
}
}
-void FUN_02069DC8(struct PlayerParty * party)
+void Party_SpreadPokerus(struct PlayerParty * party)
{
int count = GetPartyCount(party);
int i;
@@ -3215,22 +3214,22 @@ void FUN_02069DC8(struct PlayerParty * party)
}
}
-BOOL FUN_02069E74(struct Pokemon * pokemon)
+BOOL Pokemon_HasPokerus(struct Pokemon * pokemon)
{
- return FUN_02069E7C(&pokemon->box);
+ return BoxMon_HasPokerus(&pokemon->box);
}
-BOOL FUN_02069E7C(struct BoxPokemon * boxmon)
+BOOL BoxMon_HasPokerus(struct BoxPokemon * boxmon)
{
return !!(GetBoxMonData(boxmon, MON_DATA_POKERUS, NULL) & 0xF);
}
-BOOL FUN_02069E94(struct Pokemon * pokemon)
+BOOL Pokemon_IsImmuneToPokerus(struct Pokemon * pokemon)
{
- return FUN_02069E9C(&pokemon->box);
+ return BoxMon_IsImmuneToPokerus(&pokemon->box);
}
-BOOL FUN_02069E9C(struct BoxPokemon * boxmon)
+BOOL BoxMon_IsImmuneToPokerus(struct BoxPokemon * boxmon)
{
u8 pokerus = (u8)GetBoxMonData(boxmon, MON_DATA_POKERUS, NULL);
if (pokerus & 0xF)
@@ -3240,12 +3239,12 @@ BOOL FUN_02069E9C(struct BoxPokemon * boxmon)
return FALSE;
}
-void FUN_02069EC4(struct Pokemon * pokemon)
+void Pokemon_UpdateArceusForme(struct Pokemon * pokemon)
{
- FUN_02069ECC(&pokemon->box);
+ BoxMon_UpdateArceusForme(&pokemon->box);
}
-void FUN_02069ECC(struct BoxPokemon * boxmon)
+void BoxMon_UpdateArceusForme(struct BoxPokemon * boxmon)
{
u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES, NULL);
u32 ability = GetBoxMonData(boxmon, MON_DATA_ABILITY, NULL);
@@ -3460,7 +3459,7 @@ void FUN_0206A23C(struct Pokemon * r5, u32 personality)
struct Pokemon * sp4;
sp4 = AllocMonZeroed(0);
- FUN_02069B88(r5, sp4);
+ CopyPokemonToPokemon(r5, sp4);
r4 = &GetSubstruct(&sp4->box, r5->box.pid, 0)->blockA;
r6 = &GetSubstruct(&sp4->box, r5->box.pid, 1)->blockB;
r7 = &GetSubstruct(&sp4->box, r5->box.pid, 2)->blockC;
@@ -3711,7 +3710,7 @@ int FUN_0206AA30(int x)
case TRAINER_CLASS_PKMN_TRAINER_POKEKID:
return x - TRAINER_CLASS_COMMANDER_JUPITER;
default:
- if (FUN_0206AE00(x) == 1)
+ if (TrainerClass_GetGenderOrTrainerCount(x) == 1)
return 1;
else
return 0;
@@ -3721,13 +3720,13 @@ int FUN_0206AA30(int x)
}
}
-void FUN_0206AA84(struct Pokemon * pokemon)
+void Pokemon_RemoveCapsule(struct Pokemon * pokemon)
{
u8 sp0 = 0;
- u8 sp1[12][2];
- MIi_CpuClearFast(0, sp1, sizeof(sp1));
+ CapsuleArray sp1;
+ MIi_CpuClearFast(0, &sp1, sizeof(sp1));
SetMonData(pokemon, MON_DATA_CAPSULE, &sp0);
- SetMonData(pokemon, MON_DATA_SEAL_COORDS, sp1);
+ SetMonData(pokemon, MON_DATA_SEAL_COORDS, &sp1);
}
void RestoreBoxMonPP(struct BoxPokemon * boxmon)
diff --git a/arm9/src/trainer_data.c b/arm9/src/trainer_data.c
new file mode 100644
index 00000000..7c52a78f
--- /dev/null
+++ b/arm9/src/trainer_data.c
@@ -0,0 +1,403 @@
+#include "global.h"
+#include "heap.h"
+#include "trainer_data.h"
+#include "math_util.h"
+#include "party.h"
+#include "proto.h"
+#include "msgdata.h"
+#include "constants/trainer_classes.h"
+
+#pragma thumb on
+
+extern void * FUN_02024EC0(struct SaveBlock2 *);
+extern u16 * FUN_02024EE8(void *);
+
+// Loads all battle opponents, including multi-battle partner if exists.
+void EnemyTrainerSet_Init(struct EnemyTrainerSet * enemies, struct SaveBlock2 * sav2, u32 heap_id)
+{
+ struct TrainerDataLoaded trdata;
+ struct MsgData * msgData;
+ u16 * rivalName;
+ s32 i;
+ struct String * str;
+
+ // FIXME: String formatting in files/msgdata/msg/narc_0559.txt is abnormal.
+ msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 559, heap_id);
+ rivalName = FUN_02024EE8(FUN_02024EC0(sav2));
+ for (i = 0; i < 4; i++)
+ {
+ if (enemies->trainer_idxs[i] != 0)
+ {
+ TrainerData_ReadTrData(enemies->trainer_idxs[i], &trdata.data);
+ enemies->datas[i] = trdata;
+ if (trdata.data.trainerClass == TRAINER_CLASS_PKMN_TRAINER_BARRY)
+ {
+ CopyU16StringArray(enemies->datas[i].name, rivalName);
+ }
+ else
+ {
+ str = NewString_ReadMsgData(msgData, enemies->trainer_idxs[i]);
+ CopyStringToU16Array(str, enemies->datas[i].name, OT_NAME_LENGTH + 1);
+ String_dtor(str);
+ }
+ CreateNPCTrainerParty(enemies, i, heap_id);
+ }
+ }
+ enemies->flags |= trdata.data.doubleBattle;
+ DestroyMsgData(msgData);
+}
+
+s32 TrainerData_GetAttr(u32 tr_idx, u32 attr_no)
+{
+ struct TrainerDataLoaded trainer;
+ s32 ret;
+
+ TrainerData_ReadTrData(tr_idx, &trainer.data);
+ switch (attr_no)
+ {
+ case 0:
+ ret = trainer.data.trainerType;
+ break;
+ case 1:
+ ret = trainer.data.trainerClass;
+ break;
+ case 2:
+ ret = trainer.data.unk_2;
+ break;
+ case 3:
+ ret = trainer.data.npoke;
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ attr_no -= 4;
+ ret = trainer.data.items[attr_no];
+ break;
+ case 8:
+ ret = (s32)trainer.data.unk_C;
+ break;
+ case 9:
+ ret = (s32)trainer.data.doubleBattle;
+ break;
+ }
+ return ret; // UB: uninitialized in event of invalid attr
+}
+
+// Relevant files:
+// files/poketool/trmsg/trtbl.narc
+// files/poketool/trmsg/trtblofs.narc
+// files/msgdata/msg/narc_0558.txt
+// trtbl is a single-member NARC whose entries are two shorts each. The first short
+// designates the trainer ID and the second the message ID. They are ordered the same
+// as the corresponding msgdata file. All messages for a given trainer are found together,
+// however the trainers are not in order in this file. trtblofs gives a pointer into trtbl
+// for each trainer. trtblofs is also a single-member NARC whose entries are shorts, one
+// per NPC trainer.
+BOOL TrainerMessageWithIdPairExists(u32 trainer_idx, u32 msg_id, u32 heap_id)
+{
+ u16 rdbuf[3];
+ struct NARC * trTblNarc;
+ BOOL ret = FALSE;
+ u32 trTblSize;
+
+ trTblSize = GetNarcMemberSizeByIdPair(NARC_POKETOOL_TRMSG_TRTBL, 0);
+ ReadFromNarcMemberByIdPair(&rdbuf[0], NARC_POKETOOL_TRMSG_TRTBLOFS, 0, trainer_idx * 2, 2);
+ trTblNarc = NARC_ctor(NARC_POKETOOL_TRMSG_TRTBL, heap_id);
+ while (rdbuf[0] != trTblSize)
+ {
+ NARC_ReadFromMember(trTblNarc, 0, rdbuf[0], 4, &rdbuf[1]);
+ if (rdbuf[1] == trainer_idx && rdbuf[2] == msg_id)
+ {
+ ret = TRUE;
+ break;
+ }
+ if (rdbuf[1] != trainer_idx)
+ break;
+ rdbuf[0] += 4;
+ }
+ NARC_dtor(trTblNarc);
+ return ret;
+}
+
+void GetTrainerMessageByIdPair(u32 trainer_idx, u32 msg_id, struct String * str, u32 heap_id)
+{
+ u16 rdbuf[3];
+ u32 trTblSize;
+ struct NARC * trTblNarc;
+
+ trTblSize = GetNarcMemberSizeByIdPair(NARC_POKETOOL_TRMSG_TRTBL, 0);
+ ReadFromNarcMemberByIdPair(&rdbuf[0], NARC_POKETOOL_TRMSG_TRTBLOFS, 0, trainer_idx * 2, 2);
+ trTblNarc = NARC_ctor(NARC_POKETOOL_TRMSG_TRTBL, heap_id);
+ while (rdbuf[0] != trTblSize)
+ {
+ NARC_ReadFromMember(trTblNarc, 0, rdbuf[0], 4, &rdbuf[1]);
+ if (rdbuf[1] == trainer_idx && rdbuf[2] == msg_id)
+ {
+ ReadMsgData_NewNarc_ExistingString(NARC_MSGDATA_MSG, 558, (u32)(rdbuf[0] / 4), heap_id, str);
+ break;
+ }
+ rdbuf[0] += 4;
+ }
+ NARC_dtor(trTblNarc);
+ if (rdbuf[0] == trTblSize)
+ StringSetEmpty(str);
+}
+
+void TrainerData_ReadTrData(u32 idx, struct TrainerData * dest)
+{
+ ReadWholeNarcMemberByIdPair(dest, NARC_POKETOOL_TRAINER_TRDATA, (s32)idx);
+}
+
+void TrainerData_ReadTrPoke(u32 idx, union TrainerMon * dest)
+{
+ ReadWholeNarcMemberByIdPair(dest, NARC_POKETOOL_TRAINER_TRPOKE, (s32)idx);
+}
+
+const u8 sTrainerClassGenderCountTbl[] = {
+ /*TRAINER_CLASS_PKMN_TRAINER_M*/ 0,
+ /*TRAINER_CLASS_PKMN_TRAINER_F*/ 1,
+ /*TRAINER_CLASS_YOUNGSTER*/ 0,
+ /*TRAINER_CLASS_LASS*/ 1,
+ /*TRAINER_CLASS_CAMPER*/ 0,
+ /*TRAINER_CLASS_PICNICKER*/ 1,
+ /*TRAINER_CLASS_BUG_CATCHER*/ 0,
+ /*TRAINER_CLASS_AROMA_LADY*/ 1,
+ /*TRAINER_CLASS_TWINS*/ 1,
+ /*TRAINER_CLASS_HIKER*/ 0,
+ /*TRAINER_CLASS_BATTLE_GIRL*/ 1,
+ /*TRAINER_CLASS_FISHERMAN*/ 0,
+ /*TRAINER_CLASS_CYCLIST_M*/ 0,
+ /*TRAINER_CLASS_CYCLIST_F*/ 1,
+ /*TRAINER_CLASS_BLACK_BELT*/ 0,
+ /*TRAINER_CLASS_ARTIST*/ 0,
+ /*TRAINER_CLASS_PKMN_BREEDER_M*/ 0,
+ /*TRAINER_CLASS_PKMN_BREEDER_F*/ 1,
+ /*TRAINER_CLASS_COWGIRL*/ 1,
+ /*TRAINER_CLASS_JOGGER*/ 0,
+ /*TRAINER_CLASS_POKEFAN_M*/ 0,
+ /*TRAINER_CLASS_POKEFAN_F*/ 1,
+ /*TRAINER_CLASS_POKE_KID*/ 1,
+ /*TRAINER_CLASS_YOUNG_COUPLE*/ 2,
+ /*TRAINER_CLASS_ACE_TRAINER_M*/ 0,
+ /*TRAINER_CLASS_ACE_TRAINER_F*/ 1,
+ /*TRAINER_CLASS_WAITRESS*/ 1,
+ /*TRAINER_CLASS_VETERAN*/ 0,
+ /*TRAINER_CLASS_NINJA_BOY*/ 0,
+ /*TRAINER_CLASS_DRAGON_TAMER*/ 0,
+ /*TRAINER_CLASS_BIRD_KEEPER*/ 1,
+ /*TRAINER_CLASS_DOUBLE_TEAM*/ 2,
+ /*TRAINER_CLASS_RICH_BOY*/ 0,
+ /*TRAINER_CLASS_LADY*/ 1,
+ /*TRAINER_CLASS_GENTLEMAN*/ 0,
+ /*TRAINER_CLASS_SOCIALITE*/ 1,
+ /*TRAINER_CLASS_BEAUTY*/ 1,
+ /*TRAINER_CLASS_COLLECTOR*/ 0,
+ /*TRAINER_CLASS_POLICEMAN*/ 0,
+ /*TRAINER_CLASS_PKMN_RANGER_M*/ 0,
+ /*TRAINER_CLASS_PKMN_RANGER_F*/ 1,
+ /*TRAINER_CLASS_SCIENTIST*/ 0,
+ /*TRAINER_CLASS_SWIMMER_M*/ 0,
+ /*TRAINER_CLASS_SWIMMER_F*/ 1,
+ /*TRAINER_CLASS_TUBER_M*/ 0,
+ /*TRAINER_CLASS_TUBER_F*/ 1,
+ /*TRAINER_CLASS_SAILOR*/ 0,
+ /*TRAINER_CLASS_SIS_AND_BRO*/ 2,
+ /*TRAINER_CLASS_RUIN_MANIAC*/ 0,
+ /*TRAINER_CLASS_PSYCHIC_M*/ 0,
+ /*TRAINER_CLASS_PSYCHIC_F*/ 1,
+ /*TRAINER_CLASS_PI*/ 0,
+ /*TRAINER_CLASS_GUITARIST*/ 0,
+ /*TRAINER_CLASS_ACE_TRAINER_SNOW_M*/ 0,
+ /*TRAINER_CLASS_ACE_TRAINER_SNOW_F*/ 1,
+ /*TRAINER_CLASS_SKIER_M*/ 0,
+ /*TRAINER_CLASS_SKIER_F*/ 1,
+ /*TRAINER_CLASS_ROUGHNECK*/ 0,
+ /*TRAINER_CLASS_CLOWN*/ 0,
+ /*TRAINER_CLASS_WORKER*/ 0,
+ /*TRAINER_CLASS_SCHOOL_KID_M*/ 0,
+ /*TRAINER_CLASS_SCHOOL_KID_F*/ 1,
+ /*TRAINER_CLASS_LEADER_ROARK*/ 0,
+ /*TRAINER_CLASS_PKMN_TRAINER_BARRY*/ 0,
+ /*TRAINER_CLASS_LEADER_BYRON*/ 0,
+ /*TRAINER_CLASS_ELITE_FOUR_AARON*/ 0,
+ /*TRAINER_CLASS_ELITE_FOUR_BERTHA*/ 1,
+ /*TRAINER_CLASS_ELITE_FOUR_FLINT*/ 0,
+ /*TRAINER_CLASS_ELITE_FOUR_LUCIEN*/ 0,
+ /*TRAINER_CLASS_CHAMPION*/ 1,
+ /*TRAINER_CLASS_BELLE__PA*/ 2,
+ /*TRAINER_CLASS_RANCHER*/ 0,
+ /*TRAINER_CLASS_COMMANDER_MARS*/ 1,
+ /*TRAINER_CLASS_GALACTIC*/ 0,
+ /*TRAINER_CLASS_LEADER_GARDENIA*/ 1,
+ /*TRAINER_CLASS_LEADER_WAKE*/ 0,
+ /*TRAINER_CLASS_LEADER_MAYLENE*/ 1,
+ /*TRAINER_CLASS_LEADER_FANTINA*/ 1,
+ /*TRAINER_CLASS_LEADER_CANDICE*/ 1,
+ /*TRAINER_CLASS_LEADER_VOLKNER*/ 0,
+ /*TRAINER_CLASS_PARASOL_LADY*/ 1,
+ /*TRAINER_CLASS_WAITER*/ 0,
+ /*TRAINER_CLASS_INTERVIEWERS*/ 2,
+ /*TRAINER_CLASS_CAMERAMAN*/ 0,
+ /*TRAINER_CLASS_REPORTER*/ 1,
+ /*TRAINER_CLASS_IDOL*/ 1,
+ /*TRAINER_CLASS_GALACTIC_BOSS*/ 0,
+ /*TRAINER_CLASS_COMMANDER_JUPITER*/ 1,
+ /*TRAINER_CLASS_COMMANDER_SATURN*/ 1,
+ /*TRAINER_CLASS_GALACTIC_F*/ 1,
+ /*TRAINER_CLASS_PKMN_TRAINER_AROMA_LADY*/ 1,
+ /*TRAINER_CLASS_PKMN_TRAINER_RICH_BOY*/ 0,
+ /*TRAINER_CLASS_PKMN_TRAINER_PICNICKER*/ 1,
+ /*TRAINER_CLASS_PKMN_TRAINER_CAMPER*/ 0,
+ /*TRAINER_CLASS_PKMN_TRAINER_POKEKID*/ 1,
+ /*TRAINER_CLASS_PKMN_TRAINER_LUCAS*/ 0,
+ /*TRAINER_CLASS_PKMN_TRAINER_DAWN*/ 1,
+ /*TRAINER_CLASS_TOWER_TYCOON*/ 0
+};
+
+// Returns 0 for male, 1 for female, 2 for doubles. See above vector.
+int TrainerClass_GetGenderOrTrainerCount(int a0)
+{
+ return sTrainerClassGenderCountTbl[a0];
+}
+
+void CreateNPCTrainerParty(struct EnemyTrainerSet * enemies, s32 party_id, u32 heap_id)
+{
+ union TrainerMon * data;
+ s32 i;
+ s32 j;
+ u32 seed_bak;
+ struct Pokemon * pokemon;
+ struct TrainerMonSpeciesItemMoves * monSpeciesItemMoves;
+ struct TrainerMonSpeciesItem * monSpeciesItem;
+ struct TrainerMonSpeciesMoves * monSpeciesMoves;
+ struct TrainerMonSpecies * monSpecies;
+ u32 seed;
+ u32 personality;
+ u8 iv;
+ u32 pid_gender;
+
+ // We abuse the RNG for personality value generation, so back up the overworld
+ // state
+ seed_bak = GetLCRNGSeed();
+ InitPartyWithMaxSize(enemies->parties[party_id], PARTY_SIZE);
+ data = (union TrainerMon *)AllocFromHeap(heap_id, sizeof(union TrainerMon) * PARTY_SIZE);
+ pokemon = AllocMonZeroed(heap_id);
+ TrainerData_ReadTrPoke(enemies->trainer_idxs[party_id], data);
+
+ // If a Pokemon's gender ratio is 50/50, the generated Pokemon will be the same
+ // gender as its trainer. Otherwise, it will assume the more abundant gender
+ // according to its species gender ratio. In double battles, the behavior is
+ // identical to that of a solitary male opponent.
+ pid_gender = (u32)((TrainerClass_GetGenderOrTrainerCount(enemies->datas[party_id].data.trainerClass) == 1) ? 0x78 : 0x88);
+
+ // The trainer types can be more efficiently and expandibly treated as a flag
+ // array, with bit 0 being custom moveset and bit 1 being held item.
+ // Nintendo didn't do it that way, instead using a switch statement and a lot
+ // of code duplication. This has been the case since the 2nd generation games.
+ switch (enemies->datas[party_id].data.trainerType)
+ {
+ case TRTYPE_MON:
+ {
+ monSpecies = &data->species;
+ for (i = 0; i < enemies->datas[party_id].data.npoke; i++)
+ {
+ // Generate personality by seeding with a value based on the difficulty,
+ // level, species, and opponent ID. Roll the RNG N times, where N is
+ // the index of its trainer class. Finally, left shift the 16-bit
+ // pseudorandom value and add the gender selector.
+ // This guarantees that NPC trainers' Pokemon are generated in a
+ // consistent manner between attempts.
+ seed = monSpecies[i].difficulty + monSpecies[i].level + monSpecies[i].species + enemies->trainer_idxs[party_id];
+ SetLCRNGSeed(seed);
+ for (j = 0; j < enemies->datas[party_id].data.trainerClass; j++)
+ {
+ seed = LCRandom();
+ }
+ personality = (seed << 8);
+ personality += pid_gender;
+
+ // Difficulty is a number between 0 and 250 which directly corresponds
+ // to the (uniform) IV spread of the generated Pokemon.
+ iv = (u8)((monSpecies[i].difficulty * 31) / 255);
+ CreateMon(pokemon, monSpecies[i].species, monSpecies[i].level, iv, 1, (s32)personality, 2, 0);
+
+ // If you were treating the trainer type as a bitfield, you'd put the
+ // checks for held item and moves here. You'd also treat the trpoke
+ // data as a flat u16 array rather than an array of fixed-width structs.
+ AddMonToParty(enemies->parties[party_id], pokemon);
+ }
+ break;
+ }
+ case TRTYPE_MON_MOVES:
+ {
+ monSpeciesMoves = &data->species_moves;
+ for (i = 0; i < enemies->datas[party_id].data.npoke; i++)
+ {
+ seed = monSpeciesMoves[i].difficulty + monSpeciesMoves[i].level + monSpeciesMoves[i].species + enemies->trainer_idxs[party_id];
+ SetLCRNGSeed(seed);
+ for (j = 0; j < enemies->datas[party_id].data.trainerClass; j++)
+ {
+ seed = LCRandom();
+ }
+ personality = (seed << 8);
+ personality += pid_gender;
+ iv = (u8)((monSpeciesMoves[i].difficulty * 31) / 255);
+ CreateMon(pokemon, monSpeciesMoves[i].species, monSpeciesMoves[i].level, iv, 1, (s32)personality, 2, 0);
+ for (j = 0; j < 4; j++)
+ {
+ MonSetMoveInSlot(pokemon, monSpeciesMoves[i].moves[j], (u8)j);
+ }
+ AddMonToParty(enemies->parties[party_id], pokemon);
+ }
+ break;
+ }
+ case TRTYPE_MON_ITEM:
+ {
+ monSpeciesItem = &data->species_item;
+ for (i = 0; i < enemies->datas[party_id].data.npoke; i++)
+ {
+ seed = monSpeciesItem[i].difficulty + monSpeciesItem[i].level + monSpeciesItem[i].species + enemies->trainer_idxs[party_id];
+ SetLCRNGSeed(seed);
+ for (j = 0; j < enemies->datas[party_id].data.trainerClass; j++)
+ {
+ seed = LCRandom();
+ }
+ personality = (seed << 8);
+ personality += pid_gender;
+ iv = (u8)((monSpeciesItem[i].difficulty * 31) / 255);
+ CreateMon(pokemon, monSpeciesItem[i].species, monSpeciesItem[i].level, iv, 1, (s32)personality, 2, 0);
+ SetMonData(pokemon, MON_DATA_HELD_ITEM, &monSpeciesItem[i].item);
+ AddMonToParty(enemies->parties[party_id], pokemon);
+ }
+ break;
+ }
+ case TRTYPE_MON_ITEM_MOVES:
+ {
+ monSpeciesItemMoves = &data->species_item_moves;
+ for (i = 0; i < enemies->datas[party_id].data.npoke; i++)
+ {
+ seed = monSpeciesItemMoves[i].difficulty + monSpeciesItemMoves[i].level + monSpeciesItemMoves[i].species + enemies->trainer_idxs[party_id];
+ SetLCRNGSeed(seed);
+ for (j = 0; j < enemies->datas[party_id].data.trainerClass; j++)
+ {
+ seed = LCRandom();
+ }
+ personality = (seed << 8);
+ personality += pid_gender;
+ iv = (u8)((monSpeciesItemMoves[i].difficulty * 31) / 255);
+ CreateMon(pokemon, monSpeciesItemMoves[i].species, monSpeciesItemMoves[i].level, iv, 1, (s32)personality, 2, 0);
+ SetMonData(pokemon, MON_DATA_HELD_ITEM, &monSpeciesItemMoves[i].item);
+ for (j = 0; j < 4; j++)
+ {
+ MonSetMoveInSlot(pokemon, monSpeciesItemMoves[i].moves[j], (u8)j);
+ }
+ AddMonToParty(enemies->parties[party_id], pokemon);
+ }
+ break;
+ }
+ }
+ FreeToHeap(data);
+ FreeToHeap(pokemon);
+ SetLCRNGSeed(seed_bak);
+}
diff --git a/arm9/src/unk_0206B688.c b/arm9/src/unk_0206B688.c
new file mode 100644
index 00000000..465fa842
--- /dev/null
+++ b/arm9/src/unk_0206B688.c
@@ -0,0 +1,185 @@
+#include "global.h"
+#include "pokemon.h"
+#include "unk_0206B688.h"
+
+#pragma thumb on
+
+u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon);
+u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme);
+
+u32 FUN_0206B688(struct BoxPokemon * boxmon)
+{
+ BOOL decry = AcquireBoxMonLock(boxmon);
+ u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES, NULL);
+ u32 is_egg = GetBoxMonData(boxmon, MON_DATA_IS_EGG, NULL);
+ u32 forme = BoxMon_GetAlternateForme(boxmon);
+ u32 ret = FUN_0206B6D4(species, is_egg, forme);
+ ReleaseBoxMonLock(boxmon, decry);
+ return ret;
+}
+
+u32 FUN_0206B6C8(struct Pokemon * pokemon)
+{
+ return FUN_0206B688(FUN_020690E4(pokemon));
+}
+
+u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme)
+{
+ if (is_egg == TRUE)
+ {
+ if (species == SPECIES_MANAPHY)
+ return 502;
+ else
+ return 501;
+ }
+ if (forme != 0)
+ {
+ if (species == SPECIES_DEOXYS)
+ return 502 + forme;
+ if (species == SPECIES_UNOWN)
+ return 506 + forme;
+ if (species == SPECIES_BURMY)
+ return 533 + forme;
+ if (species == SPECIES_WORMADAM)
+ return 535 + forme;
+ if (species == SPECIES_SHELLOS)
+ return 537 + forme;
+ if (species == SPECIES_GASTRODON)
+ return 538 + forme;
+ }
+ return (species <= SPECIES_ARCEUS ? species : 0) + 7;
+}
+
+u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon)
+{
+ u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES2, NULL);
+ switch (species)
+ {
+ case SPECIES_UNOWN:
+ return GetBoxMonUnownLetter(boxmon);
+ case SPECIES_DEOXYS:
+ case SPECIES_BURMY:
+ case SPECIES_WORMADAM:
+ case SPECIES_SHELLOS:
+ case SPECIES_GASTRODON:
+ return (u16) GetBoxMonData(boxmon, MON_DATA_FORME, NULL);
+ default:
+ return 0;
+ }
+}
+
+const u8 UNK_020F8074[] = {
+ 0, 1, 1, 1, 0, 0, 0, 0, 2, 2, 1, 1, 0, 1, 2, 2,
+ 0, 0, 0, 2, 1, 0, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2,
+ 2, 2, 2, 0, 0, 2, 1, 0, 0, 2, 2, 1, 0, 0, 0, 0,
+ 0, 2, 2, 2, 1, 1, 1, 2, 1, 2, 0, 0, 0, 0, 0, 2,
+ 2, 2, 0, 2, 0, 1, 1, 1, 2, 2, 1, 1, 1, 0, 0, 0,
+ 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 1, 2, 2, 0, 0, 0, 1, 1, 1, 2, 2, 1, 2, 2, 1,
+ 1, 0, 0, 1, 0, 0, 0, 0, 2, 2, 0, 1, 2, 1, 0, 2,
+ 2, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, 0, 1,
+ 0, 0, 0, 0, 0, 2, 2, 0, 1, 1, 1, 1, 1, 1, 2, 2,
+ 2, 2, 2, 2, 2, 0, 0, 1, 0, 2, 2, 0, 0, 0, 1, 2,
+ 2, 0, 0, 2, 0, 0, 1, 2, 2, 1, 1, 1, 1, 2, 2, 1,
+ 1, 1, 0, 0, 2, 2, 2, 0, 0, 0, 0, 1, 0, 2, 2, 2,
+ 0, 0, 2, 0, 0, 1, 2, 0, 0, 2, 0, 0, 2, 2, 0, 0,
+ 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 2, 1, 2, 2, 1, 1,
+ 1, 1, 1, 0, 2, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0,
+ 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 2, 0, 2, 1, 1, 1,
+ 1, 1, 1, 0, 2, 2, 0, 0, 1, 1, 1, 2, 0, 1, 1, 2,
+ 2, 1, 1, 1, 1, 0, 2, 2, 2, 1, 2, 0, 0, 2, 2, 2,
+ 2, 2, 2, 0, 0, 1, 0, 0, 0, 0, 2, 0, 1, 2, 0, 0,
+ 2, 0, 1, 0, 1, 0, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+ 2, 1, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 2, 0, 0,
+ 1, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 2, 2, 0, 0, 0,
+ 0, 1, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 2, 2, 0,
+ 1, 0, 0, 1, 1, 1, 1, 0, 0, 2, 2, 0, 0, 0, 0, 2,
+ 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0,
+ 0, 0, 0, 0, 1, 0, 0, 0, 2, 2, 2, 2, 2, 0, 1, 0,
+ 2, 0, 2, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 2,
+ 2, 1, 1, 0, 2, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1,
+ 0, 2, 1, 0, 2, 1, 1, 0, 2, 2, 0, 1, 0, 2, 2, 0,
+ 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 2,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
+ 0, 1, 0, 0, 0, 0, 0, 0
+};
+
+u32 FUN_0206B7BC(u32 species, u32 forme, u32 is_egg)
+{
+ if (is_egg == TRUE)
+ {
+ if (species == SPECIES_MANAPHY)
+ species = 495;
+ else
+ species = 494;
+ }
+ else if (species > SPECIES_ARCEUS)
+ species = 0;
+ else if (forme != 0)
+ {
+ if (species == SPECIES_DEOXYS)
+ species = 495 + forme;
+ else if (species == SPECIES_UNOWN)
+ species = 498 + forme;
+ else if (species == SPECIES_BURMY)
+ species = 526 + forme;
+ else if (species == SPECIES_WORMADAM)
+ species = 528 + forme;
+ else if (species == SPECIES_SHELLOS)
+ species = 530 + forme;
+ else if (species == SPECIES_GASTRODON)
+ species = 531 + forme;
+ }
+ return UNK_020F8074[species];
+}
+
+u32 FUN_0206B83C(struct BoxPokemon * boxmon)
+{
+ BOOL decry = AcquireBoxMonLock(boxmon);
+ u32 forme = BoxMon_GetAlternateForme(boxmon);
+ u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES, NULL);
+ u32 is_egg = GetBoxMonData(boxmon, MON_DATA_IS_EGG, NULL);
+ ReleaseBoxMonLock(boxmon, decry);
+ return FUN_0206B7BC(species, forme, is_egg);
+}
+
+u32 FUN_0206B87C(struct Pokemon * pokemon)
+{
+ return FUN_0206B83C(FUN_020690E4(pokemon));
+}
+
+u32 FUN_0206B888(void)
+{
+ return 0;
+}
+
+u32 FUN_0206B88C(void)
+{
+ return 2;
+}
+
+u32 FUN_0206B890(void)
+{
+ return 4;
+}
+
+u32 FUN_0206B894(void)
+{
+ return 6;
+}
+
+u32 FUN_0206B898(void)
+{
+ return 1;
+}
+
+u32 FUN_0206B89C(void)
+{
+ return 3;
+}
+
+u32 FUN_0206B8A0(void)
+{
+ return 5;
+}
diff --git a/arm9/src/unk_0206BB28.c b/arm9/src/unk_0206BB28.c
new file mode 100644
index 00000000..baaecc6a
--- /dev/null
+++ b/arm9/src/unk_0206BB28.c
@@ -0,0 +1,25 @@
+#include "global.h"
+#include "save_block_2.h"
+#include "pokedex.h"
+#include "pokemon.h"
+#include "unk_0206BB28.h"
+
+#pragma thumb on
+
+BOOL FUN_0206BB28(struct SaveBlock2 * sav2)
+{
+ return FUN_0206BB34(Sav2_Pokedex_get(sav2));
+}
+
+BOOL FUN_0206BB34(struct Pokedex * pokedex)
+{
+ return Pokedex_GetNatDexFlag(pokedex) == TRUE;
+}
+
+u32 FUN_0206BB48(BOOL isNationalDex, u32 species)
+{
+ if (!isNationalDex)
+ species = SpeciesToSinnohDexNo((u16)species);
+ return species;
+}
+
diff --git a/files/poketool/trainer/trdata.json b/files/poketool/trainer/trdata.json
index 81b05ddd..e666bb53 100644
--- a/files/poketool/trainer/trdata.json
+++ b/files/poketool/trainer/trdata.json
@@ -7,7 +7,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -23,7 +23,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -39,7 +39,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -60,7 +60,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -81,7 +81,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -97,7 +97,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -113,7 +113,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -129,7 +129,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -145,7 +145,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -161,7 +161,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -182,7 +182,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -198,7 +198,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -214,7 +214,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -235,7 +235,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -256,7 +256,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -277,7 +277,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -297,7 +297,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -327,7 +327,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -358,7 +358,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -374,7 +374,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -390,7 +390,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -406,7 +406,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -447,7 +447,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -463,7 +463,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -489,7 +489,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -505,7 +505,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -521,7 +521,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -542,7 +542,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -558,7 +558,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -574,7 +574,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -595,7 +595,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -611,7 +611,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -632,7 +632,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -658,7 +658,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -679,7 +679,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -700,7 +700,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -731,7 +731,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -752,7 +752,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -773,7 +773,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -794,7 +794,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -820,7 +820,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -836,7 +836,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -852,7 +852,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -873,7 +873,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -894,7 +894,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -915,7 +915,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -941,7 +941,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -967,7 +967,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1003,7 +1003,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1019,7 +1019,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1035,7 +1035,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1051,7 +1051,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1067,7 +1067,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1083,7 +1083,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1099,7 +1099,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -1120,7 +1120,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1146,7 +1146,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1172,7 +1172,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1188,7 +1188,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1204,7 +1204,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1220,7 +1220,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1236,7 +1236,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1252,7 +1252,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1268,7 +1268,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1284,7 +1284,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -1305,7 +1305,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1347,7 +1347,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1378,7 +1378,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -1421,7 +1421,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -1437,7 +1437,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1468,7 +1468,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1489,7 +1489,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1505,7 +1505,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1521,7 +1521,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1542,7 +1542,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 50,
@@ -1563,7 +1563,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1579,7 +1579,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1595,7 +1595,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1621,7 +1621,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -1647,7 +1647,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1668,7 +1668,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1686,7 +1686,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1704,7 +1704,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1722,7 +1722,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1740,7 +1740,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1756,7 +1756,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1772,7 +1772,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1788,7 +1788,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1809,7 +1809,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1830,7 +1830,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1851,7 +1851,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1867,7 +1867,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1888,7 +1888,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1919,7 +1919,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1940,7 +1940,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1961,7 +1961,7 @@
"unk2": 0,
"items": [],
"unkC": 0,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -1982,7 +1982,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -1998,7 +1998,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2014,7 +2014,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2036,7 +2036,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2052,7 +2052,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2068,7 +2068,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2089,7 +2089,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2115,7 +2115,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2136,7 +2136,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2157,7 +2157,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2178,7 +2178,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2204,7 +2204,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2226,7 +2226,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2242,7 +2242,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2263,7 +2263,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2289,7 +2289,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -2310,7 +2310,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2336,7 +2336,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2352,7 +2352,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2368,7 +2368,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2384,7 +2384,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2400,7 +2400,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2416,7 +2416,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2437,7 +2437,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2463,7 +2463,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -2501,7 +2501,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2517,7 +2517,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2533,7 +2533,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2549,7 +2549,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2565,7 +2565,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2581,7 +2581,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -2607,7 +2607,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -2623,7 +2623,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -2649,7 +2649,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2665,7 +2665,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2681,7 +2681,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2714,7 +2714,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2758,7 +2758,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2780,7 +2780,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2824,7 +2824,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2850,7 +2850,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2866,7 +2866,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2887,7 +2887,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -2903,7 +2903,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2947,7 +2947,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -2980,7 +2980,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3011,7 +3011,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3032,7 +3032,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3053,7 +3053,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3069,7 +3069,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3100,7 +3100,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3121,7 +3121,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -3147,7 +3147,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3163,7 +3163,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3179,7 +3179,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3195,7 +3195,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3211,7 +3211,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3232,7 +3232,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3268,7 +3268,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -3289,7 +3289,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3305,7 +3305,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3321,7 +3321,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3337,7 +3337,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3363,7 +3363,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3379,7 +3379,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3400,7 +3400,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3431,7 +3431,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3452,7 +3452,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3496,7 +3496,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -3517,7 +3517,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3538,7 +3538,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3554,7 +3554,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3580,7 +3580,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3596,7 +3596,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -3628,7 +3628,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -3669,7 +3669,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3695,7 +3695,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3716,7 +3716,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3747,7 +3747,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3773,7 +3773,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3789,7 +3789,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3805,7 +3805,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3821,7 +3821,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3837,7 +3837,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3863,7 +3863,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3879,7 +3879,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -3900,7 +3900,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3921,7 +3921,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3937,7 +3937,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3958,7 +3958,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -3984,7 +3984,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4000,7 +4000,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4026,7 +4026,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4042,7 +4042,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4063,7 +4063,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4089,7 +4089,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4110,7 +4110,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4131,7 +4131,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4147,7 +4147,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4178,7 +4178,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4198,7 +4198,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4214,7 +4214,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4230,7 +4230,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4246,7 +4246,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4262,7 +4262,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4288,7 +4288,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4314,7 +4314,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4335,7 +4335,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4351,7 +4351,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4370,7 +4370,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4389,7 +4389,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -4410,7 +4410,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4426,7 +4426,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4442,7 +4442,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4458,7 +4458,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4474,7 +4474,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4490,7 +4490,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4506,7 +4506,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4522,7 +4522,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4538,7 +4538,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4554,7 +4554,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4570,7 +4570,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4586,7 +4586,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4602,7 +4602,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4618,7 +4618,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4634,7 +4634,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4650,7 +4650,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -4671,7 +4671,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4715,7 +4715,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4737,7 +4737,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4770,7 +4770,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4803,7 +4803,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -4847,7 +4847,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -4880,7 +4880,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4896,7 +4896,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -4922,7 +4922,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -4955,7 +4955,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -4976,7 +4976,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5002,7 +5002,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5023,7 +5023,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -5044,7 +5044,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -5065,7 +5065,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5081,7 +5081,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5097,7 +5097,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -5141,7 +5141,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5157,7 +5157,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5173,7 +5173,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5189,7 +5189,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5209,7 +5209,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5242,7 +5242,7 @@
"ITEM_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -5282,7 +5282,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -5311,7 +5311,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -5340,7 +5340,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -5372,7 +5372,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -5419,7 +5419,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5435,7 +5435,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5451,7 +5451,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5467,7 +5467,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5483,7 +5483,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5499,7 +5499,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5540,7 +5540,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5561,7 +5561,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -5577,7 +5577,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5618,7 +5618,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5641,7 +5641,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -5715,7 +5715,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -5789,7 +5789,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -5863,7 +5863,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -5934,7 +5934,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -5950,7 +5950,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -5996,7 +5996,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -6079,7 +6079,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6112,7 +6112,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6134,7 +6134,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6178,7 +6178,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6210,7 +6210,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6236,7 +6236,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6262,7 +6262,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6288,7 +6288,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6314,7 +6314,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6340,7 +6340,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -6361,7 +6361,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -6392,7 +6392,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6425,7 +6425,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6469,7 +6469,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6501,7 +6501,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -6533,7 +6533,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6555,7 +6555,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6588,7 +6588,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -6621,7 +6621,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -6643,7 +6643,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -6675,7 +6675,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6696,7 +6696,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6717,7 +6717,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -6738,7 +6738,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6754,7 +6754,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6780,7 +6780,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -6821,7 +6821,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -6842,7 +6842,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -6875,7 +6875,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -6904,7 +6904,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -6924,7 +6924,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -6945,7 +6945,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -6966,7 +6966,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -6982,7 +6982,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7003,7 +7003,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7035,7 +7035,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7057,7 +7057,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7078,7 +7078,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7094,7 +7094,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7110,7 +7110,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7136,7 +7136,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7152,7 +7152,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -7190,7 +7190,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -7228,7 +7228,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -7250,7 +7250,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -7281,7 +7281,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -7302,7 +7302,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 40,
@@ -7327,7 +7327,7 @@
"ITEM_SUPER_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -7377,7 +7377,7 @@
"ITEM_SUPER_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -7427,7 +7427,7 @@
"ITEM_HYPER_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -7477,7 +7477,7 @@
"ITEM_HYPER_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -7527,7 +7527,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -7589,7 +7589,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -7648,7 +7648,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7664,7 +7664,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7685,7 +7685,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7711,7 +7711,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7741,7 +7741,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7762,7 +7762,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7783,7 +7783,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7804,7 +7804,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7820,7 +7820,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7850,7 +7850,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7881,7 +7881,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -7912,7 +7912,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7933,7 +7933,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7954,7 +7954,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7970,7 +7970,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -7986,7 +7986,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8002,7 +8002,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8018,7 +8018,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8039,7 +8039,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8070,7 +8070,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8092,7 +8092,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8114,7 +8114,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -8133,7 +8133,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8165,7 +8165,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8187,7 +8187,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -8206,7 +8206,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8222,7 +8222,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8238,7 +8238,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8259,7 +8259,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8275,7 +8275,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8291,7 +8291,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8307,7 +8307,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8323,7 +8323,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8339,7 +8339,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8355,7 +8355,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8371,7 +8371,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8391,7 +8391,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8424,7 +8424,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8445,7 +8445,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8461,7 +8461,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8482,7 +8482,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8498,7 +8498,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -8542,7 +8542,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8558,7 +8558,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8574,7 +8574,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8590,7 +8590,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8606,7 +8606,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -8637,7 +8637,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -8658,7 +8658,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8674,7 +8674,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8690,7 +8690,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8711,7 +8711,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -8727,7 +8727,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8748,7 +8748,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8764,7 +8764,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8780,7 +8780,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8796,7 +8796,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8816,7 +8816,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8848,7 +8848,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8878,7 +8878,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8908,7 +8908,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8934,7 +8934,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8960,7 +8960,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -8986,7 +8986,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9002,7 +9002,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9018,7 +9018,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9039,7 +9039,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9055,7 +9055,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9099,7 +9099,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9143,7 +9143,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9176,7 +9176,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9192,7 +9192,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9225,7 +9225,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9269,7 +9269,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -9313,7 +9313,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9329,7 +9329,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9345,7 +9345,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9361,7 +9361,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9382,7 +9382,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9403,7 +9403,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9424,7 +9424,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -9445,7 +9445,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9464,7 +9464,7 @@
"ITEM_SUPER_POTION"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -9514,7 +9514,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -9573,7 +9573,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -9620,7 +9620,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -9654,7 +9654,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -9701,7 +9701,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -9748,7 +9748,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -9795,7 +9795,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9826,7 +9826,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9842,7 +9842,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9872,7 +9872,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -9888,7 +9888,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9908,7 +9908,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9924,7 +9924,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9945,7 +9945,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9966,7 +9966,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -9992,7 +9992,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10008,7 +10008,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10029,7 +10029,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10050,7 +10050,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10071,7 +10071,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10111,7 +10111,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10127,7 +10127,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10148,7 +10148,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10191,7 +10191,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10212,7 +10212,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10228,7 +10228,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10244,7 +10244,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10265,7 +10265,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10286,7 +10286,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10302,7 +10302,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10318,7 +10318,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10334,7 +10334,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10350,7 +10350,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10366,7 +10366,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10382,7 +10382,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10398,7 +10398,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10414,7 +10414,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10430,7 +10430,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10446,7 +10446,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10462,7 +10462,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10483,7 +10483,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10499,7 +10499,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10515,7 +10515,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10536,7 +10536,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -10557,7 +10557,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10573,7 +10573,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10589,7 +10589,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10605,7 +10605,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10626,7 +10626,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10652,7 +10652,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10673,7 +10673,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10694,7 +10694,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10710,7 +10710,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10730,7 +10730,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10762,7 +10762,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10792,7 +10792,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10812,7 +10812,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10828,7 +10828,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10844,7 +10844,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10860,7 +10860,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10876,7 +10876,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10892,7 +10892,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10913,7 +10913,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10929,7 +10929,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10945,7 +10945,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10961,7 +10961,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -10977,7 +10977,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -11032,7 +11032,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -11087,7 +11087,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -11142,7 +11142,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 80,
@@ -11197,7 +11197,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 80,
@@ -11252,7 +11252,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 80,
@@ -11307,7 +11307,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -11373,7 +11373,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -11439,7 +11439,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -11505,7 +11505,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -11582,7 +11582,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -11659,7 +11659,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 200,
@@ -11736,7 +11736,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11762,7 +11762,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -11803,7 +11803,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11819,7 +11819,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11835,7 +11835,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11865,7 +11865,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11881,7 +11881,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11907,7 +11907,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11928,7 +11928,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11944,7 +11944,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11960,7 +11960,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11976,7 +11976,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -11992,7 +11992,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12008,7 +12008,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12024,7 +12024,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12050,7 +12050,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -12072,7 +12072,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -12104,7 +12104,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -12148,7 +12148,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -12192,7 +12192,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12208,7 +12208,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12224,7 +12224,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12245,7 +12245,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12261,7 +12261,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12282,7 +12282,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12308,7 +12308,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12324,7 +12324,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12345,7 +12345,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12361,7 +12361,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12387,7 +12387,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12403,7 +12403,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12424,7 +12424,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12445,7 +12445,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12466,7 +12466,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12482,7 +12482,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12508,7 +12508,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12529,7 +12529,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12555,7 +12555,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12571,7 +12571,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12592,7 +12592,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12613,7 +12613,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12639,7 +12639,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12655,7 +12655,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12681,7 +12681,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12702,7 +12702,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12728,7 +12728,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -12749,7 +12749,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -12796,7 +12796,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12812,7 +12812,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12838,7 +12838,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12854,7 +12854,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12880,7 +12880,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -12901,7 +12901,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -12922,7 +12922,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12938,7 +12938,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12954,7 +12954,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12975,7 +12975,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -12996,7 +12996,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13022,7 +13022,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13043,7 +13043,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -13072,7 +13072,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13095,7 +13095,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13116,7 +13116,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13137,7 +13137,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13153,7 +13153,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13174,7 +13174,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13190,7 +13190,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13212,7 +13212,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13228,7 +13228,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13244,7 +13244,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13260,7 +13260,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -13291,7 +13291,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13317,7 +13317,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13338,7 +13338,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13359,7 +13359,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -13385,7 +13385,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13406,7 +13406,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13422,7 +13422,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13438,7 +13438,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13459,7 +13459,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13485,7 +13485,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13506,7 +13506,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13539,7 +13539,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13561,7 +13561,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13594,7 +13594,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13627,7 +13627,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13660,7 +13660,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13682,7 +13682,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13715,7 +13715,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13748,7 +13748,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13781,7 +13781,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13803,7 +13803,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13836,7 +13836,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13880,7 +13880,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13913,7 +13913,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13957,7 +13957,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -13990,7 +13990,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14012,7 +14012,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14045,7 +14045,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14067,7 +14067,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14111,7 +14111,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14144,7 +14144,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14165,7 +14165,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14186,7 +14186,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14207,7 +14207,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14228,7 +14228,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14254,7 +14254,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14275,7 +14275,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14301,7 +14301,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14317,7 +14317,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14338,7 +14338,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14359,7 +14359,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14375,7 +14375,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14396,7 +14396,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14417,7 +14417,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -14438,7 +14438,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14459,7 +14459,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14475,7 +14475,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14496,7 +14496,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14522,7 +14522,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14543,7 +14543,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14564,7 +14564,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14585,7 +14585,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14611,7 +14611,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -14627,7 +14627,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -14671,7 +14671,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -14748,7 +14748,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14769,7 +14769,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14791,7 +14791,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14813,7 +14813,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14835,7 +14835,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14857,7 +14857,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14877,7 +14877,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14897,7 +14897,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14917,7 +14917,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14937,7 +14937,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14957,7 +14957,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -14977,7 +14977,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -15054,7 +15054,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 150,
@@ -15131,7 +15131,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15175,7 +15175,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15219,7 +15219,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15263,7 +15263,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15307,7 +15307,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15351,7 +15351,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 60,
@@ -15395,7 +15395,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15411,7 +15411,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15427,7 +15427,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15443,7 +15443,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15464,7 +15464,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15485,7 +15485,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15506,7 +15506,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -15527,7 +15527,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -15548,7 +15548,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -15569,7 +15569,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -15590,7 +15590,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -15611,7 +15611,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15632,7 +15632,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15658,7 +15658,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15684,7 +15684,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15710,7 +15710,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15736,7 +15736,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15762,7 +15762,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15788,7 +15788,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15810,7 +15810,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15832,7 +15832,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15854,7 +15854,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -15898,7 +15898,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -15931,7 +15931,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15957,7 +15957,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15973,7 +15973,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -15989,7 +15989,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16010,7 +16010,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16031,7 +16031,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16052,7 +16052,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16068,7 +16068,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16084,7 +16084,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16100,7 +16100,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16116,7 +16116,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16132,7 +16132,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16153,7 +16153,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16174,7 +16174,7 @@
"unk2": 0,
"items": [],
"unkC": 0,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16207,7 +16207,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16251,7 +16251,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16295,7 +16295,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16328,7 +16328,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16350,7 +16350,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16394,7 +16394,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16427,7 +16427,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16460,7 +16460,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16493,7 +16493,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -16537,7 +16537,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16558,7 +16558,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16579,7 +16579,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16600,7 +16600,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16621,7 +16621,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16647,7 +16647,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16673,7 +16673,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16694,7 +16694,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16715,7 +16715,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16741,7 +16741,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16767,7 +16767,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16783,7 +16783,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16799,7 +16799,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16820,7 +16820,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16841,7 +16841,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -16862,7 +16862,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -16883,7 +16883,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -16921,7 +16921,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 10,
@@ -16961,7 +16961,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16979,7 +16979,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -16997,7 +16997,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17013,7 +17013,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17029,7 +17029,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17045,7 +17045,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17061,7 +17061,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17087,7 +17087,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17113,7 +17113,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -17129,7 +17129,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -17157,7 +17157,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17175,7 +17175,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17191,7 +17191,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17207,7 +17207,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17223,7 +17223,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17239,7 +17239,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17260,7 +17260,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17281,7 +17281,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17302,7 +17302,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17323,7 +17323,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17344,7 +17344,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17365,7 +17365,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17386,7 +17386,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17407,7 +17407,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17428,7 +17428,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17449,7 +17449,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17470,7 +17470,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17491,7 +17491,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17513,7 +17513,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17535,7 +17535,7 @@
"unk2": 0,
"items": [],
"unkC": 0,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17557,7 +17557,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17573,7 +17573,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17589,7 +17589,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17605,7 +17605,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17626,7 +17626,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17647,7 +17647,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17668,7 +17668,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17684,7 +17684,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17702,7 +17702,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17720,7 +17720,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17738,7 +17738,7 @@
"ITEM_FULL_RESTORE"
],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17754,7 +17754,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17775,7 +17775,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17796,7 +17796,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17817,7 +17817,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17838,7 +17838,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17859,7 +17859,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17880,7 +17880,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17901,7 +17901,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -17922,7 +17922,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17943,7 +17943,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17964,7 +17964,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -17990,7 +17990,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18011,7 +18011,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18032,7 +18032,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18053,7 +18053,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18079,7 +18079,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18105,7 +18105,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18131,7 +18131,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18147,7 +18147,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18163,7 +18163,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18179,7 +18179,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18195,7 +18195,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18216,7 +18216,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18237,7 +18237,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18253,7 +18253,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18269,7 +18269,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18285,7 +18285,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18301,7 +18301,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18322,7 +18322,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18343,7 +18343,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18364,7 +18364,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18380,7 +18380,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18401,7 +18401,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18422,7 +18422,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18438,7 +18438,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18454,7 +18454,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18470,7 +18470,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18486,7 +18486,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18502,7 +18502,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18518,7 +18518,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18544,7 +18544,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18570,7 +18570,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18592,7 +18592,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -18636,7 +18636,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18658,7 +18658,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -18702,7 +18702,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 100,
@@ -18746,7 +18746,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18762,7 +18762,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18778,7 +18778,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18794,7 +18794,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18810,7 +18810,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18826,7 +18826,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18842,7 +18842,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18858,7 +18858,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18874,7 +18874,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18890,7 +18890,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18906,7 +18906,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18922,7 +18922,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18938,7 +18938,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18954,7 +18954,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18970,7 +18970,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -18986,7 +18986,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19002,7 +19002,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19018,7 +19018,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -19039,7 +19039,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -19060,7 +19060,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -19081,7 +19081,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 2,
+ "doubleBattle": 2,
"party": [
{
"difficulty": 0,
@@ -19102,7 +19102,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19118,7 +19118,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19134,7 +19134,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19150,7 +19150,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19166,7 +19166,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19182,7 +19182,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19198,7 +19198,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19214,7 +19214,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19230,7 +19230,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19246,7 +19246,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19262,7 +19262,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19278,7 +19278,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19294,7 +19294,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19310,7 +19310,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19326,7 +19326,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19342,7 +19342,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19358,7 +19358,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19374,7 +19374,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19390,7 +19390,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19411,7 +19411,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19441,7 +19441,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19462,7 +19462,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19483,7 +19483,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19516,7 +19516,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19537,7 +19537,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19558,7 +19558,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19579,7 +19579,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19612,7 +19612,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19628,7 +19628,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -19649,7 +19649,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 50,
@@ -19670,7 +19670,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19691,7 +19691,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19724,7 +19724,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19744,7 +19744,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -19765,7 +19765,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -19808,7 +19808,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -19834,7 +19834,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -19860,7 +19860,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -19886,7 +19886,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -19963,7 +19963,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -20040,7 +20040,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -20117,7 +20117,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -20194,7 +20194,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -20271,7 +20271,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 250,
@@ -20348,7 +20348,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -20364,7 +20364,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -20385,7 +20385,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -20401,7 +20401,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 0,
@@ -20417,7 +20417,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -20433,7 +20433,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
@@ -20454,7 +20454,7 @@
"unk2": 0,
"items": [],
"unkC": 1,
- "unk10": 0,
+ "doubleBattle": 0,
"party": [
{
"difficulty": 30,
diff --git a/files/poketool/trainer/trdata.json.txt b/files/poketool/trainer/trdata.json.txt
index c85e80e4..9c02c7db 100644
--- a/files/poketool/trainer/trdata.json.txt
+++ b/files/poketool/trainer/trdata.json.txt
@@ -17,7 +17,7 @@ const struct TrainerData __data[] = {
{{ length(trainer.party) }},
{ {% for item in trainer.items %}{{ item }},{% endfor %} },
{{ trainer.unkC }},
- {{ trainer.unk10 }}
+ {{ trainer.doubleBattle }}
},
## endfor
};
diff --git a/include/pokedex.h b/include/pokedex.h
index 11058569..891fddb5 100644
--- a/include/pokedex.h
+++ b/include/pokedex.h
@@ -2,6 +2,8 @@
#define POKEDIAMOND_POKEDEX_H
#include "global.h"
+#include "pokemon.h"
+#include "save_block_2.h"
struct Pokedex
{
diff --git a/include/pokemon.h b/include/pokemon.h
index 097df9e0..d107bf85 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -142,8 +142,8 @@ struct PartyPokemon
/* 0x096 */ u16 speed;
/* 0x098 */ u16 spatk;
/* 0x09A */ u16 spdef;
- /* 0x09C */ struct Mail seal_something; // a struct?
- /* 0x0D4 */ u8 sealCoords[0x18]; // u8 pairs?
+ /* 0x09C */ struct Mail mail;
+ /* 0x0D4 */ u8 sealCoords[8][3]; // seal coords
};
struct Pokemon {
@@ -263,6 +263,7 @@ void FUN_02069038(u32 a0, u32 a1, u32 a2, s32 a3, u32 a4, u32 a5, u32 a6);
void FUN_020690AC(struct SomeDrawPokemonStruct * a0, u32 a1);
u32 FUN_020690C4(void);
u32 FUN_020690C8(void);
+u8 GetBoxMonUnownLetter(struct BoxPokemon * boxmon);
u8 GetMonUnownLetter(struct Pokemon * pokemon);
struct BoxPokemon * FUN_020690E4(struct Pokemon * pokemon);
@@ -278,21 +279,21 @@ u32 FUN_02069818(struct Pokemon * pokemon, u32 * r5, u16 * sp0);
void FUN_020698E0(struct Pokemon * pokemon, int slot1, int slot2);
void FUN_020698E8(struct BoxPokemon * boxmon, int slot1, int slot2);
void FUN_020699A4(struct Pokemon * pokemon, u32 slot);
-void FUN_02069A64(struct BoxPokemon * src, struct Pokemon * dest);
-u8 FUN_02069AEC(struct PlayerParty * party);
+void CopyBoxPokemonToPokemon(struct BoxPokemon * src, struct Pokemon * dest);
+u8 Party_GetMaxLevel(struct PlayerParty * party);
u16 SpeciesToSinnohDexNo(u16 species);
-u16 FUN_02069B60(u16 sinnoh_dex);
-void FUN_02069B88(struct Pokemon * src, struct Pokemon * dest);
-void FUN_02069BA0(struct Pokemon * src, struct BoxPokemon * dest);
-void FUN_02069BB4(struct BoxPokemon * src, struct BoxPokemon * dest);
-s8 FUN_02069BC8(struct Pokemon * pokemon, int flavor);
-int FUN_02069BFC(u16 species, u32 forme, u16 * dest);
-void FUN_02069C4C(struct PlayerParty * party);
-void FUN_02069D50(struct PlayerParty * party, int r5);
-void FUN_02069DC8(struct PlayerParty * party);
-BOOL FUN_02069E74(struct Pokemon * pokemon);
-BOOL FUN_02069E94(struct Pokemon * pokemon);
-void FUN_02069EC4(struct Pokemon * pokemon);
+u16 SinnohDexNoToSpecies(u16 sinnoh_dex);
+void CopyPokemonToPokemon(struct Pokemon * src, struct Pokemon * dest);
+void CopyPokemonToBoxPokemon(struct Pokemon * src, struct BoxPokemon * dest);
+void CopyBoxPokemonToBoxPokemon(struct BoxPokemon * src, struct BoxPokemon * dest);
+s8 MonGetFlavorPreference(struct Pokemon * pokemon, int flavor);
+int Species_LoadLearnsetTable(u16 species, u32 forme, u16 * dest);
+void Party_GivePokerusAtRandom(struct PlayerParty * party);
+void Party_UpdatePokerus(struct PlayerParty * party, int r5);
+void Party_SpreadPokerus(struct PlayerParty * party);
+BOOL Pokemon_HasPokerus(struct Pokemon * pokemon);
+BOOL Pokemon_IsImmuneToPokerus(struct Pokemon * pokemon);
+void Pokemon_UpdateArceusForme(struct Pokemon * pokemon);
void FUN_02069FB0(u32 r7, u32 r5, u32 r4, u32 r6, u32 sp18, u32 sp1C, u32 sp20);
void FUN_0206A014(struct Pokemon * pokemon, struct PlayerData * a1, u32 pokeball, u32 a3, u32 encounterType, u32 heap_id);
void FUN_0206A094(struct Pokemon * pokemon, u32 a1, u32 a2);
@@ -304,7 +305,7 @@ BOOL IsPokemonLegendaryOrMythical(u16 species);
u16 GetLegendaryMon(u32 idx);
BOOL FUN_0206A998(struct Pokemon * pokemon);
BOOL FUN_0206A9AC(struct BoxPokemon * boxmon, struct PlayerData * sb2, u32 heap_id);
-void FUN_0206AA84(struct Pokemon * pokemon);
+void Pokemon_RemoveCapsule(struct Pokemon * pokemon);
void RestoreBoxMonPP(struct BoxPokemon * boxmon);
#endif //POKEDIAMOND_POKEMON_H
diff --git a/include/proto.h b/include/proto.h
index 365c0ecd..7af3f19d 100644
--- a/include/proto.h
+++ b/include/proto.h
@@ -7,7 +7,7 @@
#include "string16.h" // for struct definitions
#include "player_data.h" // for struct definitions
-int FUN_0206AE00(int x);
+int TrainerClass_GetGenderOrTrainerCount(int x);
int FUN_02014C3C(u8);
void FUN_02014C54(int, int, struct UnkStruct_02069038 *, u8);
u32 IsNighttime(void); // is day or night
diff --git a/include/seal.h b/include/seal.h
new file mode 100644
index 00000000..9e31e2e4
--- /dev/null
+++ b/include/seal.h
@@ -0,0 +1,24 @@
+#ifndef POKEDIAMOND_SEAL_H
+#define POKEDIAMOND_SEAL_H
+
+typedef u8 Coords8[3];
+typedef Coords8 CapsuleArray[8];
+
+struct SealCase
+{
+ CapsuleArray coords[12];
+ u8 padding_120[0x50];
+};
+
+u32 FUN_02029C58(void);
+void FUN_02029C60(struct SealCase * sealCase);
+void FUN_02029C74(const CapsuleArray * a0, CapsuleArray * a1);
+struct SealCase * FUN_02029C80(struct SaveBlock2 * sav2);
+CapsuleArray * FUN_02029C8C(struct SealCase * sealCase, s32 idx);
+void FUN_02029CA4(struct SealCase * sealCase, const CapsuleArray * src, s32 idx);
+Coords8 * FUN_02029CC8(CapsuleArray * a0, s32 a1);
+u8 FUN_02029CE0(Coords8 * a0);
+u8 FUN_02029CE4(Coords8 * a0);
+u8 FUN_02029CE8(Coords8 * a0);
+
+#endif //POKEDIAMOND_SEAL_H
diff --git a/include/trainer_data.h b/include/trainer_data.h
index 6a5b69a4..0951a5dd 100644
--- a/include/trainer_data.h
+++ b/include/trainer_data.h
@@ -2,6 +2,8 @@
#define POKEDIAMOND_TRAINER_DATA_H
#include "global.h"
+#include "save_block_2.h"
+#include "string16.h"
#include "constants/pokemon.h"
struct TrainerMonSpecies
@@ -57,7 +59,7 @@ struct TrainerData
u8 npoke;
u16 items[4];
u32 unk_C;
- u32 unk_10;
+ u32 doubleBattle;
};
struct TrainerDataLoaded
@@ -76,4 +78,13 @@ struct EnemyTrainerSet
struct TrainerDataLoaded datas[4];
};
+void EnemyTrainerSet_Init(struct EnemyTrainerSet * sp0, struct SaveBlock2 * r4, u32 sp4);
+s32 TrainerData_GetAttr(u32 tr_idx, u32 attr_no);
+BOOL TrainerMessageWithIdPairExists(u32 pos, u32 idx, u32 heap_id);
+void GetTrainerMessageByIdPair(u32 pos, u32 idx, struct String * str, u32 heap_id);
+void TrainerData_ReadTrData(u32 idx, struct TrainerData * dest);
+void TrainerData_ReadTrPoke(u32 idx, union TrainerMon * dest);
+int TrainerClass_GetGenderOrTrainerCount(int a0);
+void CreateNPCTrainerParty(struct EnemyTrainerSet * enemies, s32 party_id, u32 heap_id);
+
#endif //POKEDIAMOND_TRAINER_DATA_H
diff --git a/include/unk_0206B688.h b/include/unk_0206B688.h
new file mode 100644
index 00000000..cf8136b1
--- /dev/null
+++ b/include/unk_0206B688.h
@@ -0,0 +1,21 @@
+#ifndef POKEDIAMOND_UNK_0206B688_H
+#define POKEDIAMOND_UNK_0206B688_H
+
+#include "pokemon.h"
+
+u32 FUN_0206B688(struct BoxPokemon * boxmon);
+u32 FUN_0206B6C8(struct Pokemon * pokemon);
+u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme);
+u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon);
+u32 FUN_0206B7BC(u32 species, u32 forme, u32 is_egg);
+u32 FUN_0206B83C(struct BoxPokemon * boxmon);
+u32 FUN_0206B87C(struct Pokemon * pokemon);
+u32 FUN_0206B888(void);
+u32 FUN_0206B88C(void);
+u32 FUN_0206B890(void);
+u32 FUN_0206B894(void);
+u32 FUN_0206B898(void);
+u32 FUN_0206B89C(void);
+u32 FUN_0206B8A0(void);
+
+#endif //POKEDIAMOND_UNK_0206B688_H
diff --git a/include/unk_0206BB28.h b/include/unk_0206BB28.h
new file mode 100644
index 00000000..ff60e220
--- /dev/null
+++ b/include/unk_0206BB28.h
@@ -0,0 +1,12 @@
+#ifndef POKEDIAMOND_UNK_0206BB28_H
+#define POKEDIAMOND_UNK_0206BB28_H
+
+#include "save_block_2.h"
+#include "pokedex.h"
+#include "pokemon.h"
+
+BOOL FUN_0206BB28(struct SaveBlock2 * sav2);
+BOOL FUN_0206BB34(struct Pokedex * pokedex);
+u32 FUN_0206BB48(BOOL isNationalDex, u32 species);
+
+#endif //POKEDIAMOND_UNK_0206BB28_H