public void TakeStateFromServer(CritterStatePacket state, bool setHeadOrientation = true) { rb.MovePosition(state.position); rb.velocity = state.velocity; if (setHeadOrientation) { Head.transform.rotation = state.headOrientation; } }
private void PostCritterStatePacket(CritterStatePacket p, NetworkPlayer currentPlayer) { var message = new CritterStatePacketMessage() { ID = currentPlayer.ID, critterStatePacket = p }; SendMessageToClients(GameMsgType.UpdateCritterState, message); }
internal void HandleCritterStatePacket(CritterStatePacket critterStatePacket) { Debug.Log("HandleCritterStatePacket P#" + ID + " " + critterStatePacket.position); Player.CritterController.UpdateViaCritterStatePacket(critterStatePacket); }
internal void ForwardCritterStatePacket(CritterStatePacket obj) { PostCritterStatePacket?.Invoke(obj); }
public void UpdateViaCritterStatePacket(CritterStatePacket critterStatePacket) { Mover.TakeStateFromServer(critterStatePacket, localInputGrabber == null); }
public void TakeStateFromServer(CritterStatePacket state, bool setRotation = true) { rb.MovePosition(state.position); rb.velocity = state.velocity; }