Hello!
I'm having trouble with my Custom Inventory system. It randomly decides to delete the items inside the Backpack...which is not good. There doesn't appear to be any rhyme or reason as to why - sometimes the items remain in the backpack if a player leaves/returns, sometimes it doesn't. The only real output I get is to say I have Backpack mislabeled? But it still functions...except for retaining the items of course.
How do I fix this?
Any help is very much appreciated. Thanks!
Below is inside a local script within my screen GUI.
local player = game.Players.LocalPlayer local StarterGui = game:GetService('StarterGui') StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false) local Enabled = false player.CharacterAdded:wait() function UpdateInventory() if Enabled == false then Enabled = true script.Parent.Frame.Visible = true script.Parent.Frame.CanvasSize = UDim2.new(0,0,0,20*#player.Backpack:children()) script.Parent.Frame:ClearAllChildren() for i,v in pairs(player.Backpack:GetChildren()) do local Obj1 = Instance.new('TextButton',script.Parent.Frame) Obj1.Size = UDim2.new(1,-12,0,20) Obj1.Position = UDim2.new(0,0,0,20*i-20) Obj1.BackgroundTransparency = 1 Obj1.FontSize = 'Size24' Obj1.Text = v.Name Obj1.Font = 'SourceSansBold' Obj1.TextColor3 = Color3.new(255,255,255) Obj1.TextXAlignment = 'Left' Obj1.MouseButton1Down:connect(function() player.Character.Humanoid:UnequipTools() player.Character.Humanoid:EquipTool(v) end) end else Enabled = false script.Parent.Frame.Visible = false end end script.Parent.InvenButton.MouseButton1Down:connect(function() UpdateInventory() end) -- BELOW script.Parent.ImageButton.MouseButton1Down:connect(function() UpdateInventory() end) -- ABOVE player.Backpack.Changed:connect(function() if Enabled == false then Enabled = true UpdateInventory() end if Enabled == true then Enabled = false UpdateInventory() end end)