Many more tests and fixes
All checks were successful
Build / Build (push) Successful in 3m12s

This commit is contained in:
2026-08-27 17:11:12 +02:00
parent 32b3ef9c4a
commit d2a82b5fe3
204 changed files with 20255 additions and 242 deletions

View File

@@ -1,16 +1,23 @@
namespace PkmnLib.Plugin.Gen7.Scripts.Moves;
[Script(ScriptCategory.Move, "high_jump_kick")]
public class HighJumpKick : Script, IScriptOnMoveMiss
public class HighJumpKick : Script, IScriptOnAfterHits
{
/// <inheritdoc />
public void OnMoveMiss(IExecutingMove move, IPokemon target)
public void OnAfterHits(IExecutingMove move, IPokemon target)
{
var damage = move.Hits.Where(h => h.HasExecuted).Sum(h => h.Damage);
if (damage == 0)
{
DoRecoil(move);
}
}
private static void DoRecoil(IExecutingMove move)
{
var damage = move.GetHitData(target, 0).Damage;
var recoil = damage / 2;
// This recoil damage will not exceed half the user's max HP
var maxHp = move.User.BoostedStats.Hp;
recoil = Math.Min(recoil, maxHp / 2);
var recoil = maxHp / 2;
if (recoil == 0)
return;
move.User.Damage(recoil, DamageSource.Misc);
}
}