local dialog = script.Parent dialog.DialogChoiceSelected:connect(function(player, choice) -- Check the player has a stats object local stats = player:FindFirstChild('leaderstats') if not stats then return end
-- And that the stats object contains a gold member local gold = stats:FindFirstChild('Gold') if not gold then return end if choice == script.Parent.DialogChoice.ChoiceA then if gold.Value >= 5 then -- 5 is the amount of gold you need to purchase this weapon game.ReplicatedStorage.Weapon1:Clone().Parent = player.Backpack
game.ReplicatedStorage.Weapon1:Clone().Parent = player.StarterPack gold.Value = gold.Value - 5 -- subtract the amount of gold you need to purchase end elseif choice == dialog.DialogChoice.ChoiceB then if gold.Value >= 10 then game.ReplicatedStorage.Weapon2:Clone().Parent = player.Backpack game.ReplicatedStorage.Weapon2:Clone().Parent = player.StarterPack gold.Value = gold.Value - 10 end elseif choice == dialog.DialogChoice.ChoiceC then if gold.Value >= 15 then game.ReplicatedStorage.Weapon3:Clone().Parent = player.Backpack game.ReplicatedStorage.Weapon3:Clone().Parent = player.StarterPack gold.Value = gold.Value - 15 end end end)
nothing wrong if there is a mistake it is that you have to changeif choice == script.Parent.DialogChoice.ChoiceA then
into if choice == script.Parent.DialogChoice.nameofdialogsetting then
change nameofdialogsetting to the name of it or rename the setting or it functions fine or you have wrong name where ChoiceA is.