画面端で折り返す
CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 17/28。
右に移動するノードは、画面の端を越えて進み続けます。折り返しによって、反対側に戻ります。
ifは、条件がtrueのときだけその中の行を実行します。_process()では、毎フレーム確認されます。
func _process(delta):
position.y += 100 * delta
if position.y > 360:
position.y = 0ノードは落下します。画面の下端を通り過ぎると、yは360より大きくなり、一番上に戻ります。ifの中の行にはタブが2つあります。1つは関数用、もう1つはif用です。
このゲームの幅は640ピクセルなので、右端はx = 640です。
チャレンジ
簡単ロボットが左側から戻ってくるようにしましょう。
_process()内で、ロボットを移動させる行の下に、position.xが640より大きい場合のifを追加します。- その中で、
position.xを0に設定します。
「プレイ」を押します。ロボットは右側から出て、同じ高さで左側から戻ってきます。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var speed = 200
func _process(delta):
position.x += speed * delta
ノードとシーンのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド