Beispiel #1
0
 public virtual void Init()
 {
     for (int level = 1; level <= 3; level++)
     {
         currentGunLevel = gunLevels [level - 1];
         ObjectPooler.Pool pool = new ObjectPooler.Pool(GetGunTag(level), currentGunLevel.bullet, currentGunLevel.bulletCount);
         ObjectPooler.instance.AddToPool(pool);
     }
 }
Beispiel #2
0
    public void Initialize()
    {
        _canShoot    = 1 / fireRate;
        player       = GameManager.instance.player;
        objectPooler = ObjectPooler.instance;
        bulletPool   = objectPooler.pools[0];
        enemy        = GetComponent <Enemy>();

        this.mIsInit = true;
    }
Beispiel #3
0
 // Start is called before the first frame update
 void Start()
 {
     currentHp    = maxHp;
     objectPooler = ObjectPooler.instance;
     pool         = objectPooler.pools[1];
     if (enemyShoot && !enemyMovement)
     {
         enemyShoot.damage = gunDamage;
     }
 }
Beispiel #4
0
    void Awake()
    {
        Application.targetFrameRate = _FPS;
        Publisher.Instance.Subscribe(this);
        LevelSettings.Instance.Initialize();
        LevelProgress.Reset();
        ScoreConfig.Instance.Initialize();
        _IsPostGame = false;

        ObjectPooler.Pool poolFocusedSpinner = new ObjectPooler.Pool();
        poolFocusedSpinner._Count  = 2;
        poolFocusedSpinner._Prefab = _FocusedSpinnerPrefab;
        poolFocusedSpinner._Tag    = ObjectPoolTypes.FocusedSpinner;
        ObjectPooler.Instance.AddPool(poolFocusedSpinner);

        ObjectPooler.Pool poolLinkerLine = new ObjectPooler.Pool();
        poolLinkerLine._Count  = 16;
        poolLinkerLine._Prefab = _LinkerLinePrefab;
        poolLinkerLine._Tag    = ObjectPoolTypes.LinkerLine;
        ObjectPooler.Instance.AddPool(poolLinkerLine);

        ObjectPooler.Pool poolBoardTiles = new ObjectPooler.Pool();
        poolBoardTiles._Count  = LevelSettings.Instance._MaxWidth * LevelSettings.Instance._MaxHeight;
        poolBoardTiles._Prefab = _BoardTilePrefab;
        poolBoardTiles._Tag    = ObjectPoolTypes.BoardTile;
        ObjectPooler.Instance.AddPool(poolBoardTiles);

        ObjectPooler.Pool poolSpawners = new ObjectPooler.Pool();
        poolSpawners._Count  = LevelSettings.Instance._MaxWidth;
        poolSpawners._Prefab = _LinkerSpawnerPrefab;
        poolSpawners._Tag    = ObjectPoolTypes.Spawner;
        ObjectPooler.Instance.AddPool(poolSpawners);

        ObjectPooler.Pool poolLinkers = new ObjectPooler.Pool();
        poolLinkers._Count  = 2 * (LevelSettings.Instance._MaxWidth * LevelSettings.Instance._MaxHeight);
        poolLinkers._Prefab = _LinkerPrefab;
        poolLinkers._Tag    = ObjectPoolTypes.Linker;
        ObjectPooler.Instance.AddPool(poolLinkers);

        ObjectPooler.Pool poolSCT = new ObjectPooler.Pool();
        poolSCT._Count  = 20;
        poolSCT._Prefab = _ScrollingTextPrefab;
        poolSCT._Tag    = ObjectPoolTypes.SCT;
        ObjectPooler.Instance.AddPool(poolSCT);
    }