summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@gmail.com>2019-10-31 22:13:33 -0400
committerPikalaxALT <PikalaxALT@gmail.com>2019-10-31 22:13:33 -0400
commit930c7c4ad7f698b76b8ae45e13e7e9baa3fc1ee6 (patch)
tree7411f86c3d7ac2fbc7d6b4b36e653bc4311202bb
parent193c12d401ac5b1016d77e60c36e8d9960af9d82 (diff)
Dump berries and do major splittage
-rw-r--r--asm/berry_crush_3.s4
-rw-r--r--baserom.ipsbin521722 -> 518489 bytes
-rw-r--r--data/data_835B488.s506
-rw-r--r--data/field_effect.s145
-rw-r--r--data/fldeff_cut.s13
-rw-r--r--data/map_name_popup.s10
-rw-r--r--data/option_menu.s43
-rw-r--r--data/pokemon_storage_system.s133
-rw-r--r--data/shop.s40
-rw-r--r--data/trainer_card.s160
-rw-r--r--ld_script.txt13
-rw-r--r--src/berry.c917
12 files changed, 1469 insertions, 515 deletions
diff --git a/asm/berry_crush_3.s b/asm/berry_crush_3.s
index 51657f296..fa7e038cb 100644
--- a/asm/berry_crush_3.s
+++ b/asm/berry_crush_3.s
@@ -1537,7 +1537,7 @@ _0814E21A:
lsls r1, r2, 3
subs r1, r2
lsls r1, 2
- ldr r0, _0814E294 @ =sBerries
+ ldr r0, _0814E294 @ =gBerries
adds r1, r0
ldr r0, _0814E298 @ =gStringVar1
bl StringCopy
@@ -1591,7 +1591,7 @@ _0814E27E:
bl StringCopy
b _0814E2B8
.align 2, 0
-_0814E294: .4byte sBerries
+_0814E294: .4byte gBerries
_0814E298: .4byte gStringVar1
_0814E29C: .4byte gUnknown_846F4B8
_0814E2A0: .4byte gStringVar4
diff --git a/baserom.ips b/baserom.ips
index a73fe2991..c3acd56bf 100644
--- a/baserom.ips
+++ b/baserom.ips
Binary files differ
diff --git a/data/data_835B488.s b/data/data_835B488.s
index 623c252c6..5ab4856b8 100644
--- a/data/data_835B488.s
+++ b/data/data_835B488.s
@@ -6,512 +6,6 @@
.section .rodata
.align 2
- .incbin "baserom.gba", 0x3CA770, 0xE80
-
-gUnknown_83CB5F0:: @ 83CB5F0
- .incbin "baserom.gba", 0x3CB5F0, 0x200
-
-gUnknown_83CB7F0:: @ 83CB7F0
- .incbin "baserom.gba", 0x3CB7F0, 0x20
-
-gUnknown_83CB810:: @ 83CB810
- .incbin "baserom.gba", 0x3CB810, 0x280
-
-gUnknown_83CBA90:: @ 83CBA90
- .incbin "baserom.gba", 0x3CBA90, 0x80
-
-gUnknown_83CBB10:: @ 83CBB10
- .incbin "baserom.gba", 0x3CBB10, 0x20
-
-gUnknown_83CBB30:: @ 83CBB30
- .incbin "baserom.gba", 0x3CBB30, 0x300
-
-gUnknown_83CBE30:: @ 83CBE30
- .incbin "baserom.gba", 0x3CBE30, 0x20
-
-gUnknown_83CBE50:: @ 83CBE50
- .incbin "baserom.gba", 0x3CBE50, 0x20
-
-gUnknown_83CBE70:: @ 83CBE70
- .incbin "baserom.gba", 0x3CBE70, 0x14
-
-gUnknown_83CBE84:: @ 83CBE84
- .incbin "baserom.gba", 0x3CBE84, 0x104
-
-gUnknown_83CBF88:: @ 83CBF88
- .incbin "baserom.gba", 0x3CBF88, 0x18
-
-gUnknown_83CBFA0:: @ 83CBFA0
- .incbin "baserom.gba", 0x3CBFA0, 0x18
-
-gUnknown_83CBFB8:: @ 83CBFB8
- .incbin "baserom.gba", 0x3CBFB8, 0x18
-
-gUnknown_83CBFD0:: @ 83CBFD0
- .incbin "baserom.gba", 0x3CBFD0, 0x10
-
-gUnknown_83CBFE0:: @ 83CBFE0
- .incbin "baserom.gba", 0x3CBFE0, 0x10
-
-gUnknown_83CBFF0:: @ 83CBFF0
- .incbin "baserom.gba", 0x3CBFF0, 0x20
-
-gUnknown_83CC010:: @ 83CC010
- .incbin "baserom.gba", 0x3CC010, 0x18
-
-gUnknown_83CC028:: @ 83CC028
- .incbin "baserom.gba", 0x3CC028, 0x4
-
-gUnknown_83CC02C:: @ 83CC02C
- .incbin "baserom.gba", 0x3CC02C, 0x4
-
-gUnknown_83CC030:: @ 83CC030
- .incbin "baserom.gba", 0x3CC030, 0x4
-
-gUnknown_83CC034:: @ 83CC034
- .incbin "baserom.gba", 0x3CC034, 0x1C
-
-gUnknown_83CC050:: @ 83CC050
- .incbin "baserom.gba", 0x3CC050, 0x18
-
-gUnknown_83CC068:: @ 83CC068
- .incbin "baserom.gba", 0x3CC068, 0x1C
-
-gUnknown_83CC084:: @ 83CC084
- .incbin "baserom.gba", 0x3CC084, 0x14
-
-gUnknown_83CC098:: @ 83CC098
- .incbin "baserom.gba", 0x3CC098, 0xC
-
-gUnknown_83CC0A4:: @ 83CC0A4
- .incbin "baserom.gba", 0x3CC0A4, 0x18
-
-gUnknown_83CC0BC:: @ 83CC0BC
- .incbin "baserom.gba", 0x3CC0BC, 0x10
-
-gUnknown_83CC0CC:: @ 83CC0CC
- .incbin "baserom.gba", 0x3CC0CC, 0x14
-
-gUnknown_83CC0E0:: @ 83CC0E0
- .incbin "baserom.gba", 0x3CC0E0, 0x8
-
-gUnknown_83CC0E8:: @ 83CC0E8
- .incbin "baserom.gba", 0x3CC0E8, 0x8
-
-gUnknown_83CC0F0:: @ 83CC0F0
- .incbin "baserom.gba", 0x3CC0F0, 0x8
-
-gUnknown_83CC0F8:: @ 83CC0F8
- .incbin "baserom.gba", 0x3CC0F8, 0x10
-
-gUnknown_83CC108:: @ 83CC108
- .incbin "baserom.gba", 0x3CC108, 0x8
-
-gUnknown_83CC110:: @ 83CC110
- .incbin "baserom.gba", 0x3CC110, 0xC
-
-gUnknown_83CC11C:: @ 83CC11C
- .incbin "baserom.gba", 0x3CC11C, 0x1C
-
-gUnknown_83CC138:: @ 83CC138
- .incbin "baserom.gba", 0x3CC138, 0x1C
-
-gUnknown_83CC154:: @ 83CC154
- .incbin "baserom.gba", 0x3CC154, 0x14
-
-gUnknown_83CC168:: @ 83CC168
- .incbin "baserom.gba", 0x3CC168, 0x10
-
-gUnknown_83CC178:: @ 83CC178
- .incbin "baserom.gba", 0x3CC178, 0x54
-
-gUnknown_83CC1CC:: @ 83CC1CC
- .incbin "baserom.gba", 0x3CC1CC, 0x8
-
-gUnknown_83CC1D4:: @ 83CC1D4
- .incbin "baserom.gba", 0x3CC1D4, 0x1C
-
-gUnknown_83CC1F0:: @ 83CC1F0
- .incbin "baserom.gba", 0x3CC1F0, 0x4C
-
-gUnknown_83CC23C:: @ 83CC23C
- .incbin "baserom.gba", 0x3CC23C, 0x8
-
-gUnknown_83CC244:: @ 83CC244
- .incbin "baserom.gba", 0x3CC244, 0x5C
-
-gUnknown_83CC2A0:: @ 83CC2A0
- .incbin "baserom.gba", 0x3CC2A0, 0x18
-
-gUnknown_83CC2B8:: @ 83CC2B8
- .incbin "baserom.gba", 0x3CC2B8, 0x20
-
-gUnknown_83CC2D8:: @ 83CC2D8
- .incbin "baserom.gba", 0x3CC2D8, 0xC
-
-gUnknown_83CC2E4:: @ 83CC2E4
- .incbin "baserom.gba", 0x3CC2E4, 0x20
-
-gUnknown_83CC304:: @ 83CC304
- .incbin "baserom.gba", 0x3CC304, 0x10
-
-gUnknown_83CC314:: @ 83CC314
- .incbin "baserom.gba", 0x3CC314, 0x1C
-
-gUnknown_83CC330:: @ 83CC330
- .incbin "baserom.gba", 0x3CC330, 0xC
-
-gUnknown_83CC33C:: @ 83CC33C
- .incbin "baserom.gba", 0x3CC33C, 0x8
-
-gUnknown_83CC344:: @ 83CC344
- .incbin "baserom.gba", 0x3CC344, 0x8
-
-gUnknown_83CC34C:: @ 83CC34C
- .incbin "baserom.gba", 0x3CC34C, 0x8
-
-gUnknown_83CC354:: @ 83CC354
- .incbin "baserom.gba", 0x3CC354, 0xC
-
-gUnknown_83CC360:: @ 83CC360
- .incbin "baserom.gba", 0x3CC360, 0x3
-
-gUnknown_83CC363:: @ 83CC363
- .incbin "baserom.gba", 0x3CC363, 0x5
-
-gUnknown_83CC368:: @ 83CC368
- .incbin "baserom.gba", 0x3CC368, 0x174
-
-gUnknown_83CC4DC:: @ 83CC4DC
- .incbin "baserom.gba", 0x3CC4DC, 0x214
-
-gUnknown_83CC6F0:: @ 83CC6F0
- .incbin "baserom.gba", 0x3CC6F0, 0x1B8
-
-gUnknown_83CC8A8:: @ 83CC8A8
- .incbin "baserom.gba", 0x3CC8A8, 0xDC
-
-gUnknown_83CC984:: @ 83CC984
- .incbin "baserom.gba", 0x3CC984, 0x12C
-
-gUnknown_83CCAB0:: @ 83CCAB0
- .incbin "baserom.gba", 0x3CCAB0, 0x1F4
-
-gUnknown_83CCCA4:: @ 83CCCA4
- .incbin "baserom.gba", 0x3CCCA4, 0x18C
-
-gUnknown_83CCE30:: @ 83CCE30
- .incbin "baserom.gba", 0x3CCE30, 0x98
-
-gUnknown_83CCEC8:: @ 83CCEC8
- .incbin "baserom.gba", 0x3CCEC8, 0x3B8
-
-gUnknown_83CD280:: @ 83CD280
- .incbin "baserom.gba", 0x3CD280, 0x20
-
-gUnknown_83CD2A0:: @ 83CD2A0
- .incbin "baserom.gba", 0x3CD2A0, 0x20
-
-gUnknown_83CD2C0:: @ 83CD2C0
- .incbin "baserom.gba", 0x3CD2C0, 0x20
-
-gUnknown_83CD2E0:: @ 83CD2E0
- .incbin "baserom.gba", 0x3CD2E0, 0x20
-
-gUnknown_83CD300:: @ 83CD300
- .incbin "baserom.gba", 0x3CD300, 0x20
-
-gUnknown_83CD320:: @ 83CD320
- .incbin "baserom.gba", 0x3CD320, 0x20
-
-gUnknown_83CD340:: @ 83CD340
- .incbin "baserom.gba", 0x3CD340, 0x20
-
-gUnknown_83CD360:: @ 83CD360
- .incbin "baserom.gba", 0x3CD360, 0x20
-
-gUnknown_83CD380:: @ 83CD380
- .incbin "baserom.gba", 0x3CD380, 0x268
-
-gUnknown_83CD5E8:: @ 83CD5E8
- .incbin "baserom.gba", 0x3CD5E8, 0x2A0
-
-gUnknown_83CD888:: @ 83CD888
- .incbin "baserom.gba", 0x3CD888, 0x10
-
-gUnknown_83CD898:: @ 83CD898
- .incbin "baserom.gba", 0x3CD898, 0x20
-
-gUnknown_83CD8B8:: @ 83CD8B8
- .incbin "baserom.gba", 0x3CD8B8, 0x14
-
-gUnknown_83CD8CC:: @ 83CD8CC
- .incbin "baserom.gba", 0x3CD8CC, 0x14
-
-gUnknown_83CD8E0:: @ 83CD8E0
- .incbin "baserom.gba", 0x3CD8E0, 0x3
-
-gUnknown_83CD8E3:: @ 83CD8E3
- .incbin "baserom.gba", 0x3CD8E3, 0x6
-
-gUnknown_83CD8E9:: @ 83CD8E9
- .incbin "baserom.gba", 0x3CD8E9, 0x3
-
-gUnknown_83CD8EC:: @ 83CD8EC
- .incbin "baserom.gba", 0x3CD8EC, 0x8
-
-gUnknown_83CD8F4:: @ 83CD8F4
- .incbin "baserom.gba", 0x3CD8F4, 0x4
-
-gUnknown_83CD8F8:: @ 83CD8F8
- .incbin "baserom.gba", 0x3CD8F8, 0x10
-
-gUnknown_83CD908:: @ 83CD908
- .incbin "baserom.gba", 0x3CD908, 0x18
-
-gUnknown_83CD920:: @ 83CD920
- .incbin "baserom.gba", 0x3CD920, 0x2
-
-gUnknown_83CD922:: @ 83CD922
- .incbin "baserom.gba", 0x3CD922, 0x2
-
-gUnknown_83CD924:: @ 83CD924
- .incbin "baserom.gba", 0x3CD924, 0x2
-
-gUnknown_83CD926:: @ 83CD926
- .incbin "baserom.gba", 0x3CD926, 0x2
-
-gUnknown_83CD928:: @ 83CD928
- .incbin "baserom.gba", 0x3CD928, 0x8
-
-gUnknown_83CD930:: @ 83CD930
- .incbin "baserom.gba", 0x3CD930, 0x2
-
-gUnknown_83CD932:: @ 83CD932
- .incbin "baserom.gba", 0x3CD932, 0x2
-
-gUnknown_83CD934:: @ 83CD934
- .incbin "baserom.gba", 0x3CD934, 0x2
-
-gUnknown_83CD936:: @ 83CD936
- .incbin "baserom.gba", 0x3CD936, 0x2
-
-gUnknown_83CD938:: @ 83CD938
- .incbin "baserom.gba", 0x3CD938, 0x2
-
-gUnknown_83CD93A:: @ 83CD93A
- .incbin "baserom.gba", 0x3CD93A, 0x2
-
-gUnknown_83CD93C:: @ 83CD93C
- .incbin "baserom.gba", 0x3CD93C, 0x2
-
-gUnknown_83CD93E:: @ 83CD93E
- .incbin "baserom.gba", 0x3CD93E, 0x2
-
-gUnknown_83CD940:: @ 83CD940
- .incbin "baserom.gba", 0x3CD940, 0x4
-
-gUnknown_83CD944:: @ 83CD944
- .incbin "baserom.gba", 0x3CD944, 0x8
-
-gUnknown_83CD94C:: @ 83CD94C
- .incbin "baserom.gba", 0x3CD94C, 0x6
-
-gUnknown_83CD952:: @ 83CD952
- .incbin "baserom.gba", 0x3CD952, 0x6
-
-gUnknown_83CD958:: @ 83CD958
- .incbin "baserom.gba", 0x3CD958, 0x4
-
-gUnknown_83CD95C:: @ 83CD95C
- .incbin "baserom.gba", 0x3CD95C, 0x4
-
-gUnknown_83CD960:: @ 83CD960
- .incbin "baserom.gba", 0x3CD960, 0x60
-
-gUnknown_83CD9C0:: @ 83CD9C0
- .incbin "baserom.gba", 0x3CD9C0, 0x60
-
-gUnknown_83CDA20:: @ 83CDA20
- .incbin "baserom.gba", 0x3CDA20, 0x28
-
-gUnknown_83CDA48:: @ 83CDA48
- .incbin "baserom.gba", 0x3CDA48, 0x28
-
-gUnknown_83CDA70:: @ 83CDA70
- .incbin "baserom.gba", 0x3CDA70, 0x24
-
-gUnknown_83CDA94:: @ 83CDA94
- .incbin "baserom.gba", 0x3CDA94, 0x4
-
-gUnknown_83CDA98:: @ 83CDA98
- .incbin "baserom.gba", 0x3CDA98, 0x20
-
-gUnknown_83CDAB8:: @ 83CDAB8
- .incbin "baserom.gba", 0x3CDAB8, 0x800
-
-gUnknown_83CE2B8:: @ 83CE2B8
- .incbin "baserom.gba", 0x3CE2B8, 0x180
-
-gUnknown_83CE438:: @ 83CE438
- .incbin "baserom.gba", 0x3CE438, 0x98
-
-gUnknown_83CE4D0:: @ 83CE4D0
- .incbin "baserom.gba", 0x3CE4D0, 0x12C
-
-gUnknown_83CE5FC:: @ 83CE5FC
- .incbin "baserom.gba", 0x3CE5FC, 0xFC
-
-gUnknown_83CE6F8:: @ 83CE6F8
- .incbin "baserom.gba", 0x3CE6F8, 0x40
-
-gUnknown_83CE738:: @ 83CE738
- .incbin "baserom.gba", 0x3CE738, 0x20
-
-gUnknown_83CE758:: @ 83CE758
- .incbin "baserom.gba", 0x3CE758, 0x20
-
-gUnknown_83CE778:: @ 83CE778
- .incbin "baserom.gba", 0x3CE778, 0x48
-
-gUnknown_83CE7C0:: @ 83CE7C0
- .incbin "baserom.gba", 0x3CE7C0, 0x18
-
-gUnknown_83CE7D8:: @ 83CE7D8
- .incbin "baserom.gba", 0x3CE7D8, 0x238
-
-gUnknown_83CEA10:: @ 83CEA10
- .incbin "baserom.gba", 0x3CEA10, 0x20
-
-gUnknown_83CEA30:: @ 83CEA30
- .incbin "baserom.gba", 0x3CEA30, 0x20
-
-gUnknown_83CEA50:: @ 83CEA50
- .incbin "baserom.gba", 0x3CEA50, 0x10
-
-gUnknown_83CEA60:: @ 83CEA60
- .incbin "baserom.gba", 0x3CEA60, 0x8
-
-gUnknown_83CEA68:: @ 83CEA68
- .incbin "baserom.gba", 0x3CEA68, 0x8
-
-gUnknown_83CEA70:: @ 83CEA70
- .incbin "baserom.gba", 0x3CEA70, 0x18
-
-gUnknown_83CEA88:: @ 83CEA88
- .incbin "baserom.gba", 0x3CEA88, 0xF8
-
-gUnknown_83CEB80:: @ 83CEB80
- .incbin "baserom.gba", 0x3CEB80, 0x58
-
-gUnknown_83CEBD8:: @ 83CEBD8
- .incbin "baserom.gba", 0x3CEBD8, 0x18
-
-gUnknown_83CEBF0:: @ 83CEBF0
- .incbin "baserom.gba", 0x3CEBF0, 0x48
-
-gUnknown_83CEC38:: @ 83CEC38
- .incbin "baserom.gba", 0x3CEC38, 0x3D98
-
-gUnknown_83D29D0:: @ 83D29D0
- .incbin "baserom.gba", 0x3D29D0, 0x40
-
-gUnknown_83D2A10:: @ 83D2A10
- .incbin "baserom.gba", 0x3D2A10, 0x144
-
-gUnknown_83D2B54:: @ 83D2B54
- .incbin "baserom.gba", 0x3D2B54, 0x28
-
-gUnknown_83D2B7C:: @ 83D2B7C
- .incbin "baserom.gba", 0x3D2B7C, 0x38
-
-gUnknown_83D2BB4:: @ 83D2BB4
- .incbin "baserom.gba", 0x3D2BB4, 0x8B8
-
-gUnknown_83D346C:: @ 83D346C
- .incbin "baserom.gba", 0x3D346C, 0xC
-
-gUnknown_83D3478:: @ 83D3478
- .incbin "baserom.gba", 0x3D3478, 0x28
-
-gUnknown_83D34A0:: @ 83D34A0
- .incbin "baserom.gba", 0x3D34A0, 0x18
-
-gUnknown_83D34B8:: @ 83D34B8
- .incbin "baserom.gba", 0x3D34B8, 0x54
-
-gUnknown_83D350C:: @ 83D350C
- .incbin "baserom.gba", 0x3D350C, 0x18
-
-gUnknown_83D3524:: @ 83D3524
- .incbin "baserom.gba", 0x3D3524, 0x18
-
-gUnknown_83D353C:: @ 83D353C
- .incbin "baserom.gba", 0x3D353C, 0x98
-
-gUnknown_83D35D4:: @ 83D35D4
- .incbin "baserom.gba", 0x3D35D4, 0x8
-
-gUnknown_83D35DC:: @ 83D35DC
- .incbin "baserom.gba", 0x3D35DC, 0x14C
-
-gUnknown_83D3728:: @ 83D3728
- .incbin "baserom.gba", 0x3D3728, 0x18
-
- @ pokemon_icon
- .section .rodata.83D4100
- .align 2
- @ fldeff_cut
-gUnknown_83D4100:: @ 83D4100
- .incbin "baserom.gba", 0x3D4100, 0x4C
-
-gUnknown_83D414C:: @ 83D414C
- .incbin "baserom.gba", 0x3D414C, 0x18
-
-gUnknown_83D4164:: @ 83D4164
- .incbin "baserom.gba", 0x3D4164, 0x8
-
- .section .rodata.83DF09C
-gUnknown_83DF09C:: @ 83DF09C
- .incbin "baserom.gba", 0x3DF09C, 0x18
-
-gUnknown_83DF0B4:: @ 83DF0B4
- .incbin "baserom.gba", 0x3DF0B4, 0x8
-
-gUnknown_83DF0BC:: @ 83DF0BC
- .incbin "baserom.gba", 0x3DF0BC, 0x8
-
-gUnknown_83DF0C4:: @ 83DF0C4
- .incbin "baserom.gba", 0x3DF0C4, 0x10
-
-gUnknown_83DF0D4:: @ 83DF0D4
- .incbin "baserom.gba", 0x3DF0D4, 0x6
-
-gUnknown_83DF0DA:: @ 83DF0DA
- .incbin "baserom.gba", 0x3DF0DA, 0x6
-
-gUnknown_83DF0E0:: @ 83DF0E0
- .incbin "baserom.gba", 0x3DF0E0, 0x6
-
-gUnknown_83DF0E6:: @ 83DF0E6
- .incbin "baserom.gba", 0x3DF0E6, 0x6
-
-gUnknown_83DF0EC:: @ 83DF0EC
- .incbin "baserom.gba", 0x3DF0EC, 0x6
-
-gUnknown_83DF0F2:: @ 83DF0F2
- .incbin "baserom.gba", 0x3DF0F2, 0x6
-
-gUnknown_83DF0F8:: @ 83DF0F8
- .incbin "baserom.gba", 0x3DF0F8, 0x6F0
-
-sBerries:: @ 83DF7E8
- .incbin "baserom.gba", 0x3DF7E8, 0x4B4
-
-gUnknown_83DFC9C:: @ 83DFC9C
- .incbin "baserom.gba", 0x3DFC9C, 0xB4
-
- .section .rodata.83E2280
.incbin "baserom.gba", 0x3E1800, 0xA80
gUnknown_83E2280:: @ 83E2280
diff --git a/data/field_effect.s b/data/field_effect.s
new file mode 100644
index 000000000..0ae0ba95d
--- /dev/null
+++ b/data/field_effect.s
@@ -0,0 +1,145 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+ .incbin "baserom.gba", 0x3CA770, 0xE80
+
+gUnknown_83CB5F0:: @ 83CB5F0
+ .incbin "baserom.gba", 0x3CB5F0, 0x200
+
+gUnknown_83CB7F0:: @ 83CB7F0
+ .incbin "baserom.gba", 0x3CB7F0, 0x20
+
+gUnknown_83CB810:: @ 83CB810
+ .incbin "baserom.gba", 0x3CB810, 0x280
+
+gUnknown_83CBA90:: @ 83CBA90
+ .incbin "baserom.gba", 0x3CBA90, 0x80
+
+gUnknown_83CBB10:: @ 83CBB10
+ .incbin "baserom.gba", 0x3CBB10, 0x20
+
+gUnknown_83CBB30:: @ 83CBB30
+ .incbin "baserom.gba", 0x3CBB30, 0x300
+
+gUnknown_83CBE30:: @ 83CBE30
+ .incbin "baserom.gba", 0x3CBE30, 0x20
+
+gUnknown_83CBE50:: @ 83CBE50
+ .incbin "baserom.gba", 0x3CBE50, 0x20
+
+gUnknown_83CBE70:: @ 83CBE70
+ .incbin "baserom.gba", 0x3CBE70, 0x14
+
+gUnknown_83CBE84:: @ 83CBE84
+ .incbin "baserom.gba", 0x3CBE84, 0x18
+ .incbin "baserom.gba", 0x3CBE9C, 0xEC
+
+gUnknown_83CBF88:: @ 83CBF88
+ .incbin "baserom.gba", 0x3CBF88, 0x18
+
+gUnknown_83CBFA0:: @ 83CBFA0
+ .incbin "baserom.gba", 0x3CBFA0, 0x18
+
+gUnknown_83CBFB8:: @ 83CBFB8
+ .incbin "baserom.gba", 0x3CBFB8, 0x18
+
+gUnknown_83CBFD0:: @ 83CBFD0
+ .incbin "baserom.gba", 0x3CBFD0, 0x10
+
+gUnknown_83CBFE0:: @ 83CBFE0
+ .incbin "baserom.gba", 0x3CBFE0, 0x10
+
+gUnknown_83CBFF0:: @ 83CBFF0
+ .incbin "baserom.gba", 0x3CBFF0, 0x20
+
+gUnknown_83CC010:: @ 83CC010
+ .incbin "baserom.gba", 0x3CC010, 0x18
+
+gUnknown_83CC028:: @ 83CC028
+ .incbin "baserom.gba", 0x3CC028, 0x4
+
+gUnknown_83CC02C:: @ 83CC02C
+ .incbin "baserom.gba", 0x3CC02C, 0x4
+
+gUnknown_83CC030:: @ 83CC030
+ .incbin "baserom.gba", 0x3CC030, 0x4
+
+gUnknown_83CC034:: @ 83CC034
+ .incbin "baserom.gba", 0x3CC034, 0x1C
+
+gUnknown_83CC050:: @ 83CC050
+ .incbin "baserom.gba", 0x3CC050, 0x18
+
+gUnknown_83CC068:: @ 83CC068
+ .incbin "baserom.gba", 0x3CC068, 0x1C
+
+gUnknown_83CC084:: @ 83CC084
+ .incbin "baserom.gba", 0x3CC084, 0x14
+
+gUnknown_83CC098:: @ 83CC098
+ .incbin "baserom.gba", 0x3CC098, 0xC
+
+gUnknown_83CC0A4:: @ 83CC0A4
+ .incbin "baserom.gba", 0x3CC0A4, 0x18
+
+gUnknown_83CC0BC:: @ 83CC0BC
+ .incbin "baserom.gba", 0x3CC0BC, 0x10
+
+gUnknown_83CC0CC:: @ 83CC0CC
+ .incbin "baserom.gba", 0x3CC0CC, 0x14
+
+gUnknown_83CC0E0:: @ 83CC0E0
+ .incbin "baserom.gba", 0x3CC0E0, 0x8
+
+gUnknown_83CC0E8:: @ 83CC0E8
+ .incbin "baserom.gba", 0x3CC0E8, 0x8
+
+gUnknown_83CC0F0:: @ 83CC0F0
+ .incbin "baserom.gba", 0x3CC0F0, 0x8
+
+gUnknown_83CC0F8:: @ 83CC0F8
+ .incbin "baserom.gba", 0x3CC0F8, 0x10
+
+gUnknown_83CC108:: @ 83CC108
+ .incbin "baserom.gba", 0x3CC108, 0x8
+
+gUnknown_83CC110:: @ 83CC110
+ .incbin "baserom.gba", 0x3CC110, 0xC
+
+gUnknown_83CC11C:: @ 83CC11C
+ .incbin "baserom.gba", 0x3CC11C, 0x1C
+
+gUnknown_83CC138:: @ 83CC138
+ .incbin "baserom.gba", 0x3CC138, 0x1C
+
+gUnknown_83CC154:: @ 83CC154
+ .incbin "baserom.gba", 0x3CC154, 0x14
+
+gUnknown_83CC168:: @ 83CC168
+ .incbin "baserom.gba", 0x3CC168, 0x10
+
+gUnknown_83CC178:: @ 83CC178
+ .incbin "baserom.gba", 0x3CC178, 0x54
+
+gUnknown_83CC1CC:: @ 83CC1CC
+ .incbin "baserom.gba", 0x3CC1CC, 0x8
+
+gUnknown_83CC1D4:: @ 83CC1D4
+ .incbin "baserom.gba", 0x3CC1D4, 0x1C
+
+gUnknown_83CC1F0:: @ 83CC1F0
+ .incbin "baserom.gba", 0x3CC1F0, 0x4C
+
+gUnknown_83CC23C:: @ 83CC23C
+ .incbin "baserom.gba", 0x3CC23C, 0x8
+
+gUnknown_83CC244:: @ 83CC244
+ .incbin "baserom.gba", 0x3CC244, 0x5C
+
+gUnknown_83CC2A0:: @ 83CC2A0
+ .incbin "baserom.gba", 0x3CC2A0, 0x18
diff --git a/data/fldeff_cut.s b/data/fldeff_cut.s
new file mode 100644
index 000000000..ee162cf40
--- /dev/null
+++ b/data/fldeff_cut.s
@@ -0,0 +1,13 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83D4100:: @ 83D4100
+ .incbin "baserom.gba", 0x3D4100, 0x4C
+
+gUnknown_83D414C:: @ 83D414C
+ .incbin "baserom.gba", 0x3D414C, 0x18
diff --git a/data/map_name_popup.s b/data/map_name_popup.s
new file mode 100644
index 000000000..6509df895
--- /dev/null
+++ b/data/map_name_popup.s
@@ -0,0 +1,10 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83D4164:: @ 83D4164
+ .incbin "baserom.gba", 0x3D4164, 0x8
diff --git a/data/option_menu.s b/data/option_menu.s
new file mode 100644
index 000000000..098e76f31
--- /dev/null
+++ b/data/option_menu.s
@@ -0,0 +1,43 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83CC2B8:: @ 83CC2B8
+ .incbin "baserom.gba", 0x3CC2B8, 0x20
+
+gUnknown_83CC2D8:: @ 83CC2D8
+ .incbin "baserom.gba", 0x3CC2D8, 0xC
+
+gUnknown_83CC2E4:: @ 83CC2E4
+ .incbin "baserom.gba", 0x3CC2E4, 0x20
+
+gUnknown_83CC304:: @ 83CC304
+ .incbin "baserom.gba", 0x3CC304, 0x10
+
+gUnknown_83CC314:: @ 83CC314
+ .incbin "baserom.gba", 0x3CC314, 0x1C
+
+gUnknown_83CC330:: @ 83CC330
+ .incbin "baserom.gba", 0x3CC330, 0xC
+
+gUnknown_83CC33C:: @ 83CC33C
+ .incbin "baserom.gba", 0x3CC33C, 0x8
+
+gUnknown_83CC344:: @ 83CC344
+ .incbin "baserom.gba", 0x3CC344, 0x8
+
+gUnknown_83CC34C:: @ 83CC34C
+ .incbin "baserom.gba", 0x3CC34C, 0x8
+
+gUnknown_83CC354:: @ 83CC354
+ .incbin "baserom.gba", 0x3CC354, 0xC
+
+gUnknown_83CC360:: @ 83CC360
+ .incbin "baserom.gba", 0x3CC360, 0x3
+
+gUnknown_83CC363:: @ 83CC363
+ .incbin "baserom.gba", 0x3CC363, 0x3
diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s
new file mode 100644
index 000000000..0196b3cb5
--- /dev/null
+++ b/data/pokemon_storage_system.s
@@ -0,0 +1,133 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83CDA20:: @ 83CDA20
+ .incbin "baserom.gba", 0x3CDA20, 0x28
+
+gUnknown_83CDA48:: @ 83CDA48
+ .incbin "baserom.gba", 0x3CDA48, 0x28
+
+gUnknown_83CDA70:: @ 83CDA70
+ .incbin "baserom.gba", 0x3CDA70, 0x24
+
+gUnknown_83CDA94:: @ 83CDA94
+ .incbin "baserom.gba", 0x3CDA94, 0x4
+
+gUnknown_83CDA98:: @ 83CDA98
+ .incbin "baserom.gba", 0x3CDA98, 0x20
+
+gUnknown_83CDAB8:: @ 83CDAB8
+ .incbin "baserom.gba", 0x3CDAB8, 0x800
+
+gUnknown_83CE2B8:: @ 83CE2B8
+ .incbin "baserom.gba", 0x3CE2B8, 0x180
+
+gUnknown_83CE438:: @ 83CE438
+ .incbin "baserom.gba", 0x3CE438, 0x98
+
+gUnknown_83CE4D0:: @ 83CE4D0
+ .incbin "baserom.gba", 0x3CE4D0, 0x12C
+
+gUnknown_83CE5FC:: @ 83CE5FC
+ .incbin "baserom.gba", 0x3CE5FC, 0xFC
+
+gUnknown_83CE6F8:: @ 83CE6F8
+ .incbin "baserom.gba", 0x3CE6F8, 0x40
+
+gUnknown_83CE738:: @ 83CE738
+ .incbin "baserom.gba", 0x3CE738, 0x20
+
+gUnknown_83CE758:: @ 83CE758
+ .incbin "baserom.gba", 0x3CE758, 0x20
+
+gUnknown_83CE778:: @ 83CE778
+ .incbin "baserom.gba", 0x3CE778, 0x48
+
+gUnknown_83CE7C0:: @ 83CE7C0
+ .incbin "baserom.gba", 0x3CE7C0, 0x18
+
+gUnknown_83CE7D8:: @ 83CE7D8
+ .incbin "baserom.gba", 0x3CE7D8, 0x238
+
+gUnknown_83CEA10:: @ 83CEA10
+ .incbin "baserom.gba", 0x3CEA10, 0x20
+
+gUnknown_83CEA30:: @ 83CEA30
+ .incbin "baserom.gba", 0x3CEA30, 0x20
+
+gUnknown_83CEA50:: @ 83CEA50
+ .incbin "baserom.gba", 0x3CEA50, 0x10
+
+gUnknown_83CEA60:: @ 83CEA60
+ .incbin "baserom.gba", 0x3CEA60, 0x8
+
+gUnknown_83CEA68:: @ 83CEA68
+ .incbin "baserom.gba", 0x3CEA68, 0x8
+
+gUnknown_83CEA70:: @ 83CEA70
+ .incbin "baserom.gba", 0x3CEA70, 0x18
+
+gUnknown_83CEA88:: @ 83CEA88
+ .incbin "baserom.gba", 0x3CEA88, 0xF8
+
+gUnknown_83CEB80:: @ 83CEB80
+ .incbin "baserom.gba", 0x3CEB80, 0x58
+
+gUnknown_83CEBD8:: @ 83CEBD8
+ .incbin "baserom.gba", 0x3CEBD8, 0x18
+
+gUnknown_83CEBF0:: @ 83CEBF0
+ .incbin "baserom.gba", 0x3CEBF0, 0x48
+
+gUnknown_83CEC38:: @ 83CEC38
+ .incbin "baserom.gba", 0x3CEC38, 0x3D98
+
+gUnknown_83D29D0:: @ 83D29D0
+ .incbin "baserom.gba", 0x3D29D0, 0x40
+
+gUnknown_83D2A10:: @ 83D2A10
+ .incbin "baserom.gba", 0x3D2A10, 0x144
+
+gUnknown_83D2B54:: @ 83D2B54
+ .incbin "baserom.gba", 0x3D2B54, 0x28
+
+gUnknown_83D2B7C:: @ 83D2B7C
+ .incbin "baserom.gba", 0x3D2B7C, 0x38
+
+gUnknown_83D2BB4:: @ 83D2BB4
+ .incbin "baserom.gba", 0x3D2BB4, 0x8B8
+
+gUnknown_83D346C:: @ 83D346C
+ .incbin "baserom.gba", 0x3D346C, 0xC
+
+gUnknown_83D3478:: @ 83D3478
+ .incbin "baserom.gba", 0x3D3478, 0x28
+
+gUnknown_83D34A0:: @ 83D34A0
+ .incbin "baserom.gba", 0x3D34A0, 0x18
+
+gUnknown_83D34B8:: @ 83D34B8
+ .incbin "baserom.gba", 0x3D34B8, 0x54
+
+gUnknown_83D350C:: @ 83D350C
+ .incbin "baserom.gba", 0x3D350C, 0x18
+
+gUnknown_83D3524:: @ 83D3524
+ .incbin "baserom.gba", 0x3D3524, 0x18
+
+gUnknown_83D353C:: @ 83D353C
+ .incbin "baserom.gba", 0x3D353C, 0x98
+
+gUnknown_83D35D4:: @ 83D35D4
+ .incbin "baserom.gba", 0x3D35D4, 0x8
+
+gUnknown_83D35DC:: @ 83D35DC
+ .incbin "baserom.gba", 0x3D35DC, 0x14C
+
+gUnknown_83D3728:: @ 83D3728
+ .incbin "baserom.gba", 0x3D3728, 0x18
diff --git a/data/shop.s b/data/shop.s
new file mode 100644
index 000000000..c7f60813f
--- /dev/null
+++ b/data/shop.s
@@ -0,0 +1,40 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83DF09C:: @ 83DF09C
+ .incbin "baserom.gba", 0x3DF09C, 0x18
+
+gUnknown_83DF0B4:: @ 83DF0B4
+ .incbin "baserom.gba", 0x3DF0B4, 0x8
+
+gUnknown_83DF0BC:: @ 83DF0BC
+ .incbin "baserom.gba", 0x3DF0BC, 0x8
+
+gUnknown_83DF0C4:: @ 83DF0C4
+ .incbin "baserom.gba", 0x3DF0C4, 0x10
+
+gUnknown_83DF0D4:: @ 83DF0D4
+ .incbin "baserom.gba", 0x3DF0D4, 0x6
+
+gUnknown_83DF0DA:: @ 83DF0DA
+ .incbin "baserom.gba", 0x3DF0DA, 0x6
+
+gUnknown_83DF0E0:: @ 83DF0E0
+ .incbin "baserom.gba", 0x3DF0E0, 0x6
+
+gUnknown_83DF0E6:: @ 83DF0E6
+ .incbin "baserom.gba", 0x3DF0E6, 0x6
+
+gUnknown_83DF0EC:: @ 83DF0EC
+ .incbin "baserom.gba", 0x3DF0EC, 0x6
+
+gUnknown_83DF0F2:: @ 83DF0F2
+ .incbin "baserom.gba", 0x3DF0F2, 0x6
+
+gUnknown_83DF0F8:: @ 83DF0F8
+ .incbin "baserom.gba", 0x3DF0F8, 0x8
diff --git a/data/trainer_card.s b/data/trainer_card.s
new file mode 100644
index 000000000..446e2f4ac
--- /dev/null
+++ b/data/trainer_card.s
@@ -0,0 +1,160 @@
+#include "constants/maps.h"
+#include "constants/species.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .section .rodata
+ .align 2
+
+gUnknown_83CC368:: @ 83CC368
+ .incbin "baserom.gba", 0x3CC368, 0x174
+
+gUnknown_83CC4DC:: @ 83CC4DC
+ .incbin "baserom.gba", 0x3CC4DC, 0x214
+
+gUnknown_83CC6F0:: @ 83CC6F0
+ .incbin "baserom.gba", 0x3CC6F0, 0x1B8
+
+gUnknown_83CC8A8:: @ 83CC8A8
+ .incbin "baserom.gba", 0x3CC8A8, 0xDC
+
+gUnknown_83CC984:: @ 83CC984
+ .incbin "baserom.gba", 0x3CC984, 0x12C
+
+gUnknown_83CCAB0:: @ 83CCAB0
+ .incbin "baserom.gba", 0x3CCAB0, 0x1F4
+
+gUnknown_83CCCA4:: @ 83CCCA4
+ .incbin "baserom.gba", 0x3CCCA4, 0x18C
+
+gUnknown_83CCE30:: @ 83CCE30
+ .incbin "baserom.gba", 0x3CCE30, 0x98
+
+gUnknown_83CCEC8:: @ 83CCEC8
+ .incbin "baserom.gba", 0x3CCEC8, 0x3B8
+
+gUnknown_83CD280:: @ 83CD280
+ .incbin "baserom.gba", 0x3CD280, 0x20
+
+gUnknown_83CD2A0:: @ 83CD2A0
+ .incbin "baserom.gba", 0x3CD2A0, 0x20
+
+gUnknown_83CD2C0:: @ 83CD2C0
+ .incbin "baserom.gba", 0x3CD2C0, 0x20
+
+gUnknown_83CD2E0:: @ 83CD2E0
+ .incbin "baserom.gba", 0x3CD2E0, 0x20
+
+gUnknown_83CD300:: @ 83CD300
+ .incbin "baserom.gba", 0x3CD300, 0x20
+
+gUnknown_83CD320:: @ 83CD320
+ .incbin "baserom.gba", 0x3CD320, 0x20
+
+gUnknown_83CD340:: @ 83CD340
+ .incbin "baserom.gba", 0x3CD340, 0x20
+
+gUnknown_83CD360:: @ 83CD360
+ .incbin "baserom.gba", 0x3CD360, 0x20
+
+gUnknown_83CD380:: @ 83CD380
+ .incbin "baserom.gba", 0x3CD380, 0x268
+
+gUnknown_83CD5E8:: @ 83CD5E8
+ .incbin "baserom.gba", 0x3CD5E8, 0x2A0
+
+gUnknown_83CD888:: @ 83CD888
+ .incbin "baserom.gba", 0x3CD888, 0x10
+
+gUnknown_83CD898:: @ 83CD898
+ .incbin "baserom.gba", 0x3CD898, 0x20
+
+gUnknown_83CD8B8:: @ 83CD8B8
+ .incbin "baserom.gba", 0x3CD8B8, 0x14
+
+gUnknown_83CD8CC:: @ 83CD8CC
+ .incbin "baserom.gba", 0x3CD8CC, 0x14
+
+gUnknown_83CD8E0:: @ 83CD8E0
+ .incbin "baserom.gba", 0x3CD8E0, 0x3
+
+gUnknown_83CD8E3:: @ 83CD8E3
+ .incbin "baserom.gba", 0x3CD8E3, 0x6
+
+gUnknown_83CD8E9:: @ 83CD8E9
+ .incbin "baserom.gba", 0x3CD8E9, 0x3
+
+gUnknown_83CD8EC:: @ 83CD8EC
+ .incbin "baserom.gba", 0x3CD8EC, 0x8
+
+gUnknown_83CD8F4:: @ 83CD8F4
+ .incbin "baserom.gba", 0x3CD8F4, 0x4
+
+gUnknown_83CD8F8:: @ 83CD8F8
+ .incbin "baserom.gba", 0x3CD8F8, 0x10
+
+gUnknown_83CD908:: @ 83CD908
+ .incbin "baserom.gba", 0x3CD908, 0x18
+
+gUnknown_83CD920:: @ 83CD920
+ .incbin "baserom.gba", 0x3CD920, 0x2
+
+gUnknown_83CD922:: @ 83CD922
+ .incbin "baserom.gba", 0x3CD922, 0x2
+
+gUnknown_83CD924:: @ 83CD924
+ .incbin "baserom.gba", 0x3CD924, 0x2
+
+gUnknown_83CD926:: @ 83CD926
+ .incbin "baserom.gba", 0x3CD926, 0x2
+
+gUnknown_83CD928:: @ 83CD928
+ .incbin "baserom.gba", 0x3CD928, 0x8
+
+gUnknown_83CD930:: @ 83CD930
+ .incbin "baserom.gba", 0x3CD930, 0x2
+
+gUnknown_83CD932:: @ 83CD932
+ .incbin "baserom.gba", 0x3CD932, 0x2
+
+gUnknown_83CD934:: @ 83CD934
+ .incbin "baserom.gba", 0x3CD934, 0x2
+
+gUnknown_83CD936:: @ 83CD936
+ .incbin "baserom.gba", 0x3CD936, 0x2
+
+gUnknown_83CD938:: @ 83CD938
+ .incbin "baserom.gba", 0x3CD938, 0x2
+
+gUnknown_83CD93A:: @ 83CD93A
+ .incbin "baserom.gba", 0x3CD93A, 0x2
+
+gUnknown_83CD93C:: @ 83CD93C
+ .incbin "baserom.gba", 0x3CD93C, 0x2
+
+gUnknown_83CD93E:: @ 83CD93E
+ .incbin "baserom.gba", 0x3CD93E, 0x2
+
+gUnknown_83CD940:: @ 83CD940
+ .incbin "baserom.gba", 0x3CD940, 0x4
+
+gUnknown_83CD944:: @ 83CD944
+ .incbin "baserom.gba", 0x3CD944, 0x8
+
+gUnknown_83CD94C:: @ 83CD94C
+ .incbin "baserom.gba", 0x3CD94C, 0x6
+
+gUnknown_83CD952:: @ 83CD952
+ .incbin "baserom.gba", 0x3CD952, 0x6
+
+gUnknown_83CD958:: @ 83CD958
+ .incbin "baserom.gba", 0x3CD958, 0x4
+
+gUnknown_83CD95C:: @ 83CD95C
+ .incbin "baserom.gba", 0x3CD95C, 0x4
+
+gUnknown_83CD960:: @ 83CD960
+ .incbin "baserom.gba", 0x3CD960, 0x60
+
+gUnknown_83CD9C0:: @ 83CD9C0
+ .incbin "baserom.gba", 0x3CD9C0, 0x60
diff --git a/ld_script.txt b/ld_script.txt
index a8919e9b2..b54327ba1 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -431,15 +431,20 @@ SECTIONS {
data/cable_club.o(.rodata);
data/trainer_see.o(.rodata);
src/wild_encounter.o(.rodata);
- data/data_835B488.o(.rodata);
+ data/field_effect.o(.rodata);
+ data/option_menu.o(.rodata);
+ data/trainer_card.o(.rodata);
+ data/pokemon_storage_system.o(.rodata);
src/pokemon_icon.o(.rodata);
- data/data_835B488.o(.rodata.83D4100);
+ data/fldeff_cut.o(.rodata);
+ data/map_name_popup.o(.rodata);
src/item_menu_icons.o(.rodata);
src/battle_anim_mon_movement.o(.rodata);
src/item.o(.rodata);
- data/data_835B488.o(.rodata.83DF09C);
+ data/shop.o(.rodata);
+ src/berry.o(.rodata);
src/script_menu.o(.rodata);
- data/data_835B488.o(.rodata.83E2280);
+ data/data_835B488.o(.rodata);
src/flying.o(.rodata);
src/psychic.o(.rodata);
src/bug.o(.rodata);
diff --git a/src/berry.c b/src/berry.c
index d349109d2..456ab1565 100644
--- a/src/berry.c
+++ b/src/berry.c
@@ -3,9 +3,920 @@
#include "text.h"
#include "constants/items.h"
-extern const struct Berry sBerries[];
+static const u8 sBerryDescriptionPart1_Cheri[] = _("とても かわいい はなが さく.");
+static const u8 sBerryDescriptionPart2_Cheri[] = _("まっかな みは とても からい.");
+static const u8 sBerryDescriptionPart1_Chesto[] = _("そとの かわの ぶぶんも なかみも すべてが");
+static const u8 sBerryDescriptionPart2_Chesto[] = _("かたい. どこを たべても しぶい.");
+static const u8 sBerryDescriptionPart1_Pecha[] = _("とても あまくて おいしい.");
+static const u8 sBerryDescriptionPart2_Pecha[] = _("やわらかいので はこぶときは ちゅうい.");
+static const u8 sBerryDescriptionPart1_Rawst[] = _("はっぱの ぶぶんが ながく まるまっていると");
+static const u8 sBerryDescriptionPart2_Rawst[] = _("みが とても にがく なるらしい.");
+static const u8 sBerryDescriptionPart1_Aspear[] = _("かたい みの なかには すいぶんが とても");
+static const u8 sBerryDescriptionPart2_Aspear[] = _("おおく ふくまれている. かなり すっぱい.");
+static const u8 sBerryDescriptionPart1_Leppa[] = _("クラボなどに くらべて すこし そだつのが");
+static const u8 sBerryDescriptionPart2_Leppa[] = _("おそい. みが ちいさいほど おいしい.");
+static const u8 sBerryDescriptionPart1_Oran[] = _("いろいろな あじが まざった ふしぎな み.");
+static const u8 sBerryDescriptionPart2_Oran[] = _("みを つけるのに はんにち かかる.");
+static const u8 sBerryDescriptionPart1_Persim[] = _("たいようが だいすき. ひに あたると");
+static const u8 sBerryDescriptionPart2_Persim[] = _("どんどん いろが あざやかに なる.");
+static const u8 sBerryDescriptionPart1_Lum[] = _("そだつのに じかんが かかるが たいせつに");
+static const u8 sBerryDescriptionPart2_Lum[] = _("そだてると みが 2つ つくことも ある.");
+static const u8 sBerryDescriptionPart1_Sitrus[] = _("オレンとは きょうだいの ような そんざい.");
+static const u8 sBerryDescriptionPart2_Sitrus[] = _("おおきくて あじも ととのっている.");
+static const u8 sBerryDescriptionPart1_Figy[] = _("たべられた あとのような かたちの なかには");
+static const u8 sBerryDescriptionPart2_Figy[] = _("からい せいぶんが つまっている.");
+static const u8 sBerryDescriptionPart1_Wiki[] = _("まわりに ついている イボイボは ポケモンが");
+static const u8 sBerryDescriptionPart2_Wiki[] = _("もちやすいように できたと いわれている.");
+static const u8 sBerryDescriptionPart1_Mago[] = _("おおきく なれば なるほど みが まがる.");
+static const u8 sBerryDescriptionPart2_Mago[] = _("まがるほど あまくて おいしい.");
+static const u8 sBerryDescriptionPart1_Aguav[] = _("ちいさい サイズの はなで しかも ひかりを");
+static const u8 sBerryDescriptionPart2_Aguav[] = _("ひつようと しない めずらしい きのみ.");
+static const u8 sBerryDescriptionPart1_Iapapa[] = _("とても おおきな すっぱい きのみ.");
+static const u8 sBerryDescriptionPart2_Iapapa[] = _("そだてるには みじかくても 1にち かかる.");
+static const u8 sBerryDescriptionPart1_Razz[] = _("あかい みは たべると ちょっぴり からい.");
+static const u8 sBerryDescriptionPart2_Razz[] = _("そだつのが はやく 4じかんで みを つける");
+static const u8 sBerryDescriptionPart1_Bluk[] = _("そとがわは あおいいろだが たべると");
+static const u8 sBerryDescriptionPart2_Bluk[] = _("くちの なかが まっくろに なる.");
+static const u8 sBerryDescriptionPart1_Nanab[] = _("せかいで 7ばんめに はっけん されたので");
+static const u8 sBerryDescriptionPart2_Nanab[] = _("ナナという せつが ゆうりょく. あまい.");
+static const u8 sBerryDescriptionPart1_Wepear[] = _("ちいさな しろい はなが さく. にがさと");
+static const u8 sBerryDescriptionPart2_Wepear[] = _("すっぱさが まざりあった びみょうな あじ.");
+static const u8 sBerryDescriptionPart1_Pinap[] = _("かぜに よわく さむさにも よわい.");
+static const u8 sBerryDescriptionPart2_Pinap[] = _("みの なかが からく そとがわが すっぱい.");
+static const u8 sBerryDescriptionPart1_Pomeg[] = _("どんなに みずを あげても えいようが");
+static const u8 sBerryDescriptionPart2_Pomeg[] = _("あっても 6つの み しか つけない.");
+static const u8 sBerryDescriptionPart1_Kelpsy[] = _("ねっこの ような かたちの めずらしい");
+static const u8 sBerryDescriptionPart2_Kelpsy[] = _("しゅるい. とても おおきな はなが さく.");
+static const u8 sBerryDescriptionPart1_Qualot[] = _("みずが だいすき. ずっと あめが ふる");
+static const u8 sBerryDescriptionPart2_Qualot[] = _("ばしょでも しっかりと そだつ.");
+static const u8 sBerryDescriptionPart1_Hondew[] = _("とても こうかで なかなか めに することが");
+static const u8 sBerryDescriptionPart2_Hondew[] = _("できない きのみ. とても おいしい.");
+static const u8 sBerryDescriptionPart1_Grepa[] = _("やわらかさと まるい かたちからは");
+static const u8 sBerryDescriptionPart2_Grepa[] = _("そうぞうが できないほど すっぱい.");
+static const u8 sBerryDescriptionPart1_Tamato[] = _("くちびるが まがって しまうほど からい.");
+static const u8 sBerryDescriptionPart2_Tamato[] = _("そだてるにも じかんが かかる.");
+static const u8 sBerryDescriptionPart1_Cornn[] = _("おおむかしから はえていた. たくさん");
+static const u8 sBerryDescriptionPart2_Cornn[] = _("うえないと みが つかないときも ある.");
+static const u8 sBerryDescriptionPart1_Magost[] = _("とても あじの バランスが よいと");
+static const u8 sBerryDescriptionPart2_Magost[] = _("ひょうばんの きのみ.");
+static const u8 sBerryDescriptionPart1_Rabuta[] = _("たくさんの けが はえている めずらしい");
+static const u8 sBerryDescriptionPart2_Rabuta[] = _("しゅるい. かなり にがい.");
+static const u8 sBerryDescriptionPart1_Nomel[] = _("かなり すっぱい. 1くち たべると");
+static const u8 sBerryDescriptionPart2_Nomel[] = _("3にちかん ほかの あじが しなくなる.");
+static const u8 sBerryDescriptionPart1_Spelon[] = _("まっかになった みは とてつもなく からい.");
+static const u8 sBerryDescriptionPart2_Spelon[] = _("イボからも からい せいぶんが でている.");
+static const u8 sBerryDescriptionPart1_Pamtre[] = _("どこからともなく うみを ただよってくる.");
+static const u8 sBerryDescriptionPart2_Pamtre[] = _("せかいの どこかで そだっている らしい.");
+static const u8 sBerryDescriptionPart1_Watmel[] = _("とても おおきく 50センチを こえるものも");
+static const u8 sBerryDescriptionPart2_Watmel[] = _("はっけん された. ものすごく あまい.");
+static const u8 sBerryDescriptionPart1_Durin[] = _("みただけで にがい. あまりにも にがいので");
+static const u8 sBerryDescriptionPart2_Durin[] = _("そのままで たべたひとは だれもいない.");
+static const u8 sBerryDescriptionPart1_Belue[] = _("つるつるとして おいしそうだが とてつもなく");
+static const u8 sBerryDescriptionPart2_Belue[] = _("すっぱい. そだてるにも じかんが かかる.");
+static const u8 sBerryDescriptionPart1_Liechi[] = _("なぞのタネ. チイラのみには うみの");
+static const u8 sBerryDescriptionPart2_Liechi[] = _("ちからが やどるという うわさが ある.");
+static const u8 sBerryDescriptionPart1_Ganlon[] = _("なぞのタネ. リュガのみには りくの");
+static const u8 sBerryDescriptionPart2_Ganlon[] = _("ちからが やどるという うわさが ある.");
+static const u8 sBerryDescriptionPart1_Salac[] = _("なぞのタネ. カムラのみには そらの");
+static const u8 sBerryDescriptionPart2_Salac[] = _("ちからが やどるという うわさが ある.");
+static const u8 sBerryDescriptionPart1_Petaya[] = _("なぞのタネ. ヤタピのみには すべての");
+static const u8 sBerryDescriptionPart2_Petaya[] = _("いきものの ちからが やどると いわれている");
+static const u8 sBerryDescriptionPart1_Apicot[] = _("ふしぎな ふしぎな きのみ. なにが");
+static const u8 sBerryDescriptionPart2_Apicot[] = _("おこるのか なにが できるのか わからない.");
+static const u8 sBerryDescriptionPart1_Lansat[] = _("でんせつのみ と いわれている. この みを");
+static const u8 sBerryDescriptionPart2_Lansat[] = _("もつと とても しあわせに なるらしい.");
+static const u8 sBerryDescriptionPart1_Starf[] = _("あまりにも ちからが つよすぎるため");
+static const u8 sBerryDescriptionPart2_Starf[] = _("せかいの はてに すてた まぼろしのみ.");
+static const u8 sBerryDescriptionPart1_Enigma[] = _("しょうたい ふめいの きのみ.");
+static const u8 sBerryDescriptionPart2_Enigma[] = _("ほしの ちからを もっている らしい.");
-#define ENIGMA_BERRY_STRUCT ({const struct Berry2 *berries = (const struct Berry2 *)sBerries;berries[ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX];})
+const struct Berry gBerries[] = {
+ [ITEM_CHERI_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("CHERI"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 20,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Cheri,
+ .description2 = sBerryDescriptionPart2_Cheri,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_CHESTO_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("CHESTO"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 80,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Chesto,
+ .description2 = sBerryDescriptionPart2_Chesto,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_PECHA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("PECHA"),
+ .firmness = BERRY_FIRMNESS_VERY_SOFT,
+ .size = 40,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Pecha,
+ .description2 = sBerryDescriptionPart2_Pecha,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_RAWST_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("RAWST"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 32,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Rawst,
+ .description2 = sBerryDescriptionPart2_Rawst,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_ASPEAR_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("ASPEAR"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 50,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Aspear,
+ .description2 = sBerryDescriptionPart2_Aspear,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 25
+ },
+
+ [ITEM_LEPPA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("LEPPA"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 28,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Leppa,
+ .description2 = sBerryDescriptionPart2_Leppa,
+ .stageDuration = 4,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_ORAN_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("ORAN"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 35,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Oran,
+ .description2 = sBerryDescriptionPart2_Oran,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_PERSIM_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("PERSIM"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 47,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Persim,
+ .description2 = sBerryDescriptionPart2_Persim,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_LUM_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("LUM"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 34,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Lum,
+ .description2 = sBerryDescriptionPart2_Lum,
+ .stageDuration = 12,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_SITRUS_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("SITRUS"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 95,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Sitrus,
+ .description2 = sBerryDescriptionPart2_Sitrus,
+ .stageDuration = 6,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_FIGY_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("FIGY"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 100,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Figy,
+ .description2 = sBerryDescriptionPart2_Figy,
+ .stageDuration = 6,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_WIKI_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("WIKI"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 115,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Wiki,
+ .description2 = sBerryDescriptionPart2_Wiki,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_MAGO_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("MAGO"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 126,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Mago,
+ .description2 = sBerryDescriptionPart2_Mago,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_AGUAV_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("AGUAV"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 64,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Aguav,
+ .description2 = sBerryDescriptionPart2_Aguav,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 25
+ },
+
+ [ITEM_IAPAPA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("IAPAPA"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 223,
+ .maxYield = 3,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Iapapa,
+ .description2 = sBerryDescriptionPart2_Iapapa,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 25
+ },
+
+ [ITEM_RAZZ_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("RAZZ"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 120,
+ .maxYield = 6,
+ .minYield = 3,
+ .description1 = sBerryDescriptionPart1_Razz,
+ .description2 = sBerryDescriptionPart2_Razz,
+ .stageDuration = 1,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 20
+ },
+
+ [ITEM_BLUK_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("BLUK"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 108,
+ .maxYield = 6,
+ .minYield = 3,
+ .description1 = sBerryDescriptionPart1_Bluk,
+ .description2 = sBerryDescriptionPart2_Bluk,
+ .stageDuration = 1,
+ .spicy = 0,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 20
+ },
+
+ [ITEM_NANAB_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("NANAB"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 77,
+ .maxYield = 6,
+ .minYield = 3,
+ .description1 = sBerryDescriptionPart1_Nanab,
+ .description2 = sBerryDescriptionPart2_Nanab,
+ .stageDuration = 1,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 20
+ },
+
+ [ITEM_WEPEAR_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("WEPEAR"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 74,
+ .maxYield = 6,
+ .minYield = 3,
+ .description1 = sBerryDescriptionPart1_Wepear,
+ .description2 = sBerryDescriptionPart2_Wepear,
+ .stageDuration = 1,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_PINAP_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("PINAP"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 80,
+ .maxYield = 6,
+ .minYield = 3,
+ .description1 = sBerryDescriptionPart1_Pinap,
+ .description2 = sBerryDescriptionPart2_Pinap,
+ .stageDuration = 1,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_POMEG_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("POMEG"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 135,
+ .maxYield = 6,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Pomeg,
+ .description2 = sBerryDescriptionPart2_Pomeg,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 20
+ },
+
+ [ITEM_KELPSY_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("KELPSY"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 150,
+ .maxYield = 6,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Kelpsy,
+ .description2 = sBerryDescriptionPart2_Kelpsy,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_QUALOT_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("QUALOT"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 110,
+ .maxYield = 6,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Qualot,
+ .description2 = sBerryDescriptionPart2_Qualot,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_HONDEW_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("HONDEW"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 162,
+ .maxYield = 6,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Hondew,
+ .description2 = sBerryDescriptionPart2_Hondew,
+ .stageDuration = 3,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 20
+ },
+
+ [ITEM_GREPA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("GREPA"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 149,
+ .maxYield = 6,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Grepa,
+ .description2 = sBerryDescriptionPart2_Grepa,
+ .stageDuration = 3,
+ .spicy = 0,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 20
+ },
+
+ [ITEM_TAMATO_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("TAMATO"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 200,
+ .maxYield = 4,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Tamato,
+ .description2 = sBerryDescriptionPart2_Tamato,
+ .stageDuration = 6,
+ .spicy = 20,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 30
+ },
+
+ [ITEM_CORNN_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("CORNN"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 75,
+ .maxYield = 4,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Cornn,
+ .description2 = sBerryDescriptionPart2_Cornn,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 20,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 30
+ },
+
+ [ITEM_MAGOST_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("MAGOST"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 140,
+ .maxYield = 4,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Magost,
+ .description2 = sBerryDescriptionPart2_Magost,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 20,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 30
+ },
+
+ [ITEM_RABUTA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("RABUTA"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 226,
+ .maxYield = 4,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Rabuta,
+ .description2 = sBerryDescriptionPart2_Rabuta,
+ .stageDuration = 6,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 20,
+ .sour = 10,
+ .smoothness = 30
+ },
+
+ [ITEM_NOMEL_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("NOMEL"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 285,
+ .maxYield = 4,
+ .minYield = 2,
+ .description1 = sBerryDescriptionPart1_Nomel,
+ .description2 = sBerryDescriptionPart2_Nomel,
+ .stageDuration = 6,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 20,
+ .smoothness = 30
+ },
+
+ [ITEM_SPELON_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("SPELON"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 133,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Spelon,
+ .description2 = sBerryDescriptionPart2_Spelon,
+ .stageDuration = 18,
+ .spicy = 40,
+ .dry = 10,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 70
+ },
+
+ [ITEM_PAMTRE_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("PAMTRE"),
+ .firmness = BERRY_FIRMNESS_VERY_SOFT,
+ .size = 244,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Pamtre,
+ .description2 = sBerryDescriptionPart2_Pamtre,
+ .stageDuration = 18,
+ .spicy = 0,
+ .dry = 40,
+ .sweet = 10,
+ .bitter = 0,
+ .sour = 0,
+ .smoothness = 70
+ },
+
+ [ITEM_WATMEL_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("WATMEL"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 250,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Watmel,
+ .description2 = sBerryDescriptionPart2_Watmel,
+ .stageDuration = 18,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 40,
+ .bitter = 10,
+ .sour = 0,
+ .smoothness = 70
+ },
+
+ [ITEM_DURIN_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("DURIN"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 280,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Durin,
+ .description2 = sBerryDescriptionPart2_Durin,
+ .stageDuration = 18,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 40,
+ .sour = 10,
+ .smoothness = 70
+ },
+
+ [ITEM_BELUE_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("BELUE"),
+ .firmness = BERRY_FIRMNESS_VERY_SOFT,
+ .size = 300,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Belue,
+ .description2 = sBerryDescriptionPart2_Belue,
+ .stageDuration = 18,
+ .spicy = 10,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 40,
+ .smoothness = 70
+ },
+
+ [ITEM_LIECHI_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("LIECHI"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 111,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Liechi,
+ .description2 = sBerryDescriptionPart2_Liechi,
+ .stageDuration = 24,
+ .spicy = 40,
+ .dry = 0,
+ .sweet = 40,
+ .bitter = 0,
+ .sour = 10,
+ .smoothness = 80
+ },
+
+ [ITEM_GANLON_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("GANLON"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 33,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Ganlon,
+ .description2 = sBerryDescriptionPart2_Ganlon,
+ .stageDuration = 24,
+ .spicy = 0,
+ .dry = 40,
+ .sweet = 0,
+ .bitter = 40,
+ .sour = 0,
+ .smoothness = 80
+ },
+
+ [ITEM_SALAC_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("SALAC"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 95,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Salac,
+ .description2 = sBerryDescriptionPart2_Salac,
+ .stageDuration = 24,
+ .spicy = 0,
+ .dry = 0,
+ .sweet = 40,
+ .bitter = 0,
+ .sour = 40,
+ .smoothness = 80
+ },
+
+ [ITEM_PETAYA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("PETAYA"),
+ .firmness = BERRY_FIRMNESS_VERY_HARD,
+ .size = 237,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Petaya,
+ .description2 = sBerryDescriptionPart2_Petaya,
+ .stageDuration = 24,
+ .spicy = 40,
+ .dry = 0,
+ .sweet = 0,
+ .bitter = 40,
+ .sour = 0,
+ .smoothness = 80
+ },
+
+ [ITEM_APICOT_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("APICOT"),
+ .firmness = BERRY_FIRMNESS_HARD,
+ .size = 75,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Apicot,
+ .description2 = sBerryDescriptionPart2_Apicot,
+ .stageDuration = 24,
+ .spicy = 0,
+ .dry = 40,
+ .sweet = 0,
+ .bitter = 0,
+ .sour = 40,
+ .smoothness = 80
+ },
+
+ [ITEM_LANSAT_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("LANSAT"),
+ .firmness = BERRY_FIRMNESS_SOFT,
+ .size = 97,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Lansat,
+ .description2 = sBerryDescriptionPart2_Lansat,
+ .stageDuration = 24,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 30
+ },
+
+ [ITEM_STARF_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("STARF"),
+ .firmness = BERRY_FIRMNESS_SUPER_HARD,
+ .size = 153,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Starf,
+ .description2 = sBerryDescriptionPart2_Starf,
+ .stageDuration = 24,
+ .spicy = 10,
+ .dry = 10,
+ .sweet = 10,
+ .bitter = 10,
+ .sour = 10,
+ .smoothness = 30
+ },
+
+ [ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX] =
+ {
+ .name = _("ENIGMA"),
+ .firmness = BERRY_FIRMNESS_UNKNOWN,
+ .size = 0,
+ .maxYield = 2,
+ .minYield = 1,
+ .description1 = sBerryDescriptionPart1_Enigma,
+ .description2 = sBerryDescriptionPart2_Enigma,
+ .stageDuration = 24,
+ .spicy = 40,
+ .dry = 40,
+ .sweet = 40,
+ .bitter = 40,
+ .sour = 40,
+ .smoothness = 40
+ },
+
+};
+
+const struct UnkStruct_0858AB24 gUnknown_83DFC9C[] = {
+ { 50, 20},
+ { 50, 20},
+ { 50, 20},
+ { 50, 20},
+ { 50, 20},
+ { 50, 30},
+ { 50, 30},
+ { 50, 30},
+ { 50, 30},
+ { 50, 30},
+ { 60, 50},
+ { 60, 50},
+ { 60, 50},
+ { 60, 50},
+ { 60, 50},
+ { 80, 70},
+ { 80, 70},
+ { 80, 70},
+ { 80, 70},
+ { 80, 70},
+ {100, 100},
+ {100, 100},
+ {100, 100},
+ {100, 100},
+ {100, 100},
+ {130, 150},
+ {130, 150},
+ {130, 150},
+ {130, 150},
+ {130, 150},
+ {160, 250},
+ {160, 250},
+ {160, 250},
+ {160, 250},
+ {160, 250},
+ {180, 500},
+ {180, 500},
+ {180, 500},
+ {180, 500},
+ {180, 500},
+ {200, 750},
+ {200, 750},
+ {150, 200}
+};
+
+// Leftover from R/S
+const struct BerryTree gBlankBerryTree = {};
+
+#define ENIGMA_BERRY_STRUCT ({const struct Berry2 *berries = (const struct Berry2 *)gBerries;berries[ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX];})
void sub_809C718(void)
{
@@ -142,7 +1053,7 @@ const struct Berry * GetBerryInfo(u8 berryIdx)
if (berryIdx == 0 || berryIdx > ITEM_TO_BERRY(ITEM_ENIGMA_BERRY))
berryIdx = 1;
- return &sBerries[berryIdx - 1];
+ return &gBerries[berryIdx - 1];
}
u8 ItemIdToBerryType(u16 itemId)