--[[ Format: user = { name = { pos = {x = 128, y = 50, z = 256}, idx = 439 } } ]] local waypoints = {} minetest.register_chatcommand("waypoint", { params = "", description = [[Creates a waypoint at your position called If the waypoint is already set, move the waypoint.]], func = function (name, param) if waypoints[name] == nil then waypoints[name] = {} end local player = minetest.get_player_by_name(name) if player == nil then return end if waypoints[name][param] ~= nil then player:hud_remove(waypoints[name][param].idx) end local pos = player:get_pos() waypoints[name][param] = {} waypoints[name][param].pos = pos local idx = player:hud_add({ hud_elem_type = "waypoint", name = param, text = "m", world_pos = pos, number = 0xFFFFFFFF, }) waypoints[name][param].idx = idx end }) minetest.register_chatcommand("teleportwaypoint", { params = "", description = "Teleport to waypoint NAME", func = function (name, param) if waypoints[name] == nil then waypoints[name] = {} end if waypoints[name][param] == nil then return end local player = minetest.get_player_by_name(name) if player == nil then return end player:set_pos(waypoints[name][param].pos) end }) minetest.register_chatcommand("biome", { description = "Return the current biome name", func = function (name) local player = minetest.get_player_by_name(name) if player == nil then return end local pos = player:get_pos() local name = minetest.get_biome_name(minetest.get_biome_data(pos).biome) return true, string.format("Current biome name: %s", name) end })