Exemplo n.º 1
0
    private void ShowLevelSelectUI()
    {
        ListUIParams uiparams = new ListUIParams();

        uiparams.Title = "Select a Level";

        List <string> levels = LevelLoader.GetAllLevels();

        for (int i = 0; i < levels.Count; i++)
        {
            uiparams.Options.Add(levels[i]);
        }

        uiparams.Callback = OnLevelSelected;

        ListUI ui = Instantiate <ListUI>(ListUITemplate);

        ui.Create(ListTemplateTextOnly, uiparams);

        Vector3 uiPos     = new Vector3(0.0F, 5.0F, -8.0F);
        Vector3 uiForward = (uiPos - TargetManager.transform.position).normalized;

        ui.transform.gameObject.SetActive(true);
        ui.transform.gameObject.transform.position = uiPos;
        ui.transform.gameObject.transform.forward  = uiForward;
    }
Exemplo n.º 2
0
    private void InitializeGameplayUISettings()
    {
        ListUIParams TurretSelectParams = new ListUIParams();

        TurretSelectParams.Title = "Select Turret";


        for (int i = 0; i < LevelDesc.AllowedTurrets.Count; i++)
        {
            TurretSelectParams.Options.Add(LevelDesc.AllowedTurrets[i]);
            Turret t = LevelLoader.LookupTurret(LevelDesc.AllowedTurrets[i]);
            TurretSelectParams.Prices.Add(t.Cost.ToString());
        }

        TurretSelectParams.Callback = OnTurretSelected;

        GameplayUI.TurretSelectUIParams = TurretSelectParams;

        ListUIParams TurretOptionsParams = new ListUIParams();

        TurretOptionsParams.Title = "Turret Options";

        TurretOptionsParams.Callback = OnTurretOptionSelect;

        GameplayUI.TurretOptionUIParams = TurretOptionsParams;

        GameplayUI.TurretManagerInstance = Turrets;
    }
Exemplo n.º 3
0
    public void Create(GameObject listTemplate, ListUIParams Params)
    {
        Text title = gameObject.GetComponentInChildren <Text>();

        title.text = Params.Title;

        VerticalLayoutGroup layoutGroup = gameObject.GetComponentInChildren <VerticalLayoutGroup>();

        GameObject listGroup = null;

        foreach (Transform child in layoutGroup.transform)
        {
            listGroup = child.gameObject;
        }

        List <string> ListOptions = new List <string>(Params.Options);

        for (int i = 0; i < Params.Options.Count; i++)
        {
            GameObject listItem   = Instantiate(listTemplate);
            Text[]     textFields = listItem.GetComponentsInChildren <Text>();

            Text listText = textFields[0];
            listText.text = Params.Options[i];

            Text priceText = null;
            if (textFields.Length > 1)
            {
                priceText      = textFields[1];
                priceText.text = Params.Prices[i];
            }

            Button listButton           = listItem.GetComponent <Button>();
            string optionSelectedString = Params.Options[i];

            int index = i;
            listButton.onClick.AddListener(() => {
                bool leaveActive = Params.Callback(index, optionSelectedString, Params.Context);

                if (!leaveActive)
                {
                    this.transform.gameObject.SetActive(false);
                    this.enabled = false;
                }
            });

            listItem.transform.parent = listGroup.transform;
        }
    }