namespace PkmnLib.Plugin.Gen7.Scripts.Abilities;

/// <summary>
/// Steelworker is an ability that boosts the power of Steel-type moves.
///
/// <see href="https://bulbapedia.bulbagarden.net/wiki/Steelworker_(Ability)">Bulbapedia - Steelworker</see>
/// </summary>
[Script(ScriptCategory.Ability, "steelworker")]
public class Steelworker : Script, IScriptChangeOffensiveStatValue
{
    /// <inheritdoc />
    public void ChangeOffensiveStatValue(IExecutingMove move, IPokemon target, byte hit, uint defensiveStat,
        ImmutableStatisticSet<uint> targetStats, Statistic stat, ref uint value)
    {
        if (move.GetHitData(target, hit).Type?.Name == "steel")
        {
            value = value.MultiplyOrMax(1.5f);
        }
    }
}