// proceed to next stage private IEnumerator nextStage(float waitTime) { yield return(new WaitForSeconds(waitTime)); SceneManager.LoadScene("Level3"); GameStatus.GetInstance().StageLevel = 3; }
// Use this for initialization void Start() { spawnedEnemy = 0; _stageCleared = false; if (GameStatus.GetInstance().PowerUp) { GameObject.FindGameObjectWithTag("Player").GetComponent <MovePlayer>().PowerUp = true; GameStatus.GetInstance().PowerUp = false; } /** * position.x between -4 ~ 4 enemy number: 30 */ StartCoroutine(spwanEnemy(enemyType1, new Vector3(-4, 8, 0), 1.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(0, 8, 0), 2.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(4, 8, 0), 3.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(-1, 8, 0), 4.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(2, 8, 0), 4.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(0, 8, 0), 5.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-4, 8, 0), 7.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(4, 8, 0), 7.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-3, 8, 0), 8.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(3, 8, 0), 8.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-2, 8, 0), 9.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(2, 8, 0), 9.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(-4, 8, 0), 11.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(0, 8, 0), 12.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(4, 8, 0), 13.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-1, 8, 0), 14.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(2, 8, 0), 14.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(0, 8, 0), 15.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-2, 8, 0), 17.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(2, 8, 0), 17.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-3, 8, 0), 18.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(3, 8, 0), 18.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-4, 8, 0), 19.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(4, 8, 0), 19.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(-4, 8, 0), 20.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(-2, 8, 0), 21.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(-3, 8, 0), 22.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(4, 8, 0), 24.0f)); StartCoroutine(spwanEnemy(enemyType2, new Vector3(2, 8, 0), 25.0f)); StartCoroutine(spwanEnemy(enemyType1, new Vector3(3, 8, 0), 26.0f)); /** * Stage Boss */ StartCoroutine(spwanEnemy(boss, new Vector3(0, 8, 0), 32.0f)); /** * Items */ StartCoroutine(dropItem(6.0f)); }
void OnCollisionEnter2D(Collision2D coll) { string tag = coll.collider.gameObject.tag; if (tag == "pick_coin") { string coinKind = coll.collider.gameObject.name; switch (coinKind) { case "Gold Coin": _goldCoin++; GameStatus.GetInstance().GoldCoins++; print(coinKind + ": " + _goldCoin); break; case "Silver Coin": _silverCoin++; GameStatus.GetInstance().SilverCoins++; print(coinKind + ": " + _silverCoin); break; case "Bronze Coin": _bronzeCoin++; GameStatus.GetInstance().BronzeCoins++; print(coinKind + ": " + _bronzeCoin); break; } Destroy(coll.collider.gameObject); } }
private void ResetGameStatus() { GameStatus.GetInstance().NumLives = 3; GameStatus.GetInstance().PlayerLevel = 0; GameStatus.GetInstance().Score = 0; GameStatus.GetInstance().StageLevel = 1; }
private void Update() { // Change Stage when reach to certain score. if (GameStatus.GetInstance().Score >= 100 && GameStatus.GetInstance().StageLevel == 1) { SceneManager.LoadScene("Level2"); GameStatus.GetInstance().StageLevel = 2; } }
// Update is called once per frame void Update() { GameObject.Find("Result").GetComponent <Text>().text = "Gold Coins: " + GameStatus.GetInstance().GoldCoins + " Silver Coins: " + GameStatus.GetInstance().SilverCoins + " Bronze Coins: " + GameStatus.GetInstance().BronzeCoins; }
// Update is called once per frame void Update() { if (GameStatus.GetInstance() == null) { return; } GetComponent <Text>().text = "Score: " + GameStatus.GetInstance().Score + " Lives: " + GameStatus.GetInstance().NumLives + " Level: " + GameStatus.GetInstance().PlayerLevel; }
// proceed to next stage private IEnumerator nextStage(float waitTime) { yield return(new WaitForSeconds(waitTime)); SceneManager.LoadScene("Level2"); // save player power lvl before moving to next stage if (GameObject.FindGameObjectWithTag("Player").GetComponent <MovePlayer>().PowerUp == true) { GameStatus.GetInstance().PowerUp = true; } GameStatus.GetInstance().StageLevel = 2; }
private void ReduceLive() { GameStatus.GetInstance().NumLives--; int live = GameStatus.GetInstance().NumLives; if (live >= 1) { Invoke("LoadScene", 2); } else { Invoke("LoadLose", 2); } }
private void ReduceLive() { // Camera Effect GameObject go = GameObject.FindGameObjectWithTag("MainCamera"); CameraController cc = go.GetComponent <CameraController>(); cc.EnableShake(); GameStatus.GetInstance().NumLives--; int live = GameStatus.GetInstance().NumLives; if (live >= 1) { Invoke("LoadScene", 2); } else { Invoke("LoadLose", 2); } }
private void ReduceLive() { if (StartInvincibility == false) { GameStatus.GetInstance().NumLives--; } StartInvincibility = true; Debug.Log(GameStatus.GetInstance().NumLives); int live = GameStatus.GetInstance().NumLives; if (live >= 1) { this.gameObject.SetActive(true); } else { Invoke("LoadLose", 2); } }
private void GetScore() { GameStatus.GetInstance().Score += _score; }
public void RecoverPlayer() { GameStatus.GetInstance().NumLives++; }
// Use this for initialization void Start() { GameStatus.GetInstance().GoldCoins = 0; GameStatus.GetInstance().SilverCoins = 0; GameStatus.GetInstance().BronzeCoins = 0; }
public void SetManualScore(int _manualScore) { GameStatus.GetInstance().Score += _manualScore; }
public float BulletVelocity = 1000.0f; //set the public field of initializing bullet's velocity. //public AudioClip FireSound; void Start() { PowerUp = GameStatus.GetInstance().PowerUp; //GetComponent<Rigidbody2D>().isKinematic = true; }
// Update is called once per frame void Update() { GetComponent <Text>().text = "Score: " + GameStatus.GetInstance().Score + " Lives: " + GameStatus.GetInstance().NumLives + " Level: " + GameStatus.GetInstance().PlayerLevel; }