public void OnClick_GetInputNumber() { try { num = int.Parse(randomNum.text); } catch (Exception e) { return; } gameStartPanel.SetActive(false); GameTextOn(); randomNumber.gameObject.SetActive(true); //UnityEngine.Random.InitState(num); Env = GameObject.Find("Env"); Level = new GameObject("Level"); Level.transform.parent = Env.transform; Level.AddComponent <GenerateScene>(); genSceneScript = Level.GetComponent <GenerateScene>(); genSceneScript.randomSeed = num; genSceneScript.genScene(); Destroy(Level.GetComponent("GenerateScene")); character.gameObject.SetActive(true); character.isAlive = true; character.particle[4].Stop(); controller.bombParticle.Stop(); backGroundAudio.Play(); // Necessary because the same seed(num) generates different results between the same time & after //OnClick_RestartGame(); }
public void OnClick_RestartGame() { gameEndPanel.SetActive(false); gameCompletePanel.SetActive(false); gameStopPanel.SetActive(false); GameTextOn(); character.animator.enabled = true; Scene.gameStopped = false; AIs = Level.transform.parent.GetChild(0); for (int i = 0; i < AIs.childCount; i++) { Destroy(AIs.GetChild(i).gameObject); } Destroy(Level); //UnityEngine.Random.InitState(num); Level = new GameObject("Level"); Level.transform.parent = Env.transform; Level.AddComponent <GenerateScene>(); genSceneScript = Level.GetComponent <GenerateScene>(); genSceneScript.randomSeed = num; genSceneScript.genScene(); Destroy(Level.GetComponent("GenerateScene")); activeCamera.gameRestart = true; character.gameObject.SetActive(true); character.isAlive = true; character.recoverBegin(); character.particle[4].Stop(); controller.bombParticle.Stop(); controller.Initialize(); backGroundAudio.Stop(); backGroundAudio.Play(); Scene.recoverBomb = true; Invoke("SetRecoverBombFalse", 0.1f); }