Fixes Population Bomb / Triple Kick missing message (#5747)
This commit is contained in:
parent
3343a16a7c
commit
b3b0973fbb
3 changed files with 14 additions and 32 deletions
|
@ -798,9 +798,7 @@
|
|||
2:
|
||||
.endm
|
||||
|
||||
.macro setmultihitcounter value:req
|
||||
.byte 0x8d
|
||||
.byte \value
|
||||
.macro unused_0x8d
|
||||
.endm
|
||||
|
||||
.macro initmultihitstring
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
#define B_CRIT_MULTIPLIER GEN_LATEST // In Gen6+, critical hits multiply damage by 1.5 instead of 2.
|
||||
#define B_PARALYSIS_SPEED GEN_LATEST // In Gen7+, Speed is decreased by 50% instead of 75%.
|
||||
#define B_CONFUSION_SELF_DMG_CHANCE GEN_LATEST // In Gen7+, confusion has a 33.3% of self-damage, instead of 50%.
|
||||
#define B_MULTI_HIT_CHANCE GEN_LATEST // In Gen5+, multi-hit moves have different %. See Cmd_setmultihitcounter for values.
|
||||
#define B_MULTI_HIT_CHANCE GEN_LATEST // In Gen5+, multi-hit moves have different %. See SetRandomMultiHitCounter for values.
|
||||
#define B_WHITEOUT_MONEY GEN_LATEST // In Gen4+, the amount of money lost by losing a battle is determined by the amount of badges earned. Previously, it would cut the current money by half. (While this change was also in FRLG, for the sake of simplicity, setting this to GEN_3 will result in RSE behavior.)
|
||||
#define B_LIGHT_BALL_ATTACK_BOOST GEN_LATEST // In Gen4+, Light Ball doubles the power of physical moves in addition to special moves.
|
||||
#define B_SANDSTORM_SPDEF_BOOST GEN_LATEST // In Gen4+, Sandstorm weather multiplies the Sp. Defense of Rock-type Pokémon by x1.5.
|
||||
|
|
|
@ -481,7 +481,7 @@ static void Cmd_statbuffchange(void);
|
|||
static void Cmd_normalisebuffs(void);
|
||||
static void Cmd_setbide(void);
|
||||
static void Cmd_twoturnmoveschargestringandanimation(void);
|
||||
static void Cmd_setmultihitcounter(void);
|
||||
static void Cmd_unused_0x8d(void);
|
||||
static void Cmd_initmultihitstring(void);
|
||||
static void Cmd_forcerandomswitch(void);
|
||||
static void Cmd_tryconversiontypechange(void);
|
||||
|
@ -740,7 +740,7 @@ void (* const gBattleScriptingCommandsTable[])(void) =
|
|||
Cmd_normalisebuffs, //0x8A
|
||||
Cmd_setbide, //0x8B
|
||||
Cmd_twoturnmoveschargestringandanimation, //0x8C
|
||||
Cmd_setmultihitcounter, //0x8D
|
||||
Cmd_unused_0x8d, //0x8D
|
||||
Cmd_initmultihitstring, //0x8E
|
||||
Cmd_forcerandomswitch, //0x8F
|
||||
Cmd_tryconversiontypechange, //0x90
|
||||
|
@ -2538,6 +2538,15 @@ static void Cmd_resultmessage(void)
|
|||
|
||||
if (gMoveResultFlags & MOVE_RESULT_MISSED && (!(gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) || gBattleCommunication[MISS_TYPE] > B_MSG_AVOIDED_ATK))
|
||||
{
|
||||
if (gMultiHitCounter && gMultiHitCounter < gMovesInfo[gCurrentMove].strikeCount)
|
||||
{
|
||||
gMultiHitCounter = 0;
|
||||
gMoveResultFlags &= ~MOVE_RESULT_MISSED;
|
||||
BattleScriptPushCursor();
|
||||
gBattlescriptCurrInstr = BattleScript_MultiHitPrintStrings;
|
||||
return;
|
||||
}
|
||||
|
||||
if (gBattleCommunication[MISS_TYPE] > B_MSG_AVOIDED_ATK) // Wonder Guard or Levitate - show the ability pop-up
|
||||
CreateAbilityPopUp(gBattlerTarget, gBattleMons[gBattlerTarget].ability, (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) != 0);
|
||||
stringId = gMissStringIds[gBattleCommunication[MISS_TYPE]];
|
||||
|
@ -12019,33 +12028,8 @@ static void Cmd_twoturnmoveschargestringandanimation(void)
|
|||
gBattlescriptCurrInstr = cmd->nextInstr;
|
||||
}
|
||||
|
||||
static void Cmd_setmultihitcounter(void)
|
||||
static void Cmd_unused_0x8d(void)
|
||||
{
|
||||
CMD_ARGS(u8 value);
|
||||
|
||||
if (cmd->value)
|
||||
{
|
||||
gMultiHitCounter = cmd->value;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (GetBattlerAbility(gBattlerAttacker) == ABILITY_SKILL_LINK)
|
||||
{
|
||||
gMultiHitCounter = 5;
|
||||
}
|
||||
else
|
||||
{
|
||||
// WARNING: These seem to be unused, see SetRandomMultiHitCounter.
|
||||
if (B_MULTI_HIT_CHANCE >= GEN_5)
|
||||
// 35%: 2 hits, 35%: 3 hits, 15% 4 hits, 15% 5 hits.
|
||||
gMultiHitCounter = RandomWeighted(RNG_HITS, 0, 0, 7, 7, 3, 3);
|
||||
else
|
||||
// 37.5%: 2 hits, 37.5%: 3 hits, 12.5% 4 hits, 12.5% 5 hits.
|
||||
gMultiHitCounter = RandomWeighted(RNG_HITS, 0, 0, 3, 3, 1, 1);
|
||||
}
|
||||
}
|
||||
|
||||
gBattlescriptCurrInstr = cmd->nextInstr;
|
||||
}
|
||||
|
||||
static void Cmd_initmultihitstring(void)
|
||||
|
|
Loading…
Reference in a new issue