 
  
   
  
   
  
   
  
   
  
   
  
  if (clicked)
{
    float rocketZ = Camera.main.WorldToScreenPoint(TheRocket.transform.position).z;
    Vector3 mousePosition = Input.mousePosition;
    mousePosition.z = rocketZ;
    Vector3 currentWorldMousePosition = Camera.main.ScreenToWorldPoint(mousePosition);
    Vector3 delta = currentWorldMousePosition - oldWorldMousePosition;
    oldWorldMousePosition = currentWorldMousePosition;
    TheRocket.transform.position += delta;
} 
  
   
  
   
  
   
  
   
  
   
  
  if (Physics2D.OverlapPoint(curPos, layerMask) != null)
{
    // Instantiate
} 
  
   
  
   
  
  
Vector2.Angle возвращает значения от нуля до 180 включительно, и угол всегда положительный, а в вашем условии пропускается 180.