[DRAFT] Fix Normalize not boosting Normal type moves if they were already Normal type (#7060)
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
This commit is contained in:
parent
dc279f14ba
commit
67f7ad6b1e
@ -6014,7 +6014,9 @@ u32 GetDynamicMoveType(struct Pokemon *mon, u32 move, u32 battler, enum MonState
|
||||
gBattleStruct->ateBoost[battler] = TRUE;
|
||||
return ateType;
|
||||
}
|
||||
else if (moveType != TYPE_NORMAL
|
||||
else if (moveEffect != EFFECT_CHANGE_TYPE_ON_ITEM
|
||||
&& moveEffect != EFFECT_TERRAIN_PULSE
|
||||
&& moveEffect != EFFECT_NATURAL_GIFT
|
||||
&& moveEffect != EFFECT_HIDDEN_POWER
|
||||
&& moveEffect != EFFECT_WEATHER_BALL
|
||||
&& ability == ABILITY_NORMALIZE
|
||||
|
||||
@ -80,40 +80,52 @@ SINGLE_BATTLE_TEST("Normalize still makes Freeze-Dry do super effective damage t
|
||||
}
|
||||
}
|
||||
|
||||
SINGLE_BATTLE_TEST("Normalize boosts power of unaffected moves by 20% (Gen7+)", s16 damage)
|
||||
SINGLE_BATTLE_TEST("Normalize doesn't boost power of unaffected moves by 20% (< Gen7)", s16 damage)
|
||||
{
|
||||
u32 ability, genConfig;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; genConfig = GEN_7; }
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; genConfig = GEN_6; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; genConfig = GEN_7; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; genConfig = GEN_6; }
|
||||
u32 ability;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; }
|
||||
|
||||
GIVEN {
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, genConfig);
|
||||
PLAYER(SPECIES_SKITTY) { Ability(ability); Moves(MOVE_TACKLE); }
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, GEN_6);
|
||||
PLAYER(SPECIES_DELCATTY) { Ability(ability); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_TACKLE); }
|
||||
TURN { MOVE(player, MOVE_POUND); }
|
||||
} SCENE {
|
||||
HP_BAR(opponent, captureDamage: &results[i].damage);
|
||||
} FINALLY {
|
||||
if (genConfig >= GEN_7)
|
||||
EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.2), results[2].damage); // Ate
|
||||
else
|
||||
EXPECT_EQ(results[1].damage, results[3].damage); // No boost
|
||||
EXPECT_EQ(results[0].damage, results[1].damage); // No boost
|
||||
}
|
||||
}
|
||||
|
||||
SINGLE_BATTLE_TEST("Normalize boosts power of affected moves by 20% (Gen7+)", s16 damage)
|
||||
SINGLE_BATTLE_TEST("Normalize boosts power of unaffected moves by 20% (Gen7+)", s16 damage)
|
||||
{
|
||||
u32 ability, genConfig;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; genConfig = GEN_7; }
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; genConfig = GEN_6; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; genConfig = GEN_7; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; genConfig = GEN_6; }
|
||||
u32 ability;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; }
|
||||
|
||||
GIVEN {
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, genConfig);
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, GEN_7);
|
||||
PLAYER(SPECIES_DELCATTY) { Ability(ability); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_POUND); }
|
||||
} SCENE {
|
||||
HP_BAR(opponent, captureDamage: &results[i].damage);
|
||||
} FINALLY {
|
||||
EXPECT_MUL_EQ(results[0].damage, UQ_4_12(1.2), results[1].damage); // Ate
|
||||
}
|
||||
}
|
||||
|
||||
SINGLE_BATTLE_TEST("Normalize doesn't boost power of affected moves by 20% (< Gen7)", s16 damage)
|
||||
{
|
||||
u32 ability;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; }
|
||||
|
||||
GIVEN {
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, GEN_6);
|
||||
PLAYER(SPECIES_SKITTY) { Ability(ability); Moves(MOVE_WATER_GUN); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
@ -121,10 +133,26 @@ SINGLE_BATTLE_TEST("Normalize boosts power of affected moves by 20% (Gen7+)", s1
|
||||
} SCENE {
|
||||
HP_BAR(opponent, captureDamage: &results[i].damage);
|
||||
} FINALLY {
|
||||
if (genConfig >= GEN_7)
|
||||
EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.8), results[2].damage); // STAB + ate
|
||||
else
|
||||
EXPECT_MUL_EQ(results[1].damage, Q_4_12(1.5), results[3].damage); // STAB + no ate
|
||||
EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.5), results[1].damage); // STAB + no ate
|
||||
}
|
||||
}
|
||||
|
||||
SINGLE_BATTLE_TEST("Normalize boosts power of affected moves by 20% (Gen7+)", s16 damage)
|
||||
{
|
||||
u32 ability;
|
||||
PARAMETRIZE { ability = ABILITY_CUTE_CHARM; }
|
||||
PARAMETRIZE { ability = ABILITY_NORMALIZE; }
|
||||
|
||||
GIVEN {
|
||||
WITH_CONFIG(GEN_CONFIG_ATE_MULTIPLIER, GEN_7);
|
||||
PLAYER(SPECIES_SKITTY) { Ability(ability); Moves(MOVE_WATER_GUN); }
|
||||
OPPONENT(SPECIES_WOBBUFFET);
|
||||
} WHEN {
|
||||
TURN { MOVE(player, MOVE_WATER_GUN); }
|
||||
} SCENE {
|
||||
HP_BAR(opponent, captureDamage: &results[i].damage);
|
||||
} FINALLY {
|
||||
EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.8), results[1].damage); // STAB + ate
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user