시간 안에 끝내기
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챌린지
쉬움_on_clock_timeout()에서 라벨 줄 다음에time_left가 0인지 확인하세요. 그렇다면$HUD/Message에Time's up!을 표시하고 게임을 일시 정지하세요._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
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
게임 규칙의 모든 레슨
직접 연습해 보세요: Godot 플레이그라운드