summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-24 02:07:25 +0800
committerjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-24 02:07:25 +0800
commitbc7ff2226d9352cafe0ee28ec66d7246782c3878 (patch)
tree3f6d491e421b686fdd6eb21efc58cdc341a399e1
parent34bebdc56e6e7001043a95549d6aa19e2610719a (diff)
menu_helpers.c & field_special_scene.c
-rw-r--r--asm/battle_message.s2
-rw-r--r--asm/berry_pouch.s8
-rw-r--r--asm/field_specials.s6
-rw-r--r--asm/item_menu.s14
-rw-r--r--asm/link_rfu.s2
-rw-r--r--asm/mail_data.s8
-rw-r--r--asm/menu.s6
-rw-r--r--asm/menu_helpers.s628
-rw-r--r--asm/new_menu_helpers.s4
-rw-r--r--asm/overworld.s16
-rw-r--r--asm/party_menu.s34
-rw-r--r--asm/pokemon_storage_system.s16
-rw-r--r--asm/pokemon_summary_screen.s4
-rw-r--r--asm/shop.s6
-rw-r--r--asm/start_menu.s4
-rw-r--r--asm/trade.s2
-rw-r--r--include/field_specials.h3
-rw-r--r--include/link.h1
-rw-r--r--include/mail_data.h2
-rw-r--r--include/menu.h6
-rw-r--r--include/menu_helpers.h10
-rw-r--r--include/overworld.h3
-rw-r--r--ld_script.txt4
-rw-r--r--src/data/items.h6067
-rw-r--r--src/field_special_scene.c26
-rw-r--r--src/item_pc.c6
-rw-r--r--src/menu_helpers.c250
-rw-r--r--src/mystery_event_script.c2
-rw-r--r--src/scrcmd.c4
-rw-r--r--src/teachy_tv.c8
-rw-r--r--src/tm_case.c6
-rw-r--r--sym_ewram.txt10
32 files changed, 6442 insertions, 726 deletions
diff --git a/asm/battle_message.s b/asm/battle_message.s
index 9505d542b..efd7e1385 100644
--- a/asm/battle_message.s
+++ b/asm/battle_message.s
@@ -2683,7 +2683,7 @@ _080D87F2:
ands r0, r1
cmp r0, 0
beq _080D881C
- bl sub_80CBE00
+ bl ContextNpcGetTextColor
lsls r0, 24
lsrs r0, 24
mov r2, sp
diff --git a/asm/berry_pouch.s b/asm/berry_pouch.s
index ab157ab99..67d189a12 100644
--- a/asm/berry_pouch.s
+++ b/asm/berry_pouch.s
@@ -183,7 +183,7 @@ _0813CE84:
.4byte _0813CFB0
.4byte _0813CFBE
_0813CED0:
- bl VblankHblankHandlerSetZero
+ bl SetVBlankHBlankCallbacksToNull
bl clear_scheduled_bg_copies_to_vram
b _0813CFD2
_0813CEDA:
@@ -386,7 +386,7 @@ _0813D078: .4byte gUnknown_203F370
thumb_func_start sub_813D07C
sub_813D07C: @ 813D07C
push {r4,lr}
- bl InitBgReg
+ bl ResetAllBgsCoordinatesAndBgCntRegs
ldr r4, _0813D0DC @ =gUnknown_203F36C
ldr r0, [r4]
adds r0, 0xC
@@ -2338,7 +2338,7 @@ sub_813E010: @ 813E010
adds r0, r4, 0
adds r0, 0x10
ldrh r1, [r4, 0x4]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3091,7 +3091,7 @@ sub_813E690: @ 813E690
adds r0, r5, 0
adds r0, 0x10
ldrh r1, [r5, 0x4]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_specials.s b/asm/field_specials.s
index fcec338e7..ad1806d2e 100644
--- a/asm/field_specials.s
+++ b/asm/field_specials.s
@@ -3150,8 +3150,8 @@ _080CBDF8: .4byte gSelectedEventObject
_080CBDFC: .4byte gUnknown_20370DA
thumb_func_end sub_80CBDE8
- thumb_func_start sub_80CBE00
-sub_80CBE00: @ 80CBE00
+ thumb_func_start ContextNpcGetTextColor
+ContextNpcGetTextColor: @ 80CBE00
push {lr}
ldr r0, _080CBE18 @ =gUnknown_20370DA
ldrh r0, [r0]
@@ -3192,7 +3192,7 @@ _080CBE48:
bx r1
.align 2, 0
_080CBE4C: .4byte gMapObjects
- thumb_func_end sub_80CBE00
+ thumb_func_end ContextNpcGetTextColor
thumb_func_start sub_80CBE50
sub_80CBE50: @ 80CBE50
diff --git a/asm/item_menu.s b/asm/item_menu.s
index bdefc393f..4e4c2ebfd 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -253,7 +253,7 @@ _08107F60:
.4byte _081080D8
.4byte _081080DE
_08107FB0:
- bl VblankHblankHandlerSetZero
+ bl SetVBlankHBlankCallbacksToNull
bl clear_scheduled_bg_copies_to_vram
b _08108104
_08107FBA:
@@ -520,7 +520,7 @@ _081081CC: .4byte gUnknown_203AD1C
thumb_func_start sub_81081D0
sub_81081D0: @ 81081D0
push {r4,r5,lr}
- bl InitBgReg
+ bl ResetAllBgsCoordinatesAndBgCntRegs
ldr r5, _08108230 @ =gUnknown_203AD14
movs r4, 0x80
lsls r4, 4
@@ -3551,7 +3551,7 @@ _081099EC:
strb r0, [r4]
ldr r0, _08109A10 @ =gSpecialVar_ItemId
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -4035,7 +4035,7 @@ sub_8109DEC: @ 8109DEC
adds r0, r4, 0
adds r0, 0x10
ldrh r1, [r4, 0x4]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -4817,7 +4817,7 @@ sub_810A468: @ 810A468
lsrs r4, r0, 16
adds r6, r4, 0
adds r0, r4, 0
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -5296,7 +5296,7 @@ sub_810A85C: @ 810A85C
adds r0, r5, 0
adds r0, 0x10
ldrh r1, [r5, 0x4]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -5659,7 +5659,7 @@ sub_810AB88: @ 810AB88
adds r0, r4, 0
adds r0, 0x10
ldrh r1, [r4, 0x4]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/link_rfu.s b/asm/link_rfu.s
index a1d543dd6..a2b6a20fc 100644
--- a/asm/link_rfu.s
+++ b/asm/link_rfu.s
@@ -3259,7 +3259,7 @@ sub_80FEC54: @ 80FEC54
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0
bne _080FEC70
_080FEC62:
diff --git a/asm/mail_data.s b/asm/mail_data.s
index 421aaf452..e19c99e59 100644
--- a/asm/mail_data.s
+++ b/asm/mail_data.s
@@ -89,7 +89,7 @@ MonHasMail: @ 8097D08
bl GetMonData
lsls r0, 16
lsrs r0, 16
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _08097D30
@@ -605,8 +605,8 @@ _080980E8:
bx r1
thumb_func_end sub_809803C
- thumb_func_start itemid_is_mail
-itemid_is_mail: @ 80980F8
+ thumb_func_start ItemIsMail
+ItemIsMail: @ 80980F8
push {lr}
lsls r0, 16
lsrs r0, 16
@@ -621,6 +621,6 @@ _0809810A:
_0809810C:
pop {r1}
bx r1
- thumb_func_end itemid_is_mail
+ thumb_func_end ItemIsMail
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/menu.s b/asm/menu.s
index 2229f41d8..c8e823fc1 100644
--- a/asm/menu.s
+++ b/asm/menu.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start sub_810EDC4
-sub_810EDC4: @ 810EDC4
+ thumb_func_start DrawDialogFrameWithCustomTileAndPalette
+DrawDialogFrameWithCustomTileAndPalette: @ 810EDC4
push {r4,r5,lr}
adds r4, r1, 0
lsls r0, 24
@@ -38,7 +38,7 @@ _0810EDFA:
_0810EE00: .4byte gUnknown_203ADF0
_0810EE04: .4byte gUnknown_203ADF2
_0810EE08: .4byte sub_810EE5C
- thumb_func_end sub_810EDC4
+ thumb_func_end DrawDialogFrameWithCustomTileAndPalette
thumb_func_start sub_810EE0C
sub_810EE0C: @ 810EE0C
diff --git a/asm/menu_helpers.s b/asm/menu_helpers.s
deleted file mode 100644
index e68c428cd..000000000
--- a/asm/menu_helpers.s
+++ /dev/null
@@ -1,628 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start DisplayMessageAndContinueTask
-DisplayMessageAndContinueTask: @ 80BF474
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- ldr r4, [sp, 0x28]
- ldr r5, [sp, 0x2C]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- adds r6, r1, 0
- lsls r2, 16
- lsrs r2, 16
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r7, r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _080BF500 @ =gUnknown_20399D0
- strb r6, [r0]
- adds r0, r6, 0
- movs r1, 0x1
- bl sub_810EDC4
- ldr r4, _080BF504 @ =gStringVar4
- ldr r0, [sp, 0x30]
- cmp r0, r4
- beq _080BF4B8
- adds r0, r4, 0
- ldr r1, [sp, 0x30]
- bl StringExpandPlaceholders
-_080BF4B8:
- ldr r2, _080BF508 @ =gTextFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- adds r0, r6, 0
- adds r1, r7, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl AddTextPrinterParameterized2
- ldr r1, _080BF50C @ =gUnknown_20399CC
- ldr r0, [sp, 0x34]
- str r0, [r1]
- ldr r1, _080BF510 @ =gTasks
- mov r2, r8
- lsls r0, r2, 2
- add r0, r8
- lsls r0, 3
- adds r0, r1
- ldr r1, _080BF514 @ =Task_ContinueTaskAfterMessagePrints
- str r1, [r0]
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080BF500: .4byte gUnknown_20399D0
-_080BF504: .4byte gStringVar4
-_080BF508: .4byte gTextFlags
-_080BF50C: .4byte gUnknown_20399CC
-_080BF510: .4byte gTasks
-_080BF514: .4byte Task_ContinueTaskAfterMessagePrints
- thumb_func_end DisplayMessageAndContinueTask
-
- thumb_func_start sub_80BF518
-sub_80BF518: @ 80BF518
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl RunTextPrinters
- adds r0, r4, 0
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r0, 16
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80BF518
-
- thumb_func_start Task_ContinueTaskAfterMessagePrints
-Task_ContinueTaskAfterMessagePrints: @ 80BF534
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080BF558 @ =gUnknown_20399D0
- ldrb r0, [r0]
- bl sub_80BF518
- lsls r0, 16
- cmp r0, 0
- bne _080BF552
- ldr r0, _080BF55C @ =gUnknown_20399CC
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
-_080BF552:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080BF558: .4byte gUnknown_20399D0
-_080BF55C: .4byte gUnknown_20399CC
- thumb_func_end Task_ContinueTaskAfterMessagePrints
-
- thumb_func_start sub_80BF560
-sub_80BF560: @ 80BF560
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _080BF586
- cmp r1, 0
- bgt _080BF580
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _080BF5A8
- b _080BF5C0
-_080BF580:
- cmp r1, 0x1
- beq _080BF5A8
- b _080BF5C0
-_080BF586:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080BF5A0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080BF5A4 @ =gUnknown_20399C8
- ldr r1, [r1]
- ldr r1, [r1]
- b _080BF5BE
- .align 2, 0
-_080BF5A0: .4byte gTasks
-_080BF5A4: .4byte gUnknown_20399C8
-_080BF5A8:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080BF5C8 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080BF5CC @ =gUnknown_20399C8
- ldr r1, [r1]
- ldr r1, [r1, 0x4]
-_080BF5BE:
- str r1, [r0]
-_080BF5C0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080BF5C8: .4byte gTasks
-_080BF5CC: .4byte gUnknown_20399C8
- thumb_func_end sub_80BF560
-
- thumb_func_start CreateYesNoMenuWithCallbacks
-CreateYesNoMenuWithCallbacks: @ 80BF5D0
- push {r4-r7,lr}
- sub sp, 0xC
- adds r6, r0, 0
- adds r0, r1, 0
- adds r1, r2, 0
- adds r2, r3, 0
- ldr r3, [sp, 0x20]
- ldr r4, [sp, 0x24]
- ldr r5, [sp, 0x28]
- ldr r7, [sp, 0x2C]
- lsls r6, 24
- lsrs r6, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0x8]
- bl CreateYesNoMenu
- ldr r0, _080BF624 @ =gUnknown_20399C8
- str r7, [r0]
- ldr r1, _080BF628 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _080BF62C @ =sub_80BF560
- str r1, [r0]
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080BF624: .4byte gUnknown_20399C8
-_080BF628: .4byte gTasks
-_080BF62C: .4byte sub_80BF560
- thumb_func_end CreateYesNoMenuWithCallbacks
-
- thumb_func_start GetLRKeysState
-GetLRKeysState: @ 80BF630
- push {lr}
- ldr r0, _080BF650 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BF666
- ldr r0, _080BF654 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- lsls r0, 2
- ands r0, r1
- cmp r0, 0
- beq _080BF658
- movs r0, 0x1
- b _080BF668
- .align 2, 0
-_080BF650: .4byte gSaveBlock2Ptr
-_080BF654: .4byte gMain
-_080BF658:
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080BF666
- movs r0, 0x2
- b _080BF668
-_080BF666:
- movs r0, 0
-_080BF668:
- pop {r1}
- bx r1
- thumb_func_end GetLRKeysState
-
- thumb_func_start sub_80BF66C
-sub_80BF66C: @ 80BF66C
- push {lr}
- ldr r0, _080BF68C @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BF6A2
- ldr r0, _080BF690 @ =gMain
- ldrh r1, [r0, 0x30]
- movs r0, 0x80
- lsls r0, 2
- ands r0, r1
- cmp r0, 0
- beq _080BF694
- movs r0, 0x1
- b _080BF6A4
- .align 2, 0
-_080BF68C: .4byte gSaveBlock2Ptr
-_080BF690: .4byte gMain
-_080BF694:
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080BF6A2
- movs r0, 0x2
- b _080BF6A4
-_080BF6A2:
- movs r0, 0
-_080BF6A4:
- pop {r1}
- bx r1
- thumb_func_end sub_80BF66C
-
- thumb_func_start sub_80BF6A8
-sub_80BF6A8: @ 80BF6A8
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _080BF6D0
- ldr r0, _080BF6CC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- beq _080BF6C8
- bl InUnionRoom
- cmp r0, 0x1
- bne _080BF6D0
-_080BF6C8:
- movs r0, 0
- b _080BF6D2
- .align 2, 0
-_080BF6CC: .4byte gSaveBlock1Ptr
-_080BF6D0:
- movs r0, 0x1
-_080BF6D2:
- pop {r1}
- bx r1
- thumb_func_end sub_80BF6A8
-
- thumb_func_start itemid_80BF6D8_mail_related
-itemid_80BF6D8_mail_related: @ 80BF6D8
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl is_c1_link_related_active
- cmp r0, 0x1
- beq _080BF6EE
- bl InUnionRoom
- cmp r0, 0x1
- bne _080BF700
-_080BF6EE:
- adds r0, r4, 0
- bl itemid_is_mail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080BF700
- movs r0, 0
- b _080BF702
-_080BF700:
- movs r0, 0x1
-_080BF702:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end itemid_80BF6D8_mail_related
-
- thumb_func_start MenuHelpers_LinkSomething
-MenuHelpers_LinkSomething: @ 80BF708
- push {lr}
- bl is_c1_link_related_active
- cmp r0, 0x1
- beq _080BF71A
- ldr r0, _080BF720 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080BF724
-_080BF71A:
- movs r0, 0x1
- b _080BF726
- .align 2, 0
-_080BF720: .4byte gReceivedRemoteLinkPlayers
-_080BF724:
- movs r0, 0
-_080BF726:
- pop {r1}
- bx r1
- thumb_func_end MenuHelpers_LinkSomething
-
- thumb_func_start sub_80BF72C
-sub_80BF72C: @ 80BF72C
- push {lr}
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- cmp r0, 0
- beq _080BF742
- bl sub_8058244
- lsls r0, 24
- lsrs r0, 24
- b _080BF744
-_080BF742:
- movs r0, 0
-_080BF744:
- pop {r1}
- bx r1
- thumb_func_end sub_80BF72C
-
- thumb_func_start sub_80BF748
-sub_80BF748: @ 80BF748
- push {lr}
- bl sub_80BF72C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080BF75E
- bl sub_800B270
- cmp r0, 0x1
- bne _080BF762
-_080BF75E:
- movs r0, 0x1
- b _080BF764
-_080BF762:
- movs r0, 0
-_080BF764:
- pop {r1}
- bx r1
- thumb_func_end sub_80BF748
-
- thumb_func_start VblankHblankHandlerSetZero
-VblankHblankHandlerSetZero: @ 80BF768
- push {lr}
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- bl SetHBlankCallback
- pop {r0}
- bx r0
- thumb_func_end VblankHblankHandlerSetZero
-
- thumb_func_start sub_80BF77C
-sub_80BF77C: @ 80BF77C
- push {r4,lr}
- sub sp, 0xC
- bl InitBgReg
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, _080BF7BC @ =0x0100c000
- mov r0, sp
- bl CpuSet
- movs r4, 0
- str r4, [sp, 0x4]
- add r0, sp, 0x4
- movs r1, 0xE0
- lsls r1, 19
- ldr r2, _080BF7C0 @ =0x05000100
- bl CpuSet
- add r0, sp, 0x8
- strh r4, [r0]
- movs r1, 0xA0
- lsls r1, 19
- ldr r2, _080BF7C4 @ =0x01000200
- bl CpuSet
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080BF7BC: .4byte 0x0100c000
-_080BF7C0: .4byte 0x05000100
-_080BF7C4: .4byte 0x01000200
- thumb_func_end sub_80BF77C
-
- thumb_func_start InitBgReg
-InitBgReg: @ 80BF7C8
- push {lr}
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xE
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xC
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xA
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x8
- movs r1, 0
- bl SetGpuReg
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- pop {r0}
- bx r0
- thumb_func_end InitBgReg
-
- thumb_func_start sub_80BF848
-sub_80BF848: @ 80BF848
- push {r4-r6,lr}
- adds r2, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r5, r1, 0
- ldrh r4, [r2]
- adds r6, r4, 0
- ldr r0, _080BF87C @ =gMain
- ldrh r0, [r0, 0x30]
- movs r3, 0xF0
- ands r3, r0
- cmp r3, 0x40
- bne _080BF880
- adds r0, r4, 0x1
- strh r0, [r2]
- movs r3, 0
- ldrsh r0, [r2, r3]
- cmp r0, r1
- ble _080BF872
- movs r0, 0x1
- strh r0, [r2]
-_080BF872:
- movs r0, 0
- ldrsh r1, [r2, r0]
-_080BF876:
- lsls r0, r4, 16
- b _080BF8CA
- .align 2, 0
-_080BF87C: .4byte gMain
-_080BF880:
- cmp r3, 0x80
- bne _080BF896
- subs r0, r4, 0x1
- strh r0, [r2]
- lsls r0, 16
- cmp r0, 0
- bgt _080BF890
- strh r1, [r2]
-_080BF890:
- movs r3, 0
- ldrsh r1, [r2, r3]
- b _080BF876
-_080BF896:
- cmp r3, 0x10
- bne _080BF8B0
- adds r0, r4, 0
- adds r0, 0xA
- strh r0, [r2]
- movs r1, 0
- ldrsh r0, [r2, r1]
- cmp r0, r5
- ble _080BF8AA
- strh r5, [r2]
-_080BF8AA:
- movs r3, 0
- ldrsh r1, [r2, r3]
- b _080BF876
-_080BF8B0:
- cmp r3, 0x20
- bne _080BF8DA
- adds r0, r4, 0
- subs r0, 0xA
- strh r0, [r2]
- lsls r0, 16
- cmp r0, 0
- bgt _080BF8C4
- movs r0, 0x1
- strh r0, [r2]
-_080BF8C4:
- movs r0, 0
- ldrsh r1, [r2, r0]
- lsls r0, r6, 16
-_080BF8CA:
- asrs r0, 16
- cmp r1, r0
- beq _080BF8DA
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- b _080BF8DC
-_080BF8DA:
- movs r0, 0
-_080BF8DC:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80BF848
-
- thumb_func_start sub_80BF8E4
-sub_80BF8E4: @ 80BF8E4
- push {lr}
- bl sub_80CBE00
- lsls r0, 24
- cmp r0, 0
- beq _080BF8F4
- movs r0, 0x5
- b _080BF8F6
-_080BF8F4:
- movs r0, 0x4
-_080BF8F6:
- pop {r1}
- bx r1
- thumb_func_end sub_80BF8E4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/new_menu_helpers.s b/asm/new_menu_helpers.s
index 9efda4372..5e7b10e5b 100644
--- a/asm/new_menu_helpers.s
+++ b/asm/new_menu_helpers.s
@@ -814,7 +814,7 @@ sub_80F6D5C: @ 80F6D5C
ands r1, r2
orrs r1, r0
strb r1, [r3]
- bl sub_80CBE00
+ bl ContextNpcGetTextColor
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -2040,7 +2040,7 @@ _080F77A4:
adds r0, r4, 0
adds r1, r5, 0
movs r3, 0xF
- bl sub_810EDC4
+ bl DrawDialogFrameWithCustomTileAndPalette
pop {r4,r5}
pop {r0}
bx r0
diff --git a/asm/overworld.s b/asm/overworld.s
index ee0e8aa6d..62add03d2 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -3225,8 +3225,8 @@ sub_8056420: @ 8056420
bx r0
thumb_func_end sub_8056420
- thumb_func_start is_c1_link_related_active
-is_c1_link_related_active: @ 805642C
+ thumb_func_start IsUpdateLinkStateCBActive
+IsUpdateLinkStateCBActive: @ 805642C
push {lr}
ldr r0, _0805643C @ =gMain
ldr r1, [r0]
@@ -3243,7 +3243,7 @@ _08056444:
_08056446:
pop {r1}
bx r1
- thumb_func_end is_c1_link_related_active
+ thumb_func_end IsUpdateLinkStateCBActive
thumb_func_start sub_805644C
sub_805644C: @ 805644C
@@ -3662,7 +3662,7 @@ _080567D8: .4byte sub_80565B4
thumb_func_start CB2_ReturnToField
CB2_ReturnToField: @ 80567DC
push {lr}
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0x1
bne _080567F4
ldr r0, _080567F0 @ =c2_exit_to_overworld_2_link
@@ -6144,7 +6144,7 @@ _08057C72:
bl sub_805833C
cmp r0, 0x1
bls _08057CA8
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0x1
bne _08057CA8
bl sub_800A00C
@@ -6976,7 +6976,7 @@ _08058240: .4byte gUnknown_81BB9F0
thumb_func_start sub_8058244
sub_8058244: @ 8058244
push {lr}
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0
bne _08058252
movs r0, 0
@@ -7009,7 +7009,7 @@ sub_8058274: @ 8058274
bl sub_800B248
cmp r0, 0x1
bls _080582D8
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0x1
bne _080582D8
bl sub_800A00C
@@ -7062,7 +7062,7 @@ sub_80582E0: @ 80582E0
bl sub_805833C
cmp r0, 0x1
bls _08058304
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0x1
bne _08058304
bl sub_800A00C
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 2c3623442..88ecfae07 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -276,8 +276,8 @@ _0811EC24:
.4byte _0811EDD0
.4byte _0811EDDE
_0811EC80:
- bl VblankHblankHandlerSetZero
- bl sub_80BF77C
+ bl SetVBlankHBlankCallbacksToNull
+ bl ClearVramOamPltt
bl clear_scheduled_bg_copies_to_vram
b _0811EDFC
_0811EC8E:
@@ -565,7 +565,7 @@ _0811EEC8: .4byte gUnknown_203B0B8
thumb_func_start sub_811EECC
sub_811EECC: @ 811EECC
push {r4,r5,lr}
- bl InitBgReg
+ bl ResetAllBgsCoordinatesAndBgCntRegs
ldr r5, _0811EF34 @ =gUnknown_203B0BC
movs r4, 0x80
lsls r4, 4
@@ -3218,7 +3218,7 @@ sub_8120328: @ 8120328
lsrs r4, r0, 24
adds r5, r4, 0
movs r0, 0x6
- bl sub_80BF518
+ bl RunTextPrintersRetIsActive
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1
@@ -3536,7 +3536,7 @@ sub_81205C8: @ 81205C8
lsrs r4, r5, 16
adds r7, r4, 0
adds r0, r4, 0
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -4529,7 +4529,7 @@ sub_8120D08: @ 8120D08
ldr r5, _08120D38 @ =gTasks+0x8
adds r0, r4, r5
ldrb r0, [r0]
- bl sub_80BF518
+ bl RunTextPrintersRetIsActive
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1
@@ -4643,7 +4643,7 @@ sub_8120DE0: @ 8120DE0
ldr r6, _08120E14 @ =gTasks+0x8
adds r4, r5, r6
ldrb r0, [r4]
- bl sub_80BF518
+ bl RunTextPrintersRetIsActive
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1
@@ -7031,7 +7031,7 @@ sub_81220D4: @ 81220D4
movs r1, 0x1
movs r2, 0x4F
movs r3, 0xE
- bl sub_810EDC4
+ bl DrawDialogFrameWithCustomTileAndPalette
ldr r1, _0812210C @ =gUnknown_8417457
adds r0, r4, 0
bl sub_8122084
@@ -7553,7 +7553,7 @@ sub_81224D0: @ 81224D0
.align 2, 0
_081224F4: .4byte gSprites
_081224F8:
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _0812251C
@@ -7643,7 +7643,7 @@ _08122588:
adds r0, r7, r5
ldrb r4, [r0]
adds r0, r1, 0
- bl itemid_is_mail
+ bl ItemIsMail
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -7676,7 +7676,7 @@ _081225CC:
adds r0, r5, r7
ldrb r4, [r0, 0x6]
adds r0, r1, 0
- bl itemid_is_mail
+ bl ItemIsMail
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -8327,7 +8327,7 @@ _08122AB6:
bl GetMonData
lsls r0, 16
lsrs r0, 16
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _08122AEC
@@ -9937,7 +9937,7 @@ _081237C4: .4byte gPlayerParty
_081237C8: .4byte sub_81238A4
_081237CC:
ldrh r0, [r6]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _081237F8
@@ -10165,7 +10165,7 @@ _081239A4: .4byte gTasks
_081239A8: .4byte sub_81203B8
_081239AC:
ldrh r0, [r5]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _081239EC
@@ -16736,7 +16736,7 @@ _08126F84: .4byte gUnknown_203B0A0
_08126F88: .4byte gPlayerParty
_08126F8C:
ldrh r0, [r5]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _08126FA0
@@ -16780,7 +16780,7 @@ sub_8126FD8: @ 8126FD8
lsrs r4, r0, 24
ldr r5, _08127004 @ =gUnknown_203B0A0
ldrh r0, [r5, 0xC]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _08127010
@@ -17135,7 +17135,7 @@ _081272C4: .4byte gUnknown_203B0D8
_081272C8: .4byte gStringVar4
_081272CC:
adds r0, r4, 0
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _081272F0
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 4c851f4cb..a4c77e32e 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -3377,7 +3377,7 @@ _0808D3DC:
ldr r1, _0808D40C @ =0x00000ce2
adds r0, r1
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _0808D404
@@ -3491,7 +3491,7 @@ _0808D4D8:
ldr r1, _0808D504 @ =0x00000ce2
adds r0, r1
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _0808D508
@@ -4109,7 +4109,7 @@ _0808DA20:
ldr r2, _0808DA54 @ =0x00000ce2
adds r0, r2
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
bne _0808DAA0
@@ -4154,7 +4154,7 @@ _0808DA90:
ldr r2, _0808DAA8 @ =0x00000ce2
adds r0, r1, r2
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _0808DAAC
@@ -4971,7 +4971,7 @@ _0808E166:
ldr r1, _0808E17C @ =0x00000ce2
adds r0, r1
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
bne _0808E180
@@ -5275,7 +5275,7 @@ _0808E3FC:
ldr r1, _0808E418 @ =0x00000ce2
adds r0, r1
ldrh r0, [r0]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
bne _0808E41C
@@ -18314,7 +18314,7 @@ _08094A48: .4byte gUnknown_20397B0
_08094A4C: .4byte 0x00000ce2
_08094A50:
ldrh r0, [r1]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
bne _08094A68
@@ -18344,7 +18344,7 @@ _08094A70:
_08094A8C: .4byte 0x00000ce2
_08094A90:
ldrh r0, [r1]
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 60062910c..301d7e0d7 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -8431,7 +8431,7 @@ _08138B48: .4byte 0x00003208
thumb_func_start sub_8138B4C
sub_8138B4C: @ 8138B4C
push {lr}
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0
bne _08138B84
bl sub_811FA20
@@ -13239,7 +13239,7 @@ _0813B16C:
_0813B190: .4byte 0x000032f4
_0813B194: .4byte 0x00003210
_0813B198:
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0
bne _0813B1C4
ldr r0, _0813B1C0 @ =gReceivedRemoteLinkPlayers
diff --git a/asm/shop.s b/asm/shop.s
index c59fb15df..370f8b296 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -23,7 +23,7 @@ sub_809AAB0: @ 809AAB0
strb r0, [r4, 0x16]
movs r0, 0
strh r0, [r4, 0xC]
- bl sub_80CBE00
+ bl ContextNpcGetTextColor
lsls r0, 24
cmp r0, 0
bne _0809AAF0
@@ -515,7 +515,7 @@ _0809AEA0: .4byte gTasks
_0809AEA4: .4byte sub_809AE00
_0809AEA8: .4byte sub_809ADE4
_0809AEAC:
- bl VblankHblankHandlerSetZero
+ bl SetVBlankHBlankCallbacksToNull
str r4, [sp, 0x8]
movs r1, 0xE0
lsls r1, 19
@@ -2365,7 +2365,7 @@ sub_809BD8C: @ 809BD8C
adds r0, r4, 0x2
ldr r6, _0809BDD0 @ =gUnknown_2039934
ldrh r1, [r6, 0x14]
- bl sub_80BF848
+ bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/start_menu.s b/asm/start_menu.s
index 9dc9fbab6..cf06662d2 100644
--- a/asm/start_menu.s
+++ b/asm/start_menu.s
@@ -11,7 +11,7 @@ sub_806ED54: @ 806ED54
ldr r0, _0806ED6C @ =gUnknown_20370F5
movs r1, 0
strb r1, [r0]
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0x1
bne _0806ED70
bl sub_806EE34
@@ -634,7 +634,7 @@ _0806F254: .4byte gUnknown_20370F0
thumb_func_start ShowStartMenu
ShowStartMenu: @ 806F258
push {lr}
- bl is_c1_link_related_active
+ bl IsUpdateLinkStateCBActive
cmp r0, 0
bne _0806F26E
bl player_bitmagic
diff --git a/asm/trade.s b/asm/trade.s
index eac1fdea5..a45cedc3e 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -13984,7 +13984,7 @@ sub_8053B48: @ 8053B48
ldrh r0, [r5, 0x28]
cmp r0, 0
beq _08053CC0
- bl itemid_is_mail
+ bl ItemIsMail
lsls r0, 24
cmp r0, 0
beq _08053CB4
diff --git a/include/field_specials.h b/include/field_specials.h
index a12fee575..0e4fdd787 100644
--- a/include/field_specials.h
+++ b/include/field_specials.h
@@ -8,5 +8,8 @@ u8 CountDigits(u16 number);
void TV_PrintIntToStringVar(u8, int);
u16 ScrSpecial_GetStarter(void);
void sub_80CCB68(void);
+void nullsub_60(void);
+void nullsub_61(void);
+u8 ContextNpcGetTextColor(void);
#endif // GUARD_FIELD_SPECIALS_H
diff --git a/include/link.h b/include/link.h
index 33f04a42a..0ec32d8a0 100644
--- a/include/link.h
+++ b/include/link.h
@@ -206,5 +206,6 @@ void sub_800AA80(u8);
void sub_80098D8(void);
void CloseLink(void);
bool8 sub_800A4BC(void);
+bool32 sub_800B270(void);
#endif // GUARD_LINK_H
diff --git a/include/mail_data.h b/include/mail_data.h
index 0275d8dc6..79a4a7851 100644
--- a/include/mail_data.h
+++ b/include/mail_data.h
@@ -10,6 +10,6 @@
// Exported ROM declarations
u16 sub_80D45E8(u16, u16 *);
-bool8 itemid_is_mail(u16 itemId);
+bool8 ItemIsMail(u16 itemId);
#endif //GUARD_MAIL_DATA_H
diff --git a/include/menu.h b/include/menu.h
index fa8552484..bc45e7e61 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -2,10 +2,12 @@
#define GUARD_MENU_H
#include "global.h"
-
#include "text.h"
#include "window.h"
+#define MENU_NOTHING_CHOSEN -2
+#define MENU_B_PRESSED -1
+
struct MenuAction
{
const u8 *text;
@@ -45,7 +47,7 @@ void sub_810F71C(void);
void sub_810F740(void);
u8 ProgramAndPlaceMenuCursorOnWindow(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPosition);
void CreateYesNoMenu(const struct WindowTemplate *, u8, u8, u8, u16, u8, u8);
-
+void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 a2, u8 a3);
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
bool8 IsBlendTaskActive(void);
void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8);
diff --git a/include/menu_helpers.h b/include/menu_helpers.h
index 25ef3252e..1220ea1bd 100644
--- a/include/menu_helpers.h
+++ b/include/menu_helpers.h
@@ -19,14 +19,14 @@ void sub_812225C(u16 *, u16 *, u8, u8);
void sub_8122298(u16 *, u16 *, u8, u8, u8);
void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data);
bool8 sub_81221AC(void);
-bool16 sub_80BF518(u8 textPrinterId);
+bool16 RunTextPrintersRetIsActive(u8 textPrinterId);
bool8 sub_80BF72C(void);
bool8 MenuHelpers_LinkSomething(void);
-void VblankHblankHandlerSetZero(void);
-void InitBgReg(void);
+void SetVBlankHBlankCallbacksToNull(void);
+void ResetAllBgsCoordinatesAndBgCntRegs(void);
u8 sub_80BF8E4(void);
-u8 sub_80BF848(s16 * a0, u16 a1);
+u8 AdjustQuantityAccordingToDPadInput(s16 * a0, u16 a1);
void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc);
-void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate * unk1, u8 unk2, u8 unk3, u8 unk4, u8 unk5, u8 unk6, const struct YesNoFuncTable *ptrs);
+void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo);
#endif //GUARD_MENU_HELPERS_H
diff --git a/include/overworld.h b/include/overworld.h
index ab77542c2..fed1a33a5 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -61,7 +61,7 @@ void Overworld_SetSavedMusic(u16);
void Overworld_ChangeMusicToDefault(void);
void Overworld_ChangeMusicTo(u16);
-bool32 is_c1_link_related_active(void);
+bool32 IsUpdateLinkStateCBActive(void);
void strange_npc_table_clear(void);
const struct MapHeader *get_mapheader_by_bank_and_number(u16, u16);
@@ -116,5 +116,6 @@ bool8 sub_8055FC4(void);
bool8 is_light_level_8_or_9(u8 mapType);
bool32 sub_8055C9C(void);
void sub_8054D70(void);
+bool32 sub_8058244(void);
#endif //GUARD_ROM4_H
diff --git a/ld_script.txt b/ld_script.txt
index 50e25d378..2664d8010 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -151,7 +151,7 @@ SECTIONS {
asm/pc_screen_effect.o(.text);
asm/fldeff_poison.o(.text);
src/fldeff_berrytree.o(.text);
- asm/field_special_scene.o(.text);
+ src/field_special_scene.o(.text);
asm/safari_zone.o(.text);
src/item_use.o(.text);
asm/battle_anim_effects_1.o(.text);
@@ -176,7 +176,7 @@ SECTIONS {
asm/easy_chat.o(.text);
asm/mon_markings.o(.text);
asm/mail.o(.text);
- asm/menu_helpers.o(.text);
+ src/menu_helpers.o(.text);
asm/script_pokemon_util_80BF8FC.o(.text);
src/heal_location.o(.text);
asm/region_map.o(.text);
diff --git a/src/data/items.h b/src/data/items.h
new file mode 100644
index 000000000..04e6a82d2
--- /dev/null
+++ b/src/data/items.h
@@ -0,0 +1,6067 @@
+//
+// DO NOT MODIFY THIS FILE! IT IS AUTO-GENERATED FROM src/data/items.json and Inja template src/data/items.json.txt
+//
+
+
+const u8 gItemDescription_ITEM_MASTER_BALL[] = _("The best BALL with the ultimate\nperformance. It will catch any wild\nPOKéMON without fail.");
+const u8 gItemDescription_ITEM_ULTRA_BALL[] = _("A very high-grade BALL that offers\na higher POKéMON catch rate than\na GREAT BALL.");
+const u8 gItemDescription_ITEM_GREAT_BALL[] = _("A good, quality BALL that offers\na higher POKéMON catch rate than\na standard POKé BALL.");
+const u8 gItemDescription_ITEM_POKE_BALL[] = _("A BALL thrown to catch a wild\nPOKéMON. It is designed in a\ncapsule style.");
+const u8 gItemDescription_ITEM_SAFARI_BALL[] = _("A special BALL that is used only in\nthe SAFARI ZONE. It is finished in\na camouflage pattern.");
+const u8 gItemDescription_ITEM_NET_BALL[] = _("A somewhat different BALL that\nworks especially well on WATER- and\nBUG-type POKéMON.");
+const u8 gItemDescription_ITEM_DIVE_BALL[] = _("A somewhat different BALL that\nworks especially well on POKéMON\ndeep in the sea.");
+const u8 gItemDescription_ITEM_NEST_BALL[] = _("A somewhat different BALL that\nworks especially well on weaker\nPOKéMON.");
+const u8 gItemDescription_ITEM_REPEAT_BALL[] = _("A somewhat different BALL that\nworks especially well on POKéMON\ncaught before.");
+const u8 gItemDescription_ITEM_TIMER_BALL[] = _("A somewhat different BALL that\nbecomes progressively better the\nmore turns there are in a battle.");
+const u8 gItemDescription_ITEM_LUXURY_BALL[] = _("A comfortable BALL that makes a\ncaptured wild POKéMON quickly grow\nfriendly.");
+const u8 gItemDescription_ITEM_PREMIER_BALL[] = _("A rare BALL that has been\nspecially made to commemorate an\nevent of some sort.");
+const u8 gItemDescription_ITEM_POTION[] = _("A spray-type wound medicine.\nIt restores the HP of one POKéMON\nby 20 points.");
+const u8 gItemDescription_ITEM_ANTIDOTE[] = _("A spray-type medicine.\nIt heals one POKéMON from a\npoisoning.");
+const u8 gItemDescription_ITEM_BURN_HEAL[] = _("A spray-type medicine.\nIt heals one POKéMON of a burn.");
+const u8 gItemDescription_ITEM_ICE_HEAL[] = _("A spray-type medicine.\nIt defrosts a frozen POKéMON.");
+const u8 gItemDescription_ITEM_AWAKENING[] = _("A spray-type medicine.\nIt awakens a sleeping POKéMON.");
+const u8 gItemDescription_ITEM_PARALYZE_HEAL[] = _("A spray-type medicine.\nIt heals one POKéMON from\nparalysis.");
+const u8 gItemDescription_ITEM_FULL_RESTORE[] = _("A medicine that fully restores the\nHP and heals any status problems\nof one POKéMON.");
+const u8 gItemDescription_ITEM_MAX_POTION[] = _("A spray-type wound medicine.\nIt fully restores the HP of one\nPOKéMON.");
+const u8 gItemDescription_ITEM_HYPER_POTION[] = _("A spray-type wound medicine.\nIt restores the HP of one POKéMON\nby 200 points.");
+const u8 gItemDescription_ITEM_SUPER_POTION[] = _("A spray-type wound medicine.\nIt restores the HP of one POKéMON\nby 50 points.");
+const u8 gItemDescription_ITEM_FULL_HEAL[] = _("A spray-type medicine.\nIt heals all the status problems of\none POKéMON.");
+const u8 gItemDescription_ITEM_REVIVE[] = _("A medicine that revives a fainted\nPOKéMON, restoring HP by half the\nmaximum amount.");
+const u8 gItemDescription_ITEM_MAX_REVIVE[] = _("A medicine that revives a fainted\nPOKéMON, restoring HP fully.");
+const u8 gItemDescription_ITEM_FRESH_WATER[] = _("Water with a high mineral content.\nIt restores the HP of one POKéMON\nby 50 points.");
+const u8 gItemDescription_ITEM_SODA_POP[] = _("A fizzy soda drink.\nIt restores the HP of one POKéMON\nby 60 points.");
+const u8 gItemDescription_ITEM_LEMONADE[] = _("A very sweet drink.\nIt restores the HP of one POKéMON\nby 80 points.");
+const u8 gItemDescription_ITEM_MOOMOO_MILK[] = _("Highly nutritious milk.\nIt restores the HP of one POKéMON\nby 100 points.");
+const u8 gItemDescription_ITEM_ENERGY_POWDER[] = _("A very bitter medicine powder.\nIt restores the HP of one POKéMON\nby 50 points.");
+const u8 gItemDescription_ITEM_ENERGY_ROOT[] = _("A very bitter root.\nIt restores the HP of one POKéMON\nby 200 points.");
+const u8 gItemDescription_ITEM_HEAL_POWDER[] = _("A very bitter medicine powder.\nIt heals all the status problems of\none POKéMON.");
+const u8 gItemDescription_ITEM_REVIVAL_HERB[] = _("A very bitter medicinal herb.\nIt revives a fainted POKéMON,\nrestoring HP fully.");
+const u8 gItemDescription_ITEM_ETHER[] = _("Restores a selected move's PP by\n10 points for one POKéMON.");
+const u8 gItemDescription_ITEM_MAX_ETHER[] = _("Fully restores a selected move's PP\nfor one POKéMON.");
+const u8 gItemDescription_ITEM_ELIXIR[] = _("Restores the PP of all moves for\none POKéMON by 10 points each.");
+const u8 gItemDescription_ITEM_MAX_ELIXIR[] = _("Fully restores the PP of all moves\nfor one POKéMON.");
+const u8 gItemDescription_ITEM_LAVA_COOKIE[] = _("LAVARIDGE TOWN's local specialty.\nIt heals all the status problems of\none POKéMON.");
+const u8 gItemDescription_ITEM_BLUE_FLUTE[] = _("A blue glass flute that awakens\na sleeping POKéMON.");
+const u8 gItemDescription_ITEM_YELLOW_FLUTE[] = _("A yellow glass flute that snaps one\nPOKéMON out of confusion.");
+const u8 gItemDescription_ITEM_RED_FLUTE[] = _("A red glass flute that snaps one\nPOKéMON out of infatuation.");
+const u8 gItemDescription_ITEM_BLACK_FLUTE[] = _("A black glass flute.\nWhen blown, it makes wild POKéMON\nless likely to appear.");
+const u8 gItemDescription_ITEM_WHITE_FLUTE[] = _("A white glass flute.\nWhen blown, it makes wild POKéMON\nmore likely to appear.");
+const u8 gItemDescription_ITEM_BERRY_JUICE[] = _("A 100% pure juice.\nIt restores the HP of one POKéMON\nby 20 points.");
+const u8 gItemDescription_ITEM_SACRED_ASH[] = _("Revives all fainted POKéMON,\nrestoring HP fully.");
+const u8 gItemDescription_ITEM_SHOAL_SALT[] = _("Pure salt obtained from deep inside\nthe SHOAL CAVE. It is extremely\nsalty.");
+const u8 gItemDescription_ITEM_SHOAL_SHELL[] = _("A pretty seashell found deep inside\nthe SHOAL CAVE. It is striped in\nblue and white.");
+const u8 gItemDescription_ITEM_RED_SHARD[] = _("A small red shard.\nIt appears to be from some sort of\na tool made long ago.");
+const u8 gItemDescription_ITEM_BLUE_SHARD[] = _("A small blue shard.\nIt appears to be from some sort of\na tool made long ago.");
+const u8 gItemDescription_ITEM_YELLOW_SHARD[] = _("A small yellow shard.\nIt appears to be from some sort of\na tool made long ago.");
+const u8 gItemDescription_ITEM_GREEN_SHARD[] = _("A small green shard.\nIt appears to be from some sort of\na tool made long ago.");
+
+
+
+
+
+
+
+
+
+
+
+const u8 gItemDescription_ITEM_HP_UP[] = _("A nutritious drink for POKéMON.\nIt raises the base HP of one\nPOKéMON.");
+const u8 gItemDescription_ITEM_PROTEIN[] = _("A nutritious drink for POKéMON.\nIt raises the base ATTACK stat of\none POKéMON.");
+const u8 gItemDescription_ITEM_IRON[] = _("A nutritious drink for POKéMON.\nIt raises the base DEFENSE stat of\none POKéMON.");
+const u8 gItemDescription_ITEM_CARBOS[] = _("A nutritious drink for POKéMON.\nIt raises the base SPEED stat of\none POKéMON.");
+const u8 gItemDescription_ITEM_CALCIUM[] = _("A nutritious drink for POKéMON.\nIt raises the base SP. ATK stat\nof one POKéMON.");
+const u8 gItemDescription_ITEM_RARE_CANDY[] = _("A candy that is packed with energy.\nIt raises the level of a POKéMON\nby one.");
+const u8 gItemDescription_ITEM_PP_UP[] = _("Slightly raises the maximum PP of\na selected move for one POKéMON.");
+const u8 gItemDescription_ITEM_ZINC[] = _("A nutritious drink for POKéMON.\nIt raises the base SP. DEF stat\nof one POKéMON.");
+const u8 gItemDescription_ITEM_PP_MAX[] = _("Raises the PP of a selected move\nto its maximum level for one\nPOKéMON.");
+
+const u8 gItemDescription_ITEM_GUARD_SPEC[] = _("An item that prevents stat reduction\namong party POKéMON for five turns\nafter use.");
+const u8 gItemDescription_ITEM_DIRE_HIT[] = _("Raises the critical-hit ratio of\nPOKéMON in battle. Wears off if the\nPOKéMON is withdrawn.");
+const u8 gItemDescription_ITEM_X_ATTACK[] = _("Raises the ATTACK stat of POKéMON\nin battle. Wears off if the POKéMON\nis withdrawn.");
+const u8 gItemDescription_ITEM_X_DEFEND[] = _("Raises the DEFENSE stat of POKéMON\nin battle. Wears off if the POKéMON\nis withdrawn.");
+const u8 gItemDescription_ITEM_X_SPEED[] = _("Raises the SPEED stat of POKéMON\nin battle. Wears off if the POKéMON\nis withdrawn.");
+const u8 gItemDescription_ITEM_X_ACCURACY[] = _("Raises the accuracy stat of\nPOKéMON in battle. Wears off if the\nPOKéMON is withdrawn.");
+const u8 gItemDescription_ITEM_X_SPECIAL[] = _("Raises the SP. ATK stat of\nPOKéMON in battle. Wears off if the\nPOKéMON is withdrawn.");
+const u8 gItemDescription_ITEM_POKE_DOLL[] = _("An attractive doll.\nUse it to flee from any battle with\na wild POKéMON.");
+const u8 gItemDescription_ITEM_FLUFFY_TAIL[] = _("An attractive item.\nUse it to flee from any battle with\na wild POKéMON.");
+
+const u8 gItemDescription_ITEM_SUPER_REPEL[] = _("Prevents weak wild POKéMON from\nappearing for 200 steps.");
+const u8 gItemDescription_ITEM_MAX_REPEL[] = _("Prevents weak wild POKéMON from\nappearing for 250 steps.");
+const u8 gItemDescription_ITEM_ESCAPE_ROPE[] = _("A long, durable rope.\nUse it to escape instantly from a\ncave or a dungeon.");
+const u8 gItemDescription_ITEM_REPEL[] = _("Prevents weak wild POKéMON from\nappearing for 100 steps.");
+
+
+
+
+
+
+const u8 gItemDescription_ITEM_SUN_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt is as red as the sun.");
+const u8 gItemDescription_ITEM_MOON_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt is as black as the night sky.");
+const u8 gItemDescription_ITEM_FIRE_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt is colored orange.");
+const u8 gItemDescription_ITEM_THUNDER_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt has a thunderbolt pattern.");
+const u8 gItemDescription_ITEM_WATER_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt is a clear light blue.");
+const u8 gItemDescription_ITEM_LEAF_STONE[] = _("A peculiar stone that makes certain\nspecies of POKéMON evolve.\nIt has a leaf pattern.");
+
+
+
+
+const u8 gItemDescription_ITEM_TINY_MUSHROOM[] = _("A small and rare mushroom.\nIt is quite popular among certain\npeople.");
+const u8 gItemDescription_ITEM_BIG_MUSHROOM[] = _("A large and rare mushroom.\nIt is very popular among certain\npeople.");
+
+const u8 gItemDescription_ITEM_PEARL[] = _("A relatively small pearl that\nsparkles in a pretty silver color.\nIt can be sold cheaply.");
+const u8 gItemDescription_ITEM_BIG_PEARL[] = _("A quite-large pearl that sparkles\nin a pretty silver color.\nIt can be sold at a high price.");
+const u8 gItemDescription_ITEM_STARDUST[] = _("A pretty red sand with a loose,\nsilky feel.\nIt can be sold at a high price.");
+const u8 gItemDescription_ITEM_STAR_PIECE[] = _("A shard of a pretty gem that\nsparkles in a red color.\nIt can be sold at a high price.");
+const u8 gItemDescription_ITEM_NUGGET[] = _("A nugget of pure gold that gives\noff a lustrous gleam.\nIt can be sold at a high price.");
+const u8 gItemDescription_ITEM_HEART_SCALE[] = _("A pretty, heart-shaped scale that\nis extremely rare. It glows faintly\nin the colors of a rainbow.");
+
+
+
+
+
+
+
+
+
+const u8 gItemDescription_ITEM_ORANGE_MAIL[] = _("A piece of MAIL featuring a cute\nZIGZAGOON print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_HARBOR_MAIL[] = _("A piece of MAIL featuring a cute\nWINGULL print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_GLITTER_MAIL[] = _("A piece of MAIL featuring a cute\nPIKACHU print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_MECH_MAIL[] = _("A piece of MAIL featuring a cute\nMAGNEMITE print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_WOOD_MAIL[] = _("A piece of MAIL featuring a cute\nSLAKOTH print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_WAVE_MAIL[] = _("A piece of MAIL featuring a cute\nWAILMER print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_BEAD_MAIL[] = _("A piece of MAIL to be held by a\nPOKéMON. It will bear the print of\nthe POKéMON holding it.");
+const u8 gItemDescription_ITEM_SHADOW_MAIL[] = _("A piece of MAIL featuring a cute\nDUSKULL print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_TROPIC_MAIL[] = _("A piece of MAIL featuring a cute\nBELLOSSOM print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_DREAM_MAIL[] = _("A piece of MAIL to be held by a\nPOKéMON. It will bear the print of\nthe POKéMON holding it.");
+const u8 gItemDescription_ITEM_FAB_MAIL[] = _("A piece of MAIL featuring a\ngorgeous, extravagant print.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_RETRO_MAIL[] = _("A piece of MAIL featuring a print\nof three cute POKéMON.\nIt is to be held by a POKéMON.");
+const u8 gItemDescription_ITEM_CHERI_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to heal paralysis.");
+const u8 gItemDescription_ITEM_CHESTO_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to wake up.");
+const u8 gItemDescription_ITEM_PECHA_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to cure poison.");
+const u8 gItemDescription_ITEM_RAWST_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to heal a burn.");
+const u8 gItemDescription_ITEM_ASPEAR_BERRY[] = _("When held by a POKéMON, it will be\nused in battle for defrosting.");
+const u8 gItemDescription_ITEM_LEPPA_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to restore 10 PP.");
+const u8 gItemDescription_ITEM_ORAN_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to restore 10 HP.");
+const u8 gItemDescription_ITEM_PERSIM_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to lift confusion.");
+const u8 gItemDescription_ITEM_LUM_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to heal any problem.");
+const u8 gItemDescription_ITEM_SITRUS_BERRY[] = _("When held by a POKéMON, it will be\nused in battle to restore 30 HP.");
+const u8 gItemDescription_ITEM_FIGY_BERRY[] = _("A hold item that restores HP but\nmay cause confusion when used.");
+const u8 gItemDescription_ITEM_WIKI_BERRY[] = _("A hold item that restores HP but\nmay cause confusion when used.");
+const u8 gItemDescription_ITEM_MAGO_BERRY[] = _("A hold item that restores HP but\nmay cause confusion when used.");
+const u8 gItemDescription_ITEM_AGUAV_BERRY[] = _("A hold item that restores HP but\nmay cause confusion when used.");
+const u8 gItemDescription_ITEM_IAPAPA_BERRY[] = _("A hold item that restores HP but\nmay cause confusion when used.");
+const u8 gItemDescription_ITEM_RAZZ_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_BLUK_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_NANAB_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_WEPEAR_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_PINAP_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_POMEG_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_KELPSY_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_QUALOT_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_HONDEW_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_GREPA_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_TAMATO_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_CORNN_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_MAGOST_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_RABUTA_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_NOMEL_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_SPELON_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_PAMTRE_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_WATMEL_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_DURIN_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_BELUE_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+const u8 gItemDescription_ITEM_LIECHI_BERRY[] = _("When held by a POKéMON, it raises\nthe ATTACK stat in a pinch.");
+const u8 gItemDescription_ITEM_GANLON_BERRY[] = _("When held by a POKéMON, it raises\nthe DEFENSE stat in a pinch.");
+const u8 gItemDescription_ITEM_SALAC_BERRY[] = _("When held by a POKéMON, it raises\nthe SPEED stat in a pinch.");
+const u8 gItemDescription_ITEM_PETAYA_BERRY[] = _("When held by a POKéMON, it raises\nthe SP. ATK stat in a pinch.");
+const u8 gItemDescription_ITEM_APICOT_BERRY[] = _("When held by a POKéMON, it raises\nthe SP. DEF stat in a pinch.");
+const u8 gItemDescription_ITEM_LANSAT_BERRY[] = _("When held by a POKéMON, it raises\nthe critical-hit ratio in a pinch.");
+const u8 gItemDescription_ITEM_STARF_BERRY[] = _("When held by a POKéMON, it sharply\nraises one stat in a pinch.");
+const u8 gItemDescription_ITEM_ENIGMA_BERRY[] = _("Can be ground up into a powder as\nan ingredient for medicine.");
+
+
+
+const u8 gItemDescription_ITEM_BRIGHT_POWDER[] = _("An item to be held by a POKéMON.\nIt casts a tricky glare that lowers\nthe opponent's accuracy.");
+const u8 gItemDescription_ITEM_WHITE_HERB[] = _("An item to be held by a POKéMON.\nIt restores any lowered stat in\nbattle. It can be used only once.");
+const u8 gItemDescription_ITEM_MACHO_BRACE[] = _("An item to be held by a POKéMON.\nIt promotes strong growth but\nlowers SPEED while it is held.");
+const u8 gItemDescription_ITEM_EXP_SHARE[] = _("An item to be held by a POKéMON.\nThe holder gets a share of EXP.\npoints without having to battle.");
+const u8 gItemDescription_ITEM_QUICK_CLAW[] = _("An item to be held by a POKéMON.\nA light and sharp claw. The holder\nmay be able to strike first.");
+const u8 gItemDescription_ITEM_SOOTHE_BELL[] = _("An item to be held by a POKéMON.\nA bell with a comforting chime that\nmakes the holder calm and friendly.");
+const u8 gItemDescription_ITEM_MENTAL_HERB[] = _("An item to be held by a POKéMON.\nIt snaps the holder out of\ninfatuation. It can be used once.");
+const u8 gItemDescription_ITEM_CHOICE_BAND[] = _("An item to be held by a POKéMON.\nIt powers up one move, which\nbecomes the only usable one.");
+const u8 gItemDescription_ITEM_KINGS_ROCK[] = _("An item to be held by a POKéMON.\nIt may cause the foe to flinch\nupon taking damage.");
+const u8 gItemDescription_ITEM_SILVER_POWDER[] = _("An item to be held by a POKéMON.\nA shiny silver powder that boosts\nthe power of BUG-type moves.");
+const u8 gItemDescription_ITEM_AMULET_COIN[] = _("An item to be held by a POKéMON.\nIt doubles the battle money if the\nholding POKéMON takes part.");
+const u8 gItemDescription_ITEM_CLEANSE_TAG[] = _("An item to be held by a POKéMON.\nIt repels wild POKéMON if the\nholder is first in the party.");
+const u8 gItemDescription_ITEM_SOUL_DEW[] = _("An orb to be held by a LATIOS or\nLATIAS. It raises the SP. ATK\nand SP. DEF stats.");
+const u8 gItemDescription_ITEM_DEEP_SEA_TOOTH[] = _("An item to be held by a POKéMON.\nA fang that gleams a sharp silver.\nIt raises the SP. ATK stat.");
+const u8 gItemDescription_ITEM_DEEP_SEA_SCALE[] = _("An item to be held by a POKéMON.\nA scale that shines a faint pink.\nIt raises the SP. DEF stat.");
+const u8 gItemDescription_ITEM_SMOKE_BALL[] = _("An item to be held by a POKéMON.\nThe holding POKéMON can flee from\nany wild POKéMON for sure.");
+const u8 gItemDescription_ITEM_EVERSTONE[] = _("An item to be held by a POKéMON.\nThe holding POKéMON is prevented\nfrom evolving.");
+const u8 gItemDescription_ITEM_FOCUS_BAND[] = _("An item to be held by a POKéMON.\nThe holding POKéMON may endure an\nattack, leaving just 1 HP.");
+const u8 gItemDescription_ITEM_LUCKY_EGG[] = _("An item to be held by a POKéMON.\nAn egg filled with happiness that\nearns extra EXP. points in battle.");
+const u8 gItemDescription_ITEM_SCOPE_LENS[] = _("An item to be held by a POKéMON.\nA lens that boosts the critical-hit\nratio of the holding POKéMON.");
+const u8 gItemDescription_ITEM_METAL_COAT[] = _("An item to be held by a POKéMON.\nA special metallic film that boosts\nthe power of STEEL-type moves.");
+const u8 gItemDescription_ITEM_LEFTOVERS[] = _("An item to be held by a POKéMON.\nThe holding POKéMON gradually\nregains HP during battle.");
+const u8 gItemDescription_ITEM_DRAGON_SCALE[] = _("A thick and tough scale.\nA DRAGON-type POKéMON may be\nholding it.");
+const u8 gItemDescription_ITEM_LIGHT_BALL[] = _("An orb to be held by a PIKACHU\nthat raises the SP. ATK stat.\nTouching it may cause a shock.");
+const u8 gItemDescription_ITEM_SOFT_SAND[] = _("An item to be held by a POKéMON.\nA loose, silky sand that boosts the\npower of GROUND-type moves.");
+const u8 gItemDescription_ITEM_HARD_STONE[] = _("An item to be held by a POKéMON.\nAn unbreakable stone that boosts\nthe power of ROCK-type moves.");
+const u8 gItemDescription_ITEM_MIRACLE_SEED[] = _("An item to be held by a POKéMON.\nA seed imbued with life that boosts\nthe power of GRASS-type moves.");
+const u8 gItemDescription_ITEM_BLACK_GLASSES[] = _("An item to be held by a POKéMON.\nA shady-looking pair of glasses\nthat boosts DARK-type moves.");
+const u8 gItemDescription_ITEM_BLACK_BELT[] = _("An item to be held by a POKéMON.\nA belt that boosts determination\nand FIGHTING-type moves.");
+const u8 gItemDescription_ITEM_MAGNET[] = _("An item to be held by a POKéMON.\nA powerful magnet that boosts the\npower of ELECTRIC-type moves.");
+const u8 gItemDescription_ITEM_MYSTIC_WATER[] = _("An item to be held by a POKéMON.\nA teardrop-shaped gem that boosts\nthe power of WATER-type moves.");
+const u8 gItemDescription_ITEM_SHARP_BEAK[] = _("An item to be held by a POKéMON.\nA long, sharp beak that boosts the\npower of FLYING-type moves.");
+const u8 gItemDescription_ITEM_POISON_BARB[] = _("An item to be held by a POKéMON.\nA small, poisonous barb that boosts\nthe power of POISON-type moves.");
+const u8 gItemDescription_ITEM_NEVER_MELT_ICE[] = _("An item to be held by a POKéMON.\nA piece of ice that repels heat\nand boosts ICE-type moves.");
+const u8 gItemDescription_ITEM_SPELL_TAG[] = _("An item to be held by a POKéMON.\nA sinister, eerie tag that boosts\nGHOST-type moves.");
+const u8 gItemDescription_ITEM_TWISTED_SPOON[] = _("An item to be held by a POKéMON.\nA spoon imbued with telekinetic\npower boosts PSYCHIC-type moves.");
+const u8 gItemDescription_ITEM_CHARCOAL[] = _("An item to be held by a POKéMON.\nA combustible fuel that boosts the\npower of FIRE-type moves.");
+const u8 gItemDescription_ITEM_DRAGON_FANG[] = _("An item to be held by a POKéMON.\nA hard and sharp fang that boosts\nthe power of DRAGON-type moves.");
+const u8 gItemDescription_ITEM_SILK_SCARF[] = _("An item to be held by a POKéMON.\nA sumptuous scarf that boosts the\npower of NORMAL-type moves.");
+const u8 gItemDescription_ITEM_UP_GRADE[] = _("A transparent device filled with all\nsorts of data.\nIt is made by SILPH CO.");
+const u8 gItemDescription_ITEM_SHELL_BELL[] = _("An item to be held by a POKéMON.\nThe holding POKéMON regains some\nHP upon striking the foe.");
+const u8 gItemDescription_ITEM_SEA_INCENSE[] = _("An item to be held by a POKéMON.\nIt slightly boosts the power of\nWATER-type moves.");
+const u8 gItemDescription_ITEM_LAX_INCENSE[] = _("An item to be held by a POKéMON.\nIts tricky aroma slightly reduces\nthe foe's accuracy.");
+const u8 gItemDescription_ITEM_LUCKY_PUNCH[] = _("A glove to be held by a CHANSEY.\nIt raises CHANSEY's critical-hit\nratio.");
+const u8 gItemDescription_ITEM_METAL_POWDER[] = _("A fine, hard powder to be held by\na DITTO.\nIt raises DITTO's DEFENSE stat.");
+const u8 gItemDescription_ITEM_THICK_CLUB[] = _("A hard bone of some sort to be\nheld by a CUBONE or MAROWAK.\nIt raises the ATTACK stat.");
+const u8 gItemDescription_ITEM_STICK[] = _("A stick of leek to be held by a\nFARFETCH'D. It raises FARFETCH'D's\ncritical-hit ratio.");
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+const u8 gItemDescription_ITEM_RED_SCARF[] = _("An item to be held by a POKéMON.\nIt boosts the holding POKéMON's\nCOOL condition in CONTESTS.");
+const u8 gItemDescription_ITEM_BLUE_SCARF[] = _("An item to be held by a POKéMON.\nIt boosts the holding POKéMON's\nBEAUTY condition in CONTESTS.");
+const u8 gItemDescription_ITEM_PINK_SCARF[] = _("An item to be held by a POKéMON.\nIt boosts the holding POKéMON's\nCUTE condition in CONTESTS.");
+const u8 gItemDescription_ITEM_GREEN_SCARF[] = _("An item to be held by a POKéMON.\nIt boosts the holding POKéMON's\nSMART condition in CONTESTS.");
+const u8 gItemDescription_ITEM_YELLOW_SCARF[] = _("An item to be held by a POKéMON.\nIt boosts the holding POKéMON's\nTOUGH condition in CONTESTS.");
+const u8 gItemDescription_ITEM_MACH_BIKE[] = _("A folding bicycle that is at least\ntwice as fast as walking.");
+const u8 gItemDescription_ITEM_COIN_CASE[] = _("A case for holding COINS obtained\nat the GAME CORNER.\nIt holds up to 9,999 COINS.");
+const u8 gItemDescription_ITEM_ITEMFINDER[] = _("A device used for finding items.\nIf there is a hidden item nearby\nwhen it is used, it emits a signal.");
+const u8 gItemDescription_ITEM_OLD_ROD[] = _("An old and beat-up fishing rod.\nUse it by any body of water to \nfish for wild POKéMON.");
+const u8 gItemDescription_ITEM_GOOD_ROD[] = _("A new, good-quality fishing rod.\nUse it by any body of water to \nfish for wild POKéMON.");
+const u8 gItemDescription_ITEM_SUPER_ROD[] = _("An awesome, high-tech fishing rod.\nUse it by any body of water to fish\nfor wild POKéMON.");
+const u8 gItemDescription_ITEM_SS_TICKET[] = _("The ticket required for sailing on\nthe ferry S.S. ANNE.\nIt has a drawing of a ship on it.");
+const u8 gItemDescription_ITEM_CONTEST_PASS[] = _("The pass required for entering\nPOKéMON CONTESTS. It has a\ndrawing of an award ribbon on it.");
+
+const u8 gItemDescription_ITEM_WAILMER_PAIL[] = _("A nifty watering pail.\nUse it to promote strong growth in\nBERRIES planted in soft soil.");
+const u8 gItemDescription_ITEM_DEVON_GOODS[] = _("A package that contains mechanical\nparts of some sort made by the\nDEVON CORPORATION.");
+const u8 gItemDescription_ITEM_SOOT_SACK[] = _("A sack used to collect volcanic\nash automatically during walks\nover deep ash.");
+const u8 gItemDescription_ITEM_BASEMENT_KEY[] = _("The key to NEW MAUVILLE, which\nwas constructed beneath MAUVILLE\nCITY.");
+const u8 gItemDescription_ITEM_ACRO_BIKE[] = _("A folding bicycle that is capable\nof stunts like jumps and wheelies.");
+const u8 gItemDescription_ITEM_POKEBLOCK_CASE[] = _("A case for holding {POKEBLOCK}S made\nwith a BERRY BLENDER. It releases\none {POKEBLOCK} when shaken.");
+const u8 gItemDescription_ITEM_LETTER[] = _("An extremely important letter to\nSTEVEN from the PRESIDENT of the\nDEVON CORPORATION.");
+const u8 gItemDescription_ITEM_EON_TICKET[] = _("The ticket required for sailing on a\nferry to a distant southern island.\nIt features a drawing of an island.");
+const u8 gItemDescription_ITEM_RED_ORB[] = _("An orb that glows red.\nIt is said to contain an incredible\npower from ancient times.");
+const u8 gItemDescription_ITEM_BLUE_ORB[] = _("An orb that glows blue.\nIt is said to contain an incredible\npower from ancient times.");
+const u8 gItemDescription_ITEM_SCANNER[] = _("A device used to search for\nlife-forms in water.\nIt looks too difficult to use.");
+const u8 gItemDescription_ITEM_GO_GOGGLES[] = _("A pair of protective goggles.\nThey enable a TRAINER to travel\nthrough even desert sandstorms.");
+const u8 gItemDescription_ITEM_METEORITE[] = _("A meteorite that fell from space\nonto MT. MOON long ago.\nIt is very lumpy and hard.");
+const u8 gItemDescription_ITEM_ROOM_1_KEY[] = _("A key that opens the door to Room\n1 inside the ABANDONED SHIP.\nIt is old and looks easily broken.");
+const u8 gItemDescription_ITEM_ROOM_2_KEY[] = _("A key that opens the door to Room\n2 inside the ABANDONED SHIP.\nIt is old and looks easily broken.");
+const u8 gItemDescription_ITEM_ROOM_4_KEY[] = _("A key that opens the door to Room\n4 inside the ABANDONED SHIP.\nIt is old and looks easily broken.");
+const u8 gItemDescription_ITEM_ROOM_6_KEY[] = _("A key that opens the door to Room\n6 inside the ABANDONED SHIP.\nIt is old and looks easily broken.");
+const u8 gItemDescription_ITEM_STORAGE_KEY[] = _("A key that opens the storage hold\ninside the ABANDONED SHIP.\nIt is old and looks easily broken.");
+const u8 gItemDescription_ITEM_ROOT_FOSSIL[] = _("A fossil of an ancient, seafloor-\ndwelling POKéMON. It appears to be\npart of a plant root.");
+const u8 gItemDescription_ITEM_CLAW_FOSSIL[] = _("A fossil of an ancient, seafloor-\ndwelling POKéMON. It appears to be\npart of a claw.");
+const u8 gItemDescription_ITEM_DEVON_SCOPE[] = _("A scope that signals the presence\nof any unseeable POKéMON.\nIt is made by the DEVON CORP.");
+extern const u8 gMoveDescription_FocusPunch[];
+const u8 gItemDescription_ITEM_TM01[] = _("An extremely powerful attack.\nHowever, if the user is hit before\nusing the move, they will flinch.");
+extern const u8 gMoveDescription_DragonClaw[];
+const u8 gItemDescription_ITEM_TM02[] = _("Sharp, huge claws hook and slash\nthe foe quickly and with great\npower.");
+extern const u8 gMoveDescription_WaterPulse[];
+const u8 gItemDescription_ITEM_TM03[] = _("The foe is hit with a pulsing blast\nof water. It may also confuse the\ntarget.");
+extern const u8 gMoveDescription_CalmMind[];
+const u8 gItemDescription_ITEM_TM04[] = _("The user calms its spirit and\nfocuses its mind to raise its\nSP. ATK and SP. DEF stats.");
+extern const u8 gMoveDescription_Roar[];
+const u8 gItemDescription_ITEM_TM05[] = _("A savage roar that causes the foe\nto switch out of battle. In the\nwild, ROAR ends the battle.");
+extern const u8 gMoveDescription_Toxic[];
+const u8 gItemDescription_ITEM_TM06[] = _("A move that leaves the foe badly\npoisoned. Its poison damage worsens\nevery turn.");
+extern const u8 gMoveDescription_Hail[];
+const u8 gItemDescription_ITEM_TM07[] = _("Summons a hailstorm that lasts for\nfive turns. The hailstorm damages\nall types except the ICE type.");
+extern const u8 gMoveDescription_BulkUp[];
+const u8 gItemDescription_ITEM_TM08[] = _("The user tightens all its muscles\nand bulks up, boosting both its\nATTACK and DEFENSE stats.");
+extern const u8 gMoveDescription_BulletSeed[];
+const u8 gItemDescription_ITEM_TM09[] = _("The user shoots seeds at the foe\nin rapid succession. Two to five\nseeds are shot at once.");
+extern const u8 gMoveDescription_HiddenPower[];
+const u8 gItemDescription_ITEM_TM10[] = _("A variable move that changes type\nand power depending on the POKéMON\nusing it.");
+extern const u8 gMoveDescription_SunnyDay[];
+const u8 gItemDescription_ITEM_TM11[] = _("The weather is turned sunny for\nfive turns. Over that time, FIRE-\ntype moves are powered up.");
+extern const u8 gMoveDescription_Taunt[];
+const u8 gItemDescription_ITEM_TM12[] = _("A taunted foe may become enraged.\nIt will then only be able to use\nattack moves.");
+extern const u8 gMoveDescription_IceBeam[];
+const u8 gItemDescription_ITEM_TM13[] = _("An icy-cold beam is shot at the\nfoe. It may leave the target\nfrozen.");
+extern const u8 gMoveDescription_Blizzard[];
+const u8 gItemDescription_ITEM_TM14[] = _("A vicious snow-and-wind attack that\nstrikes all foes in battle. It may\ncause freezing.");
+extern const u8 gMoveDescription_HyperBeam[];
+const u8 gItemDescription_ITEM_TM15[] = _("A harsh attack that inflicts severe\ndamage on the foe. However, the\nuser must rest the next turn.");
+extern const u8 gMoveDescription_LightScreen[];
+const u8 gItemDescription_ITEM_TM16[] = _("A wall of light is created over\nfive turns. It reduces damage from\nSP. ATK attacks.");
+extern const u8 gMoveDescription_Protect[];
+const u8 gItemDescription_ITEM_TM17[] = _("The user is completely protected\nfrom attack in the turn it is used.\nIt may fail if used in succession.");
+extern const u8 gMoveDescription_RainDance[];
+const u8 gItemDescription_ITEM_TM18[] = _("A heavy rain is summoned for five\nturns. Over that time, WATER-type\nmoves are powered up.");
+extern const u8 gMoveDescription_GigaDrain[];
+const u8 gItemDescription_ITEM_TM19[] = _("The user strikes the foe with\ntentacles or roots, stealing the\ntarget's HP and healing itself.");
+extern const u8 gMoveDescription_Safeguard[];
+const u8 gItemDescription_ITEM_TM20[] = _("Protects the party with a shield\nagainst all status problems over\nfive turns.");
+extern const u8 gMoveDescription_Frustration[];
+const u8 gItemDescription_ITEM_TM21[] = _("This attack move grows more\npowerful the more the POKéMON\ndislikes its TRAINER.");
+extern const u8 gMoveDescription_SolarBeam[];
+const u8 gItemDescription_ITEM_TM22[] = _("A 2-turn attack that uses the first\nturn for absorbing sunlight, then\nblasting the foe in the next turn.");
+extern const u8 gMoveDescription_IronTail[];
+const u8 gItemDescription_ITEM_TM23[] = _("The foe is slammed with a sturdy\ntail of steel. It may lower the\ntarget's DEFENSE stat.");
+extern const u8 gMoveDescription_Thunderbolt[];
+const u8 gItemDescription_ITEM_TM24[] = _("A massive jolt of electricity is\nlaunched at the foe. It may cause\nparalysis.");
+extern const u8 gMoveDescription_Thunder[];
+const u8 gItemDescription_ITEM_TM25[] = _("Strikes the foe with a huge\nthunderbolt. It may cause\nparalysis.");
+extern const u8 gMoveDescription_Earthquake[];
+const u8 gItemDescription_ITEM_TM26[] = _("Causes an earthquake that strikes\nall POKéMON in battle, excluding\nthe user.");
+extern const u8 gMoveDescription_Return[];
+const u8 gItemDescription_ITEM_TM27[] = _("This attack move grows more\npowerful the more the POKéMON\nlikes its TRAINER.");
+extern const u8 gMoveDescription_Dig[];
+const u8 gItemDescription_ITEM_TM28[] = _("A 2-turn attack in which the user\ndigs underground, then strikes.\nIt can be used to exit dungeons.");
+extern const u8 gMoveDescription_Psychic[];
+const u8 gItemDescription_ITEM_TM29[] = _("A powerful blast of telekinetic\nenergy strikes the foe. It may\nlower the target's SP. DEF stat.");
+extern const u8 gMoveDescription_ShadowBall[];
+const u8 gItemDescription_ITEM_TM30[] = _("The foe is attacked with a shadowy\nlump. It may lower the target's\nSP. DEF stat.");
+extern const u8 gMoveDescription_BrickBreak[];
+const u8 gItemDescription_ITEM_TM31[] = _("Strikes the foe with a rock-hard\nfist, etc. It shatters barriers such\nas REFLECT and LIGHT SCREEN.");
+extern const u8 gMoveDescription_DoubleTeam[];
+const u8 gItemDescription_ITEM_TM32[] = _("The user begins moving so quickly\nthat it creates illusory copies to\nraise its evasiveness.");
+extern const u8 gMoveDescription_Reflect[];
+const u8 gItemDescription_ITEM_TM33[] = _("A tough barrier is put up over five\nturns. It reduces damage from\nphysical attacks over that time.");
+extern const u8 gMoveDescription_ShockWave[];
+const u8 gItemDescription_ITEM_TM34[] = _("A rapid jolt of electricity strikes\nthe foe. This attack is impossible\nto evade.");
+extern const u8 gMoveDescription_Flamethrower[];
+const u8 gItemDescription_ITEM_TM35[] = _("The foe is roasted with a heavy\nblast of fire. It may leave the\ntarget with a burn.");
+extern const u8 gMoveDescription_SludgeBomb[];
+const u8 gItemDescription_ITEM_TM36[] = _("Toxic sludge is hurled at the foe\nwith great force. It may also\npoison the target.");
+extern const u8 gMoveDescription_Sandstorm[];
+const u8 gItemDescription_ITEM_TM37[] = _("Summons a sandstorm that lasts for\nfive turns. It damages all types\nexcept ROCK, GROUND, and STEEL.");
+extern const u8 gMoveDescription_FireBlast[];
+const u8 gItemDescription_ITEM_TM38[] = _("The foe is incinerated with an\nintense flame. It may leave the\ntarget with a burn.");
+extern const u8 gMoveDescription_RockTomb[];
+const u8 gItemDescription_ITEM_TM39[] = _("Boulders are hurled at the foe.\nIt also lowers the target's SPEED\nstat if it hits.");
+extern const u8 gMoveDescription_AerialAce[];
+const u8 gItemDescription_ITEM_TM40[] = _("An extremely fast attack against\none target. It is impossible to\nevade.");
+extern const u8 gMoveDescription_Torment[];
+const u8 gItemDescription_ITEM_TM41[] = _("If enraged by this move, the target\nbecomes incapable of using the same\nmove twice in a row.");
+extern const u8 gMoveDescription_Facade[];
+const u8 gItemDescription_ITEM_TM42[] = _("An attack move that becomes very\npowerful if the user is poisoned,\nburned, or paralyzed.");
+extern const u8 gMoveDescription_SecretPower[];
+const u8 gItemDescription_ITEM_TM43[] = _("An attack move that may have an\nadditional effect depending on the\nbattle terrain.");
+extern const u8 gMoveDescription_Rest[];
+const u8 gItemDescription_ITEM_TM44[] = _("A move that makes the user fall\nasleep over two turns to restore HP\nand heal any status problems.");
+extern const u8 gMoveDescription_Attract[];
+const u8 gItemDescription_ITEM_TM45[] = _("The foe, if it is the opposite\ngender as the user, becomes\ninfatuated and may not attack.");
+extern const u8 gMoveDescription_Thief[];
+const u8 gItemDescription_ITEM_TM46[] = _("An attack that gives the user an\nopportunity to steal the foe's hold\nitem.");
+extern const u8 gMoveDescription_SteelWing[];
+const u8 gItemDescription_ITEM_TM47[] = _("The foe is struck with steel-hard\nwings. It may also raise the user's\nDEFENSE stat.");
+extern const u8 gMoveDescription_SkillSwap[];
+const u8 gItemDescription_ITEM_TM48[] = _("A special power is transmitted to\nthe foe, causing it to switch\nabilities with the user.");
+extern const u8 gMoveDescription_Snatch[];
+const u8 gItemDescription_ITEM_TM49[] = _("A move that steals the effects of\nany status-changing or healing move\nthat the foe tries to use.");
+extern const u8 gMoveDescription_Overheat[];
+const u8 gItemDescription_ITEM_TM50[] = _("A maximum-power attack of great\nferocity, but one that also sharply\nreduces the user's SP. ATK stat.");
+extern const u8 gMoveDescription_Cut[];
+const u8 gItemDescription_ITEM_HM01[] = _("Attacks the foe with sharp blades\nor claws. It can also cut down thin\ntrees and grass outside of battle.");
+extern const u8 gMoveDescription_Fly[];
+const u8 gItemDescription_ITEM_HM02[] = _("The user flies up on the first turn,\nthen attacks next turn. It can be\nused to fly to any known town.");
+extern const u8 gMoveDescription_Surf[];
+const u8 gItemDescription_ITEM_HM03[] = _("Creates a huge wave, then crashes\nit down on the foe. It can be used\nfor traveling on water.");
+extern const u8 gMoveDescription_Strength[];
+const u8 gItemDescription_ITEM_HM04[] = _("The user builds enormous power,\nthen slams the foe. It can be used\nfor moving large, round boulders.");
+extern const u8 gMoveDescription_Flash[];
+const u8 gItemDescription_ITEM_HM05[] = _("Looses a powerful blast of light\nthat reduces the foe's accuracy.\nIt also lights up dark caves.");
+extern const u8 gMoveDescription_RockSmash[];
+const u8 gItemDescription_ITEM_HM06[] = _("Hits the foe with a rock-crushingly\ntough attack. It can smash cracked\nboulders.");
+extern const u8 gMoveDescription_Waterfall[];
+const u8 gItemDescription_ITEM_HM07[] = _("A powerful charge attack. It can\nbe used for climbing a torrential\nwaterfall.");
+extern const u8 gMoveDescription_Dive[];
+const u8 gItemDescription_ITEM_HM08[] = _("A 2-turn attack in which the user\ndives underwater on the first turn,\nthen strikes in the next turn.");
+
+
+const u8 gItemDescription_ITEM_OAKS_PARCEL[] = _("A parcel to be delivered to PROF.\nOAK from VIRIDIAN CITY's POKéMON\nMART.");
+const u8 gItemDescription_ITEM_POKE_FLUTE[] = _("A flute that is said to instantly\nawaken any POKéMON. It has a\nlovely tone.");
+const u8 gItemDescription_ITEM_SECRET_KEY[] = _("The key to CINNABAR ISLAND GYM's\nfront door. It is colored red and\ndecorated.");
+const u8 gItemDescription_ITEM_BIKE_VOUCHER[] = _("Take this voucher to the BIKE SHOP\nin CERULEAN CITY and exchange it\nfor a bicycle.");
+const u8 gItemDescription_ITEM_GOLD_TEETH[] = _("A set of false teeth lost by the\nSAFARI ZONE'S WARDEN. It makes his\nsmile sparkle.");
+const u8 gItemDescription_ITEM_OLD_AMBER[] = _("A piece of amber that contains\nthe genes of an ancient POKéMON.\nIt is clear with a reddish tint.");
+const u8 gItemDescription_ITEM_CARD_KEY[] = _("A card-type key that unlocks doors\nin SILPH CO.'s HEAD OFFICE in\nSAFFRON CITY.");
+const u8 gItemDescription_ITEM_LIFT_KEY[] = _("A key that operates the elevator\nin TEAM ROCKET's HIDEOUT.\nIt bears the TEAM ROCKET logo.");
+const u8 gItemDescription_ITEM_HELIX_FOSSIL[] = _("A fossil of an ancient, seafloor-\ndwelling POKéMON. It appears to be\npart of a seashell.");
+const u8 gItemDescription_ITEM_DOME_FOSSIL[] = _("A fossil of an ancient, seafloor-\ndwelling POKéMON. It appears to be\npart of a shell.");
+const u8 gItemDescription_ITEM_SILPH_SCOPE[] = _("A scope that makes unseeable\nPOKéMON visible.\nIt is made by SILPH CO.");
+const u8 gItemDescription_ITEM_BICYCLE[] = _("A folding bicycle that allows\nfaster movement than the RUNNING\nSHOES.");
+const u8 gItemDescription_ITEM_TOWN_MAP[] = _("A very convenient map that can be\nviewed anytime. It even shows your \npresent location.");
+const u8 gItemDescription_ITEM_VS_SEEKER[] = _("A device that indicates TRAINERS\nwho want to battle. The battery\ncharges while traveling.");
+const u8 gItemDescription_ITEM_FAME_CHECKER[] = _("A device that enables you to\nrecall what you've heard and seen\nabout famous people.");
+const u8 gItemDescription_ITEM_TM_CASE[] = _("A case that holds TMs and HMs.\nIt is attached to the BAG's\ncompartment for important items.");
+const u8 gItemDescription_ITEM_BERRY_POUCH[] = _("A pouch for carrying BERRIES.\nIt is attached to the BAG's\ncompartment for important items.");
+const u8 gItemDescription_ITEM_TEACHY_TV[] = _("A television set that is tuned to\na program with useful tips for\nnovice TRAINERS.");
+const u8 gItemDescription_ITEM_TRI_PASS[] = _("A pass for ferries between ONE,\nTWO, and THREE ISLAND.\nIt has a drawing of three islands.");
+const u8 gItemDescription_ITEM_RAINBOW_PASS[] = _("A pass for ferries between\nVERMILION and the SEVII ISLANDS.\nIt features a drawing of a rainbow.");
+const u8 gItemDescription_ITEM_TEA[] = _("An aromatic tea prepared by an old\nlady. It will slake even the worst\nthirst.");
+const u8 gItemDescription_ITEM_MYSTIC_TICKET[] = _("A ticket required to board the ship\nto NAVEL ROCK.\nIt glows with a mystic light.");
+const u8 gItemDescription_ITEM_AURORA_TICKET[] = _("A ticket required to board the ship\nto BIRTH ISLAND.\nIt glows beautifully.");
+const u8 gItemDescription_ITEM_POWDER_JAR[] = _("A jar for storing BERRY POWDER\nmade using a BERRY CRUSHER.");
+const u8 gItemDescription_ITEM_RUBY[] = _("An exquisitely beautiful gem that\nhas a red glow.\nIt symbolizes passion.");
+const u8 gItemDescription_ITEM_SAPPHIRE[] = _("An exquisitely beautiful gem that\nhas a blue glow.\nIt symbolizes honesty.");
+const u8 gItemDescription_ITEM_NONE[] = _("?????");
+
+const struct Item gItems[] = {
+ {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MASTER BALL"),
+ .itemId = ITEM_MASTER_BALL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MASTER_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 0,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 0
+ }, {
+ .name = _("ULTRA BALL"),
+ .itemId = ITEM_ULTRA_BALL,
+ .price = 1200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ULTRA_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 1
+ }, {
+ .name = _("GREAT BALL"),
+ .itemId = ITEM_GREAT_BALL,
+ .price = 600,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GREAT_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 2,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 2
+ }, {
+ .name = _("POKé BALL"),
+ .itemId = ITEM_POKE_BALL,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POKE_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 3,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 3
+ }, {
+ .name = _("SAFARI BALL"),
+ .itemId = ITEM_SAFARI_BALL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SAFARI_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 4,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 4
+ }, {
+ .name = _("NET BALL"),
+ .itemId = ITEM_NET_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NET_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 5,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 5
+ }, {
+ .name = _("DIVE BALL"),
+ .itemId = ITEM_DIVE_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DIVE_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 6,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 6
+ }, {
+ .name = _("NEST BALL"),
+ .itemId = ITEM_NEST_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NEST_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 7,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 7
+ }, {
+ .name = _("REPEAT BALL"),
+ .itemId = ITEM_REPEAT_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_REPEAT_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 8,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 8
+ }, {
+ .name = _("TIMER BALL"),
+ .itemId = ITEM_TIMER_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TIMER_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 9,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 9
+ }, {
+ .name = _("LUXURY BALL"),
+ .itemId = ITEM_LUXURY_BALL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LUXURY_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 10,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 10
+ }, {
+ .name = _("PREMIER BALL"),
+ .itemId = ITEM_PREMIER_BALL,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PREMIER_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_POKE_BALLS,
+ .type = 11,
+ .fieldUseFunc = NULL,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeBallEtc,
+ .secondaryId = 11
+ }, {
+ .name = _("POTION"),
+ .itemId = ITEM_POTION,
+ .price = 300,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 20,
+ .description = gItemDescription_ITEM_POTION,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ANTIDOTE"),
+ .itemId = ITEM_ANTIDOTE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ANTIDOTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("BURN HEAL"),
+ .itemId = ITEM_BURN_HEAL,
+ .price = 250,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BURN_HEAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ICE HEAL"),
+ .itemId = ITEM_ICE_HEAL,
+ .price = 250,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ICE_HEAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("AWAKENING"),
+ .itemId = ITEM_AWAKENING,
+ .price = 250,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_AWAKENING,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("PARLYZ HEAL"),
+ .itemId = ITEM_PARALYZE_HEAL,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PARALYZE_HEAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("FULL RESTORE"),
+ .itemId = ITEM_FULL_RESTORE,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 255,
+ .description = gItemDescription_ITEM_FULL_RESTORE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("MAX POTION"),
+ .itemId = ITEM_MAX_POTION,
+ .price = 2500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 255,
+ .description = gItemDescription_ITEM_MAX_POTION,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("HYPER POTION"),
+ .itemId = ITEM_HYPER_POTION,
+ .price = 1200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 200,
+ .description = gItemDescription_ITEM_HYPER_POTION,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("SUPER POTION"),
+ .itemId = ITEM_SUPER_POTION,
+ .price = 700,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 50,
+ .description = gItemDescription_ITEM_SUPER_POTION,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("FULL HEAL"),
+ .itemId = ITEM_FULL_HEAL,
+ .price = 600,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_FULL_HEAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("REVIVE"),
+ .itemId = ITEM_REVIVE,
+ .price = 1500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_REVIVE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("MAX REVIVE"),
+ .itemId = ITEM_MAX_REVIVE,
+ .price = 4000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MAX_REVIVE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("FRESH WATER"),
+ .itemId = ITEM_FRESH_WATER,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 50,
+ .description = gItemDescription_ITEM_FRESH_WATER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("SODA POP"),
+ .itemId = ITEM_SODA_POP,
+ .price = 300,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 60,
+ .description = gItemDescription_ITEM_SODA_POP,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("LEMONADE"),
+ .itemId = ITEM_LEMONADE,
+ .price = 350,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 80,
+ .description = gItemDescription_ITEM_LEMONADE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("MOOMOO MILK"),
+ .itemId = ITEM_MOOMOO_MILK,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 100,
+ .description = gItemDescription_ITEM_MOOMOO_MILK,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ENERGYPOWDER"),
+ .itemId = ITEM_ENERGY_POWDER,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ENERGY_POWDER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ENERGY ROOT"),
+ .itemId = ITEM_ENERGY_ROOT,
+ .price = 800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ENERGY_ROOT,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("HEAL POWDER"),
+ .itemId = ITEM_HEAL_POWDER,
+ .price = 450,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HEAL_POWDER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("REVIVAL HERB"),
+ .itemId = ITEM_REVIVAL_HERB,
+ .price = 2800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_REVIVAL_HERB,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ETHER"),
+ .itemId = ITEM_ETHER,
+ .price = 1200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_ETHER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Ether,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Ether,
+ .secondaryId = 0
+ }, {
+ .name = _("MAX ETHER"),
+ .itemId = ITEM_MAX_ETHER,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 255,
+ .description = gItemDescription_ITEM_MAX_ETHER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Ether,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Ether,
+ .secondaryId = 0
+ }, {
+ .name = _("ELIXIR"),
+ .itemId = ITEM_ELIXIR,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_ELIXIR,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Ether,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Ether,
+ .secondaryId = 0
+ }, {
+ .name = _("MAX ELIXIR"),
+ .itemId = ITEM_MAX_ELIXIR,
+ .price = 4500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 255,
+ .description = gItemDescription_ITEM_MAX_ELIXIR,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Ether,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Ether,
+ .secondaryId = 0
+ }, {
+ .name = _("LAVA COOKIE"),
+ .itemId = ITEM_LAVA_COOKIE,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LAVA_COOKIE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("BLUE FLUTE"),
+ .itemId = ITEM_BLUE_FLUTE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BLUE_FLUTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("YELLOW FLUTE"),
+ .itemId = ITEM_YELLOW_FLUTE,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_YELLOW_FLUTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("RED FLUTE"),
+ .itemId = ITEM_RED_FLUTE,
+ .price = 300,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RED_FLUTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("BLACK FLUTE"),
+ .itemId = ITEM_BLACK_FLUTE,
+ .price = 400,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 50,
+ .description = gItemDescription_ITEM_BLACK_FLUTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_BlackFlute,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WHITE FLUTE"),
+ .itemId = ITEM_WHITE_FLUTE,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 150,
+ .description = gItemDescription_ITEM_WHITE_FLUTE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_BlackFlute,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BERRY JUICE"),
+ .itemId = ITEM_BERRY_JUICE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_RESTORE_HP,
+ .holdEffectParam = 20,
+ .description = gItemDescription_ITEM_BERRY_JUICE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("SACRED ASH"),
+ .itemId = ITEM_SACRED_ASH,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SACRED_ASH,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_SacredAsh,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SHOAL SALT"),
+ .itemId = ITEM_SHOAL_SALT,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SHOAL_SALT,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SHOAL SHELL"),
+ .itemId = ITEM_SHOAL_SHELL,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SHOAL_SHELL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RED SHARD"),
+ .itemId = ITEM_RED_SHARD,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RED_SHARD,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLUE SHARD"),
+ .itemId = ITEM_BLUE_SHARD,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BLUE_SHARD,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("YELLOW SHARD"),
+ .itemId = ITEM_YELLOW_SHARD,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_YELLOW_SHARD,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GREEN SHARD"),
+ .itemId = ITEM_GREEN_SHARD,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GREEN_SHARD,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HP UP"),
+ .itemId = ITEM_HP_UP,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HP_UP,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PROTEIN"),
+ .itemId = ITEM_PROTEIN,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PROTEIN,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("IRON"),
+ .itemId = ITEM_IRON,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_IRON,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CARBOS"),
+ .itemId = ITEM_CARBOS,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CARBOS,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CALCIUM"),
+ .itemId = ITEM_CALCIUM,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CALCIUM,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RARE CANDY"),
+ .itemId = ITEM_RARE_CANDY,
+ .price = 4800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RARE_CANDY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_RareCandy,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PP UP"),
+ .itemId = ITEM_PP_UP,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PP_UP,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_PpUp,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ZINC"),
+ .itemId = ITEM_ZINC,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ZINC,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PP MAX"),
+ .itemId = ITEM_PP_MAX,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PP_MAX,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_PpUp,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GUARD SPEC."),
+ .itemId = ITEM_GUARD_SPEC,
+ .price = 700,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GUARD_SPEC,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("DIRE HIT"),
+ .itemId = ITEM_DIRE_HIT,
+ .price = 650,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DIRE_HIT,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("X ATTACK"),
+ .itemId = ITEM_X_ATTACK,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_X_ATTACK,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("X DEFEND"),
+ .itemId = ITEM_X_DEFEND,
+ .price = 550,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_X_DEFEND,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("X SPEED"),
+ .itemId = ITEM_X_SPEED,
+ .price = 350,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_X_SPEED,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("X ACCURACY"),
+ .itemId = ITEM_X_ACCURACY,
+ .price = 950,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_X_ACCURACY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("X SPECIAL"),
+ .itemId = ITEM_X_SPECIAL,
+ .price = 350,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_X_SPECIAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_GuardSpec,
+ .secondaryId = 0
+ }, {
+ .name = _("POKé DOLL"),
+ .itemId = ITEM_POKE_DOLL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POKE_DOLL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeDoll,
+ .secondaryId = 0
+ }, {
+ .name = _("FLUFFY TAIL"),
+ .itemId = ITEM_FLUFFY_TAIL,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_FLUFFY_TAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeDoll,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SUPER REPEL"),
+ .itemId = ITEM_SUPER_REPEL,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 200,
+ .description = gItemDescription_ITEM_SUPER_REPEL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_SuperRepel,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MAX REPEL"),
+ .itemId = ITEM_MAX_REPEL,
+ .price = 700,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 250,
+ .description = gItemDescription_ITEM_MAX_REPEL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_SuperRepel,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ESCAPE ROPE"),
+ .itemId = ITEM_ESCAPE_ROPE,
+ .price = 550,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ESCAPE_ROPE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 2,
+ .fieldUseFunc = ItemUseOutOfBattle_EscapeRope,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("REPEL"),
+ .itemId = ITEM_REPEL,
+ .price = 350,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 100,
+ .description = gItemDescription_ITEM_REPEL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_SuperRepel,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SUN STONE"),
+ .itemId = ITEM_SUN_STONE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SUN_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MOON STONE"),
+ .itemId = ITEM_MOON_STONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MOON_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("FIRE STONE"),
+ .itemId = ITEM_FIRE_STONE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_FIRE_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("THUNDERSTONE"),
+ .itemId = ITEM_THUNDER_STONE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_THUNDER_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WATER STONE"),
+ .itemId = ITEM_WATER_STONE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WATER_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LEAF STONE"),
+ .itemId = ITEM_LEAF_STONE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LEAF_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_EvoItem,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TINYMUSHROOM"),
+ .itemId = ITEM_TINY_MUSHROOM,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TINY_MUSHROOM,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BIG MUSHROOM"),
+ .itemId = ITEM_BIG_MUSHROOM,
+ .price = 5000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BIG_MUSHROOM,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PEARL"),
+ .itemId = ITEM_PEARL,
+ .price = 1400,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PEARL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BIG PEARL"),
+ .itemId = ITEM_BIG_PEARL,
+ .price = 7500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BIG_PEARL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("STARDUST"),
+ .itemId = ITEM_STARDUST,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_STARDUST,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("STAR PIECE"),
+ .itemId = ITEM_STAR_PIECE,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_STAR_PIECE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("NUGGET"),
+ .itemId = ITEM_NUGGET,
+ .price = 10000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NUGGET,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HEART SCALE"),
+ .itemId = ITEM_HEART_SCALE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HEART_SCALE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ORANGE MAIL"),
+ .itemId = ITEM_ORANGE_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ORANGE_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HARBOR MAIL"),
+ .itemId = ITEM_HARBOR_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HARBOR_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 1
+ }, {
+ .name = _("GLITTER MAIL"),
+ .itemId = ITEM_GLITTER_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GLITTER_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 2
+ }, {
+ .name = _("MECH MAIL"),
+ .itemId = ITEM_MECH_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MECH_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 3
+ }, {
+ .name = _("WOOD MAIL"),
+ .itemId = ITEM_WOOD_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WOOD_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 4
+ }, {
+ .name = _("WAVE MAIL"),
+ .itemId = ITEM_WAVE_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WAVE_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 5
+ }, {
+ .name = _("BEAD MAIL"),
+ .itemId = ITEM_BEAD_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BEAD_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 6
+ }, {
+ .name = _("SHADOW MAIL"),
+ .itemId = ITEM_SHADOW_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SHADOW_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 7
+ }, {
+ .name = _("TROPIC MAIL"),
+ .itemId = ITEM_TROPIC_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TROPIC_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 8
+ }, {
+ .name = _("DREAM MAIL"),
+ .itemId = ITEM_DREAM_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DREAM_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 9
+ }, {
+ .name = _("FAB MAIL"),
+ .itemId = ITEM_FAB_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_FAB_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 10
+ }, {
+ .name = _("RETRO MAIL"),
+ .itemId = ITEM_RETRO_MAIL,
+ .price = 50,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RETRO_MAIL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 0,
+ .fieldUseFunc = FieldUseFunc_OrangeMail,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 11
+ }, {
+ .name = _("CHERI BERRY"),
+ .itemId = ITEM_CHERI_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_PAR,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CHERI_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("CHESTO BERRY"),
+ .itemId = ITEM_CHESTO_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_SLP,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CHESTO_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("PECHA BERRY"),
+ .itemId = ITEM_PECHA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_PSN,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PECHA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("RAWST BERRY"),
+ .itemId = ITEM_RAWST_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_BRN,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RAWST_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("ASPEAR BERRY"),
+ .itemId = ITEM_ASPEAR_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_FRZ,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ASPEAR_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("LEPPA BERRY"),
+ .itemId = ITEM_LEPPA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_RESTORE_PP,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_LEPPA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Ether,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Ether,
+ .secondaryId = 0
+ }, {
+ .name = _("ORAN BERRY"),
+ .itemId = ITEM_ORAN_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_RESTORE_HP,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_ORAN_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("PERSIM BERRY"),
+ .itemId = ITEM_PERSIM_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_CONFUSION,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PERSIM_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("LUM BERRY"),
+ .itemId = ITEM_LUM_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CURE_STATUS,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LUM_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("SITRUS BERRY"),
+ .itemId = ITEM_SITRUS_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_RESTORE_HP,
+ .holdEffectParam = 30,
+ .description = gItemDescription_ITEM_SITRUS_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 1,
+ .fieldUseFunc = FieldUseFunc_Medicine,
+ .battleUsage = 1,
+ .battleUseFunc = BattleUseFunc_Medicine,
+ .secondaryId = 0
+ }, {
+ .name = _("FIGY BERRY"),
+ .itemId = ITEM_FIGY_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CONFUSE_SPICY,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_FIGY_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WIKI BERRY"),
+ .itemId = ITEM_WIKI_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CONFUSE_DRY,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_WIKI_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MAGO BERRY"),
+ .itemId = ITEM_MAGO_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CONFUSE_SWEET,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_MAGO_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("AGUAV BERRY"),
+ .itemId = ITEM_AGUAV_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CONFUSE_BITTER,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_AGUAV_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("IAPAPA BERRY"),
+ .itemId = ITEM_IAPAPA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CONFUSE_SOUR,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_IAPAPA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RAZZ BERRY"),
+ .itemId = ITEM_RAZZ_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RAZZ_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLUK BERRY"),
+ .itemId = ITEM_BLUK_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BLUK_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("NANAB BERRY"),
+ .itemId = ITEM_NANAB_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NANAB_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WEPEAR BERRY"),
+ .itemId = ITEM_WEPEAR_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WEPEAR_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PINAP BERRY"),
+ .itemId = ITEM_PINAP_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PINAP_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("POMEG BERRY"),
+ .itemId = ITEM_POMEG_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POMEG_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("KELPSY BERRY"),
+ .itemId = ITEM_KELPSY_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_KELPSY_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("QUALOT BERRY"),
+ .itemId = ITEM_QUALOT_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_QUALOT_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HONDEW BERRY"),
+ .itemId = ITEM_HONDEW_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HONDEW_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GREPA BERRY"),
+ .itemId = ITEM_GREPA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GREPA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TAMATO BERRY"),
+ .itemId = ITEM_TAMATO_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TAMATO_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CORNN BERRY"),
+ .itemId = ITEM_CORNN_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CORNN_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MAGOST BERRY"),
+ .itemId = ITEM_MAGOST_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MAGOST_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RABUTA BERRY"),
+ .itemId = ITEM_RABUTA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RABUTA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("NOMEL BERRY"),
+ .itemId = ITEM_NOMEL_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NOMEL_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SPELON BERRY"),
+ .itemId = ITEM_SPELON_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SPELON_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PAMTRE BERRY"),
+ .itemId = ITEM_PAMTRE_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PAMTRE_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WATMEL BERRY"),
+ .itemId = ITEM_WATMEL_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WATMEL_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DURIN BERRY"),
+ .itemId = ITEM_DURIN_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DURIN_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BELUE BERRY"),
+ .itemId = ITEM_BELUE_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BELUE_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LIECHI BERRY"),
+ .itemId = ITEM_LIECHI_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_ATTACK_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_LIECHI_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GANLON BERRY"),
+ .itemId = ITEM_GANLON_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_DEFENSE_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_GANLON_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SALAC BERRY"),
+ .itemId = ITEM_SALAC_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_SPEED_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_SALAC_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PETAYA BERRY"),
+ .itemId = ITEM_PETAYA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_SP_ATTACK_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_PETAYA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("APICOT BERRY"),
+ .itemId = ITEM_APICOT_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_SP_DEFENSE_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_APICOT_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LANSAT BERRY"),
+ .itemId = ITEM_LANSAT_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_CRITICAL_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_LANSAT_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("STARF BERRY"),
+ .itemId = ITEM_STARF_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_RANDOM_STAT_UP,
+ .holdEffectParam = 4,
+ .description = gItemDescription_ITEM_STARF_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ENIGMA BERRY"),
+ .itemId = ITEM_ENIGMA_BERRY,
+ .price = 20,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ENIGMA_BERRY,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_BERRY_POUCH,
+ .type = 4,
+ .fieldUseFunc = ItemUseOutOfBattle_EnigmaBerry,
+ .battleUsage = 1,
+ .battleUseFunc = ItemUseInBattle_EnigmaBerry,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BRIGHTPOWDER"),
+ .itemId = ITEM_BRIGHT_POWDER,
+ .price = 10,
+ .holdEffect = HOLD_EFFECT_EVASION_UP,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_BRIGHT_POWDER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WHITE HERB"),
+ .itemId = ITEM_WHITE_HERB,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_RESTORE_STATS,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WHITE_HERB,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MACHO BRACE"),
+ .itemId = ITEM_MACHO_BRACE,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_MACHO_BRACE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MACHO_BRACE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("EXP. SHARE"),
+ .itemId = ITEM_EXP_SHARE,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_EXP_SHARE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_EXP_SHARE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("QUICK CLAW"),
+ .itemId = ITEM_QUICK_CLAW,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_QUICK_CLAW,
+ .holdEffectParam = 20,
+ .description = gItemDescription_ITEM_QUICK_CLAW,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SOOTHE BELL"),
+ .itemId = ITEM_SOOTHE_BELL,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_HAPPINESS_UP,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SOOTHE_BELL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MENTAL HERB"),
+ .itemId = ITEM_MENTAL_HERB,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_CURE_ATTRACT,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MENTAL_HERB,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CHOICE BAND"),
+ .itemId = ITEM_CHOICE_BAND,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_CHOICE_BAND,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CHOICE_BAND,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("KING'S ROCK"),
+ .itemId = ITEM_KINGS_ROCK,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_FLINCH,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_KINGS_ROCK,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SILVERPOWDER"),
+ .itemId = ITEM_SILVER_POWDER,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_BUG_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_SILVER_POWDER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("AMULET COIN"),
+ .itemId = ITEM_AMULET_COIN,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_DOUBLE_PRIZE,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_AMULET_COIN,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CLEANSE TAG"),
+ .itemId = ITEM_CLEANSE_TAG,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_REPEL,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CLEANSE_TAG,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SOUL DEW"),
+ .itemId = ITEM_SOUL_DEW,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_SOUL_DEW,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SOUL_DEW,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DEEPSEATOOTH"),
+ .itemId = ITEM_DEEP_SEA_TOOTH,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_DEEP_SEA_TOOTH,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DEEP_SEA_TOOTH,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DEEPSEASCALE"),
+ .itemId = ITEM_DEEP_SEA_SCALE,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_DEEP_SEA_SCALE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DEEP_SEA_SCALE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SMOKE BALL"),
+ .itemId = ITEM_SMOKE_BALL,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_CAN_ALWAYS_RUN,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SMOKE_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("EVERSTONE"),
+ .itemId = ITEM_EVERSTONE,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_PREVENT_EVOLVE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_EVERSTONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("FOCUS BAND"),
+ .itemId = ITEM_FOCUS_BAND,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_FOCUS_BAND,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_FOCUS_BAND,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LUCKY EGG"),
+ .itemId = ITEM_LUCKY_EGG,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_LUCKY_EGG,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LUCKY_EGG,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SCOPE LENS"),
+ .itemId = ITEM_SCOPE_LENS,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_SCOPE_LENS,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SCOPE_LENS,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("METAL COAT"),
+ .itemId = ITEM_METAL_COAT,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_STEEL_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_METAL_COAT,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LEFTOVERS"),
+ .itemId = ITEM_LEFTOVERS,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_LEFTOVERS,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_LEFTOVERS,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DRAGON SCALE"),
+ .itemId = ITEM_DRAGON_SCALE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_DRAGON_SCALE,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_DRAGON_SCALE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LIGHT BALL"),
+ .itemId = ITEM_LIGHT_BALL,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_LIGHT_BALL,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LIGHT_BALL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SOFT SAND"),
+ .itemId = ITEM_SOFT_SAND,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_GROUND_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_SOFT_SAND,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HARD STONE"),
+ .itemId = ITEM_HARD_STONE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_ROCK_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_HARD_STONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MIRACLE SEED"),
+ .itemId = ITEM_MIRACLE_SEED,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_GRASS_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_MIRACLE_SEED,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLACKGLASSES"),
+ .itemId = ITEM_BLACK_GLASSES,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_DARK_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_BLACK_GLASSES,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLACK BELT"),
+ .itemId = ITEM_BLACK_BELT,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_FIGHTING_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_BLACK_BELT,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MAGNET"),
+ .itemId = ITEM_MAGNET,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_ELECTRIC_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_MAGNET,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MYSTIC WATER"),
+ .itemId = ITEM_MYSTIC_WATER,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_WATER_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_MYSTIC_WATER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SHARP BEAK"),
+ .itemId = ITEM_SHARP_BEAK,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_FLYING_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_SHARP_BEAK,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("POISON BARB"),
+ .itemId = ITEM_POISON_BARB,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_POISON_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_POISON_BARB,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("NEVERMELTICE"),
+ .itemId = ITEM_NEVER_MELT_ICE,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_ICE_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_NEVER_MELT_ICE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SPELL TAG"),
+ .itemId = ITEM_SPELL_TAG,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_GHOST_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_SPELL_TAG,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TWISTEDSPOON"),
+ .itemId = ITEM_TWISTED_SPOON,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_PSYCHIC_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_TWISTED_SPOON,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CHARCOAL"),
+ .itemId = ITEM_CHARCOAL,
+ .price = 9800,
+ .holdEffect = HOLD_EFFECT_FIRE_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_CHARCOAL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DRAGON FANG"),
+ .itemId = ITEM_DRAGON_FANG,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_DRAGON_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_DRAGON_FANG,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SILK SCARF"),
+ .itemId = ITEM_SILK_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NORMAL_POWER,
+ .holdEffectParam = 10,
+ .description = gItemDescription_ITEM_SILK_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("UP-GRADE"),
+ .itemId = ITEM_UP_GRADE,
+ .price = 2100,
+ .holdEffect = HOLD_EFFECT_UP_GRADE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_UP_GRADE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SHELL BELL"),
+ .itemId = ITEM_SHELL_BELL,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_SHELL_BELL,
+ .holdEffectParam = 8,
+ .description = gItemDescription_ITEM_SHELL_BELL,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SEA INCENSE"),
+ .itemId = ITEM_SEA_INCENSE,
+ .price = 9600,
+ .holdEffect = HOLD_EFFECT_WATER_POWER,
+ .holdEffectParam = 5,
+ .description = gItemDescription_ITEM_SEA_INCENSE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LAX INCENSE"),
+ .itemId = ITEM_LAX_INCENSE,
+ .price = 9600,
+ .holdEffect = HOLD_EFFECT_EVASION_UP,
+ .holdEffectParam = 5,
+ .description = gItemDescription_ITEM_LAX_INCENSE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LUCKY PUNCH"),
+ .itemId = ITEM_LUCKY_PUNCH,
+ .price = 10,
+ .holdEffect = HOLD_EFFECT_LUCKY_PUNCH,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LUCKY_PUNCH,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("METAL POWDER"),
+ .itemId = ITEM_METAL_POWDER,
+ .price = 10,
+ .holdEffect = HOLD_EFFECT_METAL_POWDER,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_METAL_POWDER,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("THICK CLUB"),
+ .itemId = ITEM_THICK_CLUB,
+ .price = 500,
+ .holdEffect = HOLD_EFFECT_THICK_CLUB,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_THICK_CLUB,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("STICK"),
+ .itemId = ITEM_STICK,
+ .price = 200,
+ .holdEffect = HOLD_EFFECT_STICK,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_STICK,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RED SCARF"),
+ .itemId = ITEM_RED_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RED_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLUE SCARF"),
+ .itemId = ITEM_BLUE_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BLUE_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("PINK SCARF"),
+ .itemId = ITEM_PINK_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_PINK_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GREEN SCARF"),
+ .itemId = ITEM_GREEN_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GREEN_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("YELLOW SCARF"),
+ .itemId = ITEM_YELLOW_SCARF,
+ .price = 100,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_YELLOW_SCARF,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MACH BIKE"),
+ .itemId = ITEM_MACH_BIKE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MACH_BIKE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_MachBike,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("COIN CASE"),
+ .itemId = ITEM_COIN_CASE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_COIN_CASE,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_CoinCase,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ITEMFINDER"),
+ .itemId = ITEM_ITEMFINDER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ITEMFINDER,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = ItemUseOutOfBattle_Itemfinder,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("OLD ROD"),
+ .itemId = ITEM_OLD_ROD,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_OLD_ROD,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_OldRod,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GOOD ROD"),
+ .itemId = ITEM_GOOD_ROD,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GOOD_ROD,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_OldRod,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 1
+ }, {
+ .name = _("SUPER ROD"),
+ .itemId = ITEM_SUPER_ROD,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SUPER_ROD,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_OldRod,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 2
+ }, {
+ .name = _("S.S. TICKET"),
+ .itemId = ITEM_SS_TICKET,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SS_TICKET,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CONTEST PASS"),
+ .itemId = ITEM_CONTEST_PASS,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CONTEST_PASS,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("WAILMER PAIL"),
+ .itemId = ITEM_WAILMER_PAIL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_WAILMER_PAIL,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DEVON GOODS"),
+ .itemId = ITEM_DEVON_GOODS,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DEVON_GOODS,
+ .importance = 2,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SOOT SACK"),
+ .itemId = ITEM_SOOT_SACK,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SOOT_SACK,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BASEMENT KEY"),
+ .itemId = ITEM_BASEMENT_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BASEMENT_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ACRO BIKE"),
+ .itemId = ITEM_ACRO_BIKE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ACRO_BIKE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_MachBike,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 1
+ }, {
+ .name = _("{POKEBLOCK} CASE"),
+ .itemId = ITEM_POKEBLOCK_CASE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POKEBLOCK_CASE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LETTER"),
+ .itemId = ITEM_LETTER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LETTER,
+ .importance = 2,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("EON TICKET"),
+ .itemId = ITEM_EON_TICKET,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_EON_TICKET,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 1
+ }, {
+ .name = _("RED ORB"),
+ .itemId = ITEM_RED_ORB,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RED_ORB,
+ .importance = 2,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BLUE ORB"),
+ .itemId = ITEM_BLUE_ORB,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BLUE_ORB,
+ .importance = 2,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SCANNER"),
+ .itemId = ITEM_SCANNER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SCANNER,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GO-GOGGLES"),
+ .itemId = ITEM_GO_GOGGLES,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GO_GOGGLES,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("METEORITE"),
+ .itemId = ITEM_METEORITE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_METEORITE,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RM. 1 KEY"),
+ .itemId = ITEM_ROOM_1_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ROOM_1_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RM. 2 KEY"),
+ .itemId = ITEM_ROOM_2_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ROOM_2_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RM. 4 KEY"),
+ .itemId = ITEM_ROOM_4_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ROOM_4_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RM. 6 KEY"),
+ .itemId = ITEM_ROOM_6_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ROOM_6_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("STORAGE KEY"),
+ .itemId = ITEM_STORAGE_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_STORAGE_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("ROOT FOSSIL"),
+ .itemId = ITEM_ROOT_FOSSIL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_ROOT_FOSSIL,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CLAW FOSSIL"),
+ .itemId = ITEM_CLAW_FOSSIL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CLAW_FOSSIL,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DEVON SCOPE"),
+ .itemId = ITEM_DEVON_SCOPE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DEVON_SCOPE,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM01"),
+ .itemId = ITEM_TM01,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_FocusPunch,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM02"),
+ .itemId = ITEM_TM02,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_DragonClaw,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM03"),
+ .itemId = ITEM_TM03,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_WaterPulse,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM04"),
+ .itemId = ITEM_TM04,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_CalmMind,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM05"),
+ .itemId = ITEM_TM05,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Roar,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM06"),
+ .itemId = ITEM_TM06,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Toxic,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM07"),
+ .itemId = ITEM_TM07,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Hail,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM08"),
+ .itemId = ITEM_TM08,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_BulkUp,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM09"),
+ .itemId = ITEM_TM09,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_BulletSeed,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM10"),
+ .itemId = ITEM_TM10,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_HiddenPower,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM11"),
+ .itemId = ITEM_TM11,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SunnyDay,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM12"),
+ .itemId = ITEM_TM12,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Taunt,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM13"),
+ .itemId = ITEM_TM13,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_IceBeam,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM14"),
+ .itemId = ITEM_TM14,
+ .price = 5500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Blizzard,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM15"),
+ .itemId = ITEM_TM15,
+ .price = 7500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_HyperBeam,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM16"),
+ .itemId = ITEM_TM16,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_LightScreen,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM17"),
+ .itemId = ITEM_TM17,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Protect,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM18"),
+ .itemId = ITEM_TM18,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_RainDance,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM19"),
+ .itemId = ITEM_TM19,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_GigaDrain,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM20"),
+ .itemId = ITEM_TM20,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Safeguard,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM21"),
+ .itemId = ITEM_TM21,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Frustration,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM22"),
+ .itemId = ITEM_TM22,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SolarBeam,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM23"),
+ .itemId = ITEM_TM23,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_IronTail,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM24"),
+ .itemId = ITEM_TM24,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Thunderbolt,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM25"),
+ .itemId = ITEM_TM25,
+ .price = 5500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Thunder,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM26"),
+ .itemId = ITEM_TM26,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Earthquake,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM27"),
+ .itemId = ITEM_TM27,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Return,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM28"),
+ .itemId = ITEM_TM28,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Dig,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM29"),
+ .itemId = ITEM_TM29,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Psychic,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM30"),
+ .itemId = ITEM_TM30,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_ShadowBall,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM31"),
+ .itemId = ITEM_TM31,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_BrickBreak,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM32"),
+ .itemId = ITEM_TM32,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_DoubleTeam,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM33"),
+ .itemId = ITEM_TM33,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Reflect,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM34"),
+ .itemId = ITEM_TM34,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_ShockWave,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM35"),
+ .itemId = ITEM_TM35,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Flamethrower,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM36"),
+ .itemId = ITEM_TM36,
+ .price = 1000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SludgeBomb,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM37"),
+ .itemId = ITEM_TM37,
+ .price = 2000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Sandstorm,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM38"),
+ .itemId = ITEM_TM38,
+ .price = 5500,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_FireBlast,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM39"),
+ .itemId = ITEM_TM39,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_RockTomb,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM40"),
+ .itemId = ITEM_TM40,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_AerialAce,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM41"),
+ .itemId = ITEM_TM41,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Torment,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM42"),
+ .itemId = ITEM_TM42,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Facade,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM43"),
+ .itemId = ITEM_TM43,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SecretPower,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM44"),
+ .itemId = ITEM_TM44,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Rest,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM45"),
+ .itemId = ITEM_TM45,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Attract,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM46"),
+ .itemId = ITEM_TM46,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Thief,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM47"),
+ .itemId = ITEM_TM47,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SteelWing,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM48"),
+ .itemId = ITEM_TM48,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_SkillSwap,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM49"),
+ .itemId = ITEM_TM49,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Snatch,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM50"),
+ .itemId = ITEM_TM50,
+ .price = 3000,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Overheat,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM01"),
+ .itemId = ITEM_HM01,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Cut,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM02"),
+ .itemId = ITEM_HM02,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Fly,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM03"),
+ .itemId = ITEM_HM03,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Surf,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM04"),
+ .itemId = ITEM_HM04,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Strength,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM05"),
+ .itemId = ITEM_HM05,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Flash,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM06"),
+ .itemId = ITEM_HM06,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_RockSmash,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM07"),
+ .itemId = ITEM_HM07,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Waterfall,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HM08"),
+ .itemId = ITEM_HM08,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gMoveDescription_Dive,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_TM_CASE,
+ .type = 1,
+ .fieldUseFunc = NULL,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("????????"),
+ .itemId = ITEM_NONE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_NONE,
+ .importance = 0,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("OAK'S PARCEL"),
+ .itemId = ITEM_OAKS_PARCEL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_OAKS_PARCEL,
+ .importance = 2,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("POKé FLUTE"),
+ .itemId = ITEM_POKE_FLUTE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POKE_FLUTE,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_PokeFlute,
+ .battleUsage = 2,
+ .battleUseFunc = BattleUseFunc_PokeFlute,
+ .secondaryId = 0
+ }, {
+ .name = _("SECRET KEY"),
+ .itemId = ITEM_SECRET_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SECRET_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BIKE VOUCHER"),
+ .itemId = ITEM_BIKE_VOUCHER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BIKE_VOUCHER,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("GOLD TEETH"),
+ .itemId = ITEM_GOLD_TEETH,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_GOLD_TEETH,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("OLD AMBER"),
+ .itemId = ITEM_OLD_AMBER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_OLD_AMBER,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("CARD KEY"),
+ .itemId = ITEM_CARD_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_CARD_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("LIFT KEY"),
+ .itemId = ITEM_LIFT_KEY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_LIFT_KEY,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("HELIX FOSSIL"),
+ .itemId = ITEM_HELIX_FOSSIL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_HELIX_FOSSIL,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("DOME FOSSIL"),
+ .itemId = ITEM_DOME_FOSSIL,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_DOME_FOSSIL,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SILPH SCOPE"),
+ .itemId = ITEM_SILPH_SCOPE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SILPH_SCOPE,
+ .importance = 1,
+ .exitsBagOnUse = 0,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BICYCLE"),
+ .itemId = ITEM_BICYCLE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BICYCLE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_MachBike,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TOWN MAP"),
+ .itemId = ITEM_TOWN_MAP,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TOWN_MAP,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_TownMap,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("VS SEEKER"),
+ .itemId = ITEM_VS_SEEKER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_VS_SEEKER,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_VsSeeker,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("FAME CHECKER"),
+ .itemId = ITEM_FAME_CHECKER,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_FAME_CHECKER,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_FameChecker,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TM CASE"),
+ .itemId = ITEM_TM_CASE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TM_CASE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_TmCase,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("BERRY POUCH"),
+ .itemId = ITEM_BERRY_POUCH,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_BERRY_POUCH,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_BerryPouch,
+ .battleUsage = 3,
+ .battleUseFunc = BattleUseFunc_BerryPouch,
+ .secondaryId = 0
+ }, {
+ .name = _("TEACHY TV"),
+ .itemId = ITEM_TEACHY_TV,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TEACHY_TV,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 2,
+ .fieldUseFunc = FieldUseFunc_TeachyTv,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TRI-PASS"),
+ .itemId = ITEM_TRI_PASS,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TRI_PASS,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RAINBOW PASS"),
+ .itemId = ITEM_RAINBOW_PASS,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RAINBOW_PASS,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("TEA"),
+ .itemId = ITEM_TEA,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_TEA,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("MYSTICTICKET"),
+ .itemId = ITEM_MYSTIC_TICKET,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_MYSTIC_TICKET,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("AURORATICKET"),
+ .itemId = ITEM_AURORA_TICKET,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_AURORA_TICKET,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("POWDER JAR"),
+ .itemId = ITEM_POWDER_JAR,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_POWDER_JAR,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_PowderJar,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("RUBY"),
+ .itemId = ITEM_RUBY,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_RUBY,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ }, {
+ .name = _("SAPPHIRE"),
+ .itemId = ITEM_SAPPHIRE,
+ .price = 0,
+ .holdEffect = HOLD_EFFECT_NONE,
+ .holdEffectParam = 0,
+ .description = gItemDescription_ITEM_SAPPHIRE,
+ .importance = 1,
+ .exitsBagOnUse = 1,
+ .pocket = POCKET_KEY_ITEMS,
+ .type = 4,
+ .fieldUseFunc = FieldUseFunc_OakStopsYou,
+ .battleUsage = 0,
+ .battleUseFunc = NULL,
+ .secondaryId = 0
+ },
+};
diff --git a/src/field_special_scene.c b/src/field_special_scene.c
new file mode 100644
index 000000000..535f5165d
--- /dev/null
+++ b/src/field_special_scene.c
@@ -0,0 +1,26 @@
+#include "global.h"
+
+static u32 sub_80A0E78(void)
+{
+ return 0;
+}
+
+static void nullsub_57(void)
+{
+}
+
+static void nullsub_58(void)
+{
+}
+
+static void nullsub_59(void)
+{
+}
+
+void nullsub_60(void)
+{
+}
+
+void nullsub_61(void)
+{
+} \ No newline at end of file
diff --git a/src/item_pc.c b/src/item_pc.c
index e2fa33f0a..afc82a73f 100644
--- a/src/item_pc.c
+++ b/src/item_pc.c
@@ -275,7 +275,7 @@ static bool8 ItemPc_DoGfxSetup(void)
switch (gMain.state)
{
case 0:
- VblankHblankHandlerSetZero();
+ SetVBlankHBlankCallbacksToNull();
clear_scheduled_bg_copies_to_vram();
gMain.state++;
break;
@@ -415,7 +415,7 @@ static void Task_ItemPcWaitFadeAndBail(u8 taskId)
static bool8 ItemPc_InitBgs(void)
{
- InitBgReg();
+ ResetAllBgsCoordinatesAndBgCntRegs();
sBg1TilemapBuffer = Alloc(0x800);
if (sBg1TilemapBuffer == NULL)
return FALSE;
@@ -982,7 +982,7 @@ static void Task_ItemPcHandleWithdrawMultiple(u8 taskId)
{
s16 * data = gTasks[taskId].data;
- if (sub_80BF848(&data[8], data[2]) == TRUE)
+ if (AdjustQuantityAccordingToDPadInput(&data[8], data[2]) == TRUE)
sub_810E670(data[8]);
else if (JOY_NEW(A_BUTTON))
{
diff --git a/src/menu_helpers.c b/src/menu_helpers.c
new file mode 100644
index 000000000..02fca76d6
--- /dev/null
+++ b/src/menu_helpers.c
@@ -0,0 +1,250 @@
+#include "global.h"
+#include "task.h"
+#include "bg.h"
+#include "gpu_regs.h"
+#include "window.h"
+#include "menu.h"
+#include "menu_helpers.h"
+#include "new_menu_helpers.h"
+#include "string_util.h"
+#include "text.h"
+#include "sound.h"
+#include "link.h"
+#include "overworld.h"
+#include "mail_data.h"
+#include "field_specials.h"
+#include "constants/songs.h"
+#include "constants/items.h"
+
+static void Task_ContinueTaskAfterMessagePrints(u8 taskId);
+static EWRAM_DATA const struct YesNoFuncTable *gUnknown_20399C8 = NULL;
+static EWRAM_DATA TaskFunc gUnknown_20399CC = NULL;
+static EWRAM_DATA u8 gUnknown_20399D0 = {0};
+
+void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc)
+{
+ gUnknown_20399D0 = windowId;
+ DrawDialogFrameWithCustomTileAndPalette(windowId, TRUE, arg2, arg3);
+
+ if (string != gStringVar4)
+ StringExpandPlaceholders(gStringVar4, string);
+
+ gTextFlags.canABSpeedUpPrint = 1;
+ AddTextPrinterParameterized2(windowId, fontId, gStringVar4, textSpeed, NULL, 2, 1, 3);
+ gUnknown_20399CC = taskFunc;
+ gTasks[taskId].func = Task_ContinueTaskAfterMessagePrints;
+}
+
+bool16 RunTextPrintersRetIsActive(u8 textPrinterId)
+{
+ RunTextPrinters();
+ return IsTextPrinterActive(textPrinterId);
+}
+
+static void Task_ContinueTaskAfterMessagePrints(u8 taskId)
+{
+ if (!RunTextPrintersRetIsActive(gUnknown_20399D0))
+ gUnknown_20399CC(taskId);
+}
+
+static void Task_CallYesOrNoCallback(u8 taskId)
+{
+ switch (Menu_ProcessInputNoWrapClearOnChoose())
+ {
+ case 0:
+ PlaySE(SE_SELECT);
+ gTasks[taskId].func = gUnknown_20399C8->yesFunc;
+ break;
+ case 1:
+ case MENU_B_PRESSED:
+ PlaySE(SE_SELECT);
+ gTasks[taskId].func = gUnknown_20399C8->noFunc;
+ break;
+ }
+}
+
+void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo)
+{
+ CreateYesNoMenu(template, arg2, arg3, arg4, tileStart, palette, 0);
+ gUnknown_20399C8 = yesNo;
+ gTasks[taskId].func = Task_CallYesOrNoCallback;
+}
+
+u8 GetLRKeysState(void)
+{
+ if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)
+ {
+ if (gMain.newKeys & L_BUTTON)
+ return 1;
+ if (gMain.newKeys & R_BUTTON)
+ return 2;
+ }
+ return 0;
+}
+
+u8 sub_80BF66C(void)
+{
+ if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)
+ {
+ if (gMain.newAndRepeatedKeys & L_BUTTON)
+ return 1;
+ if (gMain.newAndRepeatedKeys & R_BUTTON)
+ return 2;
+ }
+ return 0;
+}
+
+bool8 sub_80BF6A8(u16 itemId)
+{
+ if (itemId != ITEM_ENIGMA_BERRY)
+ return TRUE;
+ else if (!gSaveBlock1Ptr->location.mapGroup && gSaveBlock1Ptr->location.mapNum == 1)
+ return FALSE;
+ else if (InUnionRoom() != TRUE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 itemid_80BF6D8_mail_related(u16 itemId)
+{
+ if (IsUpdateLinkStateCBActive() != TRUE && InUnionRoom() != TRUE)
+ return TRUE;
+ else if (ItemIsMail(itemId) != TRUE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MenuHelpers_LinkSomething(void)
+{
+ if (IsUpdateLinkStateCBActive() == TRUE || gReceivedRemoteLinkPlayers == 1)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 sub_80BF72C(void)
+{
+ if (!MenuHelpers_LinkSomething())
+ return FALSE;
+ else
+ return sub_8058244();
+}
+
+bool8 sub_80BF748(void)
+{
+ if (sub_80BF72C() == TRUE)
+ return TRUE;
+ else if (sub_800B270() != TRUE)
+ return FALSE;
+ else
+ return TRUE;
+}
+
+void SetVBlankHBlankCallbacksToNull(void)
+{
+ SetVBlankCallback(NULL);
+ SetHBlankCallback(NULL);
+}
+
+void ClearVramOamPltt(void)
+{
+ ResetAllBgsCoordinatesAndBgCntRegs();
+ CpuFill16(0, (void*) VRAM, VRAM_SIZE);
+ CpuFill32(0, (void*) OAM, OAM_SIZE);
+ CpuFill16(0, (void*) PLTT, PLTT_SIZE);
+}
+
+void ResetAllBgsCoordinatesAndBgCntRegs(void)
+{
+ SetGpuReg(REG_OFFSET_DISPCNT, 0);
+ SetGpuReg(REG_OFFSET_BG3CNT, 0);
+ SetGpuReg(REG_OFFSET_BG2CNT, 0);
+ SetGpuReg(REG_OFFSET_BG1CNT, 0);
+ SetGpuReg(REG_OFFSET_BG0CNT, 0);
+ ChangeBgX(0, 0, 0);
+ ChangeBgY(0, 0, 0);
+ ChangeBgX(1, 0, 0);
+ ChangeBgY(1, 0, 0);
+ ChangeBgX(2, 0, 0);
+ ChangeBgY(2, 0, 0);
+ ChangeBgX(3, 0, 0);
+ ChangeBgY(3, 0, 0);
+}
+
+bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1)
+{
+ s16 valBefore = (*arg0);
+
+ if ((gMain.newAndRepeatedKeys & DPAD_ANY) == DPAD_UP)
+ {
+ (*arg0)++;
+ if ((*arg0) > arg1)
+ (*arg0) = 1;
+
+ if ((*arg0) == valBefore)
+ {
+ return FALSE;
+ }
+ else
+ {
+ PlaySE(SE_SELECT);
+ return TRUE;
+ }
+ }
+ else if ((gMain.newAndRepeatedKeys & DPAD_ANY) == DPAD_DOWN)
+ {
+ (*arg0)--;
+ if ((*arg0) <= 0)
+ (*arg0) = arg1;
+ if ((*arg0) == valBefore)
+ {
+ return FALSE;
+ }
+ else
+ {
+ PlaySE(SE_SELECT);
+ return TRUE;
+ }
+ }
+ else if ((gMain.newAndRepeatedKeys & DPAD_ANY) == DPAD_RIGHT)
+ {
+ (*arg0) += 10;
+ if ((*arg0) > arg1)
+ (*arg0) = arg1;
+ if ((*arg0) == valBefore)
+ {
+ return FALSE;
+ }
+ else
+ {
+ PlaySE(SE_SELECT);
+ return TRUE;
+ }
+ }
+ else if ((gMain.newAndRepeatedKeys & DPAD_ANY) == DPAD_LEFT)
+ {
+ (*arg0) -= 10;
+ if ((*arg0) <= 0)
+ (*arg0) = 1;
+ if ((*arg0) == valBefore)
+ {
+ return FALSE;
+ }
+ else
+ {
+ PlaySE(SE_SELECT);
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+u8 sub_80BF8E4(void)
+{
+ if(!ContextNpcGetTextColor())
+ return 4;
+ else
+ return 5;
+}
diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c
index c9dc6ae81..70566ca58 100644
--- a/src/mystery_event_script.c
+++ b/src/mystery_event_script.c
@@ -267,7 +267,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx)
}
heldItem = GetMonData(&gPlayerParty[5], MON_DATA_HELD_ITEM);
- if (itemid_is_mail(heldItem))
+ if (ItemIsMail(heldItem))
GiveMailToMon2(&gPlayerParty[5], &mail);
CompactPartySlots();
CalculatePlayerPartyCount();
diff --git a/src/scrcmd.c b/src/scrcmd.c
index 7c27293a7..12b2892bb 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -1201,7 +1201,7 @@ bool8 ScrCmd_turnvobject(struct ScriptContext *ctx)
bool8 ScrCmd_lockall(struct ScriptContext *ctx)
{
- if (is_c1_link_related_active())
+ if (IsUpdateLinkStateCBActive())
{
return FALSE;
}
@@ -1215,7 +1215,7 @@ bool8 ScrCmd_lockall(struct ScriptContext *ctx)
bool8 ScrCmd_lock(struct ScriptContext *ctx)
{
- if (is_c1_link_related_active())
+ if (IsUpdateLinkStateCBActive())
{
return FALSE;
}
diff --git a/src/teachy_tv.c b/src/teachy_tv.c
index efffe2840..60e43c29c 100644
--- a/src/teachy_tv.c
+++ b/src/teachy_tv.c
@@ -475,7 +475,7 @@ static void TeachyTvMainCallback(void)
sResources->savedCallback = NULL;
sResources->grassAnimDisabled = 0;
sResources->scrollIndicatorArrowPairId = 0xFF;
- VblankHblankHandlerSetZero();
+ SetVBlankHBlankCallbacksToNull();
clear_scheduled_bg_copies_to_vram();
ScanlineEffect_Stop();
FreeAllSpritePalettes();
@@ -521,7 +521,7 @@ static void TeachyTvMainCallback(void)
static void TeachyTvSetupBg(void)
{
- InitBgReg();
+ ResetAllBgsCoordinatesAndBgCntRegs();
ResetBgsAndClearDma3BusyFlags(0);
InitBgsFromTemplates(0, sBgTemplates, 4);
SetBgTilemapBuffer(1, sResources->buffer1);
@@ -817,7 +817,7 @@ static void TTVcmd_NpcMoveAndSetupTextPrinter(u8 taskId)
static void TTVcmd_IdleIfTextPrinterIsActive(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- if (!sub_80BF518(0))
+ if (!RunTextPrintersRetIsActive(0))
++data[3];
}
@@ -945,7 +945,7 @@ static const u8 sGrassAnimArray[] =
static void TTVcmd_IdleIfTextPrinterIsActive2(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- if (!sub_80BF518(0))
+ if (!RunTextPrintersRetIsActive(0))
++data[3];
}
diff --git a/src/tm_case.c b/src/tm_case.c
index 28aba57a0..7c26c1c58 100644
--- a/src/tm_case.c
+++ b/src/tm_case.c
@@ -321,7 +321,7 @@ static bool8 DoSetUpTMCaseUI(void)
switch (gMain.state)
{
case 0:
- VblankHblankHandlerSetZero();
+ SetVBlankHBlankCallbacksToNull();
clear_scheduled_bg_copies_to_vram();
gMain.state++;
break;
@@ -426,7 +426,7 @@ static void ResetBufferPointers_NoFree(void)
static void LoadBGTemplates(void)
{
void ** ptr;
- InitBgReg();
+ ResetAllBgsCoordinatesAndBgCntRegs();
ptr = &sTilemapBuffer;
*ptr = AllocZeroed(0x800);
ResetBgsAndClearDma3BusyFlags(0);
@@ -1058,7 +1058,7 @@ static void Task_QuantitySelect_HandleInput(u8 taskId)
{
s16 * data = gTasks[taskId].data;
- if (sub_80BF848(&data[8], data[2]) == 1)
+ if (AdjustQuantityAccordingToDPadInput(&data[8], data[2]) == 1)
{
SellTM_PrintQuantityAndSalePrice(data[8], itemid_get_market_price(BagGetItemIdByPocketPosition(POCKET_TM_CASE, data[1])) / 2 * data[8]);
}
diff --git a/sym_ewram.txt b/sym_ewram.txt
index a8672a553..ca297b540 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -1010,15 +1010,9 @@ gUnknown_20399C0: @ 20399C0
gUnknown_20399C4: @ 20399C4
.space 0x4
-gUnknown_20399C8: @ 20399C8
- .space 0x4
-
-gUnknown_20399CC: @ 20399CC
- .space 0x4
-
-gUnknown_20399D0: @ 20399D0
- .space 0x4
+ .include "src/menu_helpers.o"
+ .align 2
gUnknown_20399D4: @ 20399D4
.space 0x4