namespace PkmnLib.Plugin.Gen7.Scripts.Side;

[Script(ScriptCategory.Side, "rainbow_effect")]
public class RainbowEffect : Script, IScriptChangeEffectChance, IScriptOnEndTurn
{
    private int _turns = 5;

    /// <inheritdoc />
    public void ChangeEffectChance(IExecutingMove move, IPokemon target, byte hit, ref float chance)
    {
        chance *= 2;
    }

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