체크포인트
Coddy Godot 여정의 시그널과 충돌 섹션에 포함된 레슨. 27개 중 20번째.
체크포인트는 가시에 닿았을 때 이동하는 위치를 바꿉니다. 따라서 시작 지점은 main.gd 맨 위에 선언하여 모든 함수에서 접근할 수 있는 변수가 됩니다:
var start_point = Vector2(80, 280)
func _on_spikes_body_entered(body):
body.position = start_point가시에 닿으면 그 순간 start_point에 저장된 위치로 이동합니다. 변수를 바꾸면 다음에 가시에 닿았을 때 그 위치로 이동합니다.
start_point = ...로 값을 바꾸세요. 함수 안에 var start_point = ...라고 쓰면 해당 함수 안에서만 존재하는 새 변수가 만들어집니다. 맨 위에 선언된 변수는 그대로 유지됩니다.
챌린지
중급깃발을 체크포인트로 만드세요.
_on_checkpoint_body_entered에서var없이start_point를$Checkpoint.position으로 설정하세요.- 깃발을 민트색으로 바꾸세요:
$Checkpoint.modulate = Color(0.49, 0.95, 0.75).
‘플레이’를 누르고 깃발에 닿은 다음 가시에 닿으세요. 깃발 위치로 돌아옵니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
extends Node2D
var start_point = Vector2(80, 280)
func _ready():
$Spikes.body_entered.connect(_on_spikes_body_entered)
$Checkpoint.body_entered.connect(_on_checkpoint_body_entered)
func _on_spikes_body_entered(body):
body.position = start_point
func _on_checkpoint_body_entered(body):
pass
시그널과 충돌의 모든 레슨
직접 연습해 보세요: Godot 플레이그라운드