private void HandleMouseInput() { if (Input.GetMouseButtonDown(0)) { RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), Vector2.zero); if (hit.collider != null && hit.collider.CompareTag("Bin")) { startPos = Input.mousePosition; currentBin = hit.collider.gameObject; } } if (Input.GetMouseButtonUp(0)) { var pos = Input.mousePosition; int direction = (startPos.x <= pos.x) ? 1 : -1; binManager.Reorder(currentBin.GetComponent <Bin>(), direction); currentBin = null; } }