スクリーンセーバー:上端と下端
CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 26/28。
上端と下端も左右の端と同じように機能しますが、y上で動作します。そこで跳ね返ると、velocity.yの符号が反転します。
プレートの高さは60ピクセルなので、その中央は上端と下端からそれぞれ30ピクセルの位置にあります。ロゴの中央が360 - 30 = 330の位置にあると下端に触れ、30の位置にあると上端に触れます。
最初のifの下に、2つ目のifを書きます。それぞれのifは個別にチェックされるので、角では同じフレーム内にロゴが側面と下端の両方で跳ね返ります。
チャレンジ
簡単ロゴが上端と下端にも当たって跳ね返るようにしましょう。
- 最初の
ifの下に、2つ目の条件文を追加します。position.yが330より大きい、または30より小さい場合です。 - その中で、
velocity.yの符号を反転させます。
「プレイ」を押すと、ロゴが画面内を跳ね回り、画面外に出なくなります。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var velocity = Vector2(200, 90)
func _process(delta):
position += velocity * delta
if position.x > 570 or position.x < 70:
velocity.x = -velocity.x
ノードとシーンのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド