game.Players.PlayerAdded:Connect(function(player) local leaderstats = Instance.new('Folder', player) leaderstats.Name = 'leaderstats' local Pet = Instance.new('Folder', player) Pet.Name = 'Pet' local coins = Instance.new("IntValue", leaderstats) coins.Name = 'Coins' coins.Value = 0 player.CharacterAdded:connect(function(char) local attachment = Instance.new("Attachment", char.HumanoidRootPart) attachment.Name = "CharacterAt" end) end) game.ReplicatedStorage.Remotes.Add.OnServerEvent:Connect(function(player) local currency = 'Coins' local ammount = 1 player.leaderstats[currency].Value = player.leaderstats[currency].Value + ammount end) game.ReplicatedStorage.RemoteFunctions.EquipPet.OnServerInvoke = function(player, pet) local currency = "Coins" local MainPet = game.ServerStorage.Pets:FindFirstChild(pet) if not player.Pet:FindFirstChild(MainPet.Name) then if player.leaderstats[currency].Value >= MainPet.Price.Value then player.leaderstats[currency].Value = player.leaderstats[currency].Value - MainPet.Price.Value local clonedPet = MainPet:Clone() local atPet = Instance.new("Attachment", clonedPet.PrimaryPart) local ap = Instance.new ("AlignPosition") ap.Parent = pet ap.RigdigityEnabled = true clonedPet.Parent = player.Character clonedPet:SetPrimaryPartCFrame(player.Character.Head.Cframe) ap.Attachment0 = atPet ap.Attachment1 = player.Character.HumanoidRootPart.CharacterAt return "Bought" else return "Not enough coins" end else return "Equip" end end
Problem error ServerScriptService.Main:38: attempt to index nil with 'Name' - Server - Main:38
ServerScriptService.Main:38: attempt to index nil with 'Name' - Client - LocalScript:2 Local Script
script.Parent.MouseButton1Click:Connect(function() local result = game.ReplicatedStorage.RemoteFunctions.EquipPet:InvokeServer(script.Parent.Parent.Name) end)
Note: The code stops at this line - if not player.Pet:FindFirstChild(MainPet.Name) then