public Session(SessionSettings settings, SessionCallbacks <TGameState, TInputState> callbacks) { _settings = settings; _callbacks = callbacks; _rollbackMutex = new Mutex(); _players = new List <Player <TInputState> >(); _savedStates = new RingBuffer <GameState>(_settings.RollbackWindow); }
internal Player(PlayerType playerType, SessionSettings settings) { _settings = settings; PlayerHandle = new PlayerHandle(Guid.NewGuid().GetHashCode(), playerType); _savedStates = new RingBuffer <InputState>(_settings.RollbackWindow); LastConfirmedStep = Constants.NULL_STEP; _lastAddedStep = Constants.NULL_STEP; }