Пример #1
0
        public void InitializeNewConstruction(Data data, Button myButton)
        {
            CanPress = true;
            UpgradeAbilities.CONSTRUCTIONLIST.Add(this);
            if (title != null)
            {
                title.text = data.name;
            }
            if (description != null)
            {
                description.text = data.desc;
            }
            if (effectDescription != null)
            {
                effectDescription.text = data.effectDesc;
            }
            if (SDGNummer != null)
            {
                SDGNummer.text = data.sdgType[0].ToString();
            }

            this.data     = data;
            this.myButton = myButton;
            for (int i = 0; i < GameManager.Instance.AI.SDGManager.SDGBar.Length; i++)
            {
                SDGBar sdgBar = GameManager.Instance.AI.SDGManager.SDGBar[i];
                if (data.sdgType[0] == i)
                {
                    SDGColor.color = sdgBar.Color;
                }
            }
            SetUpdateCost();

            myButton.onClick.AddListener(() => OnClickButton());
        }
Пример #2
0
 public void SetLockImage(SDGBar sdgBar)
 {
     SDGUnlockSound.SetActive(false);
     SDGUnlockSound.SetActive(true);
     for (int i = 0; i < sdgBar.LockImage.Length; i++)
     {
         sdgBar.LockImage[i].gameObject.SetActive(false);
     }
     UpdateSDGValues();
 }
Пример #3
0
        //Effects in Allocations
        public static void SetEffectGain(string text, Sprite sprite, GameObject upgradeCost, GameObject upgradeBlock, Color color, SDGBar sdgBar = null)
        {
            Transform upgrade = GameObject.Instantiate(upgradeCost.transform, upgradeBlock.transform);

            try
            {
                GameObject      go     = upgrade.GetChild(0).GetChild(1).gameObject;
                TextMeshProUGUI tmpGUI = go.GetComponent <TextMeshProUGUI>();
                tmpGUI.color = color;
                tmpGUI.text  = text + Environment.NewLine;

                Image i = upgrade.GetChild(0).GetChild(0).GetComponentInChildren <Image>();
                i.sprite = sprite;
                if (sdgBar != null)
                {
                    i.color = sdgBar.Color;
                    if (i.transform.childCount > 0)
                    {
                        TextMeshProUGUI number = i.transform.GetChild(0).GetComponent <TextMeshProUGUI>();
                        number.text = sdgBar.sdgIndex.ToString();
                    }
                }
            } catch (Exception ex) { }
        }
Пример #4
0
        public void InitializeNewPolicy(Data data)
        {
            this.data = data;
            if (title != null)
            {
                title.text = data.name;
            }
            if (description != null)
            {
                description.text = data.desc;
            }
            if (effectDescription != null)
            {
                effectDescription.text = data.effectDesc;
            }
            if (SDGNummer != null)
            {
                SDGNummer.text = data.sdgType[0].ToString();
            }

            approvalRequirementText.text = System.Convert.ToInt32(data.neededLocalTrust * 100).ToString() + "%";

            #region Adding Listeners

            acceptButton.onClick.AddListener(() => isAccepted = true);
            acceptButton.onClick.AddListener(() => ToggleGameObject(AudioManager.Instance.PolicyAccept));
            acceptButton.onClick.AddListener(() => data.isResearched = true);
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.creativityData.UpdateCreativityWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.researchData.UpdateResearchWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.fundsData.UpdateFundsWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.influenceData.UpdateInfluenceWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.materialData.UpdateMaterialWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.powerData.UpdatePowerWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.droneData.UpdateDroneWithoutPoints());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.GetUpdate(data));

            #region Fmod
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.corruptionData.CalculateCorruptionGain());
            acceptButton.onClick.AddListener(() => GameManager.Instance.AI.progressionData.CalculateProgressionGain());
            #endregion

            declineButton.onClick.AddListener(() => isAccepted = false);
            declineButton.onClick.AddListener(() => ToggleGameObject(AudioManager.Instance.PolicyDecline));
            acceptButton.onClick.AddListener(() => data.isResearched = false);
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.creativityData.UpdateCreativityWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.researchData.UpdateResearchWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.fundsData.UpdateFundsWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.influenceData.UpdateInfluenceWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.materialData.UpdateMaterialWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.powerData.UpdatePowerWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.droneData.UpdateDroneWithoutPoints());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.GetUpdate(data));

            #region Fmod
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.corruptionData.CalculateCorruptionGain());
            declineButton.onClick.AddListener(() => GameManager.Instance.AI.progressionData.CalculateProgressionGain());
            #endregion

            #endregion


            for (int i = 0; i < GameManager.Instance.AI.SDGManager.SDGBar.Length; i++)
            {
                SDGBar sdgBar = GameManager.Instance.AI.SDGManager.SDGBar[i];
                if (data.sdgType[0] == i)
                {
                    SDGColor.color = sdgBar.Color;
                }
            }
        }
