57 lines
1.7 KiB
C
57 lines
1.7 KiB
C
#include "global.h"
|
|
#include "test/battle.h"
|
|
|
|
ASSUMPTIONS
|
|
{
|
|
ASSUME(GetMoveAdditionalEffectById(MOVE_FLAME_BURST, 0)->moveEffect == MOVE_EFFECT_FLAME_BURST);
|
|
}
|
|
|
|
// Flame Burst AoE is supposed to hit through Substitute
|
|
DOUBLE_BATTLE_TEST("Flame Burst Substitute")
|
|
{
|
|
GIVEN {
|
|
ASSUME(GetMoveEffect(MOVE_SUBSTITUTE) == EFFECT_SUBSTITUTE);
|
|
PLAYER(SPECIES_WOBBUFFET);
|
|
PLAYER(SPECIES_WYNAUT);
|
|
OPPONENT(SPECIES_WYNAUT);
|
|
OPPONENT(SPECIES_WOBBUFFET);
|
|
} WHEN {
|
|
TURN { MOVE(opponentLeft, MOVE_SUBSTITUTE); MOVE(playerRight, MOVE_FLAME_BURST, target: opponentRight); }
|
|
} SCENE {
|
|
MESSAGE("The bursting flames hit the opposing Wynaut!");
|
|
NOT MESSAGE("The substitute took damage for the opposing Wynaut!");
|
|
}
|
|
}
|
|
|
|
DOUBLE_BATTLE_TEST("Flame Burst doesn't crash, opponent to player")
|
|
{
|
|
GIVEN {
|
|
PLAYER(SPECIES_WOBBUFFET) { HP(1); }
|
|
PLAYER(SPECIES_WYNAUT);
|
|
OPPONENT(SPECIES_WYNAUT);
|
|
OPPONENT(SPECIES_WOBBUFFET);
|
|
} WHEN {
|
|
TURN { MOVE(opponentRight, MOVE_FLAME_BURST, target: playerLeft); }
|
|
} SCENE {
|
|
ANIMATION(ANIM_TYPE_MOVE, MOVE_FLAME_BURST, opponentRight);
|
|
HP_BAR(playerRight);
|
|
MESSAGE("Wobbuffet fainted!");
|
|
}
|
|
}
|
|
|
|
DOUBLE_BATTLE_TEST("Flame Burst doesn't crash, player to opponent")
|
|
{
|
|
GIVEN {
|
|
PLAYER(SPECIES_WOBBUFFET)
|
|
PLAYER(SPECIES_WYNAUT);
|
|
OPPONENT(SPECIES_WYNAUT) { HP(1); }
|
|
OPPONENT(SPECIES_WOBBUFFET);
|
|
} WHEN {
|
|
TURN { MOVE(playerLeft, MOVE_FLAME_BURST, target: opponentLeft); }
|
|
} SCENE {
|
|
ANIMATION(ANIM_TYPE_MOVE, MOVE_FLAME_BURST, playerLeft);
|
|
HP_BAR(opponentRight);
|
|
MESSAGE("The opposing Wynaut fainted!");
|
|
}
|
|
}
|