private void AddTransformCommand() { if (Vector3.Distance(position, transform.position) > 0.01f || Vector3.Distance(angles, transform.eulerAngles) > 0.0004f) { position = transform.position; angles = transform.eulerAngles; var transformInfo = new TransformInfo() { Position = new MsgVector3() { X = position.x, Y = position.y, Z = position.z }, Rotation = new MsgVector3() { X = angles.x, Y = angles.y, Z = angles.z } }; var command = new CommandInfo(); command.CommandId = (int)CommandType.Transform; command.CommandContent = transformInfo.ToByteString(); GameUser.Instance.CurPlayer.SendCommands.Enqueue(command); } }