// Use this for initialization void Start() { priceTag = transform.Find("priceTag"); max = transform.Find("max"); priceText = priceTag.Find("textPrice").GetComponent<Text>(); levelText = transform.Find("textLevel").GetComponent<Text>(); gunDamaga = transform.Find("UpgradeIndicator Gun Damage").GetComponent<LevelIndicator>(); gunRange = transform.Find("UpgradeIndicator Gun Range").GetComponent<LevelIndicator>(); specialLevel1 = transform.Find("UpgradeSpecial/textCount").GetComponent<Text>(); specialLevel2 = transform.Find("UpgradeSpecial/textNextCount").GetComponent<Text>(); specialLevelMax = transform.Find("UpgradeSpecial Max/textCount").GetComponent<Text>(); UpdateButton(); }
public void SetUpgrades(UpgradeBase[] upgrades) { _upgrades.ForEach(Destroy); _upgrades.Clear(); UpgradeDetails.UpdateTarget(null); if (upgrades == null) { return; } foreach (var upgrade in upgrades) { var upgradeObject = Instantiate(upgrade.Icon, Vector2.zero, Quaternion.identity, UpgradesParent); upgradeObject.transform.localPosition = new Vector2(_upgrades.Count % 6 * _positionOffset, 0f); upgradeObject.transform.localScale = _scale; foreach (var spriteRenderer in upgradeObject.GetComponentsInChildren <SpriteRenderer>()) { spriteRenderer.sortingOrder = _sortingOrder; } upgradeObject.GetComponentInChildren <LevelIndicator>().Upgrade = upgrade; var interaction = upgradeObject.GetComponentInChildren <Interaction>(); interaction.OnClick += HandleUpgradeClick; interaction.OnEnter += (sender, o) => { _current = upgrade; _spriteRenderer = o.GetComponentInChildren <SpriteRenderer>(); _levelIndicator = o.GetComponentInChildren <LevelIndicator>(); GameState.Instance.UpdateCost(upgrade.NextCost); UpgradeDetails.UpdateTarget(upgradeObject, true, upgrade); }; interaction.OnExit += HandleUpgradeMouseExit; _upgrades.Add(upgradeObject.gameObject); } }
public void levelUpdater(int level) { print("updating level to " + level); if (level == 1) { curLevel = 1; cam.nearClipPlane = 0.1f; this.transform.localScale = normalScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(1); } else if (level == 2) { curLevel = 2; cam.nearClipPlane = 0.1f; this.transform.localScale = normalScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(2); } else if (level == 3) { curLevel = 3; cam.nearClipPlane = 0.1f; this.transform.localScale = normalScale; hiddenWall1.SetActive(false); hiddenWall2.SetActive(false); hiddenWall3.SetActive(false); hiddenWall4.SetActive(false); LevelIndicator.setLevel(3); } else if (level == 4) { curLevel = 4; cam.nearClipPlane = 0.1f; this.transform.localScale = normalScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(4); } else if (level == 5) { curLevel = 5; cam.nearClipPlane = 0.1f; this.transform.localScale = halfScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(5); } else if (level == 6) { curLevel = 6; cam.nearClipPlane = 0.6f; this.transform.localScale = normalScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(6); } else if (level == 7) { curLevel = 7; cam.nearClipPlane = 0.1f; this.transform.localScale = normalScale; hiddenWall1.SetActive(true); hiddenWall2.SetActive(true); hiddenWall3.SetActive(true); hiddenWall4.SetActive(true); LevelIndicator.setLevel(7); finished = true; } }
private void Update() { if (_start) { var highestLevel = GameManager.Instance.GetHighestLevelCompleted(); if (highestLevel < 0) { highestLevel = 0; } for (var i = 0; i < levelIndicators.Length; i++) { if (GameManager.Instance.GetLevelIsCompleted(i)) { levelIndicators[i].GetComponent <LevelIndicator>().SetColor(Color.green); } } levelIndicators[highestLevel].GetComponent <LevelIndicator>().SetColor(Color.blue); _start = false; } if (Input.GetKeyDown(KeyCode.Space) && !_levelIndicator.levelSceneName.Equals("")) { if (_levelIndicator.SceneNumber <= GameManager.Instance.GetHighestLevelCompleted() + 1) { Debug.Log(_levelIndicator.SceneNumber); Debug.Log(GameManager.Instance.GetHighestLevelCompleted() + 1); SceneManager.LoadScene(_levelIndicator.levelSceneName); } } var horizontalInput = Input.GetAxis("Horizontal"); var verticalInput = Input.GetAxis("Vertical"); if (_justMoved) { if (horizontalInput == 0 && verticalInput == 0) { _justMoved = false; } } else if (horizontalInput > 0 && _levelIndicator.HasRightLocation()) { _currentLevel = _levelIndicator.rightLocation; _levelIndicator = _currentLevel.GetComponent <LevelIndicator>(); _justMoved = true; } else if (horizontalInput < 0 && _levelIndicator.HasLeftLocation()) { _currentLevel = _levelIndicator.leftLocation; _levelIndicator = _currentLevel.GetComponent <LevelIndicator>(); _justMoved = true; } else if (verticalInput < 0 && _levelIndicator.HasDownLocation()) { _currentLevel = _levelIndicator.downLocation; _levelIndicator = _currentLevel.GetComponent <LevelIndicator>(); _justMoved = true; } else if (verticalInput > 0 && _levelIndicator.HasUpLocation()) { _currentLevel = _levelIndicator.upLocation; _levelIndicator = _currentLevel.GetComponent <LevelIndicator>(); _justMoved = true; } transform.position = _currentLevel.transform.position + _offset; }