Hi Guys, so I designed a simple Checkpoint Module - Moneypro’s Checkpoint Module!
So this is for people who want to make their checkpoint system easily by writing some commands, it’s just like doing print(“Build me a house”) and your house gets ready!
What can it do ?
Load Data
Save Data
Create Leaderstats
Add leaderstats Values
Make the checkpoints functional
You can use it without giving any credits to me! It’s totally free
Link -
I’m totally free for feedbacks, also if it bugs, please report here.
your using MoveTo which the player walk into the checkpoint, so my question is your checkpoint system should be instant go into checkpoint or use walk?
It should be instantly go to checkpoint. Actually I could use CFrames, but I didn’t for some reason which I don’t know lol. If there’s no baseplate, then it would go automatically, otherwise, it would walk, but I recommend to use CFrames. I’ll try to better update my code and make things work more smoothly.
local Moneypro = ReplicatedStorage:WaitForChild("Moneypro")
local PlayersC = {}
Moneypro.Manage()
Players.PlayerAdded:Connect(player)
PlayersC[player.Name] = Moneypro.Load(player)
end)
Players.PlayerRemoving:Connect(player)
if PlayersC[player.Name] ~= nil then
PlayersC[player.Name]:Save()
PlayersC[player.Name]:Eject()
PlayersC[player.Name] = nil
end
end)
game:BindToClose(function()
for i, player in Players:GetPlayers() do
if PlayersC[player.Name] ~= nil then
PlayersC[player.Name]:Save()
PlayersC[player.Name]:Eject()
end
end
table.clear(PlayersC)
end)
local Players = game:GetService("Players")
local Moneypro = ReplicatedStorage:WaitForChild("Moneypro")
local PlayersC = {}
local Checkpoint_KEY = "DataKey1.0"
Moneypro.Manage("checkpoint")
Players.PlayerAdded:Connect(player)
Instance.new("Folder", player)
local LoadCheckpoint = Moneypro.Load(player, Checkpoint_KEY, "checkpoint", true)
if LoadCheckpoint[1] == true then
PlayersC[player.Name] = LoadCheckpoint[2]
end
end)
Players.PlayerRemoving:Connect(player)
if PlayersC[player.Name] ~= nil then
PlayersC[player.Name]:Save("checkpoint", true)
PlayersC[player.Name] = nil
end
end)
game:BindToClose(function()
for i, player in Players:GetPlayers() do
if PlayersC[player.Name] ~= nil then
PlayersC[player.Name]:Save("checkpoint", true)
end
end
table.clear(PlayersC)
end)
First of all, thanks to all who supported and purchased this module For the betterment of this module, I would like to update this so it becomes more powerful. However, I need ideas. Anyone who gives ideas will be appreciated