diff options
author | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-06-24 02:07:25 +0800 |
---|---|---|
committer | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-06-24 02:07:25 +0800 |
commit | bc7ff2226d9352cafe0ee28ec66d7246782c3878 (patch) | |
tree | 3f6d491e421b686fdd6eb21efc58cdc341a399e1 | |
parent | 34bebdc56e6e7001043a95549d6aa19e2610719a (diff) |
menu_helpers.c & field_special_scene.c
-rw-r--r-- | asm/battle_message.s | 2 | ||||
-rw-r--r-- | asm/berry_pouch.s | 8 | ||||
-rw-r--r-- | asm/field_specials.s | 6 | ||||
-rw-r--r-- | asm/item_menu.s | 14 | ||||
-rw-r--r-- | asm/link_rfu.s | 2 | ||||
-rw-r--r-- | asm/mail_data.s | 8 | ||||
-rw-r--r-- | asm/menu.s | 6 | ||||
-rw-r--r-- | asm/menu_helpers.s | 628 | ||||
-rw-r--r-- | asm/new_menu_helpers.s | 4 | ||||
-rw-r--r-- | asm/overworld.s | 16 | ||||
-rw-r--r-- | asm/party_menu.s | 34 | ||||
-rw-r--r-- | asm/pokemon_storage_system.s | 16 | ||||
-rw-r--r-- | asm/pokemon_summary_screen.s | 4 | ||||
-rw-r--r-- | asm/shop.s | 6 | ||||
-rw-r--r-- | asm/start_menu.s | 4 | ||||
-rw-r--r-- | asm/trade.s | 2 | ||||
-rw-r--r-- | include/field_specials.h | 3 | ||||
-rw-r--r-- | include/link.h | 1 | ||||
-rw-r--r-- | include/mail_data.h | 2 | ||||
-rw-r--r-- | include/menu.h | 6 | ||||
-rw-r--r-- | include/menu_helpers.h | 10 | ||||
-rw-r--r-- | include/overworld.h | 3 | ||||
-rw-r--r-- | ld_script.txt | 4 | ||||
-rw-r--r-- | src/data/items.h | 6067 | ||||
-rw-r--r-- | src/field_special_scene.c | 26 | ||||
-rw-r--r-- | src/item_pc.c | 6 | ||||
-rw-r--r-- | src/menu_helpers.c | 250 | ||||
-rw-r--r-- | src/mystery_event_script.c | 2 | ||||
-rw-r--r-- | src/scrcmd.c | 4 | ||||
-rw-r--r-- | src/teachy_tv.c | 8 | ||||
-rw-r--r-- | src/tm_case.c | 6 | ||||
-rw-r--r-- | sym_ewram.txt | 10 |
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 |