Пример #1
0
 protected override void TriggerEvent(PhysicEventType eventType, GameObject gameObject)
 {
     foreach (var trigger in triggers)
     {
         if (eventType == trigger.eventType && (trigger.any || gameObject.CompareTag(trigger.tag)))
         {
             trigger.gameEvent.Raise();
         }
     }
 }
Пример #2
0
 public static bool ComeContaints(this HashSet <IPhysicEvent> data, PhysicEventType pType)
 {
     foreach (IPhysicEvent pEvent in data)
     {
         if (pEvent.IsCome && pEvent.Type == pType)
         {
             return(true);
         }
     }
     return(false);
 }
Пример #3
0
        public static IPhysicEvent GetEvent(this HashSet <IPhysicEvent> data, PhysicEventType pType)
        {
            foreach (IPhysicEvent pEvent in data)
            {
                if (pEvent.Type == pType)
                {
                    return(pEvent);
                }
            }

            return(null);
        }
Пример #4
0
 protected override void TriggerEvent(PhysicEventType eventType, GameObject gameObject)
 {
     foreach (var trigger in triggers)
     {
         if (eventType == trigger.eventType && (trigger.any || gameObject.CompareTag(trigger.tag)))
         {
             if (trigger.dynamicParameter)
             {
                 if (gameObject.TryGetComponent(out ParameterType component) || trigger.behaviour == TriggerBehaviour.TriggerWithNull)
                 {
                     trigger.Raise(component);
                 }
                 else if (trigger.behaviour == TriggerBehaviour.TriggerWithDefault)
                 {
                     trigger.Raise();
                 }
             }
             else
             {
                 trigger.Raise();
             }
         }
     }
 protected abstract void TriggerEvent(PhysicEventType eventType, GameObject gameObject);