void Move(Vector2 direction) { Vector3 forward = Vector3.Transform(new Vector3(0, 0, 1), rotation); Vector3 right = Vector3.Normalize(Vector3.Cross(forward, new Vector3(0, 1, 0))); Vector3 moveDirection = direction.X * right + direction.Y * forward; position += moveDirection * moveSpeed; ServerSend.PlayerPosition(this); ServerSend.PlayerRotation(this); }
private void Move(Vector2 inputDirection) { Vector3 forward = Vector3.Transform(new Vector3(0, 0, 1), rotation); Vector3 right = Vector3.Normalize(Vector3.Cross(forward, new Vector3(0, 1, 0))); Vector3 moveDirection = right * inputDirection.X + forward * inputDirection.Y; position += moveDirection * moveSpeed; ServerSend.PlayerPosition(this); ServerSend.PlayerRotation(this); }