// Update is called once per frame void Update() { float deltaTime = UnityEngine.Time.deltaTime; float currentTimeMs = UnityEngine.Time.time; float horizontal = Input.GetAxis("Horizontal"); float vertical = Input.GetAxis("Vertical"); accumulatedMove.x += horizontal; accumulatedMove.y += vertical; accumulatedMove.x = (float)math.clamp(accumulatedMove.x, -1.0, 1.0); accumulatedMove.y = (float)math.clamp(accumulatedMove.y, -1.0, 1.0); //Debug.Log("cur:"+currentTimeMs+" vs "+(lastUpdateMs+updateRateMs)+" both:"+lastUpdateMs+" + "+updateRateMs); if (currentTimeMs > (lastUpdateMs + updateRateMs)) { //Debug.Log("Time:"+currentTimeMs+" Accumulated:"+accumulatedMove); ClientMessageMoveJoy movejoy = new ClientMessageMoveJoy(); movejoy.moveVector.x = accumulatedMove.x; movejoy.moveVector.y = accumulatedMove.y; ServerConnection.Send(movejoy); lastUpdateMs = currentTimeMs; accumulatedMove.x = 0; accumulatedMove.y = 0; } }
public static void ParseIncomingMessage(NetworkConnection connection, DataStreamReader stream, EntityCommandBuffer.Concurrent commandBuffer, int connectionIndex, UdpCNetworkDriver.Concurrent driver) { var readerCtx = default(DataStreamReader.Context); uint messageID = stream.ReadUInt(ref readerCtx); if (messageID == ClientMessages.ClientMessageHello.id) { ClientMessageHello hello = new ClientMessageHello(); hello.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } else if (messageID == ClientMessageGoodbye.id) { ClientMessageGoodbye msg = new ClientMessageGoodbye(); msg.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } else if (messageID == ClientMessageFire.id) { ClientMessageFire msg = new ClientMessageFire(); msg.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } else if (messageID == ClientMessageShield.id) { ClientMessageShield msg = new ClientMessageShield(); msg.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } else if (messageID == ClientMessageMoveJoy.id) { ClientMessageMoveJoy msg = new ClientMessageMoveJoy(); msg.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } else if (messageID == ClientMessagePing.id) { ClientMessagePing msg = new ClientMessagePing(); msg.Recieve(connection, stream, commandBuffer, connectionIndex, driver); } }