Esquive : Fin de partie
Fait partie de la section Règles du jeu du Journey Godot de Coddy. Leçon 28 sur 29.
À zéro vie, le jeu continue. Le score continue de grimper et le nombre de vies passe sous zéro.
Termine le jeu comme tu l’as fait dans la salle des pics. Affiche le libellé caché GameOver et mets le jeu en pause. La pause arrête les deux minuteurs, donc le score reste égal au nombre de secondes pendant lesquelles tu as survécu. Les blocs s’arrêtent là où ils se trouvent.
if lives == 0:
$HUD/GameOver.visible = true
get_tree().paused = trueDéfi
MoyenTermine la partie lorsque toutes les vies sont épuisées.
- Dans
_on_player_hurt(), après la ligne de mise à jour de l’étiquette, vérifie silivesvaut 0. - Si c’est le cas, affiche
$HUD/GameOveret mets le jeu en pause.
Appuie sur « Jouer » et subis trois coups : Game Over s’affiche et les blocs s’arrêtent. Puis appuie sur « Vérifier ».
Essayez vous-même
extends Node2D
var block_scene = preload("res://block.tscn")
var score = 0
var lives = 3
func _ready():
$HUD/Score.text = "Score: %d" % score
$HUD/Lives.text = "Lives: %d" % lives
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
$ScoreTimer.timeout.connect(_on_score_timer_timeout)
$Player.hurt.connect(_on_player_hurt)
func _on_spawn_timer_timeout():
var block = block_scene.instantiate()
block.position = Vector2(randf_range(40, 600), -30)
add_child(block)
func _on_score_timer_timeout():
score += 1
$HUD/Score.text = "Score: %d" % score
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
Toutes les leçons de Règles du jeu
3Vies et défaites
ViesFin de partieMettre le jeu en pauseMode de traitementRedémarrer avec une touche6Projet : Esquive
Esquive : Blocs qui tombentEsquive : ScoreEntraînez-vous par vous-même : Playground Godot