mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-27 12:14:20 +01:00
Reset battle vars and flags after player whites out (#2875)
This commit is contained in:
commit
909a20c27a
@ -156,6 +156,9 @@
|
|||||||
#define VAR_TERRAIN 0 // If this var has a value, assigning a STATUS_FIELD_xx_TERRAIN to it before battle causes the battle to start with that terrain active
|
#define VAR_TERRAIN 0 // If this var has a value, assigning a STATUS_FIELD_xx_TERRAIN to it before battle causes the battle to start with that terrain active
|
||||||
#define B_VAR_WILD_AI_FLAGS 0 // If not 0, you can use this var to add to default wild AI flags. NOT usable with flags above (1 << 15)
|
#define B_VAR_WILD_AI_FLAGS 0 // If not 0, you can use this var to add to default wild AI flags. NOT usable with flags above (1 << 15)
|
||||||
|
|
||||||
|
// Flag and Var settings
|
||||||
|
#define B_RESET_FLAGS_VARS_AFTER_WHITEOUT TRUE // If TRUE, Overworld_ResetBattleFlagsAndVars will reset battle-related Flags and Vars when the player whites out.
|
||||||
|
|
||||||
// Terrain settings
|
// Terrain settings
|
||||||
#define B_TERRAIN_BG_CHANGE TRUE // If set to TRUE, terrain moves permanently change the default battle background until the effect fades.
|
#define B_TERRAIN_BG_CHANGE TRUE // If set to TRUE, terrain moves permanently change the default battle background until the effect fades.
|
||||||
#define B_THUNDERSTORM_TERRAIN TRUE // If TRUE, overworld Thunderstorm generates Rain and Electric Terrain as in Gen 8.
|
#define B_THUNDERSTORM_TERRAIN TRUE // If TRUE, overworld Thunderstorm generates Rain and Electric Terrain as in Gen 8.
|
||||||
|
@ -401,6 +401,25 @@ void Overworld_ResetStateAfterDigEscRope(void)
|
|||||||
FlagClear(FLAG_SYS_USE_FLASH);
|
FlagClear(FLAG_SYS_USE_FLASH);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if B_RESET_FLAGS_VARS_AFTER_WHITEOUT == TRUE
|
||||||
|
void Overworld_ResetBattleFlagsAndVars(void)
|
||||||
|
{
|
||||||
|
#if VAR_TERRAIN != 0
|
||||||
|
VarSet(VAR_TERRAIN, 0);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if B_VAR_WILD_AI_FLAGS != 0
|
||||||
|
VarSet(B_VAR_WILD_AI_FLAGS,0);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
FlagClear(B_FLAG_INVERSE_BATTLE);
|
||||||
|
FlagClear(B_FLAG_FORCE_DOUBLE_WILD);
|
||||||
|
FlagClear(B_SMART_WILD_AI_FLAG);
|
||||||
|
FlagClear(B_FLAG_NO_BAG_USE);
|
||||||
|
FlagClear(B_FLAG_NO_CATCHING);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void Overworld_ResetStateAfterWhiteOut(void)
|
static void Overworld_ResetStateAfterWhiteOut(void)
|
||||||
{
|
{
|
||||||
ResetInitialPlayerAvatarState();
|
ResetInitialPlayerAvatarState();
|
||||||
@ -409,8 +428,8 @@ static void Overworld_ResetStateAfterWhiteOut(void)
|
|||||||
FlagClear(FLAG_SYS_SAFARI_MODE);
|
FlagClear(FLAG_SYS_SAFARI_MODE);
|
||||||
FlagClear(FLAG_SYS_USE_STRENGTH);
|
FlagClear(FLAG_SYS_USE_STRENGTH);
|
||||||
FlagClear(FLAG_SYS_USE_FLASH);
|
FlagClear(FLAG_SYS_USE_FLASH);
|
||||||
#if VAR_TERRAIN != 0
|
#if B_RESET_FLAGS_VARS_AFTER_WHITEOUT == TRUE
|
||||||
VarSet(VAR_TERRAIN, 0);
|
Overworld_ResetBattleFlagsAndVars();
|
||||||
#endif
|
#endif
|
||||||
// If you were defeated by Kyogre/Groudon and the step counter has
|
// If you were defeated by Kyogre/Groudon and the step counter has
|
||||||
// maxed out, end the abnormal weather.
|
// maxed out, end the abnormal weather.
|
||||||
|
Loading…
Reference in New Issue
Block a user