pokeemerald/test/move_effect_bide.c
2023-05-07 07:50:41 +01:00

35 lines
1.1 KiB
C

#include "global.h"
#include "test_battle.h"
ASSUMPTIONS
{
ASSUME(gBattleMoves[MOVE_BIDE].effect == EFFECT_BIDE);
}
SINGLE_BATTLE_TEST("Bide deals twice the taken damage over two turns")
{
s16 damage1;
s16 damage2;
s16 bideDamage;
GIVEN {
PLAYER(SPECIES_WOBBUFFET);
OPPONENT(SPECIES_WOBBUFFET);
} WHEN {
TURN { MOVE(player, MOVE_BIDE); MOVE(opponent, MOVE_TACKLE); }
TURN { SKIP_TURN(player); MOVE(opponent, MOVE_TACKLE); }
TURN { SKIP_TURN(player); }
} SCENE {
ANIMATION(ANIM_TYPE_MOVE, MOVE_BIDE, player);
ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent);
HP_BAR(player, captureDamage: &damage1);
MESSAGE("Wobbuffet is storing energy!");
ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent);
HP_BAR(player, captureDamage: &damage2);
MESSAGE("Wobbuffet unleashed energy!");
ANIMATION(ANIM_TYPE_MOVE, MOVE_BIDE, player);
HP_BAR(opponent, captureDamage: &bideDamage);
} THEN {
EXPECT_EQ(bideDamage, 2 * (damage1 + damage2));
}
}