using PkmnLib.Static.Moves;

namespace PkmnLib.Plugin.Gen7.Scripts.Abilities;

/// <summary>
/// Flare Boost is an ability that increases the power of special moves by 50% when the Pokémon is burned.
/// This ability is exclusive to Drifblim.
///
/// <see href="https://bulbapedia.bulbagarden.net/wiki/Flare_Boost_(Ability)">Bulbapedia - Flare Boost</see>
/// </summary>
[Script(ScriptCategory.Ability, "flare_boost")]
public class FlareBoost : Script, IScriptChangeDamageModifier
{
    /// <inheritdoc />
    public void ChangeDamageModifier(IExecutingMove move, IPokemon target, byte hit, ref float modifier)
    {
        if (!move.User.HasStatus(ScriptUtils.ResolveName<Status.Burned>()))
            return;

        if (move.UseMove.Category == MoveCategory.Special)
            modifier *= 1.5f;
    }
}