2025-04-17 10:22:24 +02:00

22 lines
573 B
C#

using System.Linq;
namespace PkmnLib.Plugin.Gen7.Scripts.Moves;
[Script(ScriptCategory.Move, "parabolic_charge")]
public class ParabolicCharge : Script
{
/// <inheritdoc />
public override void OnAfterMove(IExecutingMove move)
{
if (move.User.IsFainted)
return;
var totalDamage = move.Hits.Sum(x => x.Damage);
var halfDamage = totalDamage / 2;
if (halfDamage == 0)
return;
if (halfDamage > uint.MaxValue)
halfDamage = uint.MaxValue;
move.User.Heal((uint)halfDamage);
}
}