Menu
CoddyTech

上にジャンプする

CoddyのGodotジャーニー「入力と移動」セクションの一部。レッスン 13/28。

ジャンプさせるには、プレイヤーがjumpを押したフレームで、velocity.yに大きな上向きの速度を設定します。上方向はyが小さくなるため、数値は負になります。

var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	if Input.is_action_just_pressed("jump"):
		velocity.y = jump_velocity
	move_and_slide()

下降する動きはコードに書く必要はありません。重力によってvelocity.yが増え続けるため、ヒーローは上昇するにつれて減速し、頂点で止まってから落下します。

is_action_pressedではなく、is_action_just_pressedを使います。キーを押し続けると、毎フレーム速度が-500に設定され、ヒーローが画面外へ飛んでいってしまいます。

challenge icon

チャレンジ

簡単

jumpを押したとき、velocity.yをjump_velocityに設定します。ヒーローは上にジャンプし、再び床に着地するはずです。キーを押し続けても、飛び続けてはいけません。

自分で試してみよう

extends CharacterBody2D

var gravity = 1000
var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	move_and_slide()
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

入力と移動のすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド