private void Update() { CharacterState state = character.state; if (inputBuffer.Count != 0) { lastInput = inputBuffer.Dequeue(); } state = character.Move(state, lastInput, serverTick); character.SyncState(state); state.position = transform.position; character.state = state; character.OnServerStateChange(state, state); }
public void AddInput(CharacterInput input) { pendingInputs.AddLast(input); ApplyInput(input); character.SyncState(predictedState); }
private void SetObservedState(CharacterState newState) { character.SyncState(newState); }