return true
end
--- Updates the location ingame of the markers
-worldedit.marker_update = function(name, marker)
- if marker == nil then
- worldedit.mark_pos1(name)
- worldedit.mark_pos2(name)
- elseif marker == 1 then
- worldedit.mark_pos1(name)
- elseif marker == 2 then
- worldedit.mark_pos2(name)
- else
- minetest.debug(
- "worldedit: Invalid execution of function update_markers")
- end
-end
-
-- Returns two vectors with the directions for volumetric expansion
worldedit.get_expansion_directions = function(mark1, mark2)
func = function(name)\r
worldedit.pos1[name] = nil\r
worldedit.pos2[name] = nil\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
worldedit.set_pos[name] = nil\r
--make sure the user does not try to confirm an operation after resetting pos:\r
reset_pending(name)\r
description = "Show markers at the region positions",\r
privs = {worldedit=true},\r
func = function(name)\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
worldedit.player_notify(name, "region marked")\r
end,\r
})\r
local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name]\r
worldedit.pos1[name] = nil\r
worldedit.pos2[name] = nil\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
worldedit.pos1[name] = pos1\r
worldedit.pos2[name] = pos2\r
worldedit.player_notify(name, "region unmarked")\r
\r
pos1[axis] = pos1[axis] + amount\r
pos2[axis] = pos2[axis] + amount\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
worldedit.player_notify(name, count .. " nodes moved")\r
end,\r
})\r
--reset markers to scaled positions\r
worldedit.pos1[name] = pos1\r
worldedit.pos2[name] = pos2\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
\r
worldedit.player_notify(name, count .. " nodes stretched")\r
end,\r
--reset markers to transposed positions\r
worldedit.pos1[name] = pos1\r
worldedit.pos2[name] = pos2\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
\r
worldedit.player_notify(name, count .. " nodes transposed")\r
end,\r
--reset markers to rotated positions\r
worldedit.pos1[name] = pos1\r
worldedit.pos2[name] = pos2\r
- worldedit.mark_pos1(name)\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
\r
worldedit.player_notify(name, count .. " nodes rotated")\r
end,\r
end\r
\r
worldedit.pos1[name] = nodepos1\r
- worldedit.mark_pos1(name)\r
worldedit.pos2[name] = nodepos2\r
- worldedit.mark_pos2(name)\r
+ worldedit.marker_update(name)\r
\r
worldedit.player_notify(name, count .. " nodes allocated")\r
end,\r
worldedit.marker_region = {}\r
\r
--marks worldedit region position 1\r
-worldedit.mark_pos1 = function(name)\r
+worldedit.mark_pos1 = function(name, region_too)\r
local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name]\r
\r
if pos1 ~= nil then\r
worldedit.marker1[name]:get_luaentity().player_name = name\r
end\r
end\r
- worldedit.mark_region(name)\r
+ if region_too == nil or region_too then\r
+ worldedit.mark_region(name)\r
+ end\r
end\r
\r
--marks worldedit region position 2\r
-worldedit.mark_pos2 = function(name)\r
+worldedit.mark_pos2 = function(name, region_too)\r
local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name]\r
\r
if pos2 ~= nil then\r
worldedit.marker2[name]:get_luaentity().player_name = name\r
end\r
end\r
- worldedit.mark_region(name)\r
+ if region_too == nil or region_too then\r
+ worldedit.mark_region(name)\r
+ end\r
end\r
\r
worldedit.mark_region = function(name)\r
end\r
end\r
\r
+--convenience function that calls everything\r
+worldedit.marker_update = function(name)\r
+ worldedit.mark_pos1(name, false)\r
+ worldedit.mark_pos2(name, false)\r
+ worldedit.mark_region(name)\r
+end\r
+\r
minetest.register_entity(":worldedit:pos1", {\r
initial_properties = {\r
visual = "cube",\r