private bool HandleMouseDown(Event evt) { // Handle this event if we clicked on this object RaycastHit info; if (Physics.Raycast(HandleUtility.GUIPointToWorldRay(evt.mousePosition), out info, float.MaxValue, 1 << LayerMask.NameToLayer("EditorWaypoint"))) { Waypoint selectedWaypoint = info.transform.parent.GetComponent <Waypoint>(); if (selectedWaypoint == null) { selectedWaypoint = info.transform.GetComponent <Waypoint>(); } if (selectedWaypoint == this.target as Waypoint) { // Nothing } else { Selection.activeObject = selectedWaypoint.gameObject; } WalkableFloorEditor.StoreTool(); GUIUtility.hotControl = GUIUtility.GetControlID(FocusType.Passive); return(true); } return(false); }
private void OnSceneGUI() { Event evt = Event.current; switch (evt.type) { case EventType.MouseDrag: if (evt.button == 0) { if (HandleDrag(evt)) { evt.Use(); } } break; case EventType.MouseUp: if (evt.button == 0) { if (HandleMouseUp(evt)) { evt.Use(); } WalkableFloorEditor.RestoreTool(); } break; case EventType.MouseDown: if (evt.button == 0) { if (HandleMouseDown(evt)) { evt.Use(); } else { WalkableFloorEditor.RestoreTool(); } } break; case EventType.KeyDown: if (evt.keyCode == KeyCode.T) { if ((target as Waypoint).transform.parent != null) { Selection.activeGameObject = (target as Waypoint).transform.parent.gameObject; } } break; } helpOpen = WalkableFloorEditor.ShowHelpControls(helpOpen); }
private void OnSceneGUI() { Event evt = Event.current; switch (evt.type) { case EventType.MouseDrag: if (evt.button == 0) { if (HandleDrag(evt)) { evt.Use(); } } break; case EventType.MouseUp: if (evt.button == 0) { if (HandleMouseUp(evt)) { evt.Use(); } WalkableFloorEditor.RestoreTool(); } break; case EventType.MouseDown: if (evt.button == 0) { if (HandleMouseDown(evt)) { evt.Use(); } else { WalkableFloorEditor.RestoreTool(); } } break; } helpOpen = WalkableFloorEditor.ShowHelpControls(helpOpen); }