예제 #1
0
        public void ApplyCrowdControl(ICrowdControl cc)
        {
            if (cc.IsTypeOf(CrowdControlType.STUN) || cc.IsTypeOf(CrowdControlType.ROOT))
            {
                StopMovement();
            }

            _crowdControlList.Add(cc);
        }
예제 #2
0
        public void ApplyCrowdControl(ICrowdControl cc)
        {
            if (cc.IsTypeOf(CrowdControlType.STUN) || cc.IsTypeOf(CrowdControlType.ROOT))
            {
                StopMovement();
            }

            ApiEventManager.OnUnitCrowdControlled.Publish(TargetUnit);

            _crowdControlList.Add(cc);
        }
예제 #3
0
    private void OnTriggerExit(Collider collision)
    {
        if (timeBeforeActivation >= 0)
        {
            return;
        }

        MonoBehaviour[] list = collision.gameObject.GetComponents <MonoBehaviour>();
        collision.gameObject.GetComponents <MonoBehaviour>();
        foreach (MonoBehaviour mb in list)
        {
            if (mb is ICrowdControl)
            {
                ICrowdControl gameObject = (ICrowdControl)mb;
                overlappingObjects.Remove(gameObject);
            }
        }
    }
예제 #4
0
 public void RemoveCrowdControl(ICrowdControl cc)
 {
     _crowdControlList.Remove(cc);
 }
예제 #5
0
 private void SetSlow(ICrowdControl gameObject)
 {
     gameObject.SetSlowed(tag, slowMultiplier, slowDuration);
 }