Menu
CoddyTech

피하기: 게임 오버

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

목숨이 0개가 되어도 게임은 계속됩니다. 점수는 계속 올라가고 목숨은 0 아래로 내려갑니다.

가시 방에서 했던 것처럼 게임을 끝내세요. 숨겨진 GameOver 레이블을 표시하고 게임을 일시 정지하세요. 일시 정지하면 타이머 두 개가 모두 멈추므로 점수는 살아남은 시간(초)에서 멈춥니다. 블록도 그 자리에 멈춥니다.

if lives == 0:
	$HUD/GameOver.visible = true
	get_tree().paused = true
challenge icon

챌린지

중급

_on_player_hurt()에서 레이블 줄 다음에 lives가 0인지 확인하세요. 그렇다면 $HUD/GameOver를 표시하고 게임을 일시 중지하세요.

직접 해보기

extends Node2D

var block_scene = preload("res://block.tscn")
var score = 0
var lives = 3

func _ready():
	$HUD/Score.text = "Score: %d" % score
	$HUD/Lives.text = "Lives: %d" % lives
	$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
	$ScoreTimer.timeout.connect(_on_score_timer_timeout)
	$Player.hurt.connect(_on_player_hurt)

func _on_spawn_timer_timeout():
	var block = block_scene.instantiate()
	block.position = Vector2(randf_range(40, 600), -30)
	add_child(block)

func _on_score_timer_timeout():
	score += 1
	$HUD/Score.text = "Score: %d" % score

func _on_player_hurt():
	lives -= 1
	$HUD/Lives.text = "Lives: %d" % lives
quiz icon실력 점검

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

게임 규칙의 모든 레슨

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