I have recently been working on data storing system via module script, which can be required from any server script. However, I came across with this problem which I can't solve it because I have little knowledge about modules. If you see any problems with my script or have any suggestion, I am always open for it. Thank you for any helps
--module script
local playerData = {}
return playerData
--serverscript
local MPS = game:GetService("MarketPlaceService")
local plrData = require(script.Parent.ModuleScript)
local shopData = require(script.Parent.ModuleScript2)
local remote = game.ReplicatedStorage.buyRemote
function completePurchase(plr,id)
local item = --iterate shopData to find the item
if plr and item then
local customerData - plrData[plr.UserId]
customerData["cash"] = customerData["cash"] + item["GivingValue"]
end
end
function purchaseRequest(plr,item)
if plr then
local item = shopData[item]
if item then
MPS:PromptProductPurchase(plr,item["ProductId"])
end
end
end
function proccessRecipit(plr,id)
local player = game.Players:GetPlayerByUserId(plr)
if not player then
return Enum.ProductPurchaseDecision.NotProccessedYet
end
completePurchase(player,id)
return Enum.ProductPurchaseDecision.PurchaseGranted
end
MPS.ProccessRecipit = proccessRecipit
remote.OnServerInvoke = purchaseRequest
