Advertisement
qsenko1

BuyCoinsScript

Mar 30th, 2021
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.47 KB | None | 0 0
  1. local MarketplaceService = game:GetService("MarketplaceService")
  2. local DataStoreService = game:GetService("DataStoreService")
  3. --local currencyName = "Coins"
  4.  
  5. local PreviousPurchases = DataStoreService:GetDataStore("PreviousPurchases")
  6.  
  7. local Coinsbutton1 = 1160428657 -- 150
  8. local Coinsbutton2 = 1160428799 -- 390
  9. local Coinsbutton3 = 1160428919 -- 1000
  10. local Coinsbutton4 = 1160428982 -- 2600
  11. local Coinsbutton5 = 1160429022 -- 6700
  12. local Coinsbutton6 = 1160429074 -- 18000
  13. local Coinsbutton7 = 1160429137 -- 46000
  14.  
  15. MarketplaceService.ProcessReceipt = function(receiptInfo)
  16.    
  17.     -- Receipt has PurchaseId, PlayerId, Product Id, CurrencySpentValue, CurrencyType, PlaceIdWherePurchased
  18.    
  19.     local ID = receiptInfo.PlayerId.."-"..receiptInfo.PurchaseId
  20.    
  21.     local success = nil
  22.    
  23.     pcall(function()
  24.         success = PreviousPurchases:GetAsync(ID)
  25.     end)
  26.    
  27.     if success then -- Has it already been bought ?
  28.         -- Purchase has already been done
  29.         return Enum.ProductPurchaseDecision.PurchaseGranted
  30.     end
  31.    
  32.     local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  33.     --local Coins = player.leaderstats.Coins.Value
  34.     if not player then
  35.         -- Left, disconnected
  36.         return Enum.ProductPurchaseDecision.NotProcessedYet -- We re going to give their reward next time they join / next time fired
  37.        
  38.         else
  39.        
  40.         if receiptInfo.ProductId == Coinsbutton1 then
  41.             -- They ve bought 150 Coins
  42.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  43.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 150
  44.             return Enum.ProductPurchaseDecision.PurchaseGranted
  45.         end
  46.        
  47.         if receiptInfo.ProductId == Coinsbutton2 then
  48.             -- They ve bought 390 Coins
  49.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  50.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 390
  51.             return Enum.ProductPurchaseDecision.PurchaseGranted
  52.         end
  53.        
  54.         if receiptInfo.ProductId == Coinsbutton3 then
  55.             -- They ve bought 1000 Coins
  56.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  57.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 1000
  58.             return Enum.ProductPurchaseDecision.PurchaseGranted
  59.         end
  60.        
  61.         if receiptInfo.ProductId == Coinsbutton4 then
  62.             -- They ve bought 2600 Coins
  63.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  64.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 2600
  65.             return Enum.ProductPurchaseDecision.PurchaseGranted
  66.         end
  67.        
  68.         if receiptInfo.ProductId == Coinsbutton5 then
  69.             -- They ve bought 6700 Coins
  70.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  71.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 6700
  72.             return Enum.ProductPurchaseDecision.PurchaseGranted
  73.         end
  74.        
  75.         if receiptInfo.ProductId == Coinsbutton6 then
  76.             -- They ve bought 18000 Coins
  77.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  78.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 18000
  79.             return Enum.ProductPurchaseDecision.PurchaseGranted
  80.         end
  81.        
  82.         if receiptInfo.ProductId == Coinsbutton7 then
  83.             -- They ve bought 46000 Coins
  84.             local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
  85.             player.leaderstats.Coins.Value = player.leaderstats.Coins.Value + 46000
  86.             return Enum.ProductPurchaseDecision.PurchaseGranted
  87.         end
  88.        
  89.         pcall(function()
  90.             PreviousPurchases:SetAsync(ID,true)                    
  91.         end)
  92.         --return Enum.ProductPurchaseDecision.PurchaseGranted          
  93.     end
  94. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement