IEnumerator Coroutine() { while (true) { for (int i = 0; i < followersNum; i++) { if (_followers[i] != null && player != null) { if (managerObj.IsGamePause() != true) { if (managerObj.isTouch || managerObj.isAlwaysShoot != false) { if (_followers[i] != null && player != null) { switch (shotType.getShotType()) { case 1: ObjectPool.instance.GetGameObject(bullet, _followers[i].transform.position, _followers[i].transform.rotation); break; case 2: ObjectPool.instance.GetGameObject(bullet2, _followers[i].transform.position, _followers[i].transform.rotation); break; case 3: ObjectPool.instance.GetGameObject(bullet3, _followers[i].transform.position, _followers[i].transform.rotation); break; case 4: ObjectPool.instance.GetGameObject(bullet4, _followers[i].transform.position, _followers[i].transform.rotation); break; default: ObjectPool.instance.GetGameObject(bullet, _followers[i].transform.position, _followers[i].transform.rotation); break; } } } } } } yield return(new WaitForSeconds(shotType.getPlayerShotDelay())); } }
//========== メンバ変数 ========== //None IEnumerator Start() { // コンポーネントを取得 followerMng = FindObjectOfType <FollowerManager> (); playerlife = GetComponent <Life> (); managerObj = FindObjectOfType <Manager> (); shotType = GetComponent <ShotType> (); spaceship = GetComponent <Spaceship> (); superShot = GetComponent <SuperShot> (); audioObj = FindObjectOfType <AudioManager> (); while (true) { int selectedShotType = shotType.getShotType(); Attack(selectedShotType); // 弾をプレイヤーと同じ位置/角度で作成 yield return(new WaitForSeconds(shotType.getPlayerShotDelay())); } }
IEnumerator Coroutine() { while (true) { for (int i = 0; i < followersNum; i++) { if (_followers[i] != null && player != null) { if (managerObj.IsGamePause() != true) { if (Input.GetKey("space")) { if (_followers[i] != null && player != null) { //Debug.Log("This is shoot from options"); if (shotType.getShotType() == 1) { Instantiate(bullet, _followers[i].transform.position, _followers[i].transform.rotation); } else if (shotType.getShotType() == 2) { Instantiate(bullet2, _followers[i].transform.position, _followers[i].transform.rotation); } else if (shotType.getShotType() == 3) { Instantiate(bullet3, _followers[i].transform.position, _followers[i].transform.rotation); } else if (shotType.getShotType() == 4) { Instantiate(bullet4, _followers[i].transform.position, _followers[i].transform.rotation); } } } } } } yield return(new WaitForSeconds(shotType.getPlayerShotDelay())); } }
//敵を探して追尾 public void Missile_Homing(GameObject target) { //target.transform...敵 //transform..........射出された弾丸 rigidbody2D.velocity = (target.transform.position - transform.position).normalized * shotType.getPlayerShotDelay(); }