I feel i am missing out on something and that im being dumb.
Can you fix this error? (On line 35) (Workspace.Crate Drops.Crate Drop.Handler:35: attempt to index number with 'Position')
DB = false
HitBox = script.Parent["Crate"].Hit
local Remote = script.Parent.Regen
local Workspace = game:GetService("Workspace")
HitBox.CFrame = CFrame.new(math.random(-1024,1024),1000,math.random(-1024,1024))
function Stuff(PRT)
if not DB then
local function SpawnItem(POS)
if math.random(1,2) ~= 1 then
Tier = 1
else
if math.random(1,4) ~= 1 then
Tier = 2
else
if math.random(1,8) ~= 1 then
Tier = 3
else
if math.random(1,16) == 1 then
Tier = 4
else
Tier = 3
end
end
end
end
local TierFolder = game.ServerStorage.Tools:FindFirstChild("Tier"..Tier)
print(TierFolder)
if TierFolder then
local Tools = TierFolder:GetChildren()
local RandomTool = Tools[math.random(1, #Tools)]
if RandomTool then
local ToolClone = RandomTool:Clone()
ToolClone.Parent = script.Parent
if ToolClone.Parent == script.Parent and ToolClone and ToolClone:FindFirstChild("Handle") then
ToolClone.Handle.Position = POS.Position
end
end
end
end
local HUM = PRT.Parent:FindFirstChild("Humanoid")
local PLR = game.Players:GetPlayerFromCharacter(PRT.Parent)
if HUM and PLR then
local LDR = PLR:FindFirstChild("leaderstats")
local Points = LDR:WaitForChild("Points")
local Multi = LDR:WaitForChild("Multiplier")
local UMulti = LDR:WaitForChild("UL. Multiplier")
if not HUM or not Points or not Multi or not UMulti then return end
SpawnItem(1, script.Parent.Crate.Position1)
local function DestroyWeld(Parent)
for i, v in pairs(Parent:GetChildren()) do
if v:IsA("Weld") then
v:Destroy()
elseif v:IsA("Model") or v:IsA("Folder") or v:IsA("BasePart") then
DestroyWeld(v)
end
end
end
DestroyWeld(HitBox.Parent)
DB = true
Multi.Value = UMulti.Value+1*Multi.Value + 0.1
Points.Value = Points.Value + math.random(500,Multi.Value+1*3000)
wait(30)
HitBox.Parent.Parent = game.ServerStorage
wait(math.random(30,60))
Remote:Fire()
Touched:Disconnect()
HitBox = script.Parent["Crate"].Hit
Touched = HitBox.Touched:Connect(Stuff)
HitBox.Parent.Parent = script.Parent
HitBox.CFrame = CFrame.new(math.random(-1024,1024),1000,math.random(-1024,1024))
DB = false
end
end
end
Touched = HitBox.Touched:Connect(Stuff)
function IsInVoid()
if HitBox.Position.Y >= -10 then return end
HitBox.CFrame = CFrame.new(math.random(-1024,1024),1000,math.random(-1024,1024))
end
while wait(1) do
IsInVoid()
end
Thank you, Btw the script is made for a crate supply thingy.

1 comment
Yes