// Update is called once per frame void Update() { Ray ray = gameCam.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, maxRange)) { Block block = hit.collider.gameObject.GetComponent <Block> (); if (block && Input.GetMouseButtonDown(0)) { grabber.Grab(block); } if (block && Input.GetMouseButtonUp(1) && allowRightMenuClick && Input.GetAxis("Mouse X") == 0 && Input.GetAxis("Mouse Y") == 0 && block.states.Count > 0) { //Debug.Log ("Open a menu"); uiManager.OpenRightClick(block); allowCameraOrbit = false; } } }