-- ModuleScript Items (via bytefall decompiler) -- Decompiled using ByteFall -- discord.gg/pHTnqmmWzk require(game.ReplicatedStorage.Modules.State) local customAnim = require(game.ReplicatedStorage.Modules.CustomAnim) local util = require(game.ReplicatedStorage.Modules.Util) local module: {[any]: any} = { items = {} } function module.create_item(p1) local v6 = module.get_item_class(p1.Name).new() v6.name = p1.Name v6.instance = p1 v6.states = {} v6.hooked_labels = {} v6.cframes = customAnim.create_cframe_dictionary(p1) if p1.Parent then module.items[p1] = v6 p1.Destroying:Connect(function() module.items[p1] = nil end) v6:init() end return v6 end function module.get_item(p2) return module.items[p2] or module.create_item(p2) end function module.delete_item(p3) if module.items[p3] then module.items[p3] = nil end end local t2: {[any]: any} = {} function module.get_item_class(p4) if p4 == nil then return nil end local v10 = t2[p4] == nil and script:FindFirstChild(p4, true) if v10 and v10:IsA("ModuleScript") then t2[p4] = require(v10) end return t2[p4] end function module.get_item_model(p5) if p5 == nil then return nil end if t2[p5] == nil then t2[p5] = require(script:FindFirstChild(p5, true)) end return t2[p5].model end function module.get_all_items_of_loadout(p6) local t3 = typeof(p6) == "table" and p6 or { p6 } local t4: {[any]: any} = {} for iterFirst, iterSecond in script:GetDescendants() do if iterSecond:IsA("ModuleScript") and iterSecond:FindFirstChild("Model") and table.find(t3, require(iterSecond).loadout_type) then table.insert(t4, require(iterSecond)) end end return t4 end function module.has_attachment(p7, p8) local t5 = typeof(p8) == "table" and p8 or { p8 } local attachment = script.Item.Attachment local v21 = util.capitalize_first(p8) for iterFirst, iterSecond in attachment[v21]:GetDescendants() do if iterSecond:IsA("ModuleScript") and iterSecond:FindFirstChild("Model") and table.find(t5, require(iterSecond).loadout_type) and require(iterSecond).items[p7] then return true end end return false end function module.get_all_items() local t6: {[any]: any} = {} for iterFirst, iterSecond in script:GetDescendants() do if iterSecond:IsA("ModuleScript") and iterSecond:FindFirstChild("Model") then table.insert(t6, require(iterSecond)) end end return t6 end function module.get_all_item_names_of_loadout(p9) local t7 = typeof(p9) == "table" and p9 or { p9 } local t8: {[any]: any} = {} for iterFirst, iterSecond in script:GetDescendants() do if not iterSecond:IsDescendantOf(script.Item.Attachment) and iterSecond:IsA("ModuleScript") and iterSecond:FindFirstChild("Model") and table.find(t7, require(iterSecond).loadout_type) then t8[iterSecond.Name] = true end end return t8 end function module.load() end return module