public void Init(int _y, bool _isPowerUP) { CancelInvoke(); OnPowerUp(Data.Instance.isPowerUpOn); isPowerUP = _isPowerUP; source = GetComponent <AudioSource> (); foreach (EnergyAsset ea in level1) { ea.active.SetActive(false); ea.itemToBar.SetActive(false); } foreach (EnergyAsset ea in level2) { ea.active.SetActive(false); ea.itemToBar.SetActive(false); } foreach (EnergyAsset ea in level3) { ea.active.SetActive(false); ea.itemToBar.SetActive(false); } EnergyAsset[] actualLevel; switch (Data.Instance.playerData.level) { case 1: actualLevel = level1; break; case 2: actualLevel = level2; break; default: actualLevel = level3; break; } if (isPowerUP) { activeAsset = GetPowerUp(actualLevel); } else { activeAsset = GetRayo(actualLevel); } activeAsset.active.SetActive(true); catchedByPowerUp = false; catched = false; Vector3 pos = transform.localPosition; pos.y = _y; transform.localPosition = pos; transform.localScale = Vector3.one; }
EnergyAsset GetPowerUp(EnergyAsset[] actualLevel) { EnergyAsset ea = actualLevel [UnityEngine.Random.Range(0, level1.Length - 1)]; if (ea.isPowerUp) { return(ea); } else { return(GetPowerUp(actualLevel)); } }