Menu
CoddyTech

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_ALWAYS

Le script fait maintenant clignoter « Game Over » avec un Timer appelé Blink. La pause arrête ce minuteur, donc le message ne clignote jamais.

challenge icon

Défi

Facile

Faites clignoter Game Over pendant que le jeu est en pause.

  1. Dans _ready(), prenez le minuteur Blink.
  2. Définissez son process_mode sur Node.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

Entraînez-vous par vous-même : Playground Godot