private void DragMageWithMouse() { this.transform.localScale = originalSize * 2; var curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, _screenPoint.z); var screenRay = Camera.main.ScreenPointToRay(curScreenPoint); foreach (var building in Player.GetSceneReferenceManager().AllAssignableBuildings) { if (building.InsideMage == null) { building.StartHighlighting(); building.Slot.SetActive(true); } } RaycastHit distance; Physics.Raycast(screenRay, out distance, Mathf.Infinity, FloorMask); transform.position = screenRay.GetPoint(distance.distance - DragHeight) + _offset; }