Esempio n. 1
0
    protected void UnregisterTriggers(List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
    {
        //Unregister all the triggers and delete them if no one else is registered to them
        foreach (uint triggerID in in_triggerList)
        {
            string triggerName = string.Empty;
            if (triggerTypes.TryGetValue(triggerID, out triggerName) != false)
            {
                // These special triggers are handled differently
                if (triggerName == "Awake" || triggerName == "Start" || triggerName == "Destroy")
                {
                    continue;
                }

                AkTriggerBase trigger = (AkTriggerBase)GetComponent(Type.GetType(triggerName));

                if (trigger != null)
                {
                    trigger.triggerDelegate -= in_delegate;

                    if (trigger.triggerDelegate == null)
                    {
                        Destroy(trigger);
                    }
                }
            }
        }
    }
Esempio n. 2
0
 protected void UnregisterTriggers(List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
 {
     using (List <int> .Enumerator enumerator = in_triggerList.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             uint   current = (uint)enumerator.get_Current();
             string empty   = string.Empty;
             if (AkUnityEventHandler.triggerTypes.TryGetValue(current, ref empty))
             {
                 if (!(empty == "Awake") && !(empty == "Start") && !(empty == "Destroy"))
                 {
                     AkTriggerBase akTriggerBase = (AkTriggerBase)base.GetComponent(UtilityPlugin.GetType(empty));
                     if (akTriggerBase != null)
                     {
                         AkTriggerBase expr_80 = akTriggerBase;
                         expr_80.triggerDelegate = (AkTriggerBase.Trigger)Delegate.Remove(expr_80.triggerDelegate, in_delegate);
                         if (akTriggerBase.triggerDelegate == null)
                         {
                             Object.Destroy(akTriggerBase);
                         }
                     }
                 }
             }
         }
     }
 }
Esempio n. 3
0
 protected void RegisterTriggers(List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
 {
     foreach (uint num in in_triggerList)
     {
         string str = string.Empty;
         if (((triggerTypes.TryGetValue(num, out str) && (str != "Awake")) && (str != "Start")) && (str != "Destroy"))
         {
             AkTriggerBase component = (AkTriggerBase)base.GetComponent(UtilityPlugin.GetType(str));
             if (component == null)
             {
                 component = (AkTriggerBase)base.gameObject.AddComponent(UtilityPlugin.GetType(str));
             }
             component.triggerDelegate = (AkTriggerBase.Trigger)Delegate.Combine(component.triggerDelegate, in_delegate);
         }
     }
 }
Esempio n. 4
0
    protected void RegisterTriggers(List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
    {
        //Register to the appropriate triggers
        foreach (uint triggerID in in_triggerList)
        {
            string triggerName = string.Empty;
            if (triggerTypes.TryGetValue(triggerID, out triggerName) != false)
            {
                // These special triggers are handled differently
                if (triggerName == "Awake" || triggerName == "Start" || triggerName == "Destroy")
                {
                    continue;
                }

                AkTriggerBase trigger = (AkTriggerBase)GetComponent(Type.GetType(triggerName));
                if (trigger == null)
                {
                    trigger = (AkTriggerBase)gameObject.AddComponent(Type.GetType(triggerName));
                }

                trigger.triggerDelegate += in_delegate;
            }
        }
    }
 protected void RegisterTriggers(List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
 {
     using (List <int> .Enumerator enumerator = in_triggerList.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             uint   current = (uint)enumerator.Current;
             string empty   = string.Empty;
             if (AkUnityEventHandler.triggerTypes.TryGetValue(current, out empty))
             {
                 if (!(empty == "Awake") && !(empty == "Start") && !(empty == "Destroy"))
                 {
                     AkTriggerBase akTriggerBase = (AkTriggerBase)base.GetComponent(Type.GetType(empty));
                     if (akTriggerBase == null)
                     {
                         akTriggerBase = (AkTriggerBase)base.gameObject.AddComponent(Type.GetType(empty));
                     }
                     AkTriggerBase expr_97 = akTriggerBase;
                     expr_97.triggerDelegate = (AkTriggerBase.Trigger)Delegate.Combine(expr_97.triggerDelegate, in_delegate);
                 }
             }
         }
     }
 }
    protected void RegisterTriggers(System.Collections.Generic.List <int> in_triggerList, AkTriggerBase.Trigger in_delegate)
    {
#if UNITY_EDITOR
        if (UnityEditor.BuildPipeline.isBuildingPlayer || AkUtilities.IsMigrating)
        {
            return;
        }
#endif

        foreach (uint triggerID in in_triggerList)
        {
            switch (triggerID)
            {
            case AWAKE_TRIGGER_ID:
            case START_TRIGGER_ID:
            case unchecked ((uint)DESTROY_TRIGGER_ID):
            case unchecked ((uint)ON_ENABLE_TRIGGER_ID):
                continue;
            }

            var triggerName = string.Empty;
            if (triggerTypes.TryGetValue(triggerID, out triggerName))
            {
                var trigger = (AkTriggerBase)GetComponent(System.Type.GetType(triggerName));
                if (trigger == null)
                {
                    trigger = (AkTriggerBase)gameObject.AddComponent(System.Type.GetType(triggerName));
                }
                trigger.triggerDelegate += in_delegate;
            }
        }

        if (in_triggerList.Contains(AWAKE_TRIGGER_ID))
        {
            in_delegate(null);
        }

        if (in_triggerList.Contains(ON_ENABLE_TRIGGER_ID))
        {
            in_delegate(null);
        }
    }