added longer 'used move' messages for max moves

This commit is contained in:
AgustinGDLV 2023-02-22 14:18:15 -08:00
parent 87a9150134
commit d69de9fb17
5 changed files with 125 additions and 3 deletions

View File

@ -55,5 +55,6 @@ enum MaxMoveEffect
bool8 ShouldUseMaxMove(u16 battlerId, u16 baseMove);
u16 GetMaxMove(u16 battlerId, u16 baseMove);
bool8 IsMaxMove(u16 move);
const u8 *GetMaxMoveName(u16 move);
#endif

View File

@ -135,5 +135,6 @@ extern const u8 gTrainerClassNames[][13];
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
extern const u8 gMoveNames[MOVES_COUNT_DYNAMAX][MOVE_NAME_LENGTH + 1];
extern const u8 *const gZMoveNames[];
extern const u8 *const gMaxMoveNames[];
#endif // GUARD_DATA_H

View File

@ -1,6 +1,7 @@
#include "global.h"
#include "pokemon.h"
#include "battle.h"
#include "data.h"
#include "pokemon.h"
#include "constants/moves.h"
// Constant Data
@ -100,4 +101,12 @@ u16 GetMaxMove(u16 battlerId, u16 baseMove)
bool8 IsMaxMove(u16 move)
{
return move >= FIRST_MAX_MOVE && move <= LAST_MAX_MOVE;
}
}
const u8 *GetMaxMoveName(u16 move)
{
if (IsMaxMove(move))
return gMaxMoveNames[move - FIRST_MAX_MOVE];
else
return gMaxMoveNames[0]; // Failsafe
}

View File

@ -2838,7 +2838,7 @@ void BufferStringBattle(u16 stringID)
if (gBattleStruct->zmove.active && gBattleStruct->zmove.activeSplit != SPLIT_STATUS)
StringCopy(gBattleTextBuff3, GetZMoveName(gBattleMsgDataPtr->currentMove));
else if (IsMaxMove(gBattleMsgDataPtr->currentMove))
StringCopy(gBattleTextBuff3, gMoveNames[gBattleMsgDataPtr->currentMove]);
StringCopy(gBattleTextBuff3, GetMaxMoveName(gBattleMsgDataPtr->currentMove));
else if (gBattleMsgDataPtr->currentMove >= MOVES_COUNT)
StringCopy(gBattleTextBuff3, sATypeMove_Table[*(&gBattleStruct->stringMoveType)]);
else

View File

