Menu
CoddyTech

키를 눌러 다시 시작

Coddy Godot 여정의 게임 규칙 섹션에 포함된 레슨. 29개 중 15번째.

이 줄은 현재 장면을 버리고 파일에서 새로 불러옵니다:

get_tree().reload_current_scene()

새 게임은 목숨 3개로 시작하며, 플레이어는 초록색 사각형에 있고 게임 오버 화면은 숨겨져 있습니다.

Main도 일시 중지되므로, _process는 키 입력을 감지하지 못합니다. Main 자체의 process_mode를 Node.PROCESS_MODE_ALWAYS로 설정하세요. 플레이어를 제외한 자식 노드들은 이 설정을 상속합니다. 장면에서 플레이어를 일시 중지 가능으로 설정하므로, 플레이어는 계속 멈춰 있습니다.

장면을 다시 불러와도 게임의 일시 중지는 해제되지 않습니다. 다시 불러오기 전에 get_tree().paused = false로 설정하세요. 그렇지 않으면 새 게임이 일시 중지된 상태로 시작합니다.

challenge icon

챌린지

쉬움

게임 오버 후 플레이어가 E를 눌러 다시 플레이할 수 있게 합니다.

  1. _ready()에서 이 노드의 process_mode를 Node.PROCESS_MODE_ALWAYS로 설정합니다.
  2. _process()에서 lives가 0이고 action이 방금 눌렸을 때 게임 일시 정지를 해제하고 씬을 다시 불러옵니다.

직접 해보기

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)
	$Blink.process_mode = Node.PROCESS_MODE_ALWAYS

func _process(delta):
	pass

func _on_player_hurt():
	lives -= 1
	$HUD/Lives.text = "Lives: %d" % lives
	if lives == 0:
		$HUD/GameOver.visible = true
		$HUD/Hint.visible = true
		get_tree().paused = true

func _on_blink_timeout():
	if lives == 0:
		$HUD/GameOver.visible = not $HUD/GameOver.visible
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

게임 규칙의 모든 레슨

직접 연습해 보세요: Godot 플레이그라운드