diff options
| author | sfan5 <sfan5@live.de> | 2016-03-23 22:09:55 +0100 | 
|---|---|---|
| committer | sfan5 <sfan5@live.de> | 2016-03-23 22:09:55 +0100 | 
| commit | 61ab240ceac0ce20f19cbdccdecfd3028cf6893a (patch) | |
| tree | 9f4aaadb2c19d2db4b2fc9e4b555091f3372f847 | |
| parent | b06e004d80f49aa3e7938e7d63911fee03534253 (diff) | |
Add //drain
| -rw-r--r-- | ChatCommands.md | 6 | ||||
| -rw-r--r-- | worldedit_commands/init.lua | 24 | 
2 files changed, 30 insertions, 0 deletions
diff --git a/ChatCommands.md b/ChatCommands.md index d3ed7db..b11aaf0 100644 --- a/ChatCommands.md +++ b/ChatCommands.md @@ -291,6 +291,12 @@ Fixes the lighting in the current WorldEdit region.      //fixlight
 +### `//drain`
 +
 +Removes any fluid node within the current WorldEdit region.
 +
 +    //drain
 +
  ### `//hide`
  Hide all nodes in the current WorldEdit region non-destructively.
 diff --git a/worldedit_commands/init.lua b/worldedit_commands/init.lua index 83a127e..c93a760 100644 --- a/worldedit_commands/init.lua +++ b/worldedit_commands/init.lua @@ -838,6 +838,30 @@ minetest.register_chatcommand("/fixlight", {  	end),
  })
 +minetest.register_chatcommand("/drain", {
 +	params = "",
 +	description = "Remove any fluid node within the current WorldEdit region",
 +	privs = {worldedit=true},
 +	func = safe_region(function(name, param)
 +		-- TODO: make an API function for this
 +		local count = 0
 +		local pos1, pos2 = worldedit.sort_pos(worldedit.pos1[name], worldedit.pos2[name])
 +		for x = pos1.x, pos2.x do
 +		for y = pos1.y, pos2.y do
 +		for z = pos1.z, pos2.z do
 +			local n = minetest.get_node({x=x, y=y, z=z}).name
 +			local d = minetest.registered_nodes[n]
 +			if d ~= nil and (d["drawtype"] == "liquid" or d["drawtype"] == "flowingliquid") then
 +				minetest.remove_node({x=x, y=y, z=z})
 +				count = count + 1
 +			end
 +		end
 +		end
 +		end
 +		worldedit.player_notify(name, count .. " nodes updated")
 +	end),
 +})
 +
  minetest.register_chatcommand("/hide", {
  	params = "",
  	description = "Hide all nodes in the current WorldEdit region non-destructively",
  | 
