private IEnumerator SlowDownEnemies() { onlySlowEnemies = true; GameStateManager.BeginMultiDecay(); yield return(new WaitForSeconds(POWERUP_ENERGY_TIME)); GameStateManager.RestoreMultiDecay(); onlySlowEnemies = false; }
void Update() { isDead = (currentHealth <= 0); // I've alwayds liked brackets for booleans if (!isDead) { if (Input.GetKey(KeyCode.Mouse0)) { isFiring = true; } PointToMouse(); bool noMeter = playerStatus.IsOutOfEnergy(); bool atMaxEnergy = playerStatus.IsAtMaxEnergy(); if (Input.GetKeyDown(KeyCode.LeftShift) && !decaying && atMaxEnergy) { GameStateManager.BeginMultiDecay(); decaying = true; } else if (noMeter && decaying) { GameStateManager.RestoreMultiDecay(); decaying = false; } shovable = (GameStateManager.GetTimeMulti() <= GameStateManager.THRESHOLD && !noMeter); //Making sure the player health can't go above the max if they collected too many health ups or something if (currentHealth > maxHealth) { currentHealth = maxHealth; } } else { //this.gameObject.SetActive(false); rb.velocity = new Vector2(0, 0); GetComponent <SpriteRenderer>().color = new Color(1f, 1f, 1f, 0.0f); SpriteRenderer[] childrenRenderers = GetComponentsInChildren <SpriteRenderer>(); foreach (SpriteRenderer renderer in childrenRenderers) { renderer.color = new Color(1f, 1f, 1f, 0.0f); } } if (SpawnManager.enemyKilled) { score++; SpawnManager.enemyKilled = false; } }