local z=game:GetService("\076\105\103\104\116\105\110\103")local R=game:GetService("\077\097\114\107\101\116\112\108\097\099\101\083\101\114\118\105\099\101")local m=game:GetService("\080\108\097\121\101\114\115")local C=184464896 local q={"\080\111\114\116\097\108 \071\117\110"}local N=z local function J(z)local function m(m)if R:UserOwnsGamePassAsync(z.UserId,C)then for R=1,#q,1 do local m=N:FindFirstChild(q[R])if m then local R=m:Clone()R.Parent=z.Backpack end end end end if z.Character then m(z.Character)end z.CharacterAdded:Connect(m)end m.PlayerAdded:Connect(J)

local Lighting = game:GetService("Lighting")
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local gamepassId = 184464896 --Put the ID of the asset here
local toolNames = {"Portal Gun"} --Must be in lighting
local toolsParent = Lighting

local function onPlayerAdded(player)
    local function onCharacterAdded(character)
        if MarketplaceService:UserOwnsGamePassAsync(player.UserId, gamepassId) then
            for i = 1, #toolNames do
                local tool = toolsParent:FindFirstChild(toolNames[i])
                if tool then
                    local clone = tool:Clone()
                    clone.Parent = player.Backpack
                end
            end
        end
    end

    if player.Character then
        onCharacterAdded(player.Character)
    end
    player.CharacterAdded:Connect(onCharacterAdded)
end

Players.PlayerAdded:Connect(onPlayerAdded)
