// // 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.GameLogic.Attributes; using MUnique.OpenMU.PlugIns; /// /// Updates the . For example, this activates the automatic health and shield recover. /// [PlugIn] [Display(Name = nameof(PlugInResources.UpdateIsInSafezoneAfterPlayerMoved_Name), Description = nameof(PlugInResources.UpdateIsInSafezoneAfterPlayerMoved_Description), ResourceType = typeof(PlugInResources))] [Guid("396617CA-954A-45A1-A6DB-1AA65309A03D")] public class UpdateIsInSafezoneAfterPlayerMoved : IAttackableMovedPlugIn { /// public void AttackableMoved(IAttackable attackable) { if (attackable is Player player) { player.Attributes?.SetStatAttribute(Stats.IsInSafezone, attackable.IsAtSafezone() ? 1.0f : 0.0f); } } }