diff --git a/src/battle_util.c b/src/battle_util.c index afb7e474d533..c0ab04b5b77a 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3551,6 +3551,7 @@ u8 AtkCanceller_UnableToUseMove(u32 moveType) gProtectStructs[gBattlerAttacker].powderSelfDmg = TRUE; gBattleMoveDamage = GetNonDynamaxMaxHP(gBattlerAttacker) / 4; gBattlescriptCurrInstr = BattleScript_MoveUsedPowder; + gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; effect = 1; } } diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index 96fcb941918f..2220b74186a6 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -812,3 +812,27 @@ DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move HP_BAR(opponentRight); } } + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Powder") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(playerLeft, MOVE_POWDER, target: opponentRight); + MOVE(opponentLeft, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentLeft); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + HP_BAR(opponentLeft); + } +}