ported battle_util from pokeem
This commit is contained in:
+3
-1
@@ -987,6 +987,8 @@ extern u16 gChosenMoveByBattler[MAX_BATTLERS_COUNT];
|
||||
extern u8 gMoveResultFlags;
|
||||
extern s32 gTakenDmg[MAX_BATTLERS_COUNT];
|
||||
extern u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT];
|
||||
|
||||
extern u8 gCurrentActionFuncId;
|
||||
extern u8 gCurrMovePos;
|
||||
extern u8 gChosenMovePos;
|
||||
|
||||
#endif // GUARD_BATTLE_H
|
||||
|
||||
@@ -28,16 +28,8 @@ extern const u8 BattleScript_LocalBattleLost[];
|
||||
extern const u8 BattleScript_LocalBattleLostPrintWhiteOut[];
|
||||
extern const u8 BattleScript_LocalBattleLostEnd[];
|
||||
extern const u8 BattleScript_CheckDomeDrew[];
|
||||
extern const u8 BattleScript_82DAA0B[];
|
||||
extern const u8 BattleScript_82DAA31[];
|
||||
extern const u8 BattleScript_LinkBattleWonOrLost[];
|
||||
extern const u8 BattleScript_82DAA5C[];
|
||||
extern const u8 BattleScript_82DAA83[];
|
||||
extern const u8 BattleScript_FrontierTrainerBattleWon[];
|
||||
extern const u8 BattleScript_82DAAAB[];
|
||||
extern const u8 BattleScript_82DAAAE[];
|
||||
extern const u8 BattleScript_82DAACB[];
|
||||
extern const u8 BattleScript_82DAADA[];
|
||||
extern const u8 BattleScript_SmokeBallEscape[];
|
||||
extern const u8 BattleScript_RanAwayUsingMonAbility[];
|
||||
extern const u8 BattleScript_GotAwaySafely[];
|
||||
@@ -47,11 +39,6 @@ extern const u8 BattleScript_PrintFailedToRunString[];
|
||||
extern const u8 BattleScript_PrintCantEscapeFromBattle[];
|
||||
extern const u8 BattleScript_PrintFullBox[];
|
||||
extern const u8 BattleScript_ActionSwitch[];
|
||||
extern const u8 BattleScript_82DAB35[];
|
||||
extern const u8 BattleScript_82DAB37[];
|
||||
extern const u8 BattleScript_82DAB44[];
|
||||
extern const u8 BattleScript_82DAB77[];
|
||||
extern const u8 BattleScript_82DABB8[];
|
||||
extern const u8 BattleScript_Pausex20[];
|
||||
extern const u8 BattleScript_LevelUp[];
|
||||
extern const u8 BattleScript_RainContinuesOrEnds[];
|
||||
@@ -64,13 +51,10 @@ extern const u8 BattleScript_SideStatusWoreOff[];
|
||||
extern const u8 BattleScript_SafeguardProtected[];
|
||||
extern const u8 BattleScript_SafeguardEnds[];
|
||||
extern const u8 BattleScript_LeechSeedTurnDrain[];
|
||||
extern const u8 BattleScript_82DAD47[];
|
||||
extern const u8 BattleScript_82DAD4D[];
|
||||
extern const u8 BattleScript_BideStoringEnergy[];
|
||||
extern const u8 BattleScript_BideAttack[];
|
||||
extern const u8 BattleScript_BideNoEnergyToAttack[];
|
||||
extern const u8 BattleScript_SuccessForceOut[];
|
||||
extern const u8 BattleScript_82DADF1[];
|
||||
extern const u8 BattleScript_MistProtected[];
|
||||
extern const u8 BattleScript_RageIsBuilding[];
|
||||
extern const u8 BattleScript_MoveUsedIsDisabled[];
|
||||
@@ -81,32 +65,16 @@ extern const u8 BattleScript_SelectingUnusableMoveInPalace[];
|
||||
extern const u8 BattleScript_EncoredNoMore[];
|
||||
extern const u8 BattleScript_DestinyBondTakesLife[];
|
||||
extern const u8 BattleScript_SpikesOnAttacker[];
|
||||
extern const u8 BattleScript_82DAE7A[];
|
||||
extern const u8 BattleScript_SpikesOnTarget[];
|
||||
extern const u8 BattleScript_82DAEB1[];
|
||||
extern const u8 BattleScript_SpikesOngBank1[];
|
||||
extern const u8 BattleScript_82DAEE8[];
|
||||
extern const u8 BattleScript_82DAEFE[];
|
||||
extern const u8 BattleScript_PerishSongTakesLife[];
|
||||
extern const u8 BattleScript_PerishSongCountGoesDown[];
|
||||
extern const u8 BattleScript_AllStatsUp[];
|
||||
extern const u8 BattleScript_82DAF54[];
|
||||
extern const u8 BattleScript_82DAF72[];
|
||||
extern const u8 BattleScript_82DAF86[];
|
||||
extern const u8 BattleScript_82DAF9A[];
|
||||
extern const u8 BattleScript_82DAFAE[];
|
||||
extern const u8 BattleScript_82DAFC2[];
|
||||
extern const u8 BattleScript_RapidSpinAway[];
|
||||
extern const u8 BattleScript_WrapFree[];
|
||||
extern const u8 BattleScript_LeechSeedFree[];
|
||||
extern const u8 BattleScript_SpikesFree[];
|
||||
extern const u8 BattleScript_MonTookFutureAttack[];
|
||||
extern const u8 BattleScript_82DB001[];
|
||||
extern const u8 BattleScript_82DB008[];
|
||||
extern const u8 BattleScript_82DB020[];
|
||||
extern const u8 BattleScript_82DB027[];
|
||||
extern const u8 BattleScript_82DB03F[];
|
||||
extern const u8 BattleScript_82DB058[];
|
||||
extern const u8 BattleScript_NoMovesLeft[];
|
||||
extern const u8 BattleScript_SelectingMoveWithNoPP[];
|
||||
extern const u8 BattleScript_NoPPForMove[];
|
||||
@@ -119,8 +87,6 @@ extern const u8 BattleScript_SelectingNotAllowedMoveTauntInPalace[];
|
||||
extern const u8 BattleScript_WishComesTrue[];
|
||||
extern const u8 BattleScript_IngrainTurnHeal[];
|
||||
extern const u8 BattleScript_AtkDefDown[];
|
||||
extern const u8 BattleScript_82DB144[];
|
||||
extern const u8 BattleScript_82DB167[];
|
||||
extern const u8 BattleScript_KnockedOff[];
|
||||
extern const u8 BattleScript_MoveUsedIsImprisoned[];
|
||||
extern const u8 BattleScript_SelectingImprisonedMove[];
|
||||
@@ -131,15 +97,11 @@ extern const u8 BattleScript_SnatchedMove[];
|
||||
extern const u8 BattleScript_EnduredMsg[];
|
||||
extern const u8 BattleScript_OneHitKOMsg[];
|
||||
extern const u8 BattleScript_SAtkDown2[];
|
||||
extern const u8 BattleScript_82DB1FE[];
|
||||
extern const u8 BattleScript_FocusPunchSetUp[];
|
||||
extern const u8 BattleScript_MoveUsedIsAsleep[];
|
||||
extern const u8 BattleScript_MoveUsedWokeUp[];
|
||||
extern const u8 BattleScript_MonWokeUpInUproar[];
|
||||
extern const u8 BattleScript_PoisonTurnDmg[];
|
||||
extern const u8 BattleScript_82DB243[];
|
||||
extern const u8 BattleScript_82DB245[];
|
||||
extern const u8 BattleScript_82DB25E[];
|
||||
extern const u8 BattleScript_BurnTurnDmg[];
|
||||
extern const u8 BattleScript_MoveUsedIsFrozen[];
|
||||
extern const u8 BattleScript_MoveUsedUnfroze[];
|
||||
@@ -149,8 +111,6 @@ extern const u8 BattleScript_MoveUsedFlinched[];
|
||||
extern const u8 BattleScript_PrintUproarOverTurns[];
|
||||
extern const u8 BattleScript_ThrashConfuses[];
|
||||
extern const u8 BattleScript_MoveUsedIsConfused[];
|
||||
extern const u8 BattleScript_82DB2D4[];
|
||||
extern const u8 BattleScript_82DB2FF[];
|
||||
extern const u8 BattleScript_MoveUsedIsConfusedNoMore[];
|
||||
extern const u8 BattleScript_PrintPayDayMoneyString[];
|
||||
extern const u8 BattleScript_WrapTurnDmg[];
|
||||
@@ -162,7 +122,6 @@ extern const u8 BattleScript_NightmareTurnDmg[];
|
||||
extern const u8 BattleScript_CurseTurnDmg[];
|
||||
extern const u8 BattleScript_TargetPRLZHeal[];
|
||||
extern const u8 BattleScript_MoveEffectSleep[];
|
||||
extern const u8 BattleScript_82DB374[];
|
||||
extern const u8 BattleScript_YawnMakesAsleep[];
|
||||
extern const u8 BattleScript_MoveEffectPoison[];
|
||||
extern const u8 BattleScript_MoveEffectBurn[];
|
||||
@@ -186,14 +145,6 @@ extern const u8 BattleScript_ShedSkinActivates[];
|
||||
extern const u8 BattleScript_WeatherFormChanges[];
|
||||
extern const u8 BattleScript_WeatherFormChangesLoop[];
|
||||
extern const u8 BattleScript_CastformChange[];
|
||||
extern const u8 BattleScript_82DB4AF[];
|
||||
extern const u8 BattleScript_82DB4B8[];
|
||||
extern const u8 BattleScript_82DB4BE[];
|
||||
extern const u8 BattleScript_82DB4C1[];
|
||||
extern const u8 BattleScript_82DB4CD[];
|
||||
extern const u8 BattleScript_82DB510[];
|
||||
extern const u8 BattleScript_82DB51B[];
|
||||
extern const u8 BattleScript_82DB51C[];
|
||||
extern const u8 BattleScript_DroughtActivates[];
|
||||
extern const u8 BattleScript_TookAttack[];
|
||||
extern const u8 BattleScript_SturdyPreventsOHKO[];
|
||||
@@ -221,12 +172,9 @@ extern const u8 BattleScript_ApplySecondaryEffect[];
|
||||
extern const u8 BattleScript_SynchronizeActivates[];
|
||||
extern const u8 BattleScript_NoItemSteal[];
|
||||
extern const u8 BattleScript_AbilityCuredStatus[];
|
||||
extern const u8 BattleScript_82DB695[];
|
||||
extern const u8 BattleScript_IgnoresAndUsesRandomMove[];
|
||||
extern const u8 BattleScript_MoveUsedLoafingAround[];
|
||||
extern const u8 BattleScript_82DB6C7[];
|
||||
extern const u8 BattleScript_IgnoresAndFallsAsleep[];
|
||||
extern const u8 BattleScript_82DB6F0[];
|
||||
extern const u8 BattleScript_SubstituteFade[];
|
||||
extern const u8 BattleScript_BerryCurePrlzEnd2[];
|
||||
extern const u8 BattleScript_BerryCureParRet[];
|
||||
@@ -252,18 +200,8 @@ extern const u8 BattleScript_SelectingNotAllowedMoveChoiceItem[];
|
||||
extern const u8 BattleScript_HangedOnMsg[];
|
||||
extern const u8 BattleScript_BerryConfuseHealEnd2[];
|
||||
extern const u8 BattleScript_BerryStatRaiseEnd2[];
|
||||
extern const u8 BattleScript_82DB85B[];
|
||||
extern const u8 BattleScript_BerryFocusEnergyEnd2[];
|
||||
extern const u8 BattleScript_ActionSelectionItemsCantBeUsed[];
|
||||
extern const u8 BattleScript_82DB87D[];
|
||||
extern const u8 BattleScript_82DB881[];
|
||||
extern const u8 BattleScript_82DB887[];
|
||||
extern const u8 BattleScript_82DB89D[];
|
||||
extern const u8 BattleScript_82DB8BE[];
|
||||
extern const u8 BattleScript_82DB8E0[];
|
||||
extern const u8 BattleScript_82DB8F3[];
|
||||
extern const u8 BattleScript_82DB973[];
|
||||
extern const u8 BattleScript_82DB992[];
|
||||
extern const u8 BattleScript_AskIfWantsToForfeitMatch[];
|
||||
extern const u8 BattleScript_PrintPlayerForfeited[];
|
||||
extern const u8 BattleScript_PrintPlayerForfeitedLinkBattle[];
|
||||
@@ -271,27 +209,18 @@ extern const u8 BattleScript_BallThrow[];
|
||||
extern const u8 BattleScript_BallThrowByWally[];
|
||||
extern const u8 BattleScript_SafariBallThrow[];
|
||||
extern const u8 BattleScript_SuccessBallThrow[];
|
||||
extern const u8 BattleScript_82DBD92[];
|
||||
extern const u8 BattleScript_82DBDA5[];
|
||||
extern const u8 BattleScript_82DBDC2[];
|
||||
extern const u8 BattleScript_82DBDC3[];
|
||||
extern const u8 BattleScript_WallyBallThrow[];
|
||||
extern const u8 BattleScript_ShakeBallThrow[];
|
||||
extern const u8 BattleScript_82DBE01[];
|
||||
extern const u8 BattleScript_TrainerBallBlock[];
|
||||
extern const u8 BattleScript_82DBE12[];
|
||||
extern const u8 BattleScript_82DBE1C[];
|
||||
extern const u8 BattleScript_82DBE4B[];
|
||||
extern const u8 BattleScript_82DBE6F[];
|
||||
extern const u8 BattleScript_82DBE91[];
|
||||
extern const u8 BattleScript_RunByUsingItem[];
|
||||
extern const u8 BattleScript_ActionWatchesCarefully[];
|
||||
extern const u8 BattleScript_ActionGetNear[];
|
||||
extern const u8 BattleScript_ActionThrowPokeblock[];
|
||||
extern const u8 BattleScript_82DBEE3[];
|
||||
extern const u8 gUnknown_81D9192[];
|
||||
extern const u8 gUnknown_81D9180[];
|
||||
extern const u8 BattleScript_IntimidateActivates[];
|
||||
extern const u8 BattleScript_IntimidateActivatesEnd3[];
|
||||
extern const u8 BattleScript_IgnoresWhileAsleep[];
|
||||
extern const u8 BattleScript_IgnoresAndHitsItself[];
|
||||
|
||||
#endif // GUARD_BATTLE_SCRIPTS_H
|
||||
|
||||
+24
-28
@@ -52,45 +52,41 @@
|
||||
#define BS_GET_PLAYER2 13
|
||||
#define BS_GET_OPPONENT2 14
|
||||
|
||||
u8 GetBattleBank(u8 caseId);
|
||||
void PressurePPLose(u8 bankDef, u8 bankAtk, u16 move);
|
||||
void PressurePPLoseOnUsingPerishSong(u8 bankAtk);
|
||||
void PressurePPLoseOnUsingImprison(u8 bankAtk);
|
||||
void MarkAllBattlersForControllerExec(void); // unused
|
||||
void MarkBattlerForControllerExec(u8 bank);
|
||||
void sub_803F850(u8 arg0);
|
||||
void CancelMultiTurnMoves(u8 bank);
|
||||
bool8 WasUnableToUseMove(u8 bank);
|
||||
void PrepareStringBattle(u16 stringId, u8 bank);
|
||||
u8 GetBattlerForBattleScript(u8 caseId);
|
||||
void PressurePPLose(u8 target, u8 attacker, u16 move);
|
||||
void PressurePPLoseOnUsingImprison(u8 attacker);
|
||||
void PressurePPLoseOnUsingPerishSong(u8 attacker);
|
||||
void MarkAllBattlersForControllerExec(void);
|
||||
void MarkBattlerForControllerExec(u8 battlerId);
|
||||
void sub_8017298(u8 arg0);
|
||||
void CancelMultiTurnMoves(u8 battler);
|
||||
bool8 WasUnableToUseMove(u8 battler);
|
||||
void PrepareStringBattle(u16 stringId, u8 battler);
|
||||
void ResetSentPokesToOpponentValue(void);
|
||||
void sub_803F9EC(u8 bank);
|
||||
void sub_803FA70(u8 bank);
|
||||
void BattleScriptPush(const u8* bsPtr);
|
||||
void sub_8017434(u8 battler);
|
||||
void sub_80174B8(u8 battler);
|
||||
void BattleScriptPush(const u8 *bsPtr);
|
||||
void BattleScriptPushCursor(void);
|
||||
void BattleScriptPop(void);
|
||||
u8 TrySetCantSelectMoveBattleScript(void);
|
||||
u8 CheckMoveLimitations(u8 bank, u8 unusableMoves, u8 check);
|
||||
u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check);
|
||||
bool8 AreAllMovesUnusable(void);
|
||||
u8 GetImprisonedMovesCount(u8 bank, u16 move);
|
||||
u8 GetImprisonedMovesCount(u8 battlerId, u16 move);
|
||||
u8 DoFieldEndTurnEffects(void);
|
||||
u8 DoBattlerEndTurnEffects(void);
|
||||
bool8 HandleWishPerishSongOnTurnEnd(void);
|
||||
bool8 HandleFaintedMonActions(void);
|
||||
void TryClearRageStatuses(void);
|
||||
u8 AtkCanceller_UnableToUseMove(void);
|
||||
bool8 sub_80423F4(u8 bank, u8 r1, u8 r2);
|
||||
u8 CastformDataTypeChange(u8 bank);
|
||||
u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg);
|
||||
void BattleScriptExecute(const u8* BS_ptr);
|
||||
void BattleScriptPushCursorAndCallback(const u8* BS_ptr);
|
||||
u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn);
|
||||
void ClearFuryCutterDestinyBondGrudge(u8 bank);
|
||||
void HandleAction_RunBattleScript(void);
|
||||
u8 GetMoveTarget(u16 move, u8 useMoveTarget);
|
||||
u8 IsMonDisobedient(void);
|
||||
void MarkBattlerForControllerExec(u8 battlerId);
|
||||
void sub_80174B8(u8 battlerId);
|
||||
void sub_8017298(u8 battlerId);
|
||||
bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2);
|
||||
u8 CastformDataTypeChange(u8 battler);
|
||||
u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveArg);
|
||||
void BattleScriptExecute(const u8 *BS_ptr);
|
||||
void BattleScriptPushCursorAndCallback(const u8 *BS_ptr);
|
||||
u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn);
|
||||
void ClearFuryCutterDestinyBondGrudge(u8 battlerId);
|
||||
void HandleAction_RunBattleScript(void);
|
||||
u8 GetMoveTarget(u16 move, u8 setTarget);
|
||||
u8 IsMonDisobedient(void);
|
||||
|
||||
#endif // GUARD_BATTLE_UTIL_H
|
||||
|
||||
@@ -77,4 +77,10 @@
|
||||
#define STAT_ACC 6 // only in battles
|
||||
#define STAT_EVASION 7 // only in battles
|
||||
|
||||
#define NUM_STATS 6
|
||||
#define NUM_BATTLE_STATS 8
|
||||
|
||||
// Shiny odds
|
||||
#define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536
|
||||
|
||||
#endif // GUARD_CONSTANTS_POKEMON_H
|
||||
|
||||
Reference in New Issue
Block a user