Example #1
0
        public static void EnsureExistsInScene()
        {
            if (!TickEngineSettings.Single.enableTickEngine)
            {
                return;
            }

            /// Some basic singleton enforcement
            GameObject go = null;

            if (single)
            {
                go = single.gameObject;
            }
            else
            {
                /// Use NetMasterLate go if that singleton exists (this will be rare or never, but just here to cover all cases)
                if (NetMasterLate.single)
                {
                    go = NetMasterLate.single.gameObject;
                }

                single = FindObjectOfType <NetMaster>();
                if (single)
                {
                    go = single.gameObject;
                }
                else
                {
                    // No singletons exist... make a new GO
                    if (!go)
                    {
                        go = new GameObject("Net Master");
                    }

                    single = go.AddComponent <NetMaster>();
                }
            }

            // Enforce singleton for NetMasterLate
            if (!NetMasterLate.single)
            {
                NetMasterLate.single = FindObjectOfType <NetMasterLate>();

                if (!NetMasterLate.single)
                {
                    NetMasterLate.single = go.AddComponent <NetMasterLate>();
                }
            }

            NetMsgCallbacks.RegisterCallback(ReceiveMessage);
        }
Example #2
0
        public static void EnsureExistsInScene()
        {
            /// Some basic singleton enforcement
            GameObject go = null;

            if (single)
            {
                go = single.gameObject;
            }
            else
            {
                /// Use NetMasterLate go if that singleton exists (this will be rare or never, but just here to cover all cases)
                if (NetMasterLate.single)
                {
                    go = NetMasterLate.single.gameObject;
                }

                single = FindObjectOfType <NetMaster>();
                if (single)
                {
                    go = single.gameObject;
                }
                else
                {
                    // No singletons exist... make a new GO
                    if (!go)
                    {
                        go = new GameObject("Net Master");
                    }

                    single = go.AddComponent <NetMaster>();
                }
            }

            // Enforce singleton for NetMasterLate
            if (!NetMasterLate.single)
            {
                NetMasterLate.single = FindObjectOfType <NetMasterLate>();

                if (!NetMasterLate.single)
                {
                    NetMasterLate.single = go.AddComponent <NetMasterLate>();
                }
            }

            // cached values that don't change
            frameCount     = SimpleSyncSettings.FrameCount;
            frameCountBits = SimpleSyncSettings.FrameCountBits;
            sendEveryXTick = SimpleSyncSettings.SendEveryXTick;

            NetMsgCallbacks.RegisterCallback(ReceiveMessage);
        }
Example #3
0
        private void OnDestroy()
        {
            if (players.ContainsKey(NetId))
            {
                players.Remove(NetId);
            }

            if (UsingPUN)
            {
                NetMsgCallbacks.UnregisterHandler(CLIENT_SND_ID, OnServerRcv, true);
                NetMsgCallbacks.UnregisterHandler(SERVER_SND_ID, OnClientRcv, false);
            }
        }
Example #4
0
        private void Start()
        {
            /// Register our methods as Unet Msg Receivers
            NetMsgCallbacks.RegisterHandler(CLIENT_SND_ID, OnServerRcv, true);
            NetMsgCallbacks.RegisterHandler(SERVER_SND_ID, OnClientRcv, false);

            /// Add this component to the dictionary of netobjects. Netid is used as the key.
#if PUN_2_OR_NEWER
            players.Add((int)photonView.ViewID, this);
#else
            players.Add(NetId, this);
#endif
        }
Example #5
0
 public override void OnStartServer()
 {
     NetMsgCallbacks.RegisterHandler(CLIENT_SND_ID, OnServerRcv, true);
 }
Example #6
0
 public override void OnStartClient()
 {
     NetMsgCallbacks.RegisterHandler(SERVER_SND_ID, OnClientRcv, false);
 }