Fix terrain checks on DLC moves
Expanding Force and Rising Voltage now boost damage correctly. Expanding Force doesn't hit both targets yet however.
This commit is contained in:
parent
86efd69370
commit
48c91d03cd
1 changed files with 7 additions and 10 deletions
|
@ -7262,6 +7262,9 @@ u32 GetMoveTarget(u16 move, u8 setTarget)
|
||||||
// Special cases
|
// Special cases
|
||||||
if (move == MOVE_CURSE && !IS_BATTLER_OF_TYPE(gBattlerAttacker, TYPE_GHOST))
|
if (move == MOVE_CURSE && !IS_BATTLER_OF_TYPE(gBattlerAttacker, TYPE_GHOST))
|
||||||
moveTarget = MOVE_TARGET_USER;
|
moveTarget = MOVE_TARGET_USER;
|
||||||
|
|
||||||
|
if (gBattleMoves[move].effect == EFFECT_EXPANDING_FORCE && IsBattlerTerrainAffected(gBattlerAttacker, STATUS_FIELD_PSYCHIC_TERRAIN))
|
||||||
|
moveTarget = MOVE_TARGET_BOTH;
|
||||||
|
|
||||||
switch (moveTarget)
|
switch (moveTarget)
|
||||||
{
|
{
|
||||||
|
@ -7991,18 +7994,12 @@ static u16 CalcMoveBasePower(u16 move, u8 battlerAtk, u8 battlerDef)
|
||||||
basePower *= 2;
|
basePower *= 2;
|
||||||
break;
|
break;
|
||||||
case EFFECT_EXPANDING_FORCE:
|
case EFFECT_EXPANDING_FORCE:
|
||||||
if (gFieldStatuses & STATUS_FIELD_PSYCHIC_TERRAIN)
|
if (IsBattlerTerrainAffected(gBattlerAttacker, STATUS_FIELD_PSYCHIC_TERRAIN))
|
||||||
basePower = 120;
|
MulModifier(&basePower, UQ_4_12(1.5));
|
||||||
break;
|
break;
|
||||||
case EFFECT_RISING_VOLTAGE:
|
case EFFECT_RISING_VOLTAGE:
|
||||||
#ifdef ITEM_EXPANSION //Air Balloon exception with item expansion branch
|
if (IsBattlerTerrainAffected(gBattlerTarget, STATUS_FIELD_ELECTRIC_TERRAIN))
|
||||||
if (gFieldStatuses & STATUS_FIELD_ELECTRIC_TERRAIN && !IS_BATTLER_OF_TYPE(battlerDef, TYPE_FLYING)
|
basePower *= 2;
|
||||||
&& gBattleMons[battlerDef].item != ITEM_AIR_BALLOON && gBattleMons[battlerDef].ability != ABILITY_LEVITATE)
|
|
||||||
#else
|
|
||||||
if (gFieldStatuses & STATUS_FIELD_ELECTRIC_TERRAIN && !IS_BATTLER_OF_TYPE(battlerDef, TYPE_FLYING)
|
|
||||||
&& gBattleMons[battlerDef].ability != ABILITY_LEVITATE)
|
|
||||||
#endif
|
|
||||||
basePower *= 2;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue