28 lines
750 B
C#

namespace PkmnLib.Plugin.Gen7.Scripts.Battle;
[Script(ScriptCategory.Battle, "water_sport")]
public class WaterSportEffect : Script, IScriptChangeMoveDamage, IScriptOnSwitchOut
{
public readonly HashSet<IPokemon> Placers = new();
/// <inheritdoc />
public void ChangeMoveDamage(IExecutingMove move, IPokemon target, byte hit, ref uint damage)
{
if (move.UseMove.MoveType.Name == "fire")
{
damage = damage / 2;
}
}
/// <inheritdoc />
public void OnSwitchOut(IPokemon oldPokemon, byte position)
{
if (!Placers.Contains(oldPokemon))
return;
Placers.Remove(oldPokemon);
if (Placers.Count == 0)
{
RemoveSelf();
}
}
}