Exemplo n.º 1
0
        protected void DisconnectPlayerQueue(int queue, int syncTo)
        {
            endpoints[queue].Disconnect();

            Log($"Changing queue {queue} local connect status for last frame from {localConnectStatus[queue].LastFrame} to {syncTo} on disconnect request (current: {sync.FrameCount}).");

            localConnectStatus[queue].Disconnected = true;
            localConnectStatus[queue].LastFrame    = syncTo;

            if (syncTo < sync.FrameCount)
            {
                Log($"adjusting simulation to account for the fact that {queue} disconnected @ {syncTo}.");
                sync.AdjustSimulation(syncTo);
                Log("finished adjusting simulation.");
            }

            callbacks.OnDisconnected(QueueToPlayerHandle(queue));
            CheckInitialSync();
        }