Mode de traitement
Fait partie de la section Règles du jeu du Journey Godot de Coddy. Leçon 14 sur 29.
Un jeu en pause arrête chaque nœud. Certains nœuds devraient continuer à fonctionner, comme un message « Game Over » clignotant ou un menu de pause.
Le process_mode d’un nœud détermine :
Node.PROCESS_MODE_INHERIT: faire comme le parent. C’est le comportement par défaut.Node.PROCESS_MODE_PAUSABLE: s’arrêter lorsque le jeu est en pause.Node.PROCESS_MODE_ALWAYS: continuer à fonctionner, que le jeu soit en pause ou non.
$Music.process_mode = Node.PROCESS_MODE_ALWAYSLe script fait maintenant clignoter « Game Over » avec un Timer appelé Blink. La pause arrête ce minuteur, donc le message ne clignote jamais.
Défi
FacileFaites clignoter Game Over pendant que le jeu est en pause.
- Dans
_ready(), prenez le minuteurBlink. - Définissez son
process_modesurNode.PROCESS_MODE_ALWAYS.
Appuyez sur « Jouer » et perdez trois vies : Game Over clignote sur le jeu figé. Puis appuyez sur « Vérifier ».
Essayez vous-même
extends Node2D
var lives = 3
func _ready():
$HUD/Lives.text = "Lives: %d" % lives
$Player.hurt.connect(_on_player_hurt)
$Blink.timeout.connect(_on_blink_timeout)
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
if lives == 0:
$HUD/GameOver.visible = true
get_tree().paused = true
func _on_blink_timeout():
if lives == 0:
$HUD/GameOver.visible = not $HUD/GameOver.visible
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 toucheEntraînez-vous par vous-même : Playground Godot