Menu
CoddyTech

ジャンプパッド

CoddyのLuaジャーニー「Robloxゲームのスクリプティング」セクションの一部。レッスン 18/24。

JumpHeight は、キャラクターがどれだけ高くジャンプするかをスタッド単位で表します。既定値は 7.2 で、キャラクターの身長ほどの高さです。

古いゲームでは、代わりに JumpPower が使われています。これはキャラクターが地面を離れるときの速度です。新しい Roblox のプレースでは、UseJumpPower が有効になっていない限り JumpPower は無視されます(Studio では StarterPlayer の CharacterUseJumpPower)。そのため、チュートリアルの JumpPower スクリプトを実行しても何も起きない場合は、これが原因です。JumpHeight のほうがシンプルで、数値がそのまま高さを表します。

しばらく効果が続くパワーアップは、後で元に戻す必要があります。task.delay(seconds, function) は、コードの残りを一時停止せずに、指定した秒数が経過した後で関数を実行します。

humanoid.WalkSpeed = 30
task.delay(10, function()
	humanoid.WalkSpeed = 16
end)
print("Boost on")

Boost on はすぐに出力され、10 秒後に速度が 16 に戻ります。

パッドはプロパティを変更するだけです。ジャンプするには、プレイヤーが引き続き Space を押します。

challenge icon

チャレンジ

中級

黄色の足場は高さ14スタッドで、通常のジャンプの約2倍です。その手前にある青いパッドがジャンプパッドで、このスクリプトはその中にあります。

キャラクターがパッドに触れたとき:

  1. JumpHeightを20に設定する
  2. 5秒後に7.2に戻す

Playを押し、パッドに乗ってから足場に向かって走り、ジャンプします。その後、Checkを押します。

自分で試してみよう

local pad = script.Parent

pad.Touched:Connect(function(hit)
	local humanoid = hit.Parent:FindFirstChild("Humanoid")
	if humanoid then
		-- 1. このプレイヤーが 20 スタッドの高さまでジャンプできるようにする
		-- 2. 5 秒後に通常の 7.2 に戻す
	end
end)
quiz icon腕試し

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

Robloxゲームのスクリプティングのすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