An easy way to pick random items.
local RandomPicker = require(path)
local MyPicker = RandomPicker.new()
MyPicker:Add(item: any, rarity: number)
MyPicker:Remove(item: any)
local RandomItem = MyPicker:Pick(seed: number | nil)
MyPicker:Destroy()
print(RandomItem)
-- Picking a random item from a chest
local RandomPicker = require(path)
local Chest = RandomPicker.new()
Chest:Add('Sword', 20)
Chest:Add('Axe', 30)
Chest:Add('Shield', 40)
Chest:Add('Potion', 10)
local ChosenItem = Chest:Pick()
print(ChosenItem .. ' was chosen!')
-- Picking a random player to be the murder
local Players = game:GetService('Players')
local RandomPicker = require(path)
local function ChooseMurder()
local MurderPicker = RandomPicker.new()
for _, player in ipairs(Players:GetPlayers()) do
local chance = player:GetAttribute('ChanceToBeMurder')
MurderPicker:Add(player, chance)
end
return MurderPicker:SinglePick()
end
local Murder = ChooseMurder()
print(Murder.Name .. ' is the murder!')
local Picker = RandomPicker.new()
Picker:Add(item: any, rarity: number) -- adds an item with a rarity
Picker:Remove(item: any) -- removes a previous added item
Picker:Pick(seed: number | nil) -- picks a random item
Picker:SinglePick(seed: number | nil) -- calls 'Picker::Pick' and then, 'Picker::Destroy'
Picker:Destroy() -- destroys the picker