ノードのパス
CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 20/28。
このシーンでは、目はツリーのさらに奥にあります。FaceはRobotの子で、EyesはFaceの子、2つの目はEyesの子です。
$Eyesは何も見つけられません。Eyesはロボットの孫ノードだからです。そこにたどり着くには、パスを書きます。下へたどるときに通る名前を、間に/を入れて並べます。
get_node("Face/Mouth").position.y += 2
$Face/Mouth.position.y += 2 # 同じ処理を、より短く書いたものget_node()はパスをテキストとして受け取ります。$はそれを短く書く方法です。パスが間違っていると、ゲームはNode not foundと表示して停止します。
チャレンジ
簡単ロボットが上と左を見るようにします。
_ready()で、get_node("Face/Eyes")を使って目にアクセスします。- 目の
positionをVector2(-4, -3)に設定します。
「プレイ」を押すと、両目が上と左に動き、顔と口はそのままです。その後、「確認」を押します。
自分で試してみよう
extends Node2D
func _ready():
pass
ノードとシーンのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド