Finish item_use
This commit is contained in:
+1
-1
@@ -265,7 +265,7 @@ sub_814B8F0: @ 814B8F0
|
||||
ldr r1, _0814B910 @ =sub_814B860
|
||||
movs r0, 0x5
|
||||
movs r2, 0
|
||||
bl sub_813CD50
|
||||
bl InitBerryPouch
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
|
||||
+3
-3
@@ -5,8 +5,8 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_813CD50
|
||||
sub_813CD50: @ 813CD50
|
||||
thumb_func_start InitBerryPouch
|
||||
InitBerryPouch: @ 813CD50
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
@@ -92,7 +92,7 @@ _0813CDF0: .4byte gTextFlags
|
||||
_0813CDF4: .4byte gSpecialVar_ItemId
|
||||
_0813CDF8: .4byte sub_813CE30
|
||||
_0813CDFC: .4byte 0x0000080c
|
||||
thumb_func_end sub_813CD50
|
||||
thumb_func_end InitBerryPouch
|
||||
|
||||
thumb_func_start sub_813CE00
|
||||
sub_813CE00: @ 813CE00
|
||||
|
||||
+6
-6
@@ -138,8 +138,8 @@ _08107EB0: .4byte gUnknown_203AD10
|
||||
_08107EB4: .4byte gUnknown_203ACFC
|
||||
thumb_func_end sub_8107DB4
|
||||
|
||||
thumb_func_start UseFameCheckerFromMenu
|
||||
UseFameCheckerFromMenu: @ 8107EB8
|
||||
thumb_func_start ReturnToBagFromKeyItem
|
||||
ReturnToBagFromKeyItem: @ 8107EB8
|
||||
push {lr}
|
||||
ldr r2, _08107EC8 @ =sub_80568A8
|
||||
movs r0, 0
|
||||
@@ -149,7 +149,7 @@ UseFameCheckerFromMenu: @ 8107EB8
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08107EC8: .4byte sub_80568A8
|
||||
thumb_func_end UseFameCheckerFromMenu
|
||||
thumb_func_end ReturnToBagFromKeyItem
|
||||
|
||||
thumb_func_start sub_8107ECC
|
||||
sub_8107ECC: @ 8107ECC
|
||||
@@ -4776,7 +4776,7 @@ sub_810A448: @ 810A448
|
||||
ldr r1, _0810A458 @ =sub_810A45C
|
||||
movs r0, 0x1
|
||||
movs r2, 0
|
||||
bl sub_813CD50
|
||||
bl InitBerryPouch
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
@@ -4905,7 +4905,7 @@ sub_810A540: @ 810A540
|
||||
ldr r1, _0810A550 @ =sub_810A554
|
||||
movs r0, 0x3
|
||||
movs r2, 0
|
||||
bl sub_813CD50
|
||||
bl InitBerryPouch
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
@@ -5050,7 +5050,7 @@ sub_810A668: @ 810A668
|
||||
ldr r1, _0810A678 @ =sub_810A67C
|
||||
movs r0, 0x2
|
||||
movs r2, 0
|
||||
bl sub_813CD50
|
||||
bl InitBerryPouch
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
|
||||
-1506
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -12617,7 +12617,7 @@ sub_8124DB0: @ 8124DB0
|
||||
movs r0, 0x6
|
||||
movs r1, 0
|
||||
movs r2, 0xFF
|
||||
bl sub_813CD50
|
||||
bl InitBerryPouch
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8124DB0
|
||||
|
||||
+2
-2
@@ -911,14 +911,14 @@ _0806F498:
|
||||
bl PlayRainStoppingSoundEffect
|
||||
bl sub_806EF18
|
||||
bl CleanupOverworldWindowsAndTilemaps
|
||||
ldr r0, _0806F4B0 @ =UseFameCheckerFromMenu
|
||||
ldr r0, _0806F4B0 @ =ReturnToBagFromKeyItem
|
||||
bl SetMainCallback2
|
||||
movs r0, 0x1
|
||||
_0806F4AC:
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806F4B0: .4byte UseFameCheckerFromMenu
|
||||
_0806F4B0: .4byte ReturnToBagFromKeyItem
|
||||
thumb_func_end sub_806F480
|
||||
|
||||
thumb_func_start sub_806F4B4
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
#ifndef GUARD_BERRY_POUCH_H
|
||||
#define GUARD_BERRY_POUCH_H
|
||||
|
||||
#include "task.h"
|
||||
|
||||
void sub_813D808(u8 taskId);
|
||||
void sub_813D934(void (*)(void));
|
||||
void InitBerryPouch(u8, void (*)(void), u8);
|
||||
void sub_813EB20(u8 taskId, u8 bgId, const u8 * str, TaskFunc followUpFunc);
|
||||
void sub_813E2B8(u8 taskId);
|
||||
|
||||
#endif //GUARD_BERRY_POUCH_H
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
#ifndef GUARD_CONSTANTS_FLAGS_H
|
||||
#define GUARD_CONSTANTS_FLAGS_H
|
||||
|
||||
// Sys Flags Maybe
|
||||
#define FLAG_WHITE_FLUTE_ACTIVE 0x803
|
||||
#define FLAG_BLACK_FLUTE_ACTIVE 0x804
|
||||
|
||||
// World Map Flags
|
||||
#define FLAG_WORLD_MAP_PALLET_TOWN 0x890
|
||||
#define FLAG_WORLD_MAP_VIRIDIAN_CITY 0x891
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
#define VAR_0x401D 0x401D
|
||||
#define VAR_0x401E 0x401E
|
||||
#define VAR_0x401F 0x401F
|
||||
#define VAR_RECYCLE_GOODS 0x4020
|
||||
#define VAR_REPEL_STEP_COUNT 0x4021
|
||||
#define VAR_REPEL_STEP_COUNT 0x4020
|
||||
#define VAR_0x4021 0x4021
|
||||
#define VAR_ICE_STEP_COUNT 0x4022
|
||||
#define VAR_0x4023 0x4023
|
||||
#define VAR_MIRAGE_RND_H 0x4024
|
||||
|
||||
@@ -82,5 +82,6 @@ bool8 FieldEffectActiveListContains(u8 id);
|
||||
void sub_80B69DC(void);
|
||||
void CreateTeleportFieldEffectTask(void);
|
||||
void FieldEffectActiveListRemove(u8 id);
|
||||
void sub_8085620(void);
|
||||
|
||||
#endif //GUARD_FIELD_EFFECTS_H
|
||||
|
||||
@@ -7,5 +7,6 @@ u8 GetLeadMonIndex(void);
|
||||
u8 CountDigits(u16 number);
|
||||
void TV_PrintIntToStringVar(u8, int);
|
||||
u16 ScrSpecial_GetStarter(void);
|
||||
void sub_80CCB68(void);
|
||||
|
||||
#endif // GUARD_FIELD_SPECIALS_H
|
||||
|
||||
+4
-1
@@ -27,12 +27,15 @@ void sub_81AAC50(void);
|
||||
void sub_81AAC70(void);
|
||||
void sub_8108CF0(void);
|
||||
void sub_810B108(u8);
|
||||
void UseFameCheckerFromMenu(void);
|
||||
void ReturnToBagFromKeyItem(void);
|
||||
void ItemMenu_MoveItemSlotToNewPositionInArray(struct ItemSlot * slots, int pos1, int pos2);
|
||||
void sub_8108B50(u8 taskId);
|
||||
void sub_8108CB4(void);
|
||||
void sub_8108EE0(void (*)(void));
|
||||
void DisplayItemMessageInBag(u8 taskId, u8 bgId, const u8 * string, TaskFunc followUpFunc);
|
||||
void sub_810A1F8(u8 taskId);
|
||||
void sub_8107ECC(void);
|
||||
void sub_8108DC8(u8 pocketId);
|
||||
void sub_81089F4(u8 pocketId);
|
||||
|
||||
#endif //GUARD_ITEM_MENU_H
|
||||
|
||||
+3
-3
@@ -12,7 +12,7 @@ void FieldUseFunc_OldRod(u8 taskId);
|
||||
void FieldUseFunc_CoinCase(u8 taskId);
|
||||
void FieldUseFunc_PowderJar(u8 taskId);
|
||||
void FieldUseFunc_PokeFlute(u8 taskId);
|
||||
void FieldUseFunc_OpenPartyMenu(u8 taskId);
|
||||
void FieldUseFunc_Medicine(u8 taskId);
|
||||
void FieldUseFunc_Ether(u8 taskId);
|
||||
void FieldUseFunc_PpUp(u8 taskId);
|
||||
void FieldUseFunc_RareCandy(u8 taskId);
|
||||
@@ -27,10 +27,10 @@ void FieldUseFunc_BlackFlute(u8 taskId);
|
||||
void FieldUseFunc_TownMap(u8 taskId);
|
||||
void FieldUseFunc_FameChecker(u8 taskId);
|
||||
void FieldUseFunc_VsSeeker(u8 taskId);
|
||||
void BattleUseFunc_MasterBall(u8 taskId);
|
||||
void BattleUseFunc_PokeBallEtc(u8 taskId);
|
||||
void BattleUseFunc_PokeFlute(u8 taskId);
|
||||
void BattleUseFunc_GuardSpec(u8 taskId);
|
||||
void BattleUseFunc_OpenPartyMenu(u8 taskId);
|
||||
void BattleUseFunc_Medicine(u8 taskId);
|
||||
void BattleUseFunc_Ether(u8 taskId);
|
||||
void BattleUseFunc_PokeDoll(u8 taskId);
|
||||
void FieldUseFunc_OakStopsYou(u8 taskId);
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_ITEMFINDER_H
|
||||
#define GUARD_ITEMFINDER_H
|
||||
|
||||
void sub_813EC8C(u8 taskId);
|
||||
|
||||
#endif //GUARD_ITEMFINDER_H
|
||||
+1
-1
@@ -21,6 +21,6 @@ bool8 MonHasMail(struct Pokemon *mon);
|
||||
void TakeMailFromMon(struct Pokemon *mon);
|
||||
u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail);
|
||||
void ClearMailStruct(struct MailStruct *mail);
|
||||
void sub_80BEBEC(u16 *, void (*)(void), u8);
|
||||
void sub_80BEBEC(struct MailStruct * mail, void (* callback)(void), u8 a2);
|
||||
|
||||
#endif // GUARD_MAIL_H
|
||||
|
||||
@@ -115,5 +115,6 @@ void sub_8055DC4(void);
|
||||
bool8 sub_8055FC4(void);
|
||||
bool8 is_light_level_8_or_9(u8 mapType);
|
||||
bool32 sub_8055C9C(void);
|
||||
void sub_8054D70(void);
|
||||
|
||||
#endif //GUARD_ROM4_H
|
||||
|
||||
@@ -52,5 +52,14 @@ void GetMonNickname(const struct Pokemon * mon, u8 * dest);
|
||||
void sub_81202F8(const u8 * src, u8 a1);
|
||||
bool8 sub_8120370(void);
|
||||
void PartyMenuInit(u8 a, u8 b, u8 c, u8 d, u8 messageId, TaskFunc task, MainCallback callback);
|
||||
void sub_81252D0(u8 taskId, TaskFunc followUpFunc);
|
||||
void sub_81256F8(u8 taskId, TaskFunc followUpFunc);
|
||||
void dp05_pp_up(u8 taskId, TaskFunc followUpFunc);
|
||||
void dp05_rare_candy(u8 taskId, TaskFunc followUpFunc);
|
||||
void sub_8126B60(u8 taskId, TaskFunc followUpFunc);
|
||||
void sub_8126894(u8 taskId, TaskFunc followUpFunc);
|
||||
void sub_81279E0(void);
|
||||
void ItemUseCB_Medicine(u8 taskId, TaskFunc followUpFunc);
|
||||
u8 GetItemEffectType(u16 itemId);
|
||||
|
||||
#endif // GUARD_PARTY_MENU_H
|
||||
|
||||
@@ -678,4 +678,6 @@ u8 GetMonsStateToDoubles(void);
|
||||
void sub_803E0A4(struct Pokemon *mon, struct BattleTowerPokemon *src);
|
||||
void SetMultiuseSpriteTemplateToPokemon(u16 trainerSpriteId, u8 battlerPosition);
|
||||
|
||||
const u8 * sub_8042DA4(u16 itemId);
|
||||
|
||||
#endif // GUARD_POKEMON_H
|
||||
|
||||
@@ -95,5 +95,6 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag);
|
||||
u8 *GetMapName(u8 *, u16, u16);
|
||||
bool32 sub_8124668(u8 mapSecId);
|
||||
void sub_80C4DF8(u8 *, u8);
|
||||
void sub_80BFF50(u8 a0, void (*a1)(void));
|
||||
|
||||
#endif //GUARD_REGION_MAP_H
|
||||
|
||||
@@ -164,10 +164,16 @@ extern const u8 gText_ReturnToPC[];
|
||||
extern const u8 gUnknown_8416425[];
|
||||
extern const u8 gUnknown_8416451[];
|
||||
extern const u8 gUnknown_8416537[];
|
||||
extern const u8 gUnknown_841658C[];
|
||||
extern const u8 gUnknown_841659E[];
|
||||
extern const u8 gUnknown_84165D2[];
|
||||
extern const u8 gUnknown_8416600[];
|
||||
extern const u8 gUnknown_8416631[];
|
||||
extern const u8 gUnknown_8416644[];
|
||||
extern const u8 gUnknown_841665C[];
|
||||
extern const u8 gUnknown_8416690[];
|
||||
extern const u8 gUnknown_84166A7[];
|
||||
extern const u8 gUnknown_84169DC[];
|
||||
|
||||
extern const u8 gUnknown_84162BD[];
|
||||
|
||||
|
||||
@@ -154,7 +154,6 @@ SECTIONS {
|
||||
asm/field_special_scene.o(.text);
|
||||
asm/safari_zone.o(.text);
|
||||
src/item_use.o(.text);
|
||||
asm/item_use.o(.text);
|
||||
asm/battle_anim_effects_1.o(.text);
|
||||
asm/battle_anim_effects_2.o(.text);
|
||||
asm/water.o(.text);
|
||||
|
||||
+85
-85
@@ -29,7 +29,7 @@
|
||||
"type": 0,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -45,7 +45,7 @@
|
||||
"type": 1,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 1
|
||||
},
|
||||
{
|
||||
@@ -61,7 +61,7 @@
|
||||
"type": 2,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 2
|
||||
},
|
||||
{
|
||||
@@ -77,7 +77,7 @@
|
||||
"type": 3,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 3
|
||||
},
|
||||
{
|
||||
@@ -93,7 +93,7 @@
|
||||
"type": 4,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 4
|
||||
},
|
||||
{
|
||||
@@ -109,7 +109,7 @@
|
||||
"type": 5,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 5
|
||||
},
|
||||
{
|
||||
@@ -125,7 +125,7 @@
|
||||
"type": 6,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 6
|
||||
},
|
||||
{
|
||||
@@ -141,7 +141,7 @@
|
||||
"type": 7,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 7
|
||||
},
|
||||
{
|
||||
@@ -157,7 +157,7 @@
|
||||
"type": 8,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 8
|
||||
},
|
||||
{
|
||||
@@ -173,7 +173,7 @@
|
||||
"type": 9,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 9
|
||||
},
|
||||
{
|
||||
@@ -189,7 +189,7 @@
|
||||
"type": 10,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 10
|
||||
},
|
||||
{
|
||||
@@ -205,7 +205,7 @@
|
||||
"type": 11,
|
||||
"fieldUseFunc": "NULL",
|
||||
"battleUsage": 2,
|
||||
"battleUseFunc": "BattleUseFunc_MasterBall",
|
||||
"battleUseFunc": "BattleUseFunc_PokeBallEtc",
|
||||
"secondaryId": 11
|
||||
},
|
||||
{
|
||||
@@ -219,9 +219,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -235,9 +235,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -251,9 +251,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -267,9 +267,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -283,9 +283,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -299,9 +299,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -315,9 +315,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -331,9 +331,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -347,9 +347,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -363,9 +363,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -379,9 +379,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -395,9 +395,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -411,9 +411,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -427,9 +427,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -443,9 +443,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -459,9 +459,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -475,9 +475,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -491,9 +491,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -507,9 +507,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -523,9 +523,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -539,9 +539,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -619,9 +619,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -635,9 +635,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -653,7 +653,7 @@
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OakStopsYou",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -669,7 +669,7 @@
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OakStopsYou",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -715,9 +715,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -1019,7 +1019,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -1035,7 +1035,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -1051,7 +1051,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -1067,7 +1067,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -1083,7 +1083,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -1131,7 +1131,7 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_ITEMS",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 0,
|
||||
"battleUseFunc": "NULL",
|
||||
"secondaryId": 0
|
||||
@@ -2139,9 +2139,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2155,9 +2155,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2171,9 +2171,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2187,9 +2187,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2203,9 +2203,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2235,9 +2235,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2253,7 +2253,7 @@
|
||||
"type": 4,
|
||||
"fieldUseFunc": "FieldUseFunc_OakStopsYou",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2267,9 +2267,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
@@ -2283,9 +2283,9 @@
|
||||
"exitsBagOnUse": 0,
|
||||
"pocket": "POCKET_BERRY_POUCH",
|
||||
"type": 1,
|
||||
"fieldUseFunc": "FieldUseFunc_OpenPartyMenu",
|
||||
"fieldUseFunc": "FieldUseFunc_Medicine",
|
||||
"battleUsage": 1,
|
||||
"battleUseFunc": "BattleUseFunc_OpenPartyMenu",
|
||||
"battleUseFunc": "BattleUseFunc_Medicine",
|
||||
"secondaryId": 0
|
||||
},
|
||||
{
|
||||
|
||||
+1
-1
@@ -552,7 +552,7 @@ static void Task_TopMenuHandleInput(u8 taskId)
|
||||
if (FindTaskIdByFunc(Task_FCOpenOrCloseInfoBox) == 0xFF)
|
||||
{
|
||||
RunTextPrinters();
|
||||
if ((JOY_NEW(SELECT_BUTTON)) && !sFameCheckerData->inPickMode && sFameCheckerData->savedCallback != UseFameCheckerFromMenu)
|
||||
if ((JOY_NEW(SELECT_BUTTON)) && !sFameCheckerData->inPickMode && sFameCheckerData->savedCallback != ReturnToBagFromKeyItem)
|
||||
task->func = Task_StartToCloseFameChecker;
|
||||
else if (JOY_NEW(START_BUTTON))
|
||||
{
|
||||
|
||||
+562
-4
@@ -1,31 +1,45 @@
|
||||
#include "global.h"
|
||||
#include "battle.h"
|
||||
#include "berry_pouch.h"
|
||||
#include "berry_powder.h"
|
||||
#include "bike.h"
|
||||
#include "coins.h"
|
||||
#include "event_data.h"
|
||||
#include "field_effect.h"
|
||||
#include "field_fadetransition.h"
|
||||
#include "field_map_obj_helpers.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "field_specials.h"
|
||||
#include "field_weather.h"
|
||||
#include "fieldmap.h"
|
||||
#include "item.h"
|
||||
#include "item_menu.h"
|
||||
#include "item_use.h"
|
||||
#include "itemfinder.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "map_obj_80688E4.h"
|
||||
#include "map_obj_lock.h"
|
||||
#include "metatile_behavior.h"
|
||||
#include "new_menu_helpers.h"
|
||||
#include "overworld.h"
|
||||
#include "palette.h"
|
||||
#include "party_menu.h"
|
||||
#include "quest_log.h"
|
||||
#include "region_map.h"
|
||||
#include "script.h"
|
||||
#include "sound.h"
|
||||
#include "string_util.h"
|
||||
#include "strings.h"
|
||||
#include "task.h"
|
||||
#include "teachy_tv.h"
|
||||
#include "tm_case.h"
|
||||
#include "vs_seeker.h"
|
||||
#include "constants/fanfares.h"
|
||||
#include "constants/flags.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/moves.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
@@ -43,7 +57,24 @@ void ItemUseOnFieldCB_Rod(u8 taskId);
|
||||
void FieldUseFunc_EvoItem(u8 taskId);
|
||||
void sub_80A1648(u8 taskId);
|
||||
void sub_80A1674(u8 taskId);
|
||||
void sub_813EC8C(u8 taskId);
|
||||
void InitTMCaseFromBag(void);
|
||||
void Task_InitTMCaseFromField(u8 taskId);
|
||||
void InitBerryPouchFromBag(void);
|
||||
void Task_InitBerryPouchFromField(u8 taskId);
|
||||
void InitBerryPouchFromBattle(void);
|
||||
void InitTeachyTvFromBag(void);
|
||||
void Task_InitTeachyTvFromField(u8 taskId);
|
||||
void sub_80A19E8(u8 taskId);
|
||||
void sub_80A1A44(void);
|
||||
void sub_80A1B48(u8 taskId);
|
||||
void sub_80A1C08(u8 taskId);
|
||||
void sub_80A1C44(u8 taskId);
|
||||
void sub_80A1CAC(void);
|
||||
void sub_80A1CC0(u8 taskId);
|
||||
void sub_80A1D58(void);
|
||||
void sub_80A1D68(u8 taskId);
|
||||
void sub_80A1EF4(u8 taskId);
|
||||
void sub_80A1F48(u8 taskId);
|
||||
|
||||
extern void (*const gUnknown_83E2954[])(void);
|
||||
|
||||
@@ -158,10 +189,10 @@ void FieldUseFunc_OrangeMail(u8 taskId)
|
||||
|
||||
void sub_80A1208(void)
|
||||
{
|
||||
u16 buffer[18];
|
||||
struct MailStruct mail;
|
||||
|
||||
buffer[16] = gSpecialVar_ItemId;
|
||||
sub_80BEBEC(buffer, UseFameCheckerFromMenu, 0);
|
||||
mail.itemId = gSpecialVar_ItemId;
|
||||
sub_80BEBEC(&mail, ReturnToBagFromKeyItem, 0);
|
||||
}
|
||||
|
||||
void FieldUseFunc_MachBike(u8 taskId)
|
||||
@@ -320,3 +351,530 @@ void sub_80A16D0(u8 taskId)
|
||||
{
|
||||
sub_80A0FBC(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_Medicine(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_81252D0;
|
||||
sub_80A16D0(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_Ether(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_81256F8;
|
||||
sub_80A16D0(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_PpUp(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = dp05_pp_up;
|
||||
sub_80A16D0(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_RareCandy(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = dp05_rare_candy;
|
||||
sub_80A16D0(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_EvoItem(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_8126B60;
|
||||
sub_80A16D0(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_SacredAsh(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_8126894;
|
||||
sub_80A0FBC(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_TmCase(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
sub_8108EE0(InitTMCaseFromBag);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_80CCB68();
|
||||
fade_screen(1, 0);
|
||||
gTasks[taskId].func = Task_InitTMCaseFromField;
|
||||
}
|
||||
}
|
||||
|
||||
void InitTMCaseFromBag(void)
|
||||
{
|
||||
InitTMCase(0, ReturnToBagFromKeyItem, 0);
|
||||
}
|
||||
|
||||
void Task_InitTMCaseFromField(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
sub_80A1184();
|
||||
InitTMCase(0, CB2_ReturnToField, 1);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void FieldUseFunc_BerryPouch(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
sub_8108EE0(InitBerryPouchFromBag);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_80CCB68();
|
||||
fade_screen(1, 0);
|
||||
gTasks[taskId].func = Task_InitBerryPouchFromField;
|
||||
}
|
||||
}
|
||||
|
||||
void InitBerryPouchFromBag(void)
|
||||
{
|
||||
InitBerryPouch(0, ReturnToBagFromKeyItem, 0);
|
||||
}
|
||||
|
||||
void Task_InitBerryPouchFromField(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
sub_80A1184();
|
||||
InitBerryPouch(0, CB2_ReturnToField, 1);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleUseFunc_BerryPouch(u8 taskId)
|
||||
{
|
||||
sub_8108EE0(InitBerryPouchFromBattle);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
|
||||
void InitBerryPouchFromBattle(void)
|
||||
{
|
||||
InitBerryPouch(4, sub_8107ECC, 0);
|
||||
}
|
||||
|
||||
void FieldUseFunc_TeachyTv(u8 taskId)
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(4, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
sub_8108EE0(InitTeachyTvFromBag);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_80CCB68();
|
||||
fade_screen(1, 0);
|
||||
gTasks[taskId].func = Task_InitTeachyTvFromField;
|
||||
}
|
||||
}
|
||||
|
||||
void InitTeachyTvFromBag(void)
|
||||
{
|
||||
InitTeachyTvController(0, ReturnToBagFromKeyItem);
|
||||
}
|
||||
|
||||
void Task_InitTeachyTvFromField(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
sub_80A1184();
|
||||
InitTeachyTvController(0, CB2_ReturnToField);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void FieldUseFunc_SuperRepel(u8 taskId)
|
||||
{
|
||||
if (VarGet(VAR_REPEL_STEP_COUNT) == 0)
|
||||
{
|
||||
PlaySE(SE_RU_GASYAN);
|
||||
gTasks[taskId].func = sub_80A19E8;
|
||||
}
|
||||
else
|
||||
// An earlier repel is still in effect
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_841659E, sub_810A1F8);
|
||||
}
|
||||
|
||||
void sub_80A19E8(u8 taskId)
|
||||
{
|
||||
if (!IsSEPlaying())
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(4, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId));
|
||||
sub_80A1A44();
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, sub_810A1F8);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1A44(void)
|
||||
{
|
||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||
sub_8108DC8(ItemId_GetPocket(gSpecialVar_ItemId));
|
||||
sub_81089F4(ItemId_GetPocket(gSpecialVar_ItemId));
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar2);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841658C);
|
||||
}
|
||||
|
||||
void FieldUseFunc_BlackFlute(u8 taskId)
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(4, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gSpecialVar_ItemId == ITEM_WHITE_FLUTE)
|
||||
{
|
||||
FlagSet(FLAG_WHITE_FLUTE_ACTIVE);
|
||||
FlagClear(FLAG_BLACK_FLUTE_ACTIVE);
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar2);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_84165D2);
|
||||
gTasks[taskId].func = sub_80A1B48;
|
||||
gTasks[taskId].data[8] = 0;
|
||||
}
|
||||
else if (gSpecialVar_ItemId == ITEM_BLACK_FLUTE)
|
||||
{
|
||||
FlagSet(FLAG_BLACK_FLUTE_ACTIVE);
|
||||
FlagClear(FLAG_WHITE_FLUTE_ACTIVE);
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar2);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_8416600);
|
||||
gTasks[taskId].func = sub_80A1B48;
|
||||
gTasks[taskId].data[8] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1B48(u8 taskId)
|
||||
{
|
||||
if (++gTasks[taskId].data[8] > 7)
|
||||
{
|
||||
PlaySE(SE_PN_ON);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, sub_810A1F8);
|
||||
}
|
||||
}
|
||||
|
||||
bool8 sub_80A1B8C(void)
|
||||
{
|
||||
if (gMapHeader.escapeRope & 1)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void ItemUseOutOfBattle_EscapeRope(u8 taskId)
|
||||
{
|
||||
if (sub_80A1B8C() == TRUE)
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(4, NULL, gSpecialVar_ItemId, gMapHeader.regionMapSectionId);
|
||||
sItemUseOnFieldCB = sub_80A1C08;
|
||||
sub_80A103C(taskId);
|
||||
}
|
||||
else
|
||||
sub_80A1110(taskId, gTasks[taskId].data[3]);
|
||||
}
|
||||
|
||||
void sub_80A1C08(u8 taskId)
|
||||
{
|
||||
sub_8054D70();
|
||||
sub_80A1A44();
|
||||
gTasks[taskId].data[0] = 0;
|
||||
DisplayItemMessageOnField(taskId, 2, gStringVar4, sub_80A1C44);
|
||||
}
|
||||
|
||||
void sub_80A1C44(u8 taskId)
|
||||
{
|
||||
ResetInitialPlayerAvatarState();
|
||||
sub_8085620();
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
void FieldUseFunc_TownMap(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
sub_8108EE0(sub_80A1CAC);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_80CCB68();
|
||||
fade_screen(1, 0);
|
||||
gTasks[taskId].func = sub_80A1CC0;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1CAC(void)
|
||||
{
|
||||
sub_80BFF50(0, ReturnToBagFromKeyItem);
|
||||
}
|
||||
|
||||
void sub_80A1CC0(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
sub_80A1184();
|
||||
sub_80BFF50(0, CB2_ReturnToField);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void FieldUseFunc_FameChecker(u8 taskId)
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(4, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
sub_8108EE0(sub_80A1D58);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_80CCB68();
|
||||
fade_screen(1, 0);
|
||||
gTasks[taskId].func = sub_80A1D68;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1D58(void)
|
||||
{
|
||||
UseFameChecker(ReturnToBagFromKeyItem);
|
||||
}
|
||||
|
||||
void sub_80A1D68(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
sub_80A1184();
|
||||
UseFameChecker(CB2_ReturnToField);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void FieldUseFunc_VsSeeker(u8 taskId)
|
||||
{
|
||||
if ((gMapHeader.mapType != MAP_TYPE_ROUTE
|
||||
&& gMapHeader.mapType != MAP_TYPE_TOWN
|
||||
&& gMapHeader.mapType != MAP_TYPE_CITY)
|
||||
|| (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(VIRIDIAN_FOREST)
|
||||
&& (gSaveBlock1Ptr->location.mapNum == MAP_NUM(VIRIDIAN_FOREST)
|
||||
|| gSaveBlock1Ptr->location.mapNum == MAP_NUM(MT_EMBER_EXTERIOR)
|
||||
|| gSaveBlock1Ptr->location.mapNum == MAP_NUM(THREE_ISLAND_BERRY_FOREST)
|
||||
|| gSaveBlock1Ptr->location.mapNum == MAP_NUM(SIX_ISLAND_PATTERN_BUSH))))
|
||||
{
|
||||
sub_80A1110(taskId, gTasks[taskId].data[3]);
|
||||
}
|
||||
else
|
||||
{
|
||||
sItemUseOnFieldCB = Task_VsSeeker_0;
|
||||
sub_80A103C(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1E0C(u8 taskId)
|
||||
{
|
||||
sub_80A112C(taskId);
|
||||
}
|
||||
|
||||
void BattleUseFunc_PokeBallEtc(u8 taskId)
|
||||
{
|
||||
if (!IsPlayerPartyAndPokemonStorageFull())
|
||||
{
|
||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||
sub_8108CB4();
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_8416631, sub_810A1F8);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleUseFunc_PokeFlute(u8 taskId)
|
||||
{
|
||||
sub_8108CB4();
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
|
||||
void BattleUseFunc_GuardSpec(u8 taskId)
|
||||
{
|
||||
if (ExecuteTableBasedItemEffect(&gPlayerParty[gBattlerPartyIndexes[gBattlerInMenuId]], gSpecialVar_ItemId, gBattlerPartyIndexes[gBattlerInMenuId], 0))
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_84169DC, sub_810A1F8);
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].data[8] = 0;
|
||||
gTasks[taskId].func = sub_80A1EF4;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1EF4(u8 taskId)
|
||||
{
|
||||
s16 * data = gTasks[taskId].data;
|
||||
|
||||
if (++data[8] > 7)
|
||||
{
|
||||
u16 itemId = gSpecialVar_ItemId;
|
||||
PlaySE(SE_KAIFUKU);
|
||||
RemoveBagItem(itemId, 1);
|
||||
DisplayItemMessageInBag(taskId, 2, sub_8042DA4(itemId), sub_80A1F48);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1F48(u8 taskId)
|
||||
{
|
||||
if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON))
|
||||
{
|
||||
sub_8108CB4();
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A1F78(u8 taskId)
|
||||
{
|
||||
if (GetPocketByItemId(gSpecialVar_ItemId) == POCKET_BERRY_POUCH)
|
||||
{
|
||||
sub_813D934(sub_81279E0);
|
||||
sub_813D808(taskId);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_8108EE0(sub_81279E0);
|
||||
sub_8108B50(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleUseFunc_Medicine(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = ItemUseCB_Medicine;
|
||||
sub_80A1F78(taskId);
|
||||
}
|
||||
|
||||
void sub_80A1FD8(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_8126894;
|
||||
sub_80A1F78(taskId);
|
||||
}
|
||||
|
||||
void BattleUseFunc_Ether(u8 taskId)
|
||||
{
|
||||
gUnknown_3005E98 = sub_81256F8;
|
||||
sub_80A1F78(taskId);
|
||||
}
|
||||
|
||||
void BattleUseFunc_PokeDoll(u8 taskId)
|
||||
{
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER))
|
||||
{
|
||||
sub_80A1A44();
|
||||
ItemUse_SetQuestLogEvent(4, 0, gSpecialVar_ItemId, 0xFFFF);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, sub_8108B50);
|
||||
}
|
||||
else
|
||||
sub_80A1110(taskId, 0);
|
||||
}
|
||||
|
||||
void ItemUseOutOfBattle_EnigmaBerry(u8 taskId)
|
||||
{
|
||||
switch (GetItemEffectType(gSpecialVar_ItemId) - 1)
|
||||
{
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
case 5:
|
||||
case 6:
|
||||
case 10:
|
||||
case 11:
|
||||
case 12:
|
||||
case 13:
|
||||
case 14:
|
||||
case 15:
|
||||
case 16:
|
||||
gTasks[taskId].data[4] = 1;
|
||||
FieldUseFunc_Medicine(taskId);
|
||||
break;
|
||||
case 9:
|
||||
gTasks[taskId].data[4] = 1;
|
||||
FieldUseFunc_SacredAsh(taskId);
|
||||
break;
|
||||
case 0:
|
||||
gTasks[taskId].data[4] = 1;
|
||||
FieldUseFunc_RareCandy(taskId);
|
||||
break;
|
||||
case 18:
|
||||
case 19:
|
||||
gTasks[taskId].data[4] = 1;
|
||||
FieldUseFunc_PpUp(taskId);
|
||||
break;
|
||||
case 20:
|
||||
gTasks[taskId].data[4] = 1;
|
||||
FieldUseFunc_Ether(taskId);
|
||||
break;
|
||||
default:
|
||||
gTasks[taskId].data[4] = 4;
|
||||
FieldUseFunc_OakStopsYou(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void ItemUseInBattle_EnigmaBerry(u8 taskId)
|
||||
{
|
||||
switch (GetItemEffectType(gSpecialVar_ItemId))
|
||||
{
|
||||
case 0:
|
||||
BattleUseFunc_GuardSpec(taskId);
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
case 8:
|
||||
case 9:
|
||||
case 11:
|
||||
BattleUseFunc_Medicine(taskId);
|
||||
break;
|
||||
case 21:
|
||||
BattleUseFunc_Ether(taskId);
|
||||
break;
|
||||
default:
|
||||
FieldUseFunc_OakStopsYou(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void FieldUseFunc_OakStopsYou(u8 taskId)
|
||||
{
|
||||
if (GetPocketByItemId(gSpecialVar_ItemId) == POCKET_BERRY_POUCH)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_8416425);
|
||||
sub_813EB20(taskId, 4, gStringVar4, sub_813E2B8);
|
||||
}
|
||||
else
|
||||
sub_80A1110(taskId, gTasks[taskId].data[3]);
|
||||
}
|
||||
|
||||
void ItemUse_SetQuestLogEvent(u8 eventId, struct Pokemon * pokemon, u16 itemId, u16 param)
|
||||
{
|
||||
struct UnkStruct_ItemUseQuestLog
|
||||
{
|
||||
u16 itemId;
|
||||
u16 unk2;
|
||||
u16 species;
|
||||
u16 param;
|
||||
} * questLog = Alloc(sizeof(*questLog));
|
||||
|
||||
questLog->itemId = itemId;
|
||||
questLog->param = param;
|
||||
if (pokemon != NULL)
|
||||
questLog->species = GetMonData(pokemon, MON_DATA_SPECIES2);
|
||||
else
|
||||
questLog->species = 0xFFFF;
|
||||
sub_8113550(eventId, (void *)questLog);
|
||||
Free(questLog);
|
||||
}
|
||||
|
||||
+1
-1
@@ -4526,7 +4526,7 @@ void sub_8042D50(int stat)
|
||||
BattleStringExpandPlaceholdersToDisplayedString(BattleText_UnknownString3);
|
||||
}
|
||||
|
||||
u8 *sub_8042DA4(u16 itemId)
|
||||
const u8 *sub_8042DA4(u16 itemId)
|
||||
{
|
||||
int i;
|
||||
const u8 *itemEffect;
|
||||
|
||||
+1
-1
@@ -736,7 +736,7 @@ static void TeachyTvOptionListController(u8 taskId)
|
||||
{
|
||||
input = ListMenuHandleInput(data[0]);
|
||||
ListMenuGetScrollAndRow(data[0], &sStaticResources.scrollOffset, &sStaticResources.selectedRow);
|
||||
if ((JOY_NEW(SELECT_BUTTON) && sStaticResources.callback != UseFameCheckerFromMenu))
|
||||
if ((JOY_NEW(SELECT_BUTTON) && sStaticResources.callback != ReturnToBagFromKeyItem))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
TeachyTvQuitBeginFade(taskId);
|
||||
|
||||
Reference in New Issue
Block a user