void SecondWarning() { if (dangerState != DangerState.SecondWarning) { dangerState = DangerState.SecondWarning; SFXMan.sfx_Warning.Play(); } }
void FirstWarning() { if (dangerState != DangerState.FirstWarning) { dangerState = DangerState.FirstWarning; SFXMan.sfx_Warning.Play(); } }
public DangerState dangerState; //this is to establish dashboard alert color public CubesAndTags() { this.boundingCube = new List <GameObject>(); this.infoTag = new List <GameObject>(); this.bounds = new List <Bounds>(); this.dangerState = DangerState.NONE; this.alreadyEvaluated = false; this.alreadyPlayed = false; this.prevState = 1.0f; this.obstaclePrevPos = Vector3.zero; }
public IEnumerator GameLost_cr() { if (dangerState != DangerState.GameOver) { SFXMan.StopSong(); gameState = GameState.GameLost; CardMan.CardCascade(); SFXMan.sfx_GameOver.Play(); dangerState = DangerState.GameOver; yield return(new WaitForSeconds(3)); StartCoroutine(InitiateWave_cr()); SceneManager.LoadScene("MainMenu"); } }
IEnumerator InitiateWave_cr() { //Present wave SFXMan.sfx_StartWave.Play(); var wave = MainGame.Wave; CardSceneGui.DisplayGuiMessage(string.Format("Clear {1} cards!", wave, wave * (CardMan.cardPairsPerWave * 2)), Color.white); yield return(new WaitForSeconds(3)); SFXMan.PlayAsSong(SFXMan.sng_CardSong); dangerState = DangerState.VerySafe; GravityStrength = 1f; InvokeRepeating("SlowUpdate", 0, 1F); CardMan.SetupWave(); gameState = GameState.GameOn; }
void SlowUpdate() { if (gameState == GameState.GameOn) { if (!HasPickUp) { if (Random.Range(0, 7) == 0) { pickUp = Instantiate(Resources.Load("Prefabs/CardGame/Pickup")) as GameObject; } else { print("No pickup today!"); } } if (!IsGravityPaused) { // ADD GRAVITY OVER TIME GravityStrength += gravityAcceleration; if (GravityStrength > 150) { gravityAcceleration = 0.05f; } else if (GravityStrength > 250) { gravityAcceleration = 0.02f; } else { gravityAcceleration = 0.07f; } } // CHECK CARDS POSITION for game over var cardWidth = Card.cardDimensions.x; var allCards = cardMan.AllCardsByLowXPosition(); foreach (var card in allCards) { var xPos = card.Box().center.x; if (xPos <= gameOverRange) { StartCoroutine(GameLost_cr()); return; } else if (xPos <= gameOverRange + cardWidth) { SecondWarning(); return; } else if (xPos <= gameOverRange + cardWidth * 2) { FirstWarning(); return; } } if (dangerState != DangerState.VerySafe) { dangerState = DangerState.VerySafe; SFXMan.sfx_Score.Play(); } } }