1つの軸
CoddyのGodotジャーニー「入力と移動」セクションの一部。レッスン 3/28。
左と右は、1本の線、つまり軸の両端です。Input.get_axis()は両方のアクションを確認し、1つの数値を返します。
- 最初のアクションが押されている間は
-1(左) - 2つ目のアクションが押されている間は
1(右) - どちらも押されていない場合、または両方が押されている場合は
0
その数値に速度を掛けると、ifを使わずにヒーローが正しい方向へ移動します。
var speed = 300
func _process(delta):
var direction = Input.get_axis("move_left", "move_right")
position.x += direction * speed * deltadirectionが-1のとき、xは小さくなり、ヒーローは左に移動します。0のとき、ヒーローは動きません。
チャレンジ
簡単1 行の入力で主人公を左右に歩かせましょう。
_process()で、Input.get_axis("move_left", "move_right")をvar directionに格納します。- 1 秒あたり
direction * speedだけposition.xを動かします。
「プレイ」を押します。矢印キーで主人公が 1 秒あたり 300 ピクセルの速さで歩き、両方を同時に押すとその場にとどまります。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var speed = 300
func _process(delta):
pass
入力と移動のすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド