示例#1
0
 void Update()
 {
     // Update the menu state if it needs to suddenly open or close
     if (!dummyParent && IsButtonClicked())
     {
         SetMenuLocation();
         if (IsMenuInFOV())
         {
             dummyParent          = (ClickMenuIcon)Instantiate(menuIconPrefab, transform);
             dummyParent.menuRoot = this;
             ClickMenuIcon.ShowMenu(this, menuTree.tree.Root, dummyParent,
                                    menuCenter, menuOrientation, iconScale);
             dummyParent.SetDummy();
             if (OnMenuOpened != null)
             {
                 OnMenuOpened.Invoke();
             }
         }
     }
     else if ((GvrControllerInput.ClickButtonDown && !selected) ||
              IsPointingAway())
     {
         CloseAll();
     }
     else if (dummyParent && GvrControllerInput.AppButtonUp)
     {
         MakeSelection(null);
         dummyParent.DeepestMenu().ShowParentMenu();
     }
 }
示例#2
0
 public void CloseAll()
 {
     selected = false;
     if (dummyParent)
     {
         dummyParent.CloseAll();
         Destroy(dummyParent.gameObject);
         dummyParent = null;
         if (OnMenuClosed != null)
         {
             OnMenuClosed.Invoke();
         }
     }
 }