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

Why won't this Developer Product script work?

So, I have this loading screen. It will eventually wait 1 min and then move on, for now you must pay 1 tix while I am developing the game. When I click the button, nothing happens. It should be doing all the devproduct stuff, and then making the current frame invisible, and the new one visible. Could someone tell me why it doesn't work? Thanks!

local MarketplaceService = game:GetService("MarketplaceService")
local productId = 22106513
loading = game.Players.LocalPlayer.PlayerGui.ScreenGui.loading
results = game.Players.LocalPlayer.PlayerGui.ScreenGui.results

game.Players.PlayerAdded:connect(function()
	print("start")
local DeveloperProducts = game:GetService("MarketplaceService"):GetDeveloperProductsAsync():GetCurrentPage()
for _, DevProductContainer in pairs(DeveloperProducts) do
    for Field, Value in pairs(DevProductContainer) do
        print(Field .. ": " .. Value)
    end
    print(" ")
end
print("end")
end)

MarketplaceService.ProcessReceipt = function(receiptInfo) 

	for i, player in ipairs(game.Players:GetChildren()) do
		if player.userId == receiptInfo.PlayerId then
			
			
			if receiptInfo.ProductId == productId then
				
				loading.Visible = false
				results.Visible = true
				
		end
	end	
	
	
	return Enum.ProductPurchaseDecision.PurchaseGranted		
end
end

1 answer

✓ Accepted answer

I'm pretty sure you have to make the client-sided code, too. From what I can see, you only have the server-sided code.

Here's an example:

local productId=22106513

game.Players.PlayerAdded:connect(function(player)
	MarketplaceService:PromptProductPurchase(game.Players.LocalPlayer, productId)
end)

This should be a local script in StarterGUI or StarterPack. Note that this script doesn't apply to your specific case; this is merely an example.

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