In my game, I have made a currency called "RoCash." This currency will be used to purchase things in the game.
The Value of "RoCash" is inserted into the player each time they enter the game. A Data Persistence script automatically saves the state of the value each time it has changed. (I am not using DataStore for a reason...)
Okay, I have a Shop GUI, and in the GUI, there's a button that is supposed to add 5 RoCash to the player's RoCash value each time it's purchased...
The Product works just fine. However, adding the RoCash does not. As you can see below, I want the player to receive 5 RoCash. When the product is purchased, it gives the player 20 RoCash... Why? How can I fix this?
Server-Side
local Player = script.Parent.Parent.Parent.Parent.Parent.Parent local MarketplaceService = Game:GetService("MarketplaceService") MarketplaceService.ProcessReceipt = function(receiptInfo) Player.RoCash.Value = Player.RoCash.Value +5 wait() Player.PlayerGui.Purchases.RoCash.Visible = true wait(5) Player.PlayerGui.Purchases.RoCash.Visible = false return Enum.ProductPurchaseDecision.PurchaseGranted end
Client-Side
local buyButton = script.Parent local productId = 19192652 local Player = script.Parent.Parent.Parent.Parent.Parent.Parent Type = 0 if Player.Name == "Bolohuc" then Type = 2 else Type = 0 end buyButton.MouseButton1Click:connect(function() Game:GetService("MarketplaceService"):PromptProductPurchase(game.Players.LocalPlayer, productId, false, Type) end)
PLEASE ANSWER AS SOON AS POSSIBLE!
NOTE: I don't want you to change the script unless it's causing the problem... It works fine other than the adding RoCash. Please help me... Provide details with your answer please.
Here:
while true do local buyButton = --THE GUI PATH HERE buyButton.MouseButton1Click:connect(function() local productId = 19192652--PRODUCT ID HERE Game:GetService("MarketplaceService"):PromptProductPurchase(game.Players.LocalPlayer, productId) game.Players.LocalPlayer.leaderstats.RoCash.Value = game.Players.LocalPlayer.leaderboard.RoCash.Value + 10 -- VALUE HERE end) end -- I put this in an infinite loop since it would only allow you to buy it once without the loop.
leaderboard
or leaderstats
? You should know, since you made the stats.
PUT THIS IN A LocalScript IN THE STARTERPACK!!!