public void HandleActivatePowerUpAttempt() { // If we don't have any stored PowerUps, then nothing to do if (storedPowerUps.Count == 0) { Debug.Log("No Stored PowerUps"); return; } // Check if any active PowerUps are blocking the activation of // the next PowerUp before removing it from storedPowerUps IPowerUp nextPwrUp = storedPowerUps.Peek(); if (!nextPwrUp.IsBlocked(activePowerUps)) { storedPowerUps.Dequeue(); storedPowerUpWidget.UpdateStoredPowerUpIcons(storedPowerUps); ActivatePowerUp(nextPwrUp); } else { // Display a warning saying we're blocked } }