Пример #5
0
        /// <summary>
        /// Setting new update
        /// </summary>
        /// <param name="data"></param>
        /// <param name="ai"></param>
        public void ButtonInformation(Data data, AI ai, Tab tab)
        {
            this.UpdateName   = data.name + data.desc;
            this.CostOfUpdate = data.researchCost;
            Ai        = ai;
            this.data = data;

            BackupAllocationPoints = GameManager.Instance.UIManager.CalculateAllocationMod();

            bool status = gameObject.transform.root.gameObject.activeInHierarchy;

            SetTextToUpdateButton();
            SetEffects();
            SetUpdateCost();

            if (data.ID == 301 && GameManager.Instance.ShowTutorial)
            {
                myButton.onClick.AddListener(() => panels[0].SetActive(false));
                myButton.onClick.AddListener(() => panels[1].SetActive(true));
                myButton.onClick.AddListener(() => panels[1].transform.GetChild(2).gameObject.SetActive(true));
            }
            if (data.ID == 305 && GameManager.Instance.ShowTutorial)
            {
                myButton.onClick.AddListener(() => panel20.SetActive(false));
                myButton.onClick.AddListener(() => panel20a.SetActive(true));
                myButton.onClick.AddListener(() => panel20a.transform.GetChild(1).gameObject.SetActive(true));
            }
            if (data.ID == 311 && GameManager.Instance.ShowTutorial)
            {
                myButton.onClick.AddListener(() => panel22.SetActive(true));
                myButton.onClick.AddListener(() => panel22.transform.GetChild(1).gameObject.SetActive(true));
            }
            if (data.ID == 1701 && GameManager.Instance.ShowTutorial)
            {
                myButton.onClick.AddListener(() => panel23.SetActive(true));
                myButton.onClick.AddListener(() => panel23.transform.GetChild(0).gameObject.SetActive(true));
            }
            if (data.ID == 403 && GameManager.Instance.ShowTutorial)
            {
                myButton.onClick.AddListener(() => panel28.SetActive(true));
                myButton.onClick.AddListener(() => panel28.transform.GetChild(0).gameObject.SetActive(true));
            }

            for (int i = 0; i < GameManager.Instance.AI.SDGManager.SDGBar.Length; i++)
            {
                SDGBar sdgBar = GameManager.Instance.AI.SDGManager.SDGBar[i];
                if (data.ID == sdgBar.SDGUnlockID)
                {
                    myButton.onClick.AddListener(() => GameManager.Instance.AI.SDGManager.SetLockImage(sdgBar));
                }

                if (data.sdgType[0] == i)
                {
                    SDGColor.color = sdgBar.Color;
                }
            }

            if (myButton != null)
            {
                myButton.onClick.AddListener(() => GameManager.Instance.AI.researchData.UpdateResearchWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.creativityData.UpdateCreativityWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.dronesData.UpdateDroneWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.fundsData.UpdateFundsWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.influenceData.UpdateInfluenceWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.materialData.UpdateMaterialWithoutPoints());
                myButton.onClick.AddListener(() => GameManager.Instance.AI.powerData.UpdatePowerWithoutPoints());
                myButton.onClick.AddListener(() => AudioManager.Instance.ResearchObject.SetActive(false));
                myButton.onClick.AddListener(() => AudioManager.Instance.ResearchObject.SetActive(true));

                #region fmod parameters set
                myButton.onClick.AddListener(() => ai.progressionData.CalculateProgressionGain());
                myButton.onClick.AddListener(() => ai.corruptionData.CalculateCorruptionGain());
                #endregion
            }

            if (data.typeOfData == (int)Tab.PartnerShip)
            {
                PartnerShips PartnerShips = this.gameObject.GetComponent <PartnerShips>();
                PartnerShips.InitializeNewPartenerShip(data);
            }

            if (data.typeOfData == (int)Tab.Policies)
            {
                Policy Policies = this.gameObject.GetComponent <Policy>();
                Policies.InitializeNewPolicy(data);
            }
        }
Пример #6
0
        /// <summary>
        /// Updating the Information
        /// </summary>
        /// <param name="data"></param>
        public void UpdateInformation(Data data)
        {
            this.Instance = gameObject;
            this.data     = data;
            if (data.typeOfData == (int)Tab.Allocatie)
            {
                SetRewardImage();
            }
            if (data.typeOfData == (int)Tab.Construction)
            {
                informationText.text = data.name;
            }

            for (int i = 0; i < GameManager.Instance.AI.SDGManager.SDGBar.Length; i++)
            {
                SDGBar s = GameManager.Instance.AI.SDGManager.SDGBar[i];
                if (data.sdgType[0] == i)
                {
                    SDGColor.color = s.Color;
                }
            }
            if (SDGNummer != null)
            {
                SDGNummer.text = data.sdgType[0].ToString();
            }

            if (data.desc == null)
            {
                descriptionText.text = string.Empty;
            }
            UPGRADEABILITIES.Add(this);
            LockCheck();

            if (informationText != null)
            {
                //informationText.text = data.name + "(" + data.allocatieCost + ")";
                if (data.hasTarget)
                {
                    for (int i = 0; i < UpgradeAbilities.UPGRADEABILITIES.Count; i++)
                    {
                        if (data.ID == UpgradeAbilities.UPGRADEABILITIES[i].data.ID)
                        {
                            informationText.text  = string.Empty;
                            informationText.text += UpgradeAbilities.UPGRADEABILITIES[i].data.name;
                            UpgradeAbilities.UPGRADEABILITIES[i].CurrentDoneTarget = UpgradeAbilities.UPGRADEABILITIES[i].data.doneTarget;

                            if (UpgradeAbilities.UPGRADEABILITIES[i].data.hasTarget)
                            {
                                UpgradeAbilities.UPGRADEABILITIES[i].InformationText.text = UpgradeAbilities.UPGRADEABILITIES[i].data.name;
                                UpgradeAbilities.UPGRADEABILITIES[i].TargetText.text      = UpgradeAbilities.UPGRADEABILITIES[i].data.doneTimes + "/" +
                                                                                            UpgradeAbilities.UPGRADEABILITIES[i].CurrentDoneTarget + " " + UpgradeAbilities.UPGRADEABILITIES[i].data.doneDesc;
                            }
                        }
                    }
                }
            }

            if (data.creativityGain > 0 || data.creativityGain < 0)
            {
                string c    = "";
                Color  temp = Color.white;
                if (data.creativityGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                }

                Extensions.SetEffectGain(c + data.creativityGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_Creativity16X16"), costBlock, effectBlock, temp);
            }

            if (data.droneGain > 0 || data.droneGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.droneGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                }

                Extensions.SetEffectGain(c + data.droneGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "iconen_Drone16X16"), costBlock, effectBlock, temp);
            }

            if (data.fundsGain > 0 || data.fundsGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.fundsGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                }

                Extensions.SetEffectGain(c + data.fundsGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "Iconen_Fund16X16"), costBlock, effectBlock, temp);
            }

            if (data.influenceGain > 0 || data.influenceGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.influenceGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    c    = "";
                    temp = Color.red;
                }

                Extensions.SetEffectGain(c + data.influenceGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_Stat16X16"), costBlock, effectBlock, temp);
            }

            if (data.materialGain > 0 || data.materialGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.materialGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                    c    = "";
                }

                Extensions.SetEffectGain(c + data.materialGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "Iconen_Materials16X16"), costBlock, effectBlock, temp);
            }

            if (data.powerGain > 0 || data.powerGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.powerGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                    c    = "";
                }

                Extensions.SetEffectGain(c + data.powerGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "Iconen_Energy16X16"), costBlock, effectBlock, temp);
            }

            if (data.researchGain > 0 || data.researchGain < 0)
            {
                string c = "";

                Color temp = Color.white;
                if (data.researchGain > 0)
                {
                    temp = Color.green;
                    c    = "+";
                }
                else
                {
                    temp = Color.red;
                    c    = "";
                }

                Extensions.SetEffectGain(c + data.researchGain.ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "Iconen_ResearchPoints_3_16X16"), costBlock, effectBlock, temp);
            }

            float sdgMultiplier = 1000;

            SDGBar[] sdgBar = GameManager.Instance.AI.SDGManager.SDGBar;

            if (data.sdgChange01 != 0)
            {
                Color  temp = (data.sdgChange01 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";
                Extensions.SetEffectGain(c + (data.sdgChange01 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[0]);
            }
            if (data.sdgChange02 != 0)
            {
                Color  temp = (data.sdgChange02 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange02 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[1]);
            }
            if (data.sdgChange03 != 0)
            {
                Color  temp = (data.sdgChange03 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange03 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[2]);
            }
            if (data.sdgChange04 != 0)
            {
                Color  temp = (data.sdgChange04 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange04 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[3]);
            }
            if (data.sdgChange05 != 0)
            {
                Color  temp = (data.sdgChange05 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange05 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[4]);
            }
            if (data.sdgChange06 != 0)
            {
                Color  temp = (data.sdgChange06 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange06 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[5]);
            }
            if (data.sdgChange07 != 0)
            {
                Color  temp = (data.sdgChange07 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange07 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[6]);
            }
            if (data.sdgChange08 != 0)
            {
                Color  temp = (data.sdgChange08 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange08 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[7]);
            }
            if (data.sdgChange09 != 0)
            {
                Color  temp = (data.sdgChange09 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange09 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[8]);
            }
            if (data.sdgChange10 != 0)
            {
                Color  temp = (data.sdgChange10 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange10 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[9]);
            }
            if (data.sdgChange11 != 0)
            {
                Color  temp = (data.sdgChange11 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange11 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[10]);
            }
            if (data.sdgChange12 != 0)
            {
                Color  temp = (data.sdgChange12 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange12 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[11]);
            }
            if (data.sdgChange13 != 0)
            {
                Color  temp = (data.sdgChange13 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange13 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[12]);
            }
            if (data.sdgChange14 != 0)
            {
                Color  temp = (data.sdgChange14 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange14 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[13]);
            }
            if (data.sdgChange15 != 0)
            {
                Color  temp = (data.sdgChange15 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange15 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[14]);
            }
            if (data.sdgChange16 != 0)
            {
                Color  temp = (data.sdgChange16 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange16 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[15]);
            }
            if (data.sdgChange17 != 0)
            {
                Color  temp = (data.sdgChange17 > 0) ? Color.green : Color.red;
                string c    = (temp == Color.green) ? "+" : "";

                Extensions.SetEffectGain(c + (data.sdgChange17 * sdgMultiplier).ToString(), Resources.Load <Sprite>(GameManager.SPRITEPATH + "icon_SDG16X16"), costBlock, effectBlock, temp, sdgBar[16]);
            }
        }