private void FixedUpdate() { if (!Neutron.IsMine(isMine)) { GetRigidbody.velocity = newVelocity; GetRigidbody.angularVelocity = newAngularVelocity; } }
// Update is called once per frame void Update() { if (Neutron.IsMine(isMine)) { if (GetParameters(out object[] parameters)) { using (NeutronWriter streamParams = new NeutronWriter()) { streamParams.Write(parameters.Serialize()); //====================================================================================================================================== Neutron.RPC(isMine, 254, ValidationPacket.None, syncTime, streamParams, SendTo.Others, false, Broadcast.Channel, (ProtocolType)(int)protocolType); } } } }
void Update() { if (Neutron.IsMine(isMine)) { if (Input.GetMouseButtonDown(0)) { if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out RaycastHit hit, 500)) { if (hit.transform.CompareTag("ground")) { Neutron.MoveWithMousePointer(hit.point); } } } } }
void Update() { if (Neutron.IsMine(isMine)) { switch (whenChanging) { case (WhenChanging) default: RPC(); break; case WhenChanging.Position: if (transform.position != oldPosition) { RPC(); oldPosition = transform.position; } break; case WhenChanging.Rotation: if (transform.eulerAngles != oldRotation) { RPC(); oldRotation = transform.eulerAngles; } break; case WhenChanging.Velocity: if (GetRigidbody.velocity != oldVelocity) { RPC(); oldVelocity = GetRigidbody.velocity; } break; case (WhenChanging.Position | WhenChanging.Rotation): if (transform.position != oldPosition || transform.eulerAngles != oldRotation) { RPC(); oldPosition = transform.position; oldRotation = transform.eulerAngles; } break; case (WhenChanging.Velocity | WhenChanging.Position): if (transform.position != oldPosition || GetRigidbody.velocity != oldVelocity) { RPC(); oldPosition = transform.position; oldVelocity = GetRigidbody.velocity; } break; case (WhenChanging.Velocity | WhenChanging.Rotation): if (transform.eulerAngles != oldRotation || GetRigidbody.velocity != oldVelocity) { RPC(); oldRotation = transform.eulerAngles; oldVelocity = GetRigidbody.velocity; } break; case (WhenChanging.Velocity | WhenChanging.Rotation | WhenChanging.Position): AnyProperty(); break; default: AnyProperty(); break; } } else { if (newPosition != Vector3.zero && transform.position != newPosition) { transform.position = Vector3.Lerp(transform.position, newPosition, LerpTime * Time.deltaTime); } if (newPosition != Vector3.zero && transform.position != newPosition) { transform.rotation = Quaternion.Slerp(transform.rotation, newRotation, LerpTime * Time.deltaTime); } } }