Beispiel #1
0
        /// <summary>
        ///		Adds a title to a panel
        /// </summary>
        /// <param name="panel"></param>
        /// <param name="title"></param>
        private void AddTitleToPanel(GameObject panel, string title)
        {
            //Create new title object
            GameObject titleObject = Instantiate(settingsTitlePrefab, GetPanelItemArea(panel), false);

            titleObject.GetComponent <TextMeshProUGUI>().text = GameUILocale.ResolveString(title);
        }
Beispiel #2
0
        /// <summary>
        ///		Adds a <see cref="Toggle"/> element to a panel
        /// </summary>
        /// <param name="panel"></param>
        /// <param name="toggleText"></param>
        /// <param name="currentValue"></param>
        /// <returns></returns>
        public Toggle AddToggleToPanel(GameObject panel, string toggleText, bool currentValue)
        {
            //Create new toggle object
            GameObject      toggleObject = Instantiate(settingsTogglePrefab, GetPanelItemArea(panel), false);
            TextMeshProUGUI label        = toggleObject.GetComponentInChildren <TextMeshProUGUI>();

            label.text = GameUILocale.ResolveString(toggleText);

            //Set if it is on or off
            Toggle toggle = toggleObject.GetComponent <Toggle>();

            toggle.isOn = currentValue;

            return(toggle);
        }
Beispiel #3
0
        /// <summary>
        ///		Adds a <see cref="TMP_Dropdown"/> to panel
        /// </summary>
        /// <param name="panel"></param>
        /// <param name="sideText"></param>
        /// <param name="options"></param>
        /// <param name="currentIndex"></param>
        /// <returns></returns>
        public TMP_Dropdown AddDropdownToPanel(GameObject panel, string sideText, string[] options, int currentIndex)
        {
            //Create dropdown object
            GameObject      dropDownObject   = Instantiate(settingsDropdownPrefab, GetPanelItemArea(panel), false);
            SettingDropdown dropdownSettings = dropDownObject.GetComponent <SettingDropdown>();

            dropdownSettings.settingsName.text = GameUILocale.ResolveString(sideText);

            //Create options
            List <TMP_Dropdown.OptionData> optionDatas = new List <TMP_Dropdown.OptionData>(options.Length);

            optionDatas.AddRange(options.Select(text => new TMP_Dropdown.OptionData(text)));

            //Add options and set current index
            dropdownSettings.dropdown.options = optionDatas;
            dropdownSettings.dropdown.value   = currentIndex;
            return(dropdownSettings.dropdown);
        }
Beispiel #4
0
        /// <summary>
        ///     Adds a new panel
        /// </summary>
        /// <param name="optionsMenu"></param>
        /// <returns></returns>
        public GameObject AddPanel(OptionsMenu optionsMenu)
        {
            //The panel it self
            GameObject panel = Instantiate(panelPrefab, panelsLocation, false);

            panel.name = optionsMenu.Name;
            AddTitleToPanel(panel, optionsMenu.Name);

            //Button
            Button button = Instantiate(settingsButtonPrefab, buttonLocation, false).GetComponent <Button>();

            button.onClick.AddListener(delegate { OpenPanel(optionsMenu.Name); });
            TextMeshProUGUI buttonText = button.GetComponentInChildren <TextMeshProUGUI>();

            buttonText.text = GameUILocale.ResolveString(optionsMenu.Name);
            buttonText.text = buttonText.text.Replace(" ", "\n");

            settingPanels.Add(button, panel);

            return(panel);
        }
Beispiel #5
0
        /// <summary>
        ///		Adds a <see cref="Slider"/> to a panel
        /// </summary>
        /// <param name="panel"></param>
        /// <param name="sideText"></param>
        /// <param name="currentValue"></param>
        /// <param name="wholeNumbers"></param>
        /// <param name="min"></param>
        /// <param name="max"></param>
        /// <returns></returns>
        public Slider AddSliderToPanel(GameObject panel, string sideText, float currentValue, bool wholeNumbers = false,
                                       float min = 0, float max = 100)
        {
            //Create new slider object
            GameObject     sliderObject   = Instantiate(settingsSliderPrefab, GetPanelItemArea(panel), false);
            SettingsSlider sliderSettings = sliderObject.GetComponent <SettingsSlider>();

            //Set up the existing value
            sliderSettings.Setup(currentValue);

            //Set the text
            sliderSettings.propertyText.text = GameUILocale.ResolveString(sideText);

            //Set up the slider itself
            Slider slider = sliderSettings.slider;

            slider.wholeNumbers = wholeNumbers;
            slider.minValue     = min;
            slider.maxValue     = max;
            slider.value        = currentValue;

            return(slider);
        }
Beispiel #6
0
 /// <summary>
 ///		Call this when the server process fails to start
 /// </summary>
 public void FailedToStartMessage()
 {
     cancelButton.interactable = true;
     messageText.text          = GameUILocale.ResolveString(failedToStartMessageLocale);
 }
Beispiel #7
0
 public override void OnEnable()
 {
     base.OnEnable();
     cancelButton.interactable = false;
     messageText.text          = GameUILocale.ResolveString(startingMessageLocale);
 }
Beispiel #8
0
 private void Awake()
 {
     killsTextLocale  = GameUILocale.ResolveString("ScoreBoard_Kills");
     deathsTextLocale = GameUILocale.ResolveString("ScoreBoard_Deaths");
 }