namespace PkmnLib.Plugin.Gen7.Scripts.Abilities;

/// <summary>
/// Thick Fat is an ability that halves the damage taken from Fire- and Ice-type moves.
///
/// <see href="https://bulbapedia.bulbagarden.net/wiki/Thick_Fat_(Ability)">Bulbapedia - Thick Fat</see>
/// </summary>
[Script(ScriptCategory.Ability, "thick_fat")]
public class ThickFat : Script, IScriptChangeMoveDamage
{
    /// <inheritdoc />
    public void ChangeMoveDamage(IExecutingMove move, IPokemon target, byte hit, ref uint damage)
    {
        var type = move.GetHitData(target, hit).Type;
        if (type is not null && (type.Value.Name == "ice" || type.Value.Name == "fire"))
        {
            damage /= 2;
        }
    }
}