Example #1
0
    // Build Options Menu
    private void BuildOptions()
    {
        // Options List box
        containerOptions = new UIScrollableVerticalLayoutContainer(0);
        containerOptions.setSize(Screen.width - backButton.width, Screen.height); //scrollable.setSize(width, height);
        containerOptions.position  = new Vector3(backButton.width, 0, 0);         //scrollable.position = new Vector3((Screen.width - width) / 2, -Screen.height + height, 0);
        containerOptions.zIndex    = 1;
        containerOptions.myPadding = backButton.width;

        UIHorizontalLayoutWrap WrapperColors = new UIHorizontalLayoutWrap(0);
        UIToggleButton         buttonColors  = UIToggleButton.create("hexbox_false.png", "hexbox_true.png", "hexbox_down.png", 0, 0);

        buttonColors.scale    *= menuScale;
        buttonColors.onToggle += (sender, newValue) => buttonOptionsColors(sender, newValue);
        buttonColors.selected  = gameSetup.showColorTransitions;

        var textColors = text.addTextInstance("Color Transitions", 0, 0);

        textColors.scale *= menuScale;
        textColors.color  = Color.white;
        textColors.zIndex = -1;
        WrapperColors.addChild(buttonColors, textColors);

        UIHorizontalLayoutWrap WrapperFPS = new UIHorizontalLayoutWrap(0);
        UIToggleButton         buttonFPS  = UIToggleButton.create("hexbox_false.png", "hexbox_true.png", "hexbox_down.png", 0, 0);

        buttonFPS.scale    *= menuScale;
        buttonFPS.onToggle += (sender, newValue) => buttonOptionsFPS(sender, newValue);
        buttonFPS.selected  = gameSetup.showFPS;

        var textFPS = text.addTextInstance("Show FPS", 0, 0);

        textFPS.scale *= menuScale;
        textFPS.color  = Color.white;
        textFPS.zIndex = -1;
        WrapperFPS.addChild(buttonFPS, textFPS);

        containerOptions.addChild(WrapperColors, WrapperFPS);
    }
Example #2
0
    public void ListLevels(UIScrollableVerticalLayoutContainer container, GameMode gameMode)
    {
        // List of Campaigns.
        for (int c = 0; c < gameSetup.gameCampaigns.Length; c++)
        {
            var          campaign        = c;
            GameCampaign tempCampaign    = gameSetup.gameCampaigns[campaign];
            var          txtCampaignName = text.addTextInstance(tempCampaign.campaignName, 0, 0);
            txtCampaignName.scale *= menuScale;
            txtCampaignName.color  = tempCampaign.campaignNameColor;
            container.addChild(txtCampaignName);

            // List of Levels.
            var horizontalList = new UIHorizontalLayoutWrap(10);
            for (int l = 0; l < gameSetup.gameCampaigns[campaign].campaignLevels.Length; l++)
            {
                var       level     = l;
                GameLevel tempLevel = gameSetup.gameCampaigns[campaign].campaignLevels[level];

                // Level
                string tempUp      = (tempLevel.icon_up_override != "") ? tempLevel.icon_up_override : tempCampaign.icon_up;
                string tempDown    = (tempLevel.icon_down_override != "") ? tempLevel.icon_down_override : tempCampaign.icon_down;
                var    levelButton = UIButton.create(tempUp, tempDown, 0, 0);
                levelButton.scale *= menuScale;
                if (tempLevel.useButtonColor)
                {
                    levelButton.color = tempLevel.buttonColor;
                }


                var buttonbox = new UIAbsoluteLayoutWrap(0);
                levelButton.localPosition = new Vector3(0, 0, 0);
                buttonbox.addChild(levelButton);

                // Score Text
                var scoreText = textSmall.addTextInstance(" ", 0, 0);
                scoreText.scale *= menuScale;
                scoreText.color  = tempCampaign.campaignNameColor;
                scoreText.zIndex = -1;

                if (isLocked(c, l, gameMode))
                {
                    var lockedButton = UIButton.create("lock.png", "lock.png", 0, 0);
                    lockedButton.scale        *= menuScale;
                    lockedButton.zIndex        = -1;
                    lockedButton.localPosition = new Vector3((levelButton.width / 2) - (lockedButton.width / 2), -((levelButton.height / 2) - (lockedButton.height / 1.5f)), 0);
                    lockedButton.zIndex        = -1;
                    buttonbox.addChild(lockedButton);
                }
                else
                {
                    // Level is playable
                    levelButton.onTouchUpInside += (sender) => { StartLevel(sender, campaign, level); };
                    scoreText.text = (GetScore(c, l, gameMode) > 0) ? GetScore(c, l, gameMode).ToString() : "Play!";

                    if (tempCampaign.showLevelNumber)
                    {
                        // Level Text
                        var levelText = text.addTextInstance((l + 1).ToString(), 0, 0);
                        levelText.scale *= menuScale;
                        levelText.color  = Color.white;
                        levelText.zIndex = -1;
                        levelText.text   = "" + (l + 1);

                        levelText.localPosition = new Vector3((levelButton.width / 2) - (levelText.width / 2), -((levelButton.height / 2) - (levelText.height / 1.5f)), 0);
                        levelText.zIndex        = -1;
                        buttonbox.addChild(levelText);
                    }
                }

                // Absolute container to center the score text
                var scorebox = new UIAbsoluteLayoutWrap(0);
                scoreText.localPosition = new Vector3((levelButton.width / 2) - (scoreText.width / 2), 0, 0);
                scorebox.addChild(scoreText);

                var inBox = new UIVerticalLayoutWrap(0); //<----- fix the vertical layout issues w/ Text.
                inBox.addChild(buttonbox, scorebox);


                horizontalList.addChild(inBox);
            }
            container.addChild(horizontalList);
        }
    }
