Menu
CoddyTech

Blocco all'impatto

Fa parte della sezione Sensazioni di gioco del percorso Godot di Coddy. Lezione 17 di 23.

Un congelamento all'impatto ferma il gioco per una frazione di secondo quando va a segno un colpo. Fa sembrare il colpo più potente.

Engine.time_scale è la velocità dell'orologio del gioco. A 1 il gioco procede normalmente. A 0.05, i movimenti, le animazioni interpolate e i timer procedono venti volte più lentamente.

Engine.time_scale = 0.05
await get_tree().create_timer(0.1, true, false, true).timeout
Engine.time_scale = 1.0

Un timer normale usa l'orologio rallentato, quindi 0.1 secondi durerebbero due secondi reali. L'ultimo true in create_timer fa sì che il timer ignori time_scale e conti i secondi reali. I due valori che lo precedono sono quelli predefiniti abituali.

Riporta sempre time_scale a 1. Influisce sull'intero gioco e rimane attivo finché il codice non lo modifica.

challenge icon

Sfida

Medio

Blocca il gioco per un momento quando viene colpito.

  1. Dopo il lampo in hit(), imposta Engine.time_scale su 0.05.
  2. Attendi 0.1 secondi reali usando un timer che ignora la scala temporale, come mostrato sopra.
  3. Imposta di nuovo Engine.time_scale su 1.0.

Premi «Gioca» e premi E: il drone si ferma per un momento. Poi premi «Verifica».

Provalo tu

extends Node2D

func hit():
	modulate = Color(4, 4, 4)
	var tween = create_tween()
	tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)

Tutte le lezioni di Sensazioni di gioco

Esercitati da solo: Playground Godot