public HealthMonitor(
     ILogFactory logFactory,
     IHealthProvider healthProvider,
     TimeSpan monitoringPeriod)
 {
     _healthProvider   = healthProvider;
     _timer            = new TimerTrigger(nameof(HealthMonitor), monitoringPeriod, logFactory);
     _timer.Triggered += HandleMonitoringTimer;
 }
Example #2
0
 public StartupManager(
     ILogFactory logFactory,
     IHealthMonitor healthMonitor,
     IHealthProvider healthProvider,
     IBlockchainInfoProvider blockchainInfoProvider,
     IDependenciesInfoProvider dependenciesInfoProvider,
     ISettingsRenderer settingsRenderer)
 {
     _log                      = logFactory.CreateLog(this);
     _healthMonitor            = healthMonitor;
     _healthProvider           = healthProvider;
     _blockchainInfoProvider   = blockchainInfoProvider;
     _dependenciesInfoProvider = dependenciesInfoProvider;
     _settingsRenderer         = settingsRenderer;
 }
Example #3
0
 public void Fire()
 {
     if (_weapon.CanShoot())
     {
         _weapon.CurrentAmmoInClip--;
         var hit = _rayProvider.CheckRay(_rayProvider.CreateRay());
         if (hit.collider != null)
         {
             _healthProvider = hit.collider.GetComponent <IHealthProvider>();
             _healthProvider?.TakeDamage(_weapon.damage);
             _weapon.CurrentFireRate = _weapon.fireRate;
         }
     }
     else if (!_weapon.CanShoot())
     {
         _weapon.CurrentFireRate -= Time.deltaTime;
     }
     Reload();
 }
Example #4
0
 public void Fire()
 {
     AmmoUI();
     if (_weapon.CanShoot() && _inputProvider.Shoot)
     {
         _weapon.CurrentAmmoInClip--;
         _weapon.CurrentFireRate = _weapon.fireRate;
         _bulletFlashParticleSystem.Play();
         var hit = _rayProvider.CheckRay(_rayProvider.CreateRay());
         if (hit.collider != null)
         {
             _healthProvider = hit.collider.GetComponent <IHealthProvider>();
             _healthProvider?.TakeDamage(_weapon.damage);
         }
     }
     else if (!_weapon.CanShoot())
     {
         _weapon.CurrentFireRate -= Time.deltaTime;
     }
 }
Example #5
0
        public void Register(IHealthProvider healthProvider)
        {
#warning TODO - zarejestrować to z różnych (albo jednej) klas
            _providers.Add(healthProvider);
        }
 public HealthController(IHealthProvider health)
 {
     this.health = health;
 }