ダンジョンを歩く
CoddyのGodotジャーニー「プロジェクト」セクションの一部。レッスン 26/33。
最後のプロジェクトは、上から見下ろすダンジョンクローラーです。主人公は鍵を取り、ドアを開け、警備兵を通り抜けて階段にたどり着きます。
スクリプトはhero.gd、enemy.gd、main.gdです。壁はWallsという名前のStaticBody2Dで、すでにシーン内にあります。
主人公は4方向に歩きます。Input.get_vectorは4つすべてのキーを読み取り、長さが1の方向ベクトルを返すため、斜めに進んでも速くなりません。move_and_slide()はvelocityに基づいてボディを動かし、壁に沿って滑らせます。
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()move_and_slideはdeltaを内部で使うため、deltaを掛ける必要はありません。
チャレンジ
簡単hero.gdにconst SPEED = 160を追加します。物理フレームごとに、velocityを4つの移動アクションに対するInput.get_vectorの値にSPEEDを掛けたものに設定します。その後、move_and_slide()を呼び出します。
自分で試してみよう
extends CharacterBody2D
func _physics_process(delta):
pass
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
プロジェクトのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド