im trying to create a spin/roll mechanic where the player rolls for auras. however, my script is failing due to the error: “Argument 1 missing or nil” on line 41 of this script:
local ServerStorage = game:GetService("ServerStorage")
local RepStorage = game:GetService("ReplicatedStorage")
local rollEvent = RepStorage.Remotes:WaitForChild("Roll")
local showRollResultEvent = RepStorage.Remotes:WaitForChild("ShowRollResult")
local updateInventoryEvent = RepStorage.Remotes:WaitForChild("updateInventory")
local chances = {
["TwoDudesKissing"] = 10;
["Fire"] = 50;
["Fortnite"] = 100;
}
local function roll(player)
local playerDataFolder = ServerStorage:WaitForChild("PlayerData"):WaitForChild(player.UserId)
local inventoryFolder = playerDataFolder:WaitForChild("Inventory")
local listOfResults = {}
for count = 1, 5, 1 do
local randomNumber = math.random(1, 1000)
local counter = 0
for effect, weight in pairs(chances) do
counter = counter + weight
if randomNumber <= counter then
table.insert(listOfResults, effect)
break
end
end
end
showRollResultEvent:FireClient(player, listOfResults)
task.wait(3.25)
if inventoryFolder:FindFirstChild(listOfResults[5]) then
inventoryFolder:WaitForChild(listOfResults[5]).Value += 1
else
local effect = Instance.new("IntValue")
effect.Name = listOfResults[5]
effect.Value = 1
effect.Parent = inventoryFolder
end
updateInventoryEvent:FireClient(player, listOfResults[5])
end
rollEvent.OnServerEvent:Connect(roll)