So yea. I have been stuck on this for a long time trying to figure out how to script it so that you have to beat them in this order (Standard > Hardcore > Perfect > Speed) and by testing free models i found a free model that sounds intresting which looks like this

local Datastore = game:GetService("DataStoreService"):GetDataStore("Checkpad")

game.Players.PlayerAdded:connect(function(player)

	local stats = Instance.new("IntValue")
	stats.Name = "leaderstats"
	stats.Parent = player

	local stage = Instance.new("IntValue")
	stage.Name = "Stage"
	stage.Parent = stats	
	stage.Value = 1
	
	local mode1 = Instance.new("BoolValue")
	mode1.Name = "Speedcompleted"
	mode1.Parent = player
	mode1.Value = false
	
	local mode2 = Instance.new("BoolValue")
	mode2.Name = "Quickcompleted"
	mode2.Parent =player
	mode2.Value = false
	
	local mode3 = Instance.new("BoolValue")
	mode3.Name = "Perfectcompleted"
	mode3.Parent = player	
	mode3.Value = false
	
	local mode4 = Instance.new("BoolValue")
	mode4.Name = "Standardcompleted"
	mode4.Parent = player
	mode4.Value = false
	
	local mode = Instance.new("StringValue")
	mode.Name = "Mode"
	mode.Parent = stats
	mode.Value = "Standard"
	
	local key = "player-"..player.userId
	
	local savedValues = Datastore:SetAsync(key)
	
	if savedValues then
		mode4.Value = savedValues[1]
		mode3.Value = savedValues[2]
		mode2.Value = savedValues[3]
		mode1.Value = savedValues[4]
	else
		local valuesToSave = {mode1.Value, mode2.Value, mode3.Value, mode4.Value}
		Datastore:SetAsync(key, valuesToSave)
	end
end)

game.Players.PlayerRemoving:connect(function(player)
	
	local key = "player-"..player.userId	
	
	local valuesToSave = {player.mode1.Value, player.mode2.Value, player.mode3.Value, player.mode4.Value}
	Datastore:SetAsync(key, valuesToSave)
		
end)

so yea If you are talented enough to help me Please do, thanks for reading my question..

1 comment

0

Not cool, really not cool. Do not want help for free scripts next time. And this is not even a confusing script.