public float EvaluateInputScore(DragMovementCalculation dragMovementCalculation, Moveable_Drag draggable, Vector3 dragForce) { if (!IsValid()) { if (dragMovementCalculation == DragMovementCalculation.CursorPosition) { return(Mathf.Infinity); } return(0f); } switch (dragMovementCalculation) { case DragMovementCalculation.DragVector: return(connectedTrack.GetForceDotProduct(dragForce, draggable)); case DragMovementCalculation.CursorPosition: return(connectedTrack.GetMinDistanceToScreenPoint(KickStarter.playerInput.GetMousePosition())); default: return(0f); } }