private void Update() { if (GameState.Pause == GameMgr.instance.gameState) { return; } // 敌机下落 m_selfTrans.position += new Vector3(0, -moveSpeed * Time.deltaTime, 0); // 超过屏幕下面 if (Camera.main.WorldToScreenPoint(m_selfTrans.position).y <= -50) { BackToPool(); } if (m_timeToFire > 0) { m_timeToFire -= Time.deltaTime; if (m_timeToFire <= 0) { EnemyBulletGenerator.GenerateBulletByAircraftType(aircraftType, m_selfTrans.position); } } }
// Use this for initialization void Awake() { observer = FindObjectOfType <GameManager>(); canShoot = 1f; _bulletPool = GetComponent <EnemyBulletGenerator>(); _allObservers.Add(observer); }
// Use this for initialization void Awake() { observer = FindObjectOfType <GameManager>(); canShoot = 0.3f; _bulletPool = GetComponent <EnemyBulletGenerator>(); _allObservers.Add(observer); //Movement strategyMovement_Normal = new NormalAdvance(_speed, this.transform); strategyMovement_Sinuous = new SinuousAdvance(_speed, 10f, this.transform); }
/// <summary> /// 清理飞机和子弹物体 /// </summary> public void ClearObjs() { if (null != player) { player.DestroySelf(); } // 清空所有飞机 AircraftFactory.DestroyFactoryRoot(); m_enemyGenerator.ClearAll(); // 清空所有子弹 EnemyBulletGenerator.CLear(); }
private void Awake() { _instance = this; _bulletPool = new Pool <EnemyBullet>(amount, BulletFactory, EnemyBullet.InitializeBullet, EnemyBullet.DisposeBullet, true); cant = 1; }
public void SetBulletPool(EnemyBulletGenerator bulletPool) { _bulletPool = bulletPool; }