private void OnDamageTaken(uint amount) { if (currentHealth == 1 || currentHealth == 0) { currentHealth = 0; } else { currentHealth -= amount; } GameEventObserver.FireHUDHealthEvent(currentHealth); }
void Start() { currentHealth = defaultHealth; GameEventObserver.FireHUDHealthEvent(currentHealth); GameEventObserver.FireHUDMaxWaveEvent((uint)waves.Length); PoolManager.Initialize(); for (int index = 0; index < poolableObjects.Length; index++) { var poolableObject = poolableObjects[index]; PoolManager.AddToPool(poolableObject); } GameEventObserver.AddOnDamageTakenListener(OnDamageTaken); StartCoroutine(SpawnCoroutine()); GameEventObserver.FireHUDHealthEvent(currentHealth); }