Prints no errors
Part that places item:
local function iniciatePlacemnt(ItemNamee)
if workspace:FindFirstChild(ItemNamee) then
CancelPlacement()
workspace[ItemNamee]:Destroy()
end
if PrevItem then
if workspace:FindFirstChild(PrevItem) then
CancelPlacement()
workspace[PrevItem]:Destroy()
end
end
-- CancelPlacement()
script.Parent.Background.Visible = false
local Item = Items:FindFirstChild(ItemNamee)
ItemObject = Item:Clone()
ItemName = ItemObject.Name
PrevItem = ItemName
for _, Object in pairs(ItemObject:GetChildren()) do
if Object:IsA("BasePart") or Object:IsA("Part") then
Object.CanCollide = false
end
end
ItemObject.Parent = workspace
Signal = Plane:enable(ItemObject)
Signal:connect(function(location, _)
if Player.leaderstats.Cash.Value >= Item.Cost.Value and game.Players.LocalPlayer.Inventory:FindFirstChild(ItemName) then
game:GetService("ReplicatedStorage").Events.ClientPlaced:FireServer(ItemName, location, Cost)
-- CancelPlacement()
else
Signal = Plane:disable(ItemObject)
ItemObject:Destroy()
end
end)
end
Part That Fires It:
local Inventory = script.Parent.Background
local holder = Inventory.Holder
for i,v in pairs(holder:GetChildren()) do
if v:IsA("Frame") then
if v:FindFirstChild("ItemImage") then
v.ItemButton.MouseButton1Click:Connect(function()
if game.Players.LocalPlayer.Inventory:FindFirstChild(v.Item.Value) then
iniciatePlacemnt(v.Item.Value)
end
end)
end
end
end
