Menu
CoddyTech

시간 안에 끝내기

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

카운트다운은 0이 되어도 아무 일도 일어나지 않고 -1, -2로 계속 내려갑니다. 다음 규칙을 추가하세요:

  • 시간이 0이 되면 플레이어는 패배합니다. Time's up!을 표시하고 게임을 멈추세요.
  • 플레이어가 깃발에 먼저 도달하면 승리합니다. You win!을 표시하고 게임을 멈추세요.

get_tree().paused = true로 게임을 멈추세요. 일시 정지하면 시계가 멈추므로 시간이 끝난 시점에 그대로 유지됩니다. 플레이어도 멈추므로 시간이 다 된 후에는 아무도 승리하지 않습니다.

if time_left == 0:
	$HUD/Message.text = "Time's up!"
	get_tree().paused = true
challenge icon

챌린지

쉬움
  1. _on_clock_timeout()에서 라벨 줄 다음에 time_left가 0인지 확인하세요. 그렇다면 $HUD/Message에 Time's up!을 표시하고 게임을 일시 정지하세요.
  2. _on_goal_body_entered(body)에서 You win!을 표시한 다음 게임을 일시 정지하세요.

직접 해보기

extends Node2D

var time_left = 10

func _ready():
	$HUD/Time.text = "Time: %d" % time_left
	$Goal.body_entered.connect(_on_goal_body_entered)
	$Clock.timeout.connect(_on_clock_timeout)

func _on_goal_body_entered(body):
	if body.is_in_group("player"):
		$HUD/Message.text = "You win!"

func _on_clock_timeout():
	time_left -= 1
	$HUD/Time.text = "Time: %d" % time_left
quiz icon실력 점검

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

게임 규칙의 모든 레슨

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