public override void Perform() { manager.Remove(item); manager.Add(innerAction.item); innerAction.Perform(); GameObject target = CharacterController.instance.controlledMovement.gameObject; MarkedStatus.InflictMarkedStatus(target, markRadius, markDuration); }
public static void InflictMarkedStatus(GameObject obj, float effectRadius, float effectDuration) { MarkedStatus status = obj.GetComponent <MarkedStatus>(); if (status == null) { status = obj.AddComponent <MarkedStatus>(); } status.radius = Mathf.Max(status.radius, effectRadius); status.duration = Mathf.Max(status.duration, effectDuration); }