public IEnumerator LevelCheckHandler() { while (true) { yield return(new WaitForSeconds(1)); if (ListEnemies.Count <= 0) { // Level finished UI_Canvas ui = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.UI).GetComponent <UI_Canvas>(); ui.ShowMessage("Isle cleared!\nPortals are open now!"); UnlockPortals(); UnlockSmallBoxes(); isleAbstract.finished = true; StopCoroutine(levelCheckRoutine); yield return(null); } } }
public void StartIsle() { // clear list for (int i = 0; i < ListEnemies.Count; i++) { mr.returnObject(ListEnemies[i].GetComponent <GhostCopy>().ghost.gameObject); mr.returnObject(ListEnemies[i]); } ListEnemies.Clear(); for (int i = 0; i < EnemyPoints.Count; i++) { EnemyPoints[i].Initialize(); if (EnemyPoints[i].CanCreateEnemy == true) { ExplosionScript expl = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.enemySpawn).GetComponent <ExplosionScript>(); expl.Initialize(EnemyPoints[i].transform.position); } } enemySpawnRoutine = StartCoroutine(EnemySpawnHandler()); UI_Canvas ui = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.UI).GetComponent <UI_Canvas>(); ui.ShowMessage("Destroy all enemies!"); }
public IEnumerator checkBigBoxFinishedHandler() { while (true) { if (ContentObj.GetComponent <Lerper>().Lerping == false) { break; } else { yield return(new WaitForSeconds(0.3f)); } } Player player = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.player).GetComponent <Player>(); Stats playerStats = player.GetComponent <Stats>(); switch (ContentBig) { case ContentTypeBig.SpeedUpgrade: playerStats.speed += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Much more Speed!"); break; case ContentTypeBig.DamageUpgrade: playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Much more Damage!"); break; case ContentTypeBig.RateUpgrade: playerStats.fireRate *= ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Fire rate extremely increased!"); break; case ContentTypeBig.ShotSpeedUpgrade: playerStats.shotSpeed += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Shots are much faster!"); break; case ContentTypeBig.Splitter: if (player.HasSplitter == false) { player.HasSplitter = true; playerStats.possibleShotEffects.Add(new multiplyOnContact()); ui.ShowMessage("You have Splitter-Shots!"); } else { playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Much more Damage!"); } break; case ContentTypeBig.Bluffer: if (player.HasBluffer == false) { player.HasBluffer = true; playerStats.possibleShotEffects.Add(new bluff()); ui.ShowMessage("You have Bluffer-Shots!"); } else { playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue; ui.ShowMessage("Much more Damage!"); } break; } ExplosionScript itemEffect = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.itemCollected).GetComponent <ExplosionScript>(); itemEffect.Initialize(ContentObj.transform.position); GameObject heroEffect = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.itemCollectedHero); heroEffect.GetComponent <ExplosionScript>().Initialize(player.transform.position); heroEffect.GetComponent <Follow>().Initialize(player.gameObject); mr.returnObject(ContentObj); ContentObj = null; StopCoroutine(checkBigBoxFinished); yield return(null); }