public void Simulate(uint tickIndex) { if (_client.IsConnected) { bool up = Input.GetKey(KeyCode.W); bool right = Input.GetKey(KeyCode.D); bool down = Input.GetKey(KeyCode.S); bool left = Input.GetKey(KeyCode.A); bool space = Input.GetKeyDown(KeyCode.Space); if (up || right || down || left || space) { Vector3 input = GetMovement(up, right, down, left); HandleInputHistory(input); var inputMessage = new PlayerInputMessage(_client.LocalPlayerId, input, space); _client.SendMessage(inputMessage); if (_localPlayer == null) { _localPlayer = _playerRegistry.GetControlledPlayerById(_client.LocalPlayerId); } _localPlayer.BufferInput(new InputData(input, tickIndex)); } else { HandleInputHistory(Vector3.zero); } } }
public void Simulate(uint tickIndex) { if (_client.IsConnected) { var clockSyncMessage = new ClockSyncMessage(); _client.SendMessage(clockSyncMessage); } }