Exemplo n.º 1
0
        public void Execute(float deltaTime)
        {
            if (_upTimer.MAXValue < _upTimer.CurrentValue)
            {
                AddBulletToList(_bulletPull.Get());

                _upTimer.ResetTimer();
            }
            else
            {
                for (int i = 0; i < _bullets.Count; i++)
                {
                    var bullet = _bullets[i];

                    MoveBullet(bullet, deltaTime);

                    if (_returnChecker.ShouldReturn(bullet))
                    {
                        _bulletPull.Return(bullet);
                    }
                }

                _bullets.RemoveAll(b => !b.gameObject.activeSelf);
            }

            _upTimer.UpTimerTick(deltaTime);
        }
Exemplo n.º 2
0
        public void Execute(float deltaTime)
        {
            if (!_weaponLocker.IsLocked)
            {
                if (_fire.IsKeyDown())
                {
                    AddBulletToList(_bulletPull.Get());
                }
            }

            for (int i = 0; i < _bullets.Count; i++)
            {
                var bullet = _bullets[i];

                MoveBullet(bullet, deltaTime);

                if (_returnChecker.ShouldReturn(bullet))
                {
                    _bulletPull.Return(bullet);
                }
            }

            _bullets.RemoveAll(b => !b.gameObject.activeSelf);
        }