COM_AddCommand("forcerespawn", function(player)
	P_DamageMobj(player.mo, player.mo, player.mo, 10000)
end)

addHook("LinedefExecute", function(line, mobj, sector)
	-- troll'd
	if not (mobj and mobj.valid) then return end
	if not (mobj.player and mobj.player.valid) then return end
	
	-- completely get rid of the players crossed checkpoints
	mobj.player.starpostnum = 0
end, "STTPHELL")

addHook("LinedefExecute", function(line, mobj, sector)
	-- troll'd
	if not (mobj and mobj.valid) then return end
	if not (mobj.player and mobj.player.valid) then return end
	
	-- Set it back
	mobj.player.starpostnum = 6
	mobj.player.starpostx = FixedInt(mobj.x)
	mobj.player.starposty = FixedInt(mobj.y)
	mobj.player.starpostz = FixedInt(mobj.z)
	mobj.player.starpostangle = mobj.angle
end, "STTPHEL2")

addHook("PostThinkFrame", function()
	if mapheaderinfo[gamemap].tour_stairs then
		for p in players.iterate do
			-- final lap
			if p.laps >= 2 then
				if p.deadtimer then
					p.starpostnum = 0
				end
			end
		end
	end
end)