Example #1
0
    // Item Additional Procs

    private bool CheckSubMenuSet(int subMenuSetIndex)
    {
        if ((subMenuSetIndex < 1) || (subMenuSetIndex > menuSets.Length))
        {
            Debug.Log("Invalid SubMenuSetIndex: " + subMenuSetIndex.ToString());
            return(false);
        }
        if (subMenuSetIndex == menuSets.Length)
        {
            int          newSetLen = menuSets.Length + 1;
            SubMenuSet[] newSet    = new SubMenuSet[newSetLen];
            for (int setInd = 0; setInd < newSetLen - 1; setInd++)
            {
                newSet[setInd].Container = menuSets[setInd].Container;
                newSet[setInd].Title     = menuSets[setInd].Title;
                newSet[setInd].Screen    = menuSets[setInd].Screen;
                newSet[setInd].Scroller  = menuSets[setInd].Scroller;
            }
            RectTransform newSubMenuTF = (Instantiate(submenuScreen, new Vector3(0, 0, 0), new Quaternion(0, 0, 0, 0)) as GameObject).GetComponent <RectTransform>();
            newSubMenuTF.SetParent(rootScreen.transform);

            Button backButton = newSubMenuTF.FindChild("TitleBack").gameObject.GetComponent <Button> ();
            backButton.onClick.AddListener(() => menuMover.prevMenuLevel());

            newSet[newSetLen - 1].Container = newSubMenuTF.FindChild("ItemsContainer").gameObject;
            newSet[newSetLen - 1].Title     = newSubMenuTF.FindChild("TitleText").gameObject.GetComponent <Text>();
            newSet[newSetLen - 1].Screen    = newSubMenuTF;
            newSet[newSetLen - 1].Scroller  = newSet[newSetLen - 1].Container.GetComponent <RectTransform>();
            menuMover.ResetScreenPos(newSubMenuTF);
            menuSets = newSet;
        }

        return(true);
    }
Example #2
0
    private void smprocSetNextButton(GameObject menuObj, uItem smItem, int NextIndexInc)
    {
        Button mButton = menuObj.GetComponent <Button> ();

        CheckSubMenuSet(currSubMenuSetIndex + NextIndexInc);
        SubMenuSet smSet = menuSets [currSubMenuSetIndex + NextIndexInc];

        mButton.onClick.AddListener(() => gotoNextMenu(smItem, smSet));
    }
Example #3
0
    public void gotoNextMenu(uItem Item, SubMenuSet subMenuSet)
    {
        if (menuMover.IsCancelNextMenu() || menuMover.IsMenuMoving())
        {
            return;
        }
        currMenuHeight = 0;
        clearMenu(subMenuSet.Container);

        List <uItem> subItems = null;

        if (Item is mainMenuItem)
        {
            mainMenuItem mmItem = Item as mainMenuItem;
            subMenuSet.Title.text = mmItem.Text;
            subItems = mmItem.Items;
        }
        if (Item is subMenuItemExtra)
        {
            subMenuItemExtra smItem = Item as subMenuItemExtra;
            subMenuSet.Title.text = smItem.Text;
            subItems = smItem.Items;
        }
        if (Item is subMenuItemSingle)
        {
            subMenuItemSingle smItem = Item as subMenuItemSingle;
            subMenuSet.Title.text = smItem.Text;
            subItems = smItem.Items;
        }

        if (subItems != null)
        {
            fillNextContainer(subItems, subMenuSet.Container);
        }

        Resources.UnloadUnusedAssets();
        menuMover.nextMenuLevel();
    }