Ejemplo 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);
        }
Ejemplo n.º 2
0
 public void Execute(float deltaTime)
 {
     if (_weaponLocker.IsLocked)
     {
         _upTimer.UpTimerTick(deltaTime);
         if (Mathf.Approximately(_upTimer.CurrentValue, _upTimer.MAXValue))
         {
             _weaponLocker.IsLocked = false;
         }
     }
     _bulletManager.Execute(deltaTime);
 }