Menu
CoddyTech

Modalità di elaborazione

Fa parte della sezione Regole di gioco del percorso Godot di Coddy. Lezione 14 di 29.

Un gioco in pausa ferma tutti i nodi. Alcuni nodi dovrebbero continuare a funzionare, come un messaggio Game Over lampeggiante o un menu di pausa.

La proprietà process_mode di un nodo decide:

  • Node.PROCESS_MODE_INHERIT: fa quello che fa il nodo genitore. Questa è l'impostazione predefinita.
  • Node.PROCESS_MODE_PAUSABLE: si ferma quando il gioco è in pausa.
  • Node.PROCESS_MODE_ALWAYS: continua a funzionare, sia in pausa sia no.
$Music.process_mode = Node.PROCESS_MODE_ALWAYS

Lo script ora fa lampeggiare Game Over con un Timer chiamato Blink. La pausa ferma quel timer, quindi il messaggio non lampeggia mai.

challenge icon

Sfida

Facile

Mantieni Game Over lampeggiante mentre il gioco è in pausa.

  1. In _ready(), prendi il timer Blink.
  2. Imposta il suo process_mode su Node.PROCESS_MODE_ALWAYS.

Premi «Gioca» e perdi tre vite: Game Over lampeggia sopra il gioco congelato. Poi premi «Verifica».

Provalo tu

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

Tutte le lezioni di Regole di gioco

Esercitati da solo: Playground Godot