Menu
CoddyTech

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 = true

Chamar 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.

challenge icon

Desafio

Fácil

Faça o portão fechar apenas uma vez.

  1. Em _ready(), defina $Timer.one_shot como true.
  2. 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