2024-06-04 12:38:49 +01:00
# include "global.h"
# include "test/battle.h"
ASSUMPTIONS
{
ASSUME ( gMovesInfo [ MOVE_TERA_STARSTORM ] . effect = = EFFECT_TERA_STARSTORM ) ;
}
SINGLE_BATTLE_TEST ( " Tera Starstorm changes from Normal-type to Stellar-type if used by Terapagos-Stellar " )
{
GIVEN {
ASSUME ( gMovesInfo [ MOVE_TERA_STARSTORM ] . type = = TYPE_NORMAL ) ;
PLAYER ( SPECIES_TERAPAGOS_STELLAR ) ;
OPPONENT ( SPECIES_MISDREAVUS ) ;
} WHEN {
TURN { MOVE ( player , MOVE_TERA_STARSTORM ) ; }
} SCENE {
MESSAGE ( " Terapagos used Tera Starstorm! " ) ;
ANIMATION ( ANIM_TYPE_MOVE , MOVE_TERA_STARSTORM , player ) ;
HP_BAR ( opponent ) ;
2024-10-21 18:52:45 +01:00
NOT { MESSAGE ( " It doesn't affect the opposing Misdreavus… " ) ; }
2024-06-04 12:38:49 +01:00
}
}
DOUBLE_BATTLE_TEST ( " Tera Starstorm targets both opponents in a double battle if used by Terapagos-Stellar " )
{
GIVEN {
ASSUME ( gMovesInfo [ MOVE_TERA_STARSTORM ] . target = = MOVE_TARGET_SELECTED ) ;
PLAYER ( SPECIES_TERAPAGOS_STELLAR ) ;
PLAYER ( SPECIES_WYNAUT ) ;
OPPONENT ( SPECIES_WOBBUFFET ) ;
OPPONENT ( SPECIES_WYNAUT ) ;
} WHEN {
TURN { MOVE ( playerLeft , MOVE_TERA_STARSTORM , target : opponentLeft ) ; }
} SCENE {
MESSAGE ( " Terapagos used Tera Starstorm! " ) ;
ANIMATION ( ANIM_TYPE_MOVE , MOVE_TERA_STARSTORM , playerLeft ) ;
HP_BAR ( opponentLeft ) ;
HP_BAR ( opponentRight ) ;
}
}
SINGLE_BATTLE_TEST ( " Tera Starstorm becomes a physical move if the user is Terapagos-Stellar, is Terastallized, and has a higher Attack stat " , s16 damage )
{
bool32 tera ;
2024-06-22 21:25:40 +01:00
PARAMETRIZE { tera = GIMMICK_NONE ; }
PARAMETRIZE { tera = GIMMICK_TERA ; }
2024-06-04 12:38:49 +01:00
GIVEN {
ASSUME ( gMovesInfo [ MOVE_TERA_STARSTORM ] . category = = DAMAGE_CATEGORY_SPECIAL ) ;
PLAYER ( SPECIES_TERAPAGOS_STELLAR ) { Attack ( 100 ) ; SpAttack ( 50 ) ; }
OPPONENT ( SPECIES_WOBBUFFET ) { Defense ( 200 ) ; SpDefense ( 200 ) ; }
} WHEN {
2024-06-22 21:25:40 +01:00
TURN { MOVE ( player , MOVE_TERA_STARSTORM , gimmick : tera ) ; }
2024-06-04 12:38:49 +01:00
} SCENE {
MESSAGE ( " Terapagos used Tera Starstorm! " ) ;
ANIMATION ( ANIM_TYPE_MOVE , MOVE_TERA_STARSTORM , player ) ;
HP_BAR ( opponent , captureDamage : & results [ i ] . damage ) ;
} FINALLY {
EXPECT_MUL_EQ ( results [ 0 ] . damage , UQ_4_12 ( 2.5 ) , results [ 1 ] . damage ) ;
}
}
2024-07-22 19:43:17 +01:00
SINGLE_BATTLE_TEST ( " Tera Starstorm remains Normal-type if used by Pokemon other than Terapagos " )
{
GIVEN {
ASSUME ( gMovesInfo [ MOVE_TERA_STARSTORM ] . type = = TYPE_NORMAL ) ;
ASSUME ( gSpeciesInfo [ SPECIES_MISDREAVUS ] . types [ 0 ] = = TYPE_GHOST ) ;
PLAYER ( SPECIES_WOBBUFFET ) { TeraType ( TYPE_STELLAR ) ; }
OPPONENT ( SPECIES_MISDREAVUS ) ;
} WHEN {
TURN { MOVE ( player , MOVE_TERA_STARSTORM , gimmick : GIMMICK_TERA ) ; }
} SCENE {
MESSAGE ( " Wobbuffet used Tera Starstorm! " ) ;
2024-10-21 18:52:45 +01:00
MESSAGE ( " It doesn't affect the opposing Misdreavus… " ) ;
2024-07-22 19:43:17 +01:00
}
}