그룹에 있나요?
Coddy Godot 여정의 시그널과 충돌 섹션에 포함된 레슨. 27개 중 12번째.
노드 하나는 body.name을 확인하면 됩니다. 여러 노드로 이루어진 집합은 그룹을 확인하세요:
if body.is_in_group("racers"):
print(body.name, " finished!")is_in_group()은 true 또는 false를 반환합니다. 노드가 하나뿐일 때도 사용하세요. 노드의 이름은 이름을 바꾸거나 노드를 복사하면 달라집니다. 그룹은 노드가 무엇인지를 나타냅니다.
로봇 세 대가 결승선을 향해 달립니다. Red와 Blue는 장면에서 설정한 racers 그룹에 속합니다. Bot은 트랙을 청소하며 어떤 그룹에도 속하지 않습니다.
챌린지
쉬움결승선이 경주자에 대해서만 출력되게 하세요.
_on_body_entered(body)에서print를if안에 넣으세요.if에서body.is_in_group("racers")를 확인하게 하세요.
‘플레이’를 누르세요. Console에 Red finished!와 Blue finished!가 표시되고, Bot에 대해서는 아무것도 표시되지 않습니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print(body.name, " finished!")
시그널과 충돌의 모든 레슨
직접 연습해 보세요: Godot 플레이그라운드