using System;
using PkmnLib.Plugin.Gen7.Scripts.Battle;
using PkmnLib.Plugin.Gen7.Scripts.Pokemon;
using PkmnLib.Static.Utils;

namespace PkmnLib.Plugin.Gen7.Scripts.Moves;

[Script(ScriptCategory.Move, "future_sight")]
public class FutureSight : Script
{
    /// <inheritdoc />
    public override void StopBeforeMove(IExecutingMove move, ref bool prevent)
    {
        var battleData = move.User.BattleData;
        if (battleData == null)
            return;
        battleData.Battle.Volatile.Add(new FutureSightEffect(move.MoveChoice));

        prevent = true;
    }
}