Dieci tubi per vincere
Fa parte della sezione Progetti del percorso Godot di Coddy. Lezione 25 di 33.
Il giocatore può perdere, ma non ancora vincere. Quando il punteggio raggiunge 10, mostra You Win! e metti in pausa. Provalo nel punto in cui il punteggio aumenta:
if score == 10:
$HUD/Message.text = "You Win!"
get_tree().paused = trueInfine, consenti al giocatore di giocare di nuovo. Quando il gioco è in pausa, la barra spaziatrice ricarica la scena. Main è Always, quindi _process continua a essere eseguito:
func _process(delta):
if get_tree().paused and Input.is_action_just_pressed("jump"):
get_tree().paused = false
get_tree().reload_current_scene()La barra spaziatrice è anche il tasto per sbattere le ali. Il volatore è Pausable, quindi ignora la pressione del tasto mentre il gioco è in pausa.
Sfida
Medio- Quando il punteggio raggiunge 10, mostra
You Win!e metti in pausa il gioco. - Mentre il gioco è in pausa, la barra spaziatrice (
jump) toglie la pausa e ricarica la scena.
Provalo tu
extends Node2D
const PIPE = preload("res://pipe.tscn")
var score = 0
func _ready():
$PipeTimer.timeout.connect(_on_pipe_timer_timeout)
$Flyer.crashed.connect(_on_crash)
$HUD/Score.text = "0"
func _on_pipe_timer_timeout():
var pipe = PIPE.instantiate()
pipe.position = Vector2(700, randf_range(100, 250))
pipe.hit.connect(_on_crash)
pipe.scored.connect(_on_scored)
$Pipes.add_child(pipe)
func _on_crash():
$HUD/Message.text = "Game Over"
get_tree().paused = true
func _on_scored():
score += 1
$HUD/Score.text = str(score)
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Progetti
3Progetto: Flappy Flyer
La gravità del FlyerFai sbattere le ali al FlyerEsercitati da solo: Playground Godot