private void OnMouseDown() { Debug.Log("selecting object!"); if (timeline.isTimelineActivated) { if (gimbals.animObj != this) { if (!gimbals.gameObject.activeSelf) { gimbals.gameObject.SetActive(true); } gimbals.animObj = this; gimbals.interactableObj = null; gimbals.transform.position = transform.position; gimbals.ActivateGimbalButtons(); gimbals.ActivateGimbalMenu(); gimbals.ActivateTransformGimbals(); gimbals.ActivateBeizerRelatedButtons(); if (animTrack != null) { timeline.currentlySelectedTrack = animTrack; animTrack.ToggleAnimationTrackMaterial(); } } else { gimbals.gameObject.SetActive(false); gimbals.animObj = null; gimbals.interactableObj = null; gimbals.DeactivateGimbalButtons(); gimbals.DeactivateGimbalMenu(); gimbals.deactivateAllGimbals(); gimbals.deactivateBeizerRelatedButtons(); if (animTrack != null) { animTrack.timeline.currentlySelectedTrack = null; animTrack.ToggleAnimationTrackMaterial(); } } } }
// activate the 1st gimbals + menus // second if the control point has been moved, notify the intermediate points they need to be moved public void OnMouseDown() { Debug.Log("touching " + gimbals); if (gimbals.interactableObj != this) { if (!gimbals.gameObject.active) { gimbals.gameObject.SetActive(true); } gimbals.interactableObj = this; gimbals.animObj = null; gimbals.transform.position = transform.position; gimbals.ActivateTransformGimbals(); SubscribeToGimbalEvents(); } else { gimbals.gameObject.SetActive(false); gimbals.animObj = null; gimbals.interactableObj = null; gimbals.deactivateAllGimbals(); UnsubscribeToGimbalEvents(); } }