Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How can I make this save for the whole game, not just the server?

Asked by
jdc892 4
7 years ago

How would I make this actually save? At the moment it only saves in the server at the moment. How would I make it save, for the whole game?

game.Players.PlayerAdded:connect(function(player)
    local saveData = game.RobloxReplicatedStorage:FindFirstChild(player.Name)
    if not saveData then
        wait (1)
        local newSave = Instance.new ("Folder")
        newSave.Parent = game.RobloxReplicatedStorage
        newSave.Name = player.Name
        local coins = Instance.new ("NumberValue")
        coins.Name = "Coins"
        coins.Value = 0
        coins.Parent = newSave
        local diamonds = Instance.new("NumberValue")
        diamonds.Parent = newSave
        diamonds.Name = "Gems"
        diamonds.Value = 0
        local playersStats = player:FindFirstChild("leaderstats")
        local cash = playersStats:FindFirstChild("Coins")
        local gems = playersStats:FindFirstChild("Gems")
        cash.Value = coins.Value
        gems.Value = diamonds.Value
    else
        wait (1)
        local playerStats = player:FindFirstChild("leaderstats")
        local cash = playerStats:FindFirstChild ("Coins")
        local gems = playerStats:FindFirstChild("Gems")
        if cash then
            if gems then
                cash.Value = saveData.Coins.Value
                gems.Value = saveData.Gems.Value
                if player.Name == "jdc892" then
                    cash.Value = cash.Value + 50
                end
            end
        end

    end
end)
 game.Players.PlayerRemoving:connect (function(player)
    local playerSave = game.RobloxReplicatedStorage:FindFirstChild(player.Name)
    if playerSave then
        local cashValue = playerSave:FindFirstChild("Cash")
        if cashValue then
            local gemsValue = playerSave:FindFirstChild("Gems")
            if gemsValue then
                local leaderStats = player:FindFirstChild ("leaderstats")
                if leaderStats then
                    local playersCoins = leaderStats:FindFirstChild ("Coins")
                    local playersGems = leaderStats:FindFirstChild ("Gems")
                    if playersCoins then
                        if playersGems then
                            cashValue.Value = playersCoins.Value
                            gemsValue.Value = playersGems.Value
                        end
                    end
                end
            end
        end
    end
end)

Answer this question