Roblox はじめて体験・基礎編

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

RB09-06

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

受講を終了する
6. パワーアップアイテム(6 / 8)
STAR AI・情報塾

パワーアップアイテムを作ろう

ダメージとは逆に、Humanoidの数値をプラス方向に変えれば、プレイヤーを強化するアイテムが作れます。

local part = script.Parent
local isUsed = false

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

    if player and humanoid and not isUsed then
        isUsed = true
        local originalSpeed = humanoid.WalkSpeed
        humanoid.WalkSpeed = originalSpeed * 2   -- スピード2倍!

        part.Transparency = 1
        part.CanCollide = false

        wait(5)                                  -- 5秒間だけ効果を持続
        humanoid.WalkSpeed = originalSpeed        -- 元の速さに戻す

        wait(3)                                  -- 3秒後にアイテムが復活
        part.Transparency = 0
        part.CanCollide = true
        isUsed = false
    end
end)
動作確認クリップ挿入予定(09-clip03.mp4) パワーアップアイテムを取ってスピードが上がる様子(15秒程度)
解説

originalSpeed に元の速さを保存しておくことで、効果が切れた時に「 正確に元通り 」に戻せます。第8回で学んだisUsed フラグとTransparency・CanCollideの組み合わせも、ここでそのまま活躍していますね。

アレンジ humanoid.JumpHeight を書き換えれば、ジャンプ力アップアイテムも同じ考え方で作れます。数字や持続時間を変えて、いろいろなアイテムを試してみましょう。

ダメージもパワーアップも、結局は同じHumanoidの数字を増やすか減らすかの違いだったんだ!

Well done!

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