@ -1750,3 +1750,114 @@ const u8 *const gZMoveNames[] =
[MOVE_LIGHT_THAT_BURNS_THE_SKY - FIRST_Z_MOVE] = sText_Light_That_Burns_The_Sky,
[MOVE_SOUL_STEALING_7_STAR_STRIKE - FIRST_Z_MOVE] = sText_Soul_Stealing_7_Star_Strike,
};
// Max Moves
static const u8 sText_Max_Guard[] = _("Max Guard");
static const u8 sText_Max_Strike[] = _("Max Strike");
static const u8 sText_Max_Knuckle[] = _("Max Knuckle");
static const u8 sText_Max_Airstream[] = _("Max Airstream");
static const u8 sText_Max_Ooze[] = _("Max Ooze");
static const u8 sText_Max_Quake[] = _("Max Quake");
static const u8 sText_Max_Rockfall[] = _("Max Rockfall");
static const u8 sText_Max_Flutterby[] = _("Max Flutterby");
static const u8 sText_Max_Phantasm[] = _("Max Phantasm");
static const u8 sText_Max_Steelspike[] = _("Max Steelspike");
static const u8 sText_Max_Flare[] = _("Max Flare");
static const u8 sText_Max_Geyser[] = _("Max Geyser");
static const u8 sText_Max_Overgrowth[] = _("Max Overgrowth");
static const u8 sText_Max_Lightning[] = _("Max Lightning");
static const u8 sText_Max_Hailstorm[] = _("Max Hailstorm");
static const u8 sText_Max_Mindstorm[] = _("Max Mindstorm");
static const u8 sText_Max_Wyrmwind[] = _("Max Wyrmwind");
static const u8 sText_Max_Darkness[] = _("Max Darkness");
static const u8 sText_Max_Starfall[] = _("Max Starfall");
static const u8 sText_G_Max_Vine_Lash[] = _("G-Max Vine Lash");
static const u8 sText_G_Max_Wildfire[] = _("G-Max Wildfire");
static const u8 sText_G_Max_Cannonade[] = _("G-Max Cannonade");
static const u8 sText_G_Max_Befuddle[] = _("G-Max Befuddle");
static const u8 sText_G_Max_Volt_Crash[] = _("G-Max Volt Crash");
static const u8 sText_G_Max_Gold_Rush[] = _("G-Max Gold Rush");
static const u8 sText_G_Max_Chi_Strike[] = _("G-Max Chi Strike");
static const u8 sText_G_Max_Terror[] = _("G-Max Terror");
static const u8 sText_G_Max_Foam_Burst[] = _("G-Max Foam Burst");
static const u8 sText_G_Max_Resonance[] = _("G-Max Resonance");
static const u8 sText_G_Max_Cuddle[] = _("G-Max Cuddle");
static const u8 sText_G_Max_Replenish[] = _("G-Max Replenish");
static const u8 sText_G_Max_Malodor[] = _("G-Max Malodor");
static const u8 sText_G_Max_Meltdown[] = _("G-Max Meltdown");
static const u8 sText_G_Max_Drum_Solo[] = _("G-Max Drum Solo");
static const u8 sText_G_Max_Fireball[] = _("G-Max Fireball");
static const u8 sText_G_Max_Hydrosnipe[] = _("G-Max Hydrosnipe");
static const u8 sText_G_Max_Wind_Rage[] = _("G-Max Wind Rage");
static const u8 sText_G_Max_Gravitas[] = _("G-Max Gravitas");
static const u8 sText_G_Max_Stonesurge[] = _("G-Max Stonesurge");
static const u8 sText_G_Max_Volcalith[] = _("G-Max Volcalith");
static const u8 sText_G_Max_Tartness[] = _("G-Max Tartness");
static const u8 sText_G_Max_Sweetness[] = _("G-Max Sweetness");
static const u8 sText_G_Max_Sandblast[] = _("G-Max Sandblast");
static const u8 sText_G_Max_Stun_Shock[] = _("G-Max Stun Shock");
static const u8 sText_G_Max_Centiferno[] = _("G-Max Centiferno");
static const u8 sText_G_Max_Smite[] = _("G-Max Smite");
static const u8 sText_G_Max_Snooze[] = _("G-Max Snooze");
static const u8 sText_G_Max_Finale[] = _("G-Max Finale");
static const u8 sText_G_Max_Steelsurge[] = _("G-Max Steelsurge");
static const u8 sText_G_Max_Depletion[] = _("G-Max Depletion");
static const u8 sText_G_Max_One_Blow[] = _("G-Max One Blow");
static const u8 sText_G_Max_Rapid_Flow[] = _("G-Max Rapid Flow");
const u8 *const gMaxMoveNames[] =
{
[MOVE_MAX_GUARD - FIRST_MAX_MOVE] = sText_Max_Guard,
[MOVE_MAX_STRIKE - FIRST_MAX_MOVE] = sText_Max_Strike,
[MOVE_MAX_KNUCKLE - FIRST_MAX_MOVE] = sText_Max_Knuckle,
[MOVE_MAX_AIRSTREAM - FIRST_MAX_MOVE] = sText_Max_Airstream,
[MOVE_MAX_OOZE - FIRST_MAX_MOVE] = sText_Max_Ooze,
[MOVE_MAX_QUAKE - FIRST_MAX_MOVE] = sText_Max_Quake,
[MOVE_MAX_ROCKFALL - FIRST_MAX_MOVE] = sText_Max_Rockfall,
[MOVE_MAX_FLUTTERBY - FIRST_MAX_MOVE] = sText_Max_Flutterby,
[MOVE_MAX_PHANTASM - FIRST_MAX_MOVE] = sText_Max_Phantasm,
[MOVE_MAX_STEELSPIKE - FIRST_MAX_MOVE] = sText_Max_Steelspike,
[MOVE_MAX_FLARE - FIRST_MAX_MOVE] = sText_Max_Flare,
[MOVE_MAX_GEYSER - FIRST_MAX_MOVE] = sText_Max_Geyser,
[MOVE_MAX_OVERGROWTH - FIRST_MAX_MOVE] = sText_Max_Overgrowth,
[MOVE_MAX_LIGHTNING - FIRST_MAX_MOVE] = sText_Max_Lightning,
[MOVE_MAX_HAILSTORM - FIRST_MAX_MOVE] = sText_Max_Hailstorm,
[MOVE_MAX_MINDSTORM - FIRST_MAX_MOVE] = sText_Max_Mindstorm,
[MOVE_MAX_WYRMWIND - FIRST_MAX_MOVE] = sText_Max_Wyrmwind,
[MOVE_MAX_DARKNESS - FIRST_MAX_MOVE] = sText_Max_Darkness,
[MOVE_MAX_STARFALL - FIRST_MAX_MOVE] = sText_Max_Starfall,
[MOVE_G_MAX_VINE_LASH - FIRST_MAX_MOVE] = sText_G_Max_Vine_Lash,
[MOVE_G_MAX_WILDFIRE - FIRST_MAX_MOVE] = sText_G_Max_Wildfire,
[MOVE_G_MAX_CANNONADE - FIRST_MAX_MOVE] = sText_G_Max_Cannonade,
[MOVE_G_MAX_BEFUDDLE - FIRST_MAX_MOVE] = sText_G_Max_Befuddle,
[MOVE_G_MAX_VOLT_CRASH - FIRST_MAX_MOVE] = sText_G_Max_Volt_Crash,
[MOVE_G_MAX_GOLD_RUSH - FIRST_MAX_MOVE] = sText_G_Max_Gold_Rush,
[MOVE_G_MAX_CHI_STRIKE - FIRST_MAX_MOVE] = sText_G_Max_Chi_Strike,
[MOVE_G_MAX_TERROR - FIRST_MAX_MOVE] = sText_G_Max_Terror,
[MOVE_G_MAX_FOAM_BURST - FIRST_MAX_MOVE] = sText_G_Max_Foam_Burst,
[MOVE_G_MAX_RESONANCE - FIRST_MAX_MOVE] = sText_G_Max_Resonance,
[MOVE_G_MAX_CUDDLE - FIRST_MAX_MOVE] = sText_G_Max_Cuddle,
[MOVE_G_MAX_REPLENISH - FIRST_MAX_MOVE] = sText_G_Max_Replenish,
[MOVE_G_MAX_MALODOR - FIRST_MAX_MOVE] = sText_G_Max_Malodor,
[MOVE_G_MAX_MELTDOWN - FIRST_MAX_MOVE] = sText_G_Max_Meltdown,
[MOVE_G_MAX_DRUM_SOLO - FIRST_MAX_MOVE] = sText_G_Max_Drum_Solo,
[MOVE_G_MAX_FIREBALL - FIRST_MAX_MOVE] = sText_G_Max_Fireball,
[MOVE_G_MAX_HYDROSNIPE - FIRST_MAX_MOVE] = sText_G_Max_Hydrosnipe,
[MOVE_G_MAX_WIND_RAGE - FIRST_MAX_MOVE] = sText_G_Max_Wind_Rage,
[MOVE_G_MAX_GRAVITAS - FIRST_MAX_MOVE] = sText_G_Max_Gravitas,
[MOVE_G_MAX_STONESURGE - FIRST_MAX_MOVE] = sText_G_Max_Stonesurge,
[MOVE_G_MAX_VOLCALITH - FIRST_MAX_MOVE] = sText_G_Max_Volcalith,
[MOVE_G_MAX_TARTNESS - FIRST_MAX_MOVE] = sText_G_Max_Tartness,
[MOVE_G_MAX_SWEETNESS - FIRST_MAX_MOVE] = sText_G_Max_Sweetness,
[MOVE_G_MAX_SANDBLAST - FIRST_MAX_MOVE] = sText_G_Max_Sandblast,
[MOVE_G_MAX_STUN_SHOCK - FIRST_MAX_MOVE] = sText_G_Max_Stun_Shock,
[MOVE_G_MAX_CENTIFERNO - FIRST_MAX_MOVE] = sText_G_Max_Centiferno,
[MOVE_G_MAX_SMITE - FIRST_MAX_MOVE] = sText_G_Max_Smite,
[MOVE_G_MAX_SNOOZE - FIRST_MAX_MOVE] = sText_G_Max_Snooze,
[MOVE_G_MAX_FINALE - FIRST_MAX_MOVE] = sText_G_Max_Finale,
[MOVE_G_MAX_STEELSURGE - FIRST_MAX_MOVE] = sText_G_Max_Steelsurge,
[MOVE_G_MAX_DEPLETION - FIRST_MAX_MOVE] = sText_G_Max_Depletion,
[MOVE_G_MAX_ONE_BLOW - FIRST_MAX_MOVE] = sText_G_Max_One_Blow,
[MOVE_G_MAX_RAPID_FLOW - FIRST_MAX_MOVE] = sText_G_Max_Rapid_Flow,
};