// Event void OnPhaseChange(BridgePhase phase) { inputAllowed = false; switch (phase) { case BridgePhase.Start: break; case BridgePhase.Countdown: break; case BridgePhase.Building: inputAllowed = true; timerObject.StartTimer(); break; case BridgePhase.Falling: timerObject.StartTimer(); break; case BridgePhase.Crossing: timerObject.StopTimer(); break; case BridgePhase.Lose: gameStarted = false; GameOver(DataType.GameEnd.FailedLevel); break; case BridgePhase.Finish: gameStarted = false; StartCoroutine(GameOverSequence()); break; } }
// Public Event public void ChangePhase(BridgePhase phase) { if (bridgePhase != phase) { bridgePhase = phase; print("Manager ChangePhase firing: " + phase); PhaseChange(phase); } }