added /goto
parent
93caa5e776
commit
e6dbe7d05d
|
@ -73,6 +73,21 @@ minetest.register_chatcommand("lobby", {
|
|||
end,
|
||||
})
|
||||
|
||||
minetest.register_chatcommand("goto", {
|
||||
params = "",
|
||||
description = "Goto level",
|
||||
func = function(name, param)
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then
|
||||
return false, "Player not found"
|
||||
end
|
||||
teleport.players[name] = tonumber(param)-1 or 0
|
||||
creative.play(player)
|
||||
teleport.back(player)
|
||||
return true, "Done."
|
||||
end,
|
||||
})
|
||||
|
||||
if minetest.setting_getbool("creative_mode") then
|
||||
|
||||
-- Place node at player pos
|
||||
|
|
|
@ -24,6 +24,11 @@ function teleport.lobby(player)
|
|||
player:setpos({x = 0, y = 100, z = 0})
|
||||
end
|
||||
|
||||
function teleport.set_level(player, p)
|
||||
local name = player:get_player_name()
|
||||
teleport.players[name] = math.floor(p.x/50+0.5) or teleport.players[name]
|
||||
end
|
||||
|
||||
function teleport.new_player(name)
|
||||
teleport.players[name] = 0
|
||||
end
|
||||
|
|
|
@ -229,6 +229,11 @@ else
|
|||
if node and node.name == "levelnodes:finishline" then
|
||||
teleport.tp(player)
|
||||
end
|
||||
|
||||
-- is on startline
|
||||
if node and node.name == "levelnodes:startline" then
|
||||
teleport.set_level(player, vector.new(pos.x, pos.y-1, pos.z))
|
||||
end
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue