【Roblox Studio】空中ジャンプの作り方

○○の作り方

0. 完成動画

1. はじめに

Roblox Studioでは、デフォルトでプレイヤーは地面にいるときしかジャンプできません。しかし、スクリプトを活用することで、プレイヤーが空中でもジャンプできる「空中ジャンプ」を実装することができます。本記事では、その方法を詳しく解説します。

2. 使用する機能

  • Humanoid.StateChanged
  • Humanoid:GetState()
  • Humanoid:ChangeState()
  • FindFirstChildOfClass()
  • UserInputService.InputBegan
  • Enum.KeyCode.Space
  • CharacterAdded:Wait()

3. 空中ジャンプを可能にするスクリプト

以下のスクリプトを StarterCharacterScripts に配置すると、プレイヤーが空中でもジャンプできるようになります。

3.1 スクリプトのコード

local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait() -- キャラがロードされるのを待つ
local humanoid = character:FindFirstChildOfClass("Humanoid")
local UserInputService = game:GetService("UserInputService")

if humanoid then
    -- HumanoidクラスのStateChangedイベントを設定
    humanoid.StateChanged:Connect(function(oldState, newState)
        if newState == Enum.HumanoidStateType.Jumping then
            -- ジャンプキーが押されたら空中でもジャンプできるようにする
            UserInputService.InputBegan:Connect(function(inputObject)
                if inputObject.KeyCode == Enum.KeyCode.Space then
                    if humanoid:GetState() ~= Enum.HumanoidStateType.Jumping then
                        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
                    end
                end
            end)
        end
    end)
end

4. コードの解説

4.1 プレイヤーのキャラクターとHumanoidを取得

local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:FindFirstChildOfClass("Humanoid")
  • LocalPlayer からキャラクターを取得。
  • キャラクターがロードされるまで待機。
  • キャラクター内の Humanoid を取得。

4.2 ジャンプ状態を検出

humanoid.StateChanged:Connect(function(oldState, newState)
    if newState == Enum.HumanoidStateType.Jumping then
  • StateChanged イベントを使用して、キャラクターがジャンプしたことを検出。

4.3 空中ジャンプを有効化

UserInputService.InputBegan:Connect(function(inputObject)
    if inputObject.KeyCode == Enum.KeyCode.Space then
        if humanoid:GetState() ~= Enum.HumanoidStateType.Jumping then
            humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        end
    end
end)
  • UserInputService を使用し、プレイヤーのキー入力を監視。
  • スペースキー (Space) が押されたときに ChangeState を使って再度ジャンプを発動。

5. まとめ

このスクリプトを StarterCharacterScripts に配置することで、プレイヤーが空中でもジャンプできるようになります。

チュートリアル系電子書籍の紹介
Roblox Studioでゲーム制作を始めてみませんか?
日本語版 ※英語版あり 「10時間でできる Roblox Studio アクションゲーム制作入門」では、Roblox Studioでのゲーム制作の基本から応用までを短時間で効率的に学びます。この一冊で、初心者でも簡単にアクションゲームを制作できるようになり、ゲーム制作の面白さと達成感を存分に味わうことができます。Roblox Studioの世界への扉を開き、あなたのクリエイティブな旅を始めましょう。
チュートリアル系動画
電子書籍を動画にしました!※無料クーポンあり!

「10時間でできる Roblox Studio アクションゲーム制作入門」の動画版では、書籍の内容をさらにわかりやすく、実際の画面操作を見ながら学べる形式でお届けします。初心者でも安心して取り組めるように、Roblox Studioの基本操作からアクションゲームの完成までを丁寧に解説。テンポよく進むレクチャー動画で、あなたのペースに合わせて学習できます。この動画シリーズを通して、ゲーム制作の基礎をしっかり習得し、Roblox Studioの可能性を広げましょう!

割引クーポンコードはこちらです↓
※3月12日21時まで!
6E0150A3770784ADF77D

Luaに関する電子書籍の紹介
Roblox Studioで使用するLua言語の基本を学ぼう!
日本語版 ※英語版あり 「5時間でできる Roblox Studio を使ったLuaの基本」では、Roblox Studioで使用するプログラミング言語Luaの基本をRoblox Studio上で学びます。また、学んだ知識を活かして、Roblox StudioでLuaを使用する応用部分も一部盛り込まれています。この一冊でLuaの基本を学ぶことで、よりRoblox Studioでのゲーム制作を楽しめるようになります。
アニメーション制作系電子書籍の紹介
Roblox Studioでアニメーションを作ってみよう!
「5時間でできる Roblox Studio アニメーション制作入門」では、Roblox Studioでのアニメーション制作の基本から実際に作るところまでを短時間で効率的に学びます。この一冊で、アニメーション制作の第一歩を踏み出すことができます。Roblox Studioで自由自在にアニメーションを作成し、よりクリエイティブなゲームを作りましょう!
○○の作り方Roblox Studio
シェアする
hideをフォローする
Roblox Studio 制作tips

コメント

タイトルとURLをコピーしました