Example #3
0
    // Build FreePlay Screen
    private void BuildFreePlay()
    {
        containerFreePlay = new UIHorizontalLayoutWrap(30);

        // ---------------------------------------- SQUARE THEME
        var buttonFreePlay0 = UIButton.create("button_freeplay_square_up.png", "button_freeplay_square_down.png", 0, 0);

        buttonFreePlay0.scale           *= menuScale;
        buttonFreePlay0.onTouchUpInside += (sender) => LoadFreePlay(0);

        var buttonbox0 = new UIAbsoluteLayoutWrap(0);

        buttonFreePlay0.localPosition = new Vector3(0, 0, 0);
        buttonbox0.addChild(buttonFreePlay0);

        var scoreText0 = textSmall.addTextInstance("123,456", 0, 0);

        //scoreText0.color = Color.white;
        scoreText0.text   = (GetScore(0, 0, GameMode.FreePlay) > 0) ? GetScore(0, 0, GameMode.FreePlay).ToString() : "Play!";
        scoreText0.scale *= menuScale;
        //scoreText0.zIndex = -1;

        var scorebox0 = new UIAbsoluteLayoutWrap(0);

        scoreText0.localPosition = new Vector3((buttonFreePlay0.width / 2) - (scoreText0.width / 2), 0, 0);
        scorebox0.addChild(scoreText0);

        var inBox0 = new UIVerticalLayoutWrap(3); //<----- fix the vertical layout issues w/ Text.

        inBox0.addChild(buttonbox0, scorebox0);

        containerFreePlay.addChild(inBox0);
        // ---------------------------------------- HEX THEME
        var buttonFreePlayHex = UIButton.create("button_freeplay_hex_up.png", "button_freeplay_hex_down.png", 0, 0);

        buttonFreePlayHex.scale           *= menuScale;
        buttonFreePlayHex.onTouchUpInside += (sender) => LoadFreePlay(1);

        var buttonbox1 = new UIAbsoluteLayoutWrap(0);

        buttonFreePlayHex.localPosition = new Vector3(0, 0, 0);
        buttonbox1.addChild(buttonFreePlayHex);

        var scoreText1 = textSmall.addTextInstance("&", 0, 0);

        //scoreText1.color = Color.white;
        scoreText1.text   = (GetScore(0, 1, GameMode.FreePlay) > 0) ? GetScore(0, 1, GameMode.FreePlay).ToString() : "Play!";
        scoreText1.scale *= menuScale;

        var scorebox1 = new UIAbsoluteLayoutWrap(0);

        scorebox1.localPosition = new Vector3(-((buttonFreePlayHex.width / 2) - (scoreText1.width / 2)), 0, 0);

        //Debug.Log("Button: " + buttonFreePlayHex.width + " | Text: " + scoreText1.width + " + " + scorebox1.localPosition.ToString());
        scorebox1.addChild(scoreText1);

        var inBox1 = new UIVerticalLayoutWrap(3); //<----- fix the vertical layout issues w/ Text.

        inBox1.addChild(buttonbox1, scorebox1);

        containerFreePlay.addChild(inBox1);
        // ---------------------------------------- OCT THEME
        var buttonFreePlayOct = UIButton.create("button_freeplay_oct_up.png", "button_freeplay_oct_down.png", 0, 0);

        buttonFreePlayOct.scale           *= menuScale;
        buttonFreePlayOct.onTouchUpInside += (sender) => LoadFreePlay(2);

        var buttonbox2 = new UIAbsoluteLayoutWrap(0);

        buttonFreePlayHex.localPosition = new Vector3(0, 0, 0);
        buttonbox2.addChild(buttonFreePlayOct);

        var scoreText2 = textSmall.addTextInstance("&", 0, 0);

        //scoreText1.color = Color.white;
        scoreText2.text   = (GetScore(0, 2, GameMode.FreePlay) > 0) ? GetScore(0, 2, GameMode.FreePlay).ToString() : "Play!";
        scoreText2.scale *= menuScale;

        var scorebox2 = new UIAbsoluteLayoutWrap(0);

        scorebox2.localPosition = new Vector3(-((buttonFreePlayOct.width / 2) - (scoreText2.width / 2)), 0, 0);
        scorebox2.addChild(scoreText2);

        var inBox2 = new UIVerticalLayoutWrap(3); //<----- fix the vertical layout issues w/ Text.

        inBox2.addChild(buttonbox2, scorebox2);

        containerFreePlay.addChild(inBox2);
        // ----------------------------------------
        // FreePlay Levels List box
        containerFreePlay.matchSizeToContentSize();
        containerFreePlay.positionCenter();
    }