public static Game RunGame(int number) { switch (number) { case 1: var state1 = new GameState1(); return(new Game(800, 600, Phaser.AUTO, "phaserRoot", state1)); case 2: var state2 = new GameState2(); return(new Game(800, 600, Phaser.AUTO, "phaserRoot", state2)); case 3: var state3 = new GameState3(); return(new Game(800, 600, Phaser.AUTO, "phaserRoot", state3)); case 4: var state4 = new GameState4(); return(new Game(700, 300, Phaser.CANVAS, "phaserRoot", state4)); default: throw new ArgumentOutOfRangeException(nameof(number)); } }
void StartLevel() { //clean up: if castle->destroy if (castle != null) { Destroy(castle); } //destroy projectiles GameObject[] projectiles = GameObject.FindGameObjectsWithTag("projectile"); foreach (GameObject p in projectiles) { Destroy(p); } //instantiate new castle and reset shots taken castle = Instantiate(castles[level]) as GameObject; castle.transform.position = castlePose; // reset camera SwitchView("Both"); ProjectileTail.S.Clear(); Goal.goalMet = false; state = GameState2.playing; }
void Update() { if (state == GameState2.playing && Goal.goalMet) { if (FollowCamera.s.poi.tag == "projectile") { state = GameState2.levelend; SwitchView("Both"); //next level start Invoke("NextLevel", 2f); } } }
// Use this for initialization void Start() { magic = GameState2.Girl; cloud.SetActive(false); lava1.SetActive(false); lava2.SetActive(false); lava3.SetActive(false); lava4.SetActive(false); lava5.SetActive(false); lava6.SetActive(false); g.SetActive(true); m.SetActive(false); d.SetActive(false); raincloud.SetActive(false); pushlava.SetActive(false); }