使用 Roblox Studio 将对象放入清单

Put an object in the inventory with Roblox Studio

当我将物品放入背包时,资源管理器 window 会显示这些物品,但显示的物品栏仍然是空的。 我的代码:

local objets = game.ServerStorage.aRamasser
local nbMaxObjets = 10
wait(5)
objets.Parent = game.Workspace

for indice,unObjet in pairs(objets:GetChildren()) do
    local ClickDetector = unObjet:FindFirstChild("ClickDetector")
    ClickDetector.MouseClick :Connect(
        function (joueur)
            local inventaire = joueur:FindFirstChildOfClass("Backpack")
            if inventaire then
                local nbObjets = table.getn(inventaire:GetChildren())
                if nbObjets < nbMaxObjets then
                    (unObjet:Clone()).Parent = inventaire
                    unObjet.Transparency = 1
                    unObjet.CanCollide = false
                    wait(15)
                    unObjet.Transparency = 0
                    unObjet.CanCollide = true
                end
            end
        end     
    )
end

说明: 这些对象位于目录 ServerStorage 中。在游戏开始时,在上面的脚本中(在 Workspace 中),这个目录被移动到 Workspace 中。对象是可见的。 然后,如果在一个对象上检测到单击,则克隆该对象并将该克隆放入 Backpack 中。它有效,我在资源管理器中看到它们。但不在库存中:

您的对象需要在工具中,工具可以在清单 gui 中。

local tool = Instance.new("Tool")
tool.Parent = inventaire
(unObjet:Clone()).Parent = tool