forked from DizzyEggg/pokeemerald
-
Notifications
You must be signed in to change notification settings - Fork 3
Disable Catching Pokemon
ghoulslash edited this page Dec 7, 2020
·
2 revisions
Credit to ghoulslash
This feature adds a flag that, when set, disables using any poke ball type in battle:
In include/constants/flags.h, replace an unused flag with FLAG_DISABLE_CATCHING
, eg.
#define FLAG_DISABLE_CATCHING 0x494
Open src/item_use.c. Navigate to the function, void ItemUseInBattle_PokeBall(u8 taskId)
. Add the following code to the start of the function:
if (FlagGet(FLAG_DISABLE_CATCHING))
{
static const u8 sText_BallsCannotBeUsed[] = _("Poké Balls cannot be used\nright now!\p");
DisplayItemMessage(taskId, 1, sText_BallsCannotBeUsed, BagMenu_InitListsMenu);
}
else if (IsPlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon
{
//etc...
When FLAG_DISABLE_CATCHING
is set, the player will no longer be able to use a poke ball in battle.
Open src/overworld.c and find the function Overworld_ResetStateAfterWhiteOut
. Add the following alongside the other FlagClear
functions:
FlagClear(FLAG_DISABLE_CATCHING);