GameOver
How do I use Game Over
Below are practical examples compiled from projects for learning and reference purposes
Featured Snippets
File name: GameManager.cs
Copy
172 void Update () {
173
174#if UNITY_EDITOR
175 if (Input.GetKeyDown(KeyCode.Z)) {
176 GameManager.Instance.GameState.Checkmate();
177 GameOver(p1,GameOverType.CHECKMATE); //TODO delete
178 } else if (Input.GetKeyDown(KeyCode.X)) {
179 GameManager.Instance.GameState.Checkmate();
180 GameOver(p2,GameOverType.CHECKMATE); //TODO delete
181 } else if (Input.GetKeyDown(KeyCode.C)) {
182 GameManager.Instance.GameState.Stalemate();
183 GameOver(p2,GameOverType.STALEMATE);
184 }
185#endif
186
187 if (!ready) return;
188 if (gameState.IsGameOver) return;
189
190
191 //EXPERIMENT_TIMER
192 if (whiteTurn) {
193 whiteTimer -= Time.deltaTime;
194 if (whiteTimer < 0 ) {
195 whiteTimer = 0;
196 GameManager.Instance.GameState.OutOfTime();
197 GameOver(p2, GameOverType.OUT_OF_TIME);
198 }
199 UpdateWhiteTimer();
200 } else {
201 blackTimer -= Time.deltaTime;
202 if (blackTimer < 0 ) {
203 blackTimer = 0;
204 GameManager.Instance.GameState.OutOfTime();
205 GameOver(p1, GameOverType.OUT_OF_TIME);
206 }
207 UpdateBlackTimer();
208 }
209 }
File name: GameManager.cs
Copy
232 public void SwitchPlayer() {
233 if (currentPlayer != null) {
234 currentPlayer.DisableInput();
235 }
236
237 if (currentPlayer == p2) {
238 currentPlayer = p1;
239 whiteTurn = true;
240 mainCamera.GetComponent
241 } else if (currentPlayer == p1) {
242 currentPlayer = p2;
243 whiteTurn = false;
244 mainCamera.GetComponent
245 } else {
246 currentPlayer = p1;
247 whiteTurn = true;
248 }
249
250 //IF checkmate
251 if (Rules.HasNoMove()) {
252 InputManager.Instance.UnHighlightTile();
253 if (currentPlayer.IsChecked) {
254 GameManager.Instance.GameState.Checkmate();
255 GameOver(PlayerOponent, GameOverType.CHECKMATE);
256 print("CHECKMATE");
257 } else {
258 GameManager.Instance.GameState.Stalemate();
259 print("STALEMATE");
260 GameOver(currentPlayer, GameOverType.STALEMATE);
261 }
262 }
263
264 currentPlayer.EnableInput();
265 if (SwitchedEvent != null) {
266 SwitchedEvent(); //EXPERIMENTAL
267 }
268
269 print("Turn of: " + currentPlayer.Type); //show on screen
270 }
File name: GameManager.cs
Copy
278 public void GameOver(GCPlayer winner, GameOverType gameOverType) {
279 AddGame();
280 switch (gameOverType) {
281 case GameOverType.CHECKMATE:
282 if (winner == p2) {
283 winnerText.text = "CHECKMATE: BLACK wins";
284 AddScore(PLAYER_BLACK);
285 } else if (winner == p1) {
286 winnerText.text = "CHECKMATE: WHITE wins";
287 AddScore(PLAYER_WHITE);
288 }
289 break;
290 case GameOverType.STALEMATE:
291 winnerText.text = "STALEMATE: It's a tie";
292 break;
293 case GameOverType.OUT_OF_TIME:
294 if (winner == p1) {
295 winnerText.text = "OUT OF TIME: WHITE wins";
296 AddScore(PLAYER_WHITE);
297 } else if (winner == p2) {
298 winnerText.text = "OUT OF TIME: BLACK wins";
299 AddScore(PLAYER_BLACK);
300 }
301 break;
302 }
303 continueButton.SetActive(true);
304 }
File name: GameState.cs
Copy
64 public void Checkmate() {
65 state = GameStateType.GAME_OVER;
66 gameOverType = GameOverType.CHECKMATE;
67 }
File name: GameState.cs
Copy
69 public void OutOfTime() {
70 state = GameStateType.GAME_OVER;
71 gameOverType = GameOverType.OUT_OF_TIME;
72 }
File name: GameState.cs
Copy
74 public void Stalemate() {
75 state = GameStateType.GAME_OVER;
76 gameOverType = GameOverType.STALEMATE;
77 }
File name: GameState.cs
Copy
79 public bool IsGameOver {
80 get {
81 if (state == GameStateType.GAME_OVER) return true;
82 return false;
83 }
84 }
File name: GameManagerScript.cs
Copy
69 public void playAgain () {
70 Time.timeScale = 1f;
71 pauseButton.gameObject.SetActive (true);
72 SceneManager.LoadScene ("Gameplay");
73 gameOverPanel.SetActive (false);
74 }
File name: GameManagerScript.cs
Copy
88 public void gameOver (int score, int coins) {
89 coinScore.gameObject.SetActive (false);
90 pauseButton.gameObject.SetActive (false);
91 gameOverPanel.SetActive (true);
92 gameOverBestScore.text = "Your Score: " + score;
93 gameOverHighCoinScore.text = "Your Coin Score: " + coins;
94
95 }
File name: PlayerMoveScript.cs
Copy
98 void OnCollisionEnter2D(Collision2D target) {
99 if(target.gameObject.tag == "died" || target.gameObject.tag == "Crates") {
100 jumpForce = 0;
101 scoreCount = 0;
102 anim.SetTrigger ("Died");
103 scoreText.gameObject.SetActive (false);
104 audioSource.PlayOneShot (diedClip);
105 FindObjectOfType
106 FindObjectOfType
107 FindObjectOfType
108 }
109 }
Download file with original file name:GameOver
GameOver 298 lượt xem
Gõ tìm kiếm nhanh...