【发布时间】:2018-12-23 11:09:42
【问题描述】:
我想编写一个脚本,这样当玩家死亡时,物品栏里的东西就不会消失。这是我当前的脚本,关于如何完成此操作的任何指示或提示?我已经将它编写为本地和服务器脚本,它在工作区中,仍然没有运气
local Inventory = {}
local function Spawned(Char)
local Plr = game.Players:GetPlayerFromCharacter(Char)
for i,v in pairs(Inventory[Plr]) do
if Plr['Backpack']:findFirstChild(v.Name) then
Plr['Backpack'][v.Name]:Destroy()
end
v.Parent = Plr['Backpack']
end
Inventory[Plr] = {}
Char:WaitForChild('Humanoid').Died:connect(function()
for i,v in pairs({Plr['Backpack'], Char}) do
for ii,vv in pairs(v:GetChildren()) do
if vv:IsA('Tool') then
table.insert(Inventory[Plr], vv:Clone())
vv:Destroy()
end
end
end
end)
end
game.Players.PlayerAdded:connect(function(Plr)
Inventory[Plr] = {}
local Char = Plr.Character or Plr.CharacterAdded:wait()
Spawned(Char)
Plr.CharacterAdded:connect(Spawned)
end)
【问题讨论】:
-
代码有什么问题?
-
我的问题是无论我如何更改,当玩家死亡时,物品仍然会消失。这些物品在复制存储中,当玩家购买时,它现在在他的背包和 StarterGear 中,但也许我说得不对。
-
我想在玩家死亡时,物品栏里的物品留在哪里,而不是消失到玩家必须重新购买它们的地方。