Roblox はじめて体験・基礎編

第9回「障害物とパワーアップアイテムを作ろう」

RB09-03

障害物とパワーアップ
アイテムを作ろう

受講を終了する
3. Humanoidってなに?(3 / 8)
STAR AI・情報塾

Humanoidってなに?

プレイヤーのキャラクター(アバター)には、必ず「 Humanoid(ヒューマノイド) 」という部品が入っています。これは、体力・移動速度・ジャンプ力など、キャラクターの「 状態 」をまとめて管理している特別な存在です。

名前の由来 Human(人間)+ noid(~のようなもの)= Humanoid(人間のようなもの)です。プレイヤーが何もプログラムしなくても移動・ジャンプ・カメラ操作・体力管理ができるのは、実はこのHumanoidがまとめて面倒を見てくれているからなのです。
スクリーンショット挿入予定(09-001.png) キャラクターの中にあるHumanoidをエクスプローラーで見た画面

試しに、ブロックにプレイヤーが触れたら、そのキャラクターの Humanoid を見つけて、体力を出力してみましょう。

local part = script.Parent

part.Touched:Connect(function(hit)
    local humanoid = hit.Parent:FindFirstChild("Humanoid")

    if humanoid then
        print("体力: " .. humanoid.Health)
    end
end)
解説

hit はブロックに触れた部分(例えば足や手)です。hit.Parent で「 その部分を持っているキャラクター全体 」を取得し、:FindFirstChild("Humanoid") でその中から Humanoid を探しています。

代表的なHumanoidの項目 Health(体力・初期値100)、WalkSpeed(歩く速さ・初期値16)、JumpHeight(ジャンプの高さ)など、キャラクターの動きに関わる大事な項目がまとまっています。

体力が100って出た!これを直接書き換えたら、ダメージとか回復とか作れそうね。

Well done!

次のステップに進みましょう!