Updated Gen 9-mon-exclusive ability tests to use Gen 9 mon (#3733)
* Updated Gen 9-mon-exclusive ability tests to use Gen 9 mon * Fixed message --------- Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
This commit is contained in:
parent
644ed8e5b3
commit
c44e133d8c
@ -282,7 +282,7 @@ static const u8 sOrichalcumPulseDescription[] = _("Summons sunlight in battle.")
|
||||
static const u8 sHadronEngineDescription[] = _("Field becomes Electric.");
|
||||
static const u8 sOpportunistDescription[] = _("Copies foe's stat change.");
|
||||
static const u8 sCudChewDescription[] = _("Eats a used berry again.");
|
||||
static const u8 sSharpnessDescription[] = _("Strengthens cutting moves.");
|
||||
static const u8 sSharpnessDescription[] = _("Strengthens slicing moves.");
|
||||
static const u8 sSupremeOverlordDescription[] = _("Inherits fallen's strength.");
|
||||
static const u8 sCostarDescription[] = _("Copies ally's stat changes.");
|
||||
static const u8 sToxicDebrisDescription[] = _("Throws poison spikes if hit.");
|
||||
|
||||
@ -10,11 +10,11 @@ SINGLE_BATTLE_TEST("Anger Shell activates only if the target had more than 50% o
|
||||
PARAMETRIZE { hp = 100; activates = FALSE; }
|
||||
PARAMETRIZE { hp = 50; activates = FALSE; }
|
||||
PARAMETRIZE { hp = 251; activates = TRUE; }
|
||||
PARAMETRIZE { hp = 255; activates = TRUE; }
|
||||
PARAMETRIZE { hp = 254; activates = TRUE; }
|
||||
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_TACKLE].power != 0);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_ANGER_SHELL); MaxHP(maxHp); HP(hp); }
|
||||
PLAYER(SPECIES_KLAWF) { Ability(ABILITY_ANGER_SHELL); MaxHP(maxHp); HP(hp); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_TACKLE); }
|
||||
|
||||
@ -5,14 +5,14 @@ SINGLE_BATTLE_TEST("Earth Eater heals 25% when hit by ground type moves")
|
||||
{
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_MUD_SLAP].type == TYPE_GROUND);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
PLAYER(SPECIES_ORTHWORM) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_MUD_SLAP); }
|
||||
} SCENE {
|
||||
ABILITY_POPUP(player, ABILITY_EARTH_EATER);
|
||||
HP_BAR(player, damage: -25);
|
||||
MESSAGE("Wobbuffet restored HP using its Earth Eater!");
|
||||
MESSAGE("Orthworm restored HP using its Earth Eater!");
|
||||
}
|
||||
}
|
||||
|
||||
@ -20,12 +20,15 @@ SINGLE_BATTLE_TEST("Earth Eater does not activate if protected")
|
||||
{
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_MUD_SLAP].type == TYPE_GROUND);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
PLAYER(SPECIES_ORTHWORM) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_PROTECT); MOVE(opponent, MOVE_MUD_SLAP); }
|
||||
} SCENE {
|
||||
NONE_OF { ABILITY_POPUP(player, ABILITY_EARTH_EATER); HP_BAR(player); MESSAGE("Wobbuffet restored HP using its Earth Eater!"); }
|
||||
NONE_OF {
|
||||
ABILITY_POPUP(player, ABILITY_EARTH_EATER); HP_BAR(player);
|
||||
MESSAGE("Orthworm restored HP using its Earth Eater!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -34,13 +37,13 @@ SINGLE_BATTLE_TEST("Earth Eater activates on status moves")
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_SAND_ATTACK].type == TYPE_GROUND);
|
||||
ASSUME(gBattleMoves[MOVE_SAND_ATTACK].split == SPLIT_STATUS);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
PLAYER(SPECIES_ORTHWORM) { Ability(ABILITY_EARTH_EATER); HP(1); MaxHP(100); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_SAND_ATTACK); }
|
||||
} SCENE {
|
||||
ABILITY_POPUP(player, ABILITY_EARTH_EATER);
|
||||
HP_BAR(player, damage: -25);
|
||||
MESSAGE("Wobbuffet restored HP using its Earth Eater!");
|
||||
MESSAGE("Orthworm restored HP using its Earth Eater!");
|
||||
}
|
||||
}
|
||||
|
||||
@ -14,40 +14,40 @@ SINGLE_BATTLE_TEST("Electromorphosis sets up Charge when hit by any move")
|
||||
ASSUME(gBattleMoves[MOVE_GUST].power != 0);
|
||||
ASSUME(gBattleMoves[MOVE_GUST].split == SPLIT_SPECIAL);
|
||||
ASSUME(gBattleMoves[MOVE_TACKLE].split == SPLIT_PHYSICAL);
|
||||
ASSUME(gBattleMoves[MOVE_THUNDERBOLT].power != 0);
|
||||
ASSUME(gBattleMoves[MOVE_THUNDERBOLT].type == TYPE_ELECTRIC);
|
||||
ASSUME(gBattleMoves[MOVE_THUNDER_SHOCK].power != 0);
|
||||
ASSUME(gBattleMoves[MOVE_THUNDER_SHOCK].type == TYPE_ELECTRIC);
|
||||
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_ELECTROMORPHOSIS); Speed(10); }
|
||||
PLAYER(SPECIES_BELLIBOLT) { Ability(ABILITY_ELECTROMORPHOSIS); Speed(10); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) {Ability(ABILITY_LIMBER); Speed(5) ;} // Limber, so it doesn't get paralyzed.
|
||||
}
|
||||
WHEN {
|
||||
TURN { MOVE(player, MOVE_THUNDERBOLT), MOVE(opponent, move); }
|
||||
TURN { MOVE(player, MOVE_THUNDERBOLT), MOVE(opponent, move); }
|
||||
TURN { MOVE(player, MOVE_THUNDER_SHOCK), MOVE(opponent, move); }
|
||||
TURN { MOVE(player, MOVE_THUNDER_SHOCK), MOVE(opponent, move); }
|
||||
} SCENE {
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player);
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDER_SHOCK, player);
|
||||
HP_BAR(opponent, captureDamage: &dmgBefore);
|
||||
|
||||
ANIMATION(ANIM_TYPE_MOVE, move, opponent);
|
||||
HP_BAR(player);
|
||||
ABILITY_POPUP(player, ABILITY_ELECTROMORPHOSIS);
|
||||
if (move == MOVE_TACKLE) {
|
||||
MESSAGE("Being hit by Tackle charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tackle charged Bellibolt with power!");
|
||||
}
|
||||
else {
|
||||
MESSAGE("Being hit by Gust charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Gust charged Bellibolt with power!");
|
||||
}
|
||||
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player);
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDER_SHOCK, player);
|
||||
HP_BAR(opponent, captureDamage: &dmgAfter);
|
||||
|
||||
ANIMATION(ANIM_TYPE_MOVE, move, opponent);
|
||||
HP_BAR(player);
|
||||
ABILITY_POPUP(player, ABILITY_ELECTROMORPHOSIS);
|
||||
if (move == MOVE_TACKLE) {
|
||||
MESSAGE("Being hit by Tackle charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tackle charged Bellibolt with power!");
|
||||
}
|
||||
else {
|
||||
MESSAGE("Being hit by Gust charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Gust charged Bellibolt with power!");
|
||||
}
|
||||
}
|
||||
THEN {
|
||||
|
||||
@ -4,16 +4,16 @@
|
||||
SINGLE_BATTLE_TEST("Opportunist only copies foe's positive stat changes in a turn", s16 damage)
|
||||
{
|
||||
u32 ability;
|
||||
PARAMETRIZE { ability = ABILITY_NONE; }
|
||||
PARAMETRIZE { ability = ABILITY_FRISK; }
|
||||
PARAMETRIZE { ability = ABILITY_OPPORTUNIST; }
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Speed(4); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Speed(5); Ability(ability); }
|
||||
OPPONENT(SPECIES_ESPATHRA) { Speed(5); Ability(ability); }
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_SHELL_SMASH); }
|
||||
TURN { MOVE(player, MOVE_TACKLE); MOVE(opponent, MOVE_TACKLE); }
|
||||
} SCENE {
|
||||
if (ability == ABILITY_NONE) {
|
||||
if (ability == ABILITY_FRISK) {
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_SHELL_SMASH, player);
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent);
|
||||
HP_BAR(player, captureDamage: &results[i].damage);
|
||||
@ -46,7 +46,7 @@ DOUBLE_BATTLE_TEST("Opportunist raises Attack only once when partner has Intimid
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_MIGHTYENA) { Ability(ABILITY_INTIMIDATE); }
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_OPPORTUNIST); }
|
||||
PLAYER(SPECIES_ESPATHRA) { Ability(ABILITY_OPPORTUNIST); }
|
||||
OPPONENT(SPECIES_SPINDA) { Ability(abilityLeft); }
|
||||
OPPONENT(SPECIES_SPINDA) { Ability(abilityRight); }
|
||||
} WHEN {
|
||||
@ -73,14 +73,14 @@ DOUBLE_BATTLE_TEST("Opportunist raises Attack only once when partner has Intimid
|
||||
if ((abilityLeft == ABILITY_CONTRARY && abilityRight != ABILITY_CONTRARY)
|
||||
|| (abilityLeft != ABILITY_CONTRARY && abilityRight == ABILITY_CONTRARY)) {
|
||||
ABILITY_POPUP(playerRight, ABILITY_OPPORTUNIST);
|
||||
MESSAGE("Wobbuffet copied its opponent's stat changes!");
|
||||
MESSAGE("Espathra copied its opponent's stat changes!");
|
||||
ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight);
|
||||
MESSAGE("Wobbuffet's Attack rose!");
|
||||
MESSAGE("Espathra's Attack rose!");
|
||||
} else if (abilityLeft == ABILITY_CONTRARY && abilityRight == ABILITY_CONTRARY) {
|
||||
ABILITY_POPUP(playerRight, ABILITY_OPPORTUNIST);
|
||||
MESSAGE("Wobbuffet copied its opponent's stat changes!");
|
||||
MESSAGE("Espathra copied its opponent's stat changes!");
|
||||
ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight);
|
||||
MESSAGE("Wobbuffet's Attack sharply rose!");
|
||||
MESSAGE("Espathra's Attack sharply rose!");
|
||||
}
|
||||
|
||||
HP_BAR(playerLeft, captureDamage: &results[i].damageLeft);
|
||||
|
||||
@ -9,7 +9,7 @@ SINGLE_BATTLE_TEST("Purifying Salt halves damage from Ghost-type moves", s16 dam
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_SHADOW_BALL].type == TYPE_GHOST);
|
||||
PLAYER(SPECIES_WOBBUFFET);
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ability); }
|
||||
OPPONENT(SPECIES_GARGANACL) { Ability(ability); }
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_SHADOW_BALL); }
|
||||
} SCENE {
|
||||
@ -22,13 +22,13 @@ SINGLE_BATTLE_TEST("Purifying Salt halves damage from Ghost-type moves", s16 dam
|
||||
SINGLE_BATTLE_TEST("Purifying Salt makes Rest fail")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_PURIFYING_SALT); HP(1); MaxHP(100);}
|
||||
PLAYER(SPECIES_GARGANACL) { Ability(ABILITY_PURIFYING_SALT); HP(1); MaxHP(100);}
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_REST); }
|
||||
} SCENE {
|
||||
NONE_OF {
|
||||
MESSAGE("Wobbuffet went to sleep!");
|
||||
MESSAGE("Garganacl went to sleep!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,7 +19,7 @@ SINGLE_BATTLE_TEST("Rocky Payload increases Rock-type move damage", s16 damage)
|
||||
ASSUME(gBattleMoves[MOVE_POWER_GEM].type == TYPE_ROCK);
|
||||
ASSUME(gBattleMoves[MOVE_ROCK_THROW].split == SPLIT_PHYSICAL);
|
||||
ASSUME(gBattleMoves[MOVE_POWER_GEM].split == SPLIT_SPECIAL);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ability); }
|
||||
PLAYER(SPECIES_BOMBIRDIER) { Ability(ability); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, move); }
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
SINGLE_BATTLE_TEST("Seed Sower sets up Grassy Terrain when hit by an attack")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_SEED_SOWER); }
|
||||
PLAYER(SPECIES_ARBOLIVA) { Ability(ABILITY_SEED_SOWER); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_TACKLE); }
|
||||
@ -16,7 +16,7 @@ SINGLE_BATTLE_TEST("Seed Sower sets up Grassy Terrain when hit by an attack")
|
||||
}
|
||||
}
|
||||
|
||||
#define ABILITY_PARAM(n)(abilities[n] = (k == n) ? ABILITY_SEED_SOWER : ABILITY_SHADOW_TAG)
|
||||
#define ABILITY_PARAM(n)(abilities[n] = (k == n) ? ABILITY_SEED_SOWER : ABILITY_HARVEST)
|
||||
#define MOVE_HIT(target, position) \
|
||||
{ \
|
||||
HP_BAR(target); \
|
||||
@ -52,10 +52,10 @@ DOUBLE_BATTLE_TEST("Multi-target moves hit correct battlers after Seed Sower is
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_HYPER_VOICE].target == MOVE_TARGET_BOTH);
|
||||
ASSUME(gBattleMoves[MOVE_SURF].target == MOVE_TARGET_FOES_AND_ALLY);
|
||||
PLAYER(SPECIES_WYNAUT) { Ability(abilities[B_POSITION_PLAYER_LEFT]); }
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(abilities[B_POSITION_PLAYER_RIGHT]); }
|
||||
OPPONENT(SPECIES_WYNAUT) { Ability(abilities[B_POSITION_OPPONENT_LEFT]); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(abilities[B_POSITION_OPPONENT_RIGHT]); }
|
||||
PLAYER(SPECIES_ARBOLIVA) { Ability(abilities[B_POSITION_PLAYER_LEFT]); }
|
||||
PLAYER(SPECIES_ARBOLIVA) { Ability(abilities[B_POSITION_PLAYER_RIGHT]); }
|
||||
OPPONENT(SPECIES_ARBOLIVA) { Ability(abilities[B_POSITION_OPPONENT_LEFT]); }
|
||||
OPPONENT(SPECIES_ARBOLIVA) { Ability(abilities[B_POSITION_OPPONENT_RIGHT]); }
|
||||
} WHEN {
|
||||
TURN {
|
||||
MOVE(opponentLeft, (attacker == B_POSITION_OPPONENT_LEFT) ? usedMove : MOVE_CELEBRATE);
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "test/battle.h"
|
||||
|
||||
SINGLE_BATTLE_TEST("Sharpness increases the power of cutting moves", s16 damage)
|
||||
SINGLE_BATTLE_TEST("Sharpness increases the power of slicing moves", s16 damage)
|
||||
{
|
||||
u32 move;
|
||||
u16 ability;
|
||||
@ -11,6 +11,8 @@ SINGLE_BATTLE_TEST("Sharpness increases the power of cutting moves", s16 damage)
|
||||
PARAMETRIZE { move = MOVE_SCRATCH; ability = ABILITY_STEADFAST; }
|
||||
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_AERIAL_ACE].slicingMove);
|
||||
ASSUME(!gBattleMoves[MOVE_SCRATCH].slicingMove);
|
||||
PLAYER(SPECIES_GALLADE) { Ability(ability); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
|
||||
@ -9,7 +9,7 @@ SINGLE_BATTLE_TEST("Toxic Debris sets Toxic Spikes on the opposing side if hit b
|
||||
PARAMETRIZE { move = MOVE_SWIFT;}
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
PLAYER(SPECIES_GLIMMORA) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, move); }
|
||||
@ -29,7 +29,7 @@ SINGLE_BATTLE_TEST("Toxic Debris sets Toxic Spikes on the opposing side if hit b
|
||||
SINGLE_BATTLE_TEST("Toxic Debris does not activate if two layers of Toxic Spikes are already up")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
PLAYER(SPECIES_GLIMMORA) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_TACKLE); }
|
||||
@ -53,7 +53,7 @@ SINGLE_BATTLE_TEST("Toxic Debris does not activate if two layers of Toxic Spikes
|
||||
SINGLE_BATTLE_TEST("If a Substitute is hit, Toxic Debris does not set Toxic Spikes")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
PLAYER(SPECIES_GLIMMORA) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_SUBSTITUTE); }
|
||||
@ -71,7 +71,7 @@ SINGLE_BATTLE_TEST("If a Substitute is hit, Toxic Debris does not set Toxic Spik
|
||||
SINGLE_BATTLE_TEST("Each hit of a Multi Hit move activates Toxic Debris")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
PLAYER(SPECIES_GLIMMORA) { Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_FURY_SWIPES); }
|
||||
@ -88,13 +88,13 @@ SINGLE_BATTLE_TEST("Each hit of a Multi Hit move activates Toxic Debris")
|
||||
SINGLE_BATTLE_TEST("Toxic Debris activates if user faints after physical hit")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { HP(1); Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
PLAYER(SPECIES_GLIMMORA) { HP(1); Ability(ABILITY_TOXIC_DEBRIS); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_TACKLE); }
|
||||
} SCENE {
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent);
|
||||
MESSAGE("Wobbuffet fainted!");
|
||||
MESSAGE("Glimmora fainted!");
|
||||
ABILITY_POPUP(player, ABILITY_TOXIC_DEBRIS);
|
||||
MESSAGE("Poison Spikes were scattered all around the opposing team's feet!");
|
||||
}
|
||||
@ -103,7 +103,7 @@ SINGLE_BATTLE_TEST("Toxic Debris activates if user faints after physical hit")
|
||||
SINGLE_BATTLE_TEST("Air Balloon is popped after Toxic Debris activates")
|
||||
{
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_TOXIC_DEBRIS); Item(ITEM_AIR_BALLOON); }
|
||||
PLAYER(SPECIES_GLIMMORA) { Ability(ABILITY_TOXIC_DEBRIS); Item(ITEM_AIR_BALLOON); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_TACKLE); }
|
||||
@ -111,6 +111,6 @@ SINGLE_BATTLE_TEST("Air Balloon is popped after Toxic Debris activates")
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent);
|
||||
ABILITY_POPUP(player, ABILITY_TOXIC_DEBRIS);
|
||||
MESSAGE("Poison Spikes were scattered all around the opposing team's feet!");
|
||||
MESSAGE("Wobbuffet's Air Balloon popped!");
|
||||
MESSAGE("Glimmora's Air Balloon popped!");
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for player when hit by a wind move
|
||||
PARAMETRIZE {move = MOVE_AIR_CUTTER; }
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) {Ability(ABILITY_LIMBER); Speed(5) ;} // Limber, so it doesn't get paralyzed.
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_THUNDERBOLT), MOVE(opponent, move); }
|
||||
@ -37,7 +37,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for player when hit by a wind move
|
||||
HP_BAR(player);
|
||||
if (move == MOVE_AIR_CUTTER) {
|
||||
ABILITY_POPUP(player, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Wattrel with power!");
|
||||
}
|
||||
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player);
|
||||
@ -47,7 +47,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for player when hit by a wind move
|
||||
HP_BAR(player);
|
||||
if (move == MOVE_AIR_CUTTER) {
|
||||
ABILITY_POPUP(player, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Wattrel with power!");
|
||||
}
|
||||
}
|
||||
THEN {
|
||||
@ -70,7 +70,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for opponent when hit by a wind mo
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) {Ability(ABILITY_LIMBER); Speed(5) ;} // Limber, so it doesn't get paralyzed.
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
OPPONENT(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
} WHEN {
|
||||
TURN { MOVE(opponent, MOVE_THUNDERBOLT), MOVE(player, move); }
|
||||
TURN { MOVE(opponent, MOVE_THUNDERBOLT), MOVE(player, move); }
|
||||
@ -82,7 +82,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for opponent when hit by a wind mo
|
||||
HP_BAR(opponent);
|
||||
if (move == MOVE_AIR_CUTTER) {
|
||||
ABILITY_POPUP(opponent, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Foe Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Foe Wattrel with power!");
|
||||
}
|
||||
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, opponent);
|
||||
@ -92,7 +92,7 @@ SINGLE_BATTLE_TEST("Wind Power sets up Charge for opponent when hit by a wind mo
|
||||
HP_BAR(opponent);
|
||||
if (move == MOVE_AIR_CUTTER) {
|
||||
ABILITY_POPUP(opponent, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Foe Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Foe Wattrel with power!");
|
||||
}
|
||||
}
|
||||
THEN {
|
||||
@ -114,8 +114,8 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly for every battler with the ab
|
||||
PARAMETRIZE {abilityLeft = ABILITY_WIND_POWER, abilityRight = ABILITY_WIND_POWER; }
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(abilityLeft); Speed(10); }
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(abilityRight); Speed(5); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(abilityLeft); Speed(10); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(abilityRight); Speed(5); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_LIMBER); Speed(20); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_LIMBER); Speed(15); }
|
||||
} WHEN {
|
||||
@ -126,12 +126,12 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly for every battler with the ab
|
||||
HP_BAR(playerLeft);
|
||||
if (abilityLeft == ABILITY_WIND_POWER) {
|
||||
ABILITY_POPUP(playerLeft, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Wattrel with power!");
|
||||
}
|
||||
HP_BAR(playerRight);
|
||||
if (abilityRight == ABILITY_WIND_POWER) {
|
||||
ABILITY_POPUP(playerRight, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Air Cutter charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Air Cutter charged Wattrel with power!");
|
||||
}
|
||||
NONE_OF {
|
||||
HP_BAR(opponentLeft);
|
||||
@ -155,8 +155,8 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly for every battler with the ab
|
||||
PARAMETRIZE {abilityLeft = ABILITY_WIND_POWER, abilityRight = ABILITY_WIND_POWER; }
|
||||
|
||||
GIVEN {
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(abilityLeft); Speed(10); }
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(abilityRight); Speed(5); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(abilityLeft); Speed(10); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(abilityRight); Speed(5); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_LIMBER); Speed(20); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_LIMBER); Speed(15); }
|
||||
} WHEN {
|
||||
@ -167,12 +167,12 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly for every battler with the ab
|
||||
HP_BAR(playerLeft);
|
||||
if (abilityLeft == ABILITY_WIND_POWER) {
|
||||
ABILITY_POPUP(playerLeft, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by PetalBlizzrd charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by PetalBlizzrd charged Wattrel with power!");
|
||||
}
|
||||
HP_BAR(playerRight);
|
||||
if (abilityRight == ABILITY_WIND_POWER) {
|
||||
ABILITY_POPUP(playerRight, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by PetalBlizzrd charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by PetalBlizzrd charged Wattrel with power!");
|
||||
}
|
||||
HP_BAR(opponentRight);
|
||||
NOT HP_BAR(opponentLeft);
|
||||
@ -194,10 +194,10 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly when Tailwind is used")
|
||||
|
||||
GIVEN {
|
||||
ASSUME(gBattleMoves[MOVE_TAILWIND].effect == EFFECT_TAILWIND);
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(5); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(20); }
|
||||
OPPONENT(SPECIES_WOBBUFFET) { Ability(ABILITY_WIND_POWER); Speed(15); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(10); }
|
||||
PLAYER(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(5); }
|
||||
OPPONENT(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(20); }
|
||||
OPPONENT(SPECIES_WATTREL) { Ability(ABILITY_WIND_POWER); Speed(15); }
|
||||
} WHEN {
|
||||
TURN { MOVE((opponentSide == TRUE) ? opponentLeft : playerLeft, MOVE_TAILWIND);}
|
||||
} SCENE {
|
||||
@ -205,19 +205,19 @@ DOUBLE_BATTLE_TEST("Wind Power activates correctly when Tailwind is used")
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_TAILWIND, opponentLeft);
|
||||
|
||||
ABILITY_POPUP(opponentLeft, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Tailwind charged Foe Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tailwind charged Foe Wattrel with power!");
|
||||
|
||||
ABILITY_POPUP(opponentRight, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Tailwind charged Foe Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tailwind charged Foe Wattrel with power!");
|
||||
}
|
||||
else {
|
||||
ANIMATION(ANIM_TYPE_MOVE, MOVE_TAILWIND, playerLeft);
|
||||
|
||||
ABILITY_POPUP(playerLeft, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Tailwind charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tailwind charged Wattrel with power!");
|
||||
|
||||
ABILITY_POPUP(playerRight, ABILITY_WIND_POWER);
|
||||
MESSAGE("Being hit by Tailwind charged Wobbuffet with power!");
|
||||
MESSAGE("Being hit by Tailwind charged Wattrel with power!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user