namespace PkmnLib.Plugin.Gen7.Scripts.Battle;

[Script(ScriptCategory.Battle, "mud_sport")]
public class MudSportEffect : Script, IScriptChangeBasePower, IScriptOnEndTurn
{
    private int _turnsLeft = 5;

    /// <inheritdoc />
    public void ChangeBasePower(IExecutingMove move, IPokemon target, byte hit, ref ushort basePower)
    {
        if (move.UseMove.MoveType.Name == "electric")
        {
            basePower = basePower.MultiplyOrMax(2f / 3f);
        }
    }

    /// <inheritdoc />
    public void OnEndTurn(IScriptSource owner, IBattle battle)
    {
        _turnsLeft--;
        if (_turnsLeft <= 0)
        {
            RemoveSelf();
        }
    }
}