public void SetUp(GameObject _turret) { turret = _turret.GetComponent <TurretUpgrades>(); if (turret.damageLevel < 5) { damageButton.GetComponentInChildren <Text>().text = "Damage price: " + turret.damagePrice[turret.damageLevel] + " next damage: " + turret.damagePerLevel[turret.damageLevel]; } if (turret.radiusLevel < 5) { radiusButton.GetComponentInChildren <Text>().text = "Radius price: " + turret.radiusPrice[turret.radiusLevel] + " next radius: " + turret.radiusPerLevel[turret.radiusLevel]; } if (turret.fireRateLevel < 5) { fireRateButton.GetComponentInChildren <Text>().text = "Firerate price: " + turret.fireRatePrice[turret.fireRateLevel] + " next firerate: " + turret.fireRatePerLevel[turret.fireRateLevel]; } }
// Use this for initialization void Start() { TurretUpgrades.MakeUpgrades(); upgradeBackground = GameObject.FindGameObjectWithTag(Tags.upgradePanel).GetComponent <Image>(); selectedTurretBackground = GameObject.FindGameObjectWithTag(Tags.selectedTurretPanel).GetComponent <Image> (); selectedTurretImage = GameObject.FindGameObjectWithTag(Tags.selectedTurretPanel).transform.FindChild("SelectedImage").GetComponent <Image> (); selectedTurretStats = GameObject.FindGameObjectWithTag(Tags.selectedTurretPanel).transform.Find("TurretStats").GetComponent <Text> (); int upgradeType = 0; foreach (GameObject obj in GameObject.FindGameObjectsWithTag(Tags.upgradeButton)) { // The struggle int upTypeReal = upgradeType; UpgradeButton upgradeButton = new UpgradeButton(obj.GetComponent <Button>(), obj.transform.Find("UpgradeName").GetComponent <Text>(), obj.transform.Find("UpgradeDescription").GetComponent <Text>(), obj.transform.Find("UpgradeStats").GetComponent <Text>(), obj.transform.Find("UpgradeImage").GetComponent <RawImage> ()); upgradeButtons.Add(upgradeButton); UnityEngine.Events.UnityAction action1 = () => { Upgrade(upTypeReal); }; obj.GetComponent <Button>().onClick.AddListener(action1); upgradeType++; } LoadIcons(); // Turret Upgrade Menu upgradeMenu = GameObject.Find("UpgradeMenu"); upgradeAnimator = upgradeMenu.GetComponent <Animator>(); sellPrice = GameObject.Find("CashBack").GetComponent <Text> (); }
private void AttachToTurret() { // TODO: Change icons / text based on turret type and associated levels. background.color = new Color(SelectedTurret.focusMenuRed, SelectedTurret.focusMenuGreen, SelectedTurret.focusMenuBlue, .5f); transform.position = new Vector3(SelectedTurret.transform.position.x, 99, SelectedTurret.transform.position.z); BoxCollider aButtonCollider = this.GetComponentInChildren <BoxCollider>(); float slideWidthCheck = aButtonCollider.bounds.size.x * 5.6f; if (Camera.main.WorldToScreenPoint(transform.position).x < slideWidthCheck) { transform.position = new Vector3(transform.position.x + 9, 99, SelectedTurret.transform.position.z - 9); } else if (Camera.main.WorldToScreenPoint(transform.position).x > Screen.width - slideWidthCheck) { transform.position = new Vector3(transform.position.x - 9, 99, SelectedTurret.transform.position.z + 9); } switch (SelectedTurret.TurretType) { case TurretType.EarthTurret: upgradeOneIcon.spriteName = "Quake"; upgradeTwoIcon.spriteName = "MeteorShower"; upgradeThreeIcon.spriteName = "RootBinding"; prices[0].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.quakeCost, selectedTurret.UpgradeOneLevel); prices[1].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.meteorShowerCost, selectedTurret.UpgradeTwoLevel); prices[2].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.rootBindingCost, selectedTurret.UpgradeThreeLevel); break; case TurretType.FireTurret: upgradeOneIcon.spriteName = "Inferno"; upgradeTwoIcon.spriteName = "Armageddon"; upgradeThreeIcon.spriteName = "Burn"; prices[0].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.infernoCost, selectedTurret.UpgradeOneLevel); prices[1].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.armageddonCost, selectedTurret.UpgradeTwoLevel); prices[2].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.burnCost, selectedTurret.UpgradeThreeLevel); break; case TurretType.StormTurret: upgradeOneIcon.spriteName = "ChainLightning"; upgradeTwoIcon.spriteName = "Frost"; upgradeThreeIcon.spriteName = "LightningStrike"; prices[0].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.chainLightningCost, selectedTurret.UpgradeOneLevel); prices[1].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.frostCost, selectedTurret.UpgradeTwoLevel); prices[2].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.lightningStrikeCost, selectedTurret.UpgradeThreeLevel); break; case TurretType.VoodooTurret: upgradeOneIcon.spriteName = "Poison"; upgradeTwoIcon.spriteName = "MindControl"; upgradeThreeIcon.spriteName = "Hex"; prices[0].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.poisonCost, selectedTurret.UpgradeOneLevel); prices[1].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.mindControlCost, selectedTurret.UpgradeTwoLevel); prices[2].text = TurretUpgrades.GetUpgradeCost(TurretUpgrades.hexCost, selectedTurret.UpgradeThreeLevel); break; } if (selectedTurret.UpgradeOneLevel + selectedTurret.UpgradeTwoLevel + selectedTurret.UpgradeThreeLevel == 3) { prices[0].text = ""; prices[1].text = ""; prices[2].text = ""; } CorrectUpgradeNumbers(); }