// // Licensed under the MIT License. See LICENSE file in the project root for full license information. // namespace MUnique.OpenMU.GameLogic.PlugIns; using System.Runtime.InteropServices; using MUnique.OpenMU.Pathfinding; using MUnique.OpenMU.PlugIns; /// /// A plugin interface which is called when a target got attacked by an area skill. /// The key is the skill number. /// [Guid("BAE1E31E-08EA-4B77-BE0E-89DECD9EAA29")] [PlugInPoint("Area skill plugins", "Is called when a target got attacked by an area skill.")] public interface IAreaSkillPlugIn : IStrategyPlugIn { /// /// Is called after a target got automatically attacked by an area skill, regardless if the attack effectively hit or not. /// /// The attacker. /// The target. /// The skill entry. /// The target area center. /// Hit info produced by the skill. ValueTask AfterTargetGotAttackedAsync(IAttacker attacker, IAttackable target, SkillEntry skillEntry, Point targetAreaCenter, HitInfo? hitInfo); }