public void Remove(ManagedNetworkBehaviour updatable)
 {
     if (regularUpdate.Contains(updatable))
     {
         regularUpdate.Remove(updatable);
     }
 }
 public void Add(ManagedNetworkBehaviour updatable)
 {
     if (!regularUpdate.Contains(updatable))
     {
         regularUpdate.Add(updatable);
     }
 }
        private void Awake()
        {
            if (target == null)
            {
                target = gameObject;
            }

            m_networkBehaviour = (target.GetComponent <ManagedNetworkBehaviour>()) ? target.GetComponent <ManagedNetworkBehaviour>() : target.AddComponent <ManagedNetworkBehaviour>();

            AddListeners();
        }
    public void Add(ManagedNetworkBehaviour updatable)
    {
        if (updatable.GetType().GetMethod(nameof(ManagedNetworkBehaviour.UpdateMe))?.DeclaringType == updatable.GetType())
        {         //Avoiding duplicates:
            UpdateMe -= updatable.UpdateMe;
            UpdateMe += updatable.UpdateMe;
        }

        if (updatable.GetType().GetMethod(nameof(ManagedNetworkBehaviour.FixedUpdateMe))?.DeclaringType == updatable.GetType())
        {
            FixedUpdateMe -= updatable.FixedUpdateMe;
            FixedUpdateMe += updatable.FixedUpdateMe;
        }

        if (updatable.GetType().GetMethod(nameof(ManagedNetworkBehaviour.LateUpdateMe))?.DeclaringType == updatable.GetType())
        {
            LateUpdateMe -= updatable.LateUpdateMe;
            LateUpdateMe += updatable.LateUpdateMe;
        }
    }
Exemple #5
0
 public static void Remove(ManagedNetworkBehaviour networkBehaviour)
 {
     Remove(CallbackType.UPDATE, networkBehaviour.UpdateMe);
     Remove(CallbackType.FIXED_UPDATE, networkBehaviour.FixedUpdateMe);
     Remove(CallbackType.LATE_UPDATE, networkBehaviour.LateUpdateMe);
 }
Exemple #6
0
 public static void Add(ManagedNetworkBehaviour networkBehaviour)
 {
     instance.AddCallbackInternal(CallbackType.UPDATE, networkBehaviour.UpdateMe);
     instance.AddCallbackInternal(CallbackType.FIXED_UPDATE, networkBehaviour.FixedUpdateMe);
     instance.AddCallbackInternal(CallbackType.LATE_UPDATE, networkBehaviour.LateUpdateMe);
 }
 public void Remove(ManagedNetworkBehaviour updatable)
 {
     UpdateMe      -= updatable.UpdateMe;
     FixedUpdateMe -= updatable.FixedUpdateMe;
     LateUpdateMe  -= updatable.LateUpdateMe;
 }