Disparo único
Parte da seção Regras do jogo do Journey de Godot da Coddy. Lição 4 de 29.
Um temporizador recomeça toda vez que chega ao fim. Isso funciona bem para uma luz piscante, mas uma bomba deve explodir apenas uma vez.
Defina one_shot como true, e o temporizador chega ao fim uma vez e então para:
$Timer.one_shot = trueChamar start() novamente faz com que ele funcione por mais uma vez.
Neste castelo, E abre o portão e inicia um temporizador de dois segundos. Quando o temporizador chega ao fim, ele fecha o portão.
Desafio
FácilFaça o portão fechar apenas uma vez.
- Em
_ready(), defina$Timer.one_shotcomotrue. - Deixe o restante como está, para que E continue abrindo o portão.
Pressione “Jogar” e, em seguida, E: dois segundos depois, o portão fecha e permanece fechado. Depois, pressione “Verificar”.
Experimente você mesmo
extends Node2D
func _ready():
$Timer.wait_time = 2
$Timer.timeout.connect(_on_timer_timeout)
func _process(delta):
if Input.is_action_just_pressed("action"):
$Gate.position.y = 20
$Timer.start()
func _on_timer_timeout():
$Gate.position.y += 140
Todas as lições de Regras do jogo
Pratique por conta própria: Playground de Godot