상속: MonoBehaviour
예제 #1
0
        private void CheckTeamToggle()
        {
            Toggle editTeamToggle = this.editTeamToggleGroup.GetSingleActiveToggle();

            if (editTeamToggle != null)
            {
                EnumToggle toggle = editTeamToggle.GetComponent <EnumToggle>();
                if (toggle != null)
                {
                    this.isEditingYellowTeam = toggle.value == 0 ? true : false;
                }
            }
        }
예제 #2
0
        public void UpdateAttribute(Toggle toggle)
        {
            if (!toggle.isOn)
            {
                return;
            }

            int        index       = this.isEditingYellowTeam ? 0 : 1;
            string     description = "Enter equation. Current: (";
            EnumToggle enumToggle  = toggle.GetComponent <EnumToggle>();

            if (enumToggle != null)
            {
                switch (enumToggle.value)
                {
                default:
                    Debug.LogError("Invalid toggle value.");
                    break;

                case 0:                         //Health
                    this.equationInputField.text = description + this.teamEquations[index].health + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].health);
                    break;

                case 1:                         //Attack
                    this.equationInputField.text = description + this.teamEquations[index].attack + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].attack);
                    break;

                case 2:                         //Speed
                    this.equationInputField.text = description + this.teamEquations[index].speed + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].speed);
                    break;

                case 3:                         //Split
                    this.equationInputField.text = description + this.teamEquations[index].split + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].split);
                    break;

                case 4:                         //Merge
                    this.equationInputField.text = description + this.teamEquations[index].merge + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].merge);
                    break;

                case 5:                         //Attack Cooldown
                    this.equationInputField.text = description + this.teamEquations[index].attackCooldown + ")";
                    UpdateLevelInfo(enumToggle.value, this.teamEquations[index].attackCooldown);
                    break;
                }
            }
        }
예제 #3
0
        private void CheckAttributeToggle()
        {
            Toggle attributeToggle = this.unitAttributeToggleGroup.GetSingleActiveToggle();

            if (attributeToggle != null)
            {
                EnumToggle toggle = attributeToggle.GetComponent <EnumToggle>();
                if (toggle != null)
                {
                    string label;
                    switch (toggle.value)
                    {
                    default:
                        label = "Error";
                        break;

                    case 0:
                        label = "Health";
                        break;

                    case 1:
                        label = "Attack";
                        break;

                    case 2:
                        label = "Speed";
                        break;

                    case 3:
                        label = "Split";
                        break;

                    case 4:
                        label = "Merge";
                        break;

                    case 5:
                        label = "Attack Cooldown";
                        break;
                    }
                    this.labelName.text = label;
                }
            }
        }
예제 #4
0
        public void UpdateEquation()
        {
            try {
                string equation = this.equationInputField.text;
                Debug.Log("Equation is: " + equation);

                AIAttributeManager AIManager = null;
                int index;
                if (this.isEditingYellowTeam)
                {
                    AIManager = this.yellowTeamAttributes;
                    index     = 0;
                }
                else
                {
                    AIManager = this.blueTeamAttributes;
                    index     = 1;
                }

                Toggle attributeToggle = this.unitAttributeToggleGroup.GetSingleActiveToggle();
                if (attributeToggle != null)
                {
                    EnumToggle toggle = attributeToggle.GetComponent <EnumToggle>();
                    if (toggle != null)
                    {
                        switch (toggle.value)
                        {
                        default:
                            Debug.LogError("Wrong toggle value: " + toggle.value + ". Please check.");
                            return;

                        case 0:
                            AIManager.SetDirectHealthAttribute(equation);
                            this.teamEquations[index].health = equation;
                            break;

                        case 1:
                            AIManager.SetDirectAttackAttribute(equation);
                            this.teamEquations[index].attack = equation;
                            break;

                        case 2:
                            AIManager.SetDirectSpeedAttribute(equation);
                            this.teamEquations[index].speed = equation;
                            break;

                        case 3:
                            AIManager.SetDirectSplitAttribute(equation);
                            this.teamEquations[index].split = equation;
                            break;

                        case 4:
                            AIManager.SetDirectMergeAttribute(equation);
                            this.teamEquations[index].merge = equation;
                            break;

                        case 5:
                            AIManager.SetDirectAttackCooldownAttribute(equation);
                            this.teamEquations[index].attackCooldown = equation;
                            break;
                        }

                        UpdateLevelInfo(toggle.value, equation);
                    }
                }
                this.simulationStarter.StopSimulation();
                this.simulationStarter.ClearSimulation();
                this.simulationStarter.InitializeSimulation();
            }
            catch (System.Exception) {
                this.equationInputField.text = "[Invalid Equation.]";
            }
        }
예제 #5
0
        public void UpdateTeamToggle(Toggle toggle)
        {
            if (!toggle.isOn)
            {
                return;
            }

            EnumToggle enumToggle = toggle.GetComponent <EnumToggle>();

            if (enumToggle == null)
            {
                Debug.Log("Unable to obtain EnumToggle component. Did you accidentally passed in the wrong Toggle?");
                return;
            }

            this.isEditingYellowTeam = enumToggle.value == 0 ? true : false;

            //NOTE(Thompson): If enumToggle.value is not using 0 or 1, change this to check on isEditingYellowTeam.
            int    index           = enumToggle.value;
            Toggle attributeToggle = this.unitAttributeToggleGroup.GetSingleActiveToggle();

            if (attributeToggle != null)
            {
                EnumToggle attributeEnumToggle = attributeToggle.GetComponent <EnumToggle>();
                if (attributeEnumToggle != null)
                {
                    string equationValue = "Enter equation. Current: (";
                    switch (attributeEnumToggle.value)
                    {
                    default:
                        Debug.LogError("Attribute Enum Toggle value is invalid.");
                        equationValue = "[INTERNAL ERROR]: Invalid attribute enum toggle value.";
                        break;

                    case 0:
                        equationValue += this.teamEquations[index].health + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].health);
                        break;

                    case 1:
                        equationValue += this.teamEquations[index].attack + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].attack);
                        break;

                    case 2:
                        equationValue += this.teamEquations[index].speed + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].speed);
                        break;

                    case 3:
                        equationValue += this.teamEquations[index].split + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].split);
                        break;

                    case 4:
                        equationValue += this.teamEquations[index].merge + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].merge);
                        break;

                    case 5:
                        equationValue += this.teamEquations[index].attackCooldown + ")";
                        UpdateLevelInfo(attributeEnumToggle.value, this.teamEquations[index].attackCooldown);
                        break;
                    }
                    this.equationInputField.text = equationValue;
                }
            }
        }