private void Awake() { if (!instance) { instance = this; } else { Destroy(this.gameObject); } }
private void OnKilled() { EnemyInfo enemyInfo = EnemiesInfo.GetInfoFromName(Name); if (enemyInfo != null) { foreach (EItem item in enemyInfo.RandomLoot()) { SpawnManager.Instance.SpawnLoot(item, transform.position); } } RequestDestroy(); }
/// <summary> /// Starts actuall game. /// </summary> public static void Startgame() { //Application.LoadLevel("Stage_1"); SceneManager.LoadScene("Stage_1"); Spawner.tanksForThisLevel = EnemiesInfo.GetWhichTanksToSpawn(1); // If its second time player plays, these settings are to avoid bugs. playerSpawnTimeStamp = Time.time; EnemyAIv2.isFrozen = false; currentLevel++; uiManager.ResetingTanksUI(); enemiesLeft = 20; score = 0; levelScore = 0; playerLifesLeft = 3; }
/// <summary> /// Switches between levels. /// </summary> /// <param name="_isItVictory">Is it victory?</param> public static void SwitchLevel(bool _isItVictory) { if (!isScoreShown && currentLevel != 0) { score += levelScore; //Application.LoadLevel("Score"); SceneManager.LoadScene("Score"); isNextLevelReady = false; isScoreShown = true; UIManager.scoreBeganAt = Time.time; UIManager.sceneType = "Score"; mainSoundManager.SRCbackgroundNoise.Stop(); } if (isNextLevelReady || currentLevel == 0) { if (_isItVictory) { if (currentLevel == 35) { currentLevel = 0; isGameRepeating = true; } //Application.LoadLevel("Stage_" + ++currentLevel); SceneManager.LoadScene("Stage_" + ++currentLevel); if (!isGameRepeating) { Spawner.tanksForThisLevel = EnemiesInfo.GetWhichTanksToSpawn(currentLevel); } else { Spawner.tanksForThisLevel = EnemiesInfo.GetWhichTanksToSpawn(35); // last levels tank set. } isPlayerOnAMap = false; playerSpawnTimeStamp = Time.time; EnemyAIv2.isFrozen = false; uiManager.ResetingTanksUI(); isGameOver = 0; PlayerController.areShotsBeingFired[0] = false; PlayerController.areShotsBeingFired[1] = false; enemiesLeft = 20; SoundManager.isBackgroundNoiseActive = true; // mainSoundManager.SRCbackgroundNoise.Stop(); isBaseProtected = false; if (currentLevel - 1 > 0) { mainSoundManager.SRCbackgroundNoise.Play(); } } else { //Application.LoadLevel(0); SceneManager.LoadScene(0); currentLevel = 0; if (highScore < score) { highScore = score; } isGameOver = 0; playerLifesLeft = 3; playersLevel = 0; PlayerController.controllsEnabled = true; } isNextLevelReady = false; isScoreShown = false; levelScore = 0; } }