Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

A little help?

I used this script to charge players Points to purchase a sword in my shop.

player = script.Parent.Parent.Parent.Parent.Parent
cost = 5

function checkForword()
	found = false
	for i, v in pairs(player.Backpack:GetChildren()) do
		if v.Name == "Sword" then
			found = true
		end
	end
	
	for i, v in pairs(player.Character:GetChildren()) do
		if v.Name == "Sword" then
		    found = true
		end
	end

    if Found == true then
	    return true
    else
	    return false
    end
end

script.Parent.MouseButton1Click:connect(function()
	leaderstats = player:FindFirstChild("leaderstats")
	if leaderstas then
		points = leaderstats:FindFirstChild("Points")
		if points then
			hasSword = checkForSword()
			if points.Value >= cost and hasSword == false then
				points.Value = points.Value - cost
				sword = game.Lighting.Sword:Clone()
				sword.Parent = player.Backpack
			end
		end
	end
end)

I went into the game, and I didn't get a sword after clicking the button. Also, nothing showed up in output. Any help?

1 answer

player = script.Parent.Parent.Parent.Parent.Parent
cost = 5
found = Instance.new("BoolValue")
found.Parent = game.Workspace
found.Value = false
function checkForword()
  while true do
if player:WaitForDataReady("Backpack").Sword ~= nil
      found.Value = true
wait()
end
        end
    end

    

  

script.Parent.MouseButton1Click:connect(function()
    leaderstats = player:FindFirstChild("leaderstats")
    if leaderstas then
        points = leaderstats:FindFirstChild("Points")
        if points then
            hasSword = checkForSword()
            if points.Value >= cost and found.Value ==   false then
for i = 1,1 do
                points.Value = points.Value - cost
                sword = game.Lighting.Sword:Clone().Parent = player:WaitForChild("Backpack")
 end
           end

        end
    end
end)


I changed it a bit.

4 comments

0

I tried that, but sword = game.Lighting.Sword:Clone().Parent = player:WaitForDataReady("Backpack") is in red underline.

0

fixed it it should work now.

0

Still in red underline. And same thing is red underline. found = true is what is red underline.

0

try again

This discussion is preserved as it was. New answers, comments, and votes are closed.