Hello
So i have an problem for 5 hours now and cant fix it, I dont know how to save this code below via an DataStore, I tryd an script but it doesn’t worked. Both scripts are below thanks for any Help / Fix!!
**Leaderstat Script **
local Rs = game.ReplicatedStorage
local Event = Rs:WaitForChild("Events")
game.Players.PlayerAdded:Connect(function(Player)
local leaderstats = Instance.new("Folder")
leaderstats.Parent = Player
leaderstats.Name = "leaderstats"
local Stage = Instance.new("NumberValue")
Stage.Parent = leaderstats
Stage.Name = "Stage"
Stage.Value = 0
local Rebirth = Instance.new("NumberValue")
Rebirth.Parent = leaderstats
Rebirth.Name = "Rebirth"
Rebirth.Value = 0
local CheckpointsFolder = game.Workspace:FindFirstChild("Checkpoints")
for i, Checkpoint in pairs(CheckpointsFolder:GetChildren()) do
Checkpoint.Touched:Connect(function(Hit)
if Hit.Parent:FindFirstChild("Humanoid") then
local PlayerHit = game.Players:GetPlayerFromCharacter(Hit.Parent)
Checkpoint.Color = Color3.fromRGB(0, 255, 0)
Checkpoint.Material = Enum.Material.Neon
if PlayerHit.leaderstats:FindFirstChild("Stage").Value == Checkpoint.Name - 1 then
PlayerHit.leaderstats:FindFirstChild("Stage").Value = Checkpoint.Name
workspace.SoundFx.Success:Play()
Event.CheckPointEvent:FireClient(Player)
end
end
end)
Player.CharacterAdded:Connect(function(Character)
repeat
wait()
until Character ~= nil
local HumanoidRootPart = Character:FindFirstChild("HumanoidRootPart")
HumanoidRootPart.CFrame = CheckpointsFolder:FindFirstChild(Stage.Value).CFrame + Vector3.new(0, 2, 0)
end)
end
end)
Datastore Save Script
local dataStore = game:GetService("DataStoreService"):GetDataStore("SaveData")
game.Players.PlayerAdded:Connect(function(plr)
wait()
local plrid = "id_"..plr.userId
local save1 = plr.leaderstats.Stage
local save2 = plr.leaderstats.Rebirth
local GetSaved = dataStore:GetAsync(plrid)
if GetSaved then
save1.Value = GetSaved[1]
save2.Value = GetSaved[2]
else
local NumberForSaving = {save1.Value, save2.Value}
dataStore:GetAsync(plrid,NumberForSaving)
end
end)
game.Players.PlayerRemoving:Connect(function(plr)
dataStore:SetAsync("id_"..plr.userId {plr.leaderstats.Stages.Value, plr.leaderstats.Rebirth.Value})
end)