51 lines
2.0 KiB
C
51 lines
2.0 KiB
C
#include "global.h"
|
|
#include "test/battle.h"
|
|
#include "battle_ai_util.h"
|
|
|
|
AI_SINGLE_BATTLE_TEST("AI will not try to lower opposing stats if target is protected by it's ability")
|
|
{
|
|
enum Ability ability;
|
|
u32 species, move;
|
|
|
|
PARAMETRIZE { ability = ABILITY_SPEED_BOOST; species = SPECIES_TORCHIC; move = MOVE_SCARY_FACE; }
|
|
PARAMETRIZE { ability = ABILITY_HYPER_CUTTER; species = SPECIES_KRABBY; move = MOVE_GROWL; }
|
|
PARAMETRIZE { ability = ABILITY_BIG_PECKS; species = SPECIES_PIDGEY; move = MOVE_SCREECH; }
|
|
PARAMETRIZE { ability = ABILITY_ILLUMINATE; species = SPECIES_STARYU; move = MOVE_SAND_ATTACK; }
|
|
PARAMETRIZE { ability = ABILITY_KEEN_EYE; species = SPECIES_PIDGEY; move = MOVE_SAND_ATTACK; }
|
|
PARAMETRIZE { ability = ABILITY_CONTRARY; species = SPECIES_SNIVY; move = MOVE_NOBLE_ROAR; }
|
|
PARAMETRIZE { ability = ABILITY_CLEAR_BODY; species = SPECIES_BELDUM; move = MOVE_NOBLE_ROAR; }
|
|
|
|
GIVEN {
|
|
WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9);
|
|
AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_OMNISCIENT);
|
|
PLAYER(species) { Ability(ability); }
|
|
OPPONENT(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, move); }
|
|
} WHEN {
|
|
TURN { SCORE_LT_VAL(opponent, move, AI_SCORE_DEFAULT); }
|
|
}
|
|
}
|
|
|
|
|
|
AI_DOUBLE_BATTLE_TEST("AI will not try to lower opposing stats if target is protected by Flower Veil")
|
|
{
|
|
u16 move;
|
|
|
|
PARAMETRIZE { move = MOVE_SCARY_FACE; }
|
|
PARAMETRIZE { move = MOVE_GROWL; }
|
|
PARAMETRIZE { move = MOVE_SCREECH; }
|
|
PARAMETRIZE { move = MOVE_SAND_ATTACK; }
|
|
PARAMETRIZE { move = MOVE_SAND_ATTACK; }
|
|
PARAMETRIZE { move = MOVE_NOBLE_ROAR; }
|
|
PARAMETRIZE { move = MOVE_NOBLE_ROAR; }
|
|
|
|
GIVEN {
|
|
AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_OMNISCIENT);
|
|
PLAYER(SPECIES_COMFEY) { Ability(ABILITY_FLOWER_VEIL); }
|
|
PLAYER(SPECIES_BULBASAUR);
|
|
OPPONENT(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, move); }
|
|
OPPONENT(SPECIES_WOBBUFFET);
|
|
} WHEN {
|
|
TURN { SCORE_LT_VAL(opponentLeft, move, AI_SCORE_DEFAULT, target: playerRight); }
|
|
}
|
|
}
|