2025-05-16 22:52:51 +02:00

35 lines
1.3 KiB
C

#include "global.h"
#include "test/battle.h"
ASSUMPTIONS
{
ASSUME(GetMoveEffect(MOVE_MAGIC_COAT) == EFFECT_MAGIC_COAT);
}
SINGLE_BATTLE_TEST("Magic Coat prints the correct message when bouncing back a move")
{
GIVEN {
ASSUME(GetMoveEffect(MOVE_SPORE) == EFFECT_NON_VOLATILE_STATUS);
ASSUME(GetMoveNonVolatileStatus(MOVE_SPORE) == MOVE_EFFECT_SLEEP);
PLAYER(SPECIES_ZIGZAGOON);
PLAYER(SPECIES_ZIGZAGOON);
OPPONENT(SPECIES_ZIGZAGOON);
OPPONENT(SPECIES_ZIGZAGOON);
} WHEN {
TURN { MOVE(player, MOVE_MAGIC_COAT); MOVE(opponent, MOVE_SPORE); }
TURN { SWITCH(opponent, 1); }
TURN { MOVE(player, MOVE_MAGIC_COAT); MOVE(opponent, MOVE_SPORE); }
} SCENE {
ANIMATION(ANIM_TYPE_MOVE, MOVE_MAGIC_COAT, player);
MESSAGE("Zigzagoon bounced the Spore back!");
MESSAGE("The opposing Zigzagoon fell asleep!");
STATUS_ICON(opponent, sleep: TRUE);
ANIMATION(ANIM_TYPE_MOVE, MOVE_MAGIC_COAT, player);
MESSAGE("Zigzagoon bounced the Spore back!");
ANIMATION(ANIM_TYPE_MOVE, MOVE_SPORE, player);
ANIMATION(ANIM_TYPE_STATUS, B_ANIM_STATUS_SLP, opponent);
MESSAGE("The opposing Zigzagoon fell asleep!");
STATUS_ICON(opponent, sleep: TRUE);
}
}