diff --git a/ChatCommands.md b/ChatCommands.md index 3a91e0e..1d3b4e9 100644 --- a/ChatCommands.md +++ b/ChatCommands.md @@ -29,24 +29,26 @@ Many commands also have shorter names that can be typed faster. For example, if ### `//about` -Get information about the mod. +Get information about the WorldEdit mod. //about -### `//inspect on/off/1/0/true/false/yes/no/enable/disable/` +### `//help [all/]` + +Get help for WorldEdit commands. `all` shows all WorldEdit commands, `` +the help text for the given command. + + //help + //help all + //help hollowpyramid + + +### `//inspect [on/off/1/0/true/false/yes/no/enable/disable]` Enable or disable node inspection. //inspect on //inspect off - //inspect 1 - //inspect 0 - //inspect true - //inspect false - //inspect yes - //inspect no - //inspect enable - //inspect disable //inspect ### `//reset` @@ -81,18 +83,19 @@ Set WorldEdit region position 2 to the player's location. ### `//p set/set1/set2/get` -Set WorldEdit region, WorldEdit position 1, or WorldEdit position 2 by punching nodes, or display the current WorldEdit region. +Set WorldEdit region, WorldEdit position 1, or WorldEdit position 2 by +punching nodes, or print the current WorldEdit region. //p set //p set1 //p set2 //p get -### `//fixedpos set1 x y z` +### `//fixedpos set1/set2 ` -Set a WorldEdit region position to the position at (``, ``, ``). +Set the WorldEdit region position 1 or 2 to the position (``, ``, ``). - //fixedpos set1 0 0 0 + //fixedpos set1 0 0 0 //fixedpos set1 -30 5 28 //fixedpos set2 1004 -200 432 @@ -121,9 +124,12 @@ Set the current WorldEdit region to ``. Set the param2 value of all nodes in the current WorldEdit region to ``. -### `//mix [] []...` + //param2 8 -Fill the current WorldEdit region with a random mix of ``, ``, `...`. Weightings can be optionally specified via a number after a node name. +### `//mix [count1] [count2] ...` + +Fill the current WorldEdit region with a random mix of ``, ``, `...`. +Weightings can be optionally specified via the `[count1]`, `[count2]`, `...` parameters after a node name. //mix air //mix cactus stone glass sandstone @@ -152,13 +158,15 @@ Replace all nodes other than `` with `` in the curren ### `//hollowcube ` -Adds a hollow cube with its ground level centered at WorldEdit position 1 with dimensions `` x `` x ``, composed of ``. +Adds a hollow cube with its ground level centered at WorldEdit position 1 with +dimensions `` x `` x ``, composed of ``. //hollowcube 6 5 6 Diamond Block ### `//cube ` -Adds a cube with its ground level centered at WorldEdit position 1 with dimensions `` x `` x ``, composed of ``. +Adds a cube with its ground level centered at WorldEdit position 1 with +dimensions `` x `` x ``, composed of ``. //cube 6 5 6 Diamond Block //cube 7 2 1 default:cobble @@ -197,7 +205,8 @@ Add dome centered at WorldEdit position 1 with radius ``, composed of `< ### `//hollowcylinder x/y/z/? [radius2] ` -Add hollow cylinder at WorldEdit position 1 along the x/y/z/? axis with length ``, base radius `` (and top radius `[radius2]`), composed of ``. +Add hollow cylinder at WorldEdit position 1 along the given axis with length ``, +base radius `` (and top radius `[radius2]`), composed of ``. Despite its name this command allows you to create cones (`radius2` = 0) as well as any shapes inbetween (0 < `radius2` < `radius1`). Swapping `radius1` and `radius2` will create the same object but upside-down. @@ -213,7 +222,8 @@ Swapping `radius1` and `radius2` will create the same object but upside-down. ### `//cylinder x/y/z/? [radius2] ` -Add cylinder at WorldEdit position 1 along the x/y/z/? axis with length ``, base radius `` (and top radius `[radius2]`), composed of ``. +Add cylinder at WorldEdit position 1 along the given axis with length ``, +base radius `` (and top radius `[radius2]`), composed of ``. Can also create shapes other than cylinders, e.g. cones (see documentation above). //cylinder x +5 8 Bronze Block @@ -225,18 +235,18 @@ Can also create shapes other than cylinders, e.g. cones (see documentation above //cylinder x 6 0 5 Dirt //cylinder z 20 10 20 default:desert_stone -### `//hollowpyramid x/y/z? ` +### `//hollowpyramid x/y/z/? ` -Add hollow pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height ``, composed of ``. +Add hollow pyramid centered at WorldEdit position 1 along the given axis with height `` composed of ``. //hollowpyramid x 8 Diamond Block //hollowpyramid y -5 glass //hollowpyramid z 2 mesecons:wire_00000000_off //hollowpyramid ? 12 mesecons:wire_00000000_off -### `//pyramid x/y/z? ` +### `//pyramid x/y/z/? ` -Add pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height ``, composed of ``. +Add pyramid centered at WorldEdit position 1 along the given axis with height `` composed of ``. //pyramid x 8 Diamond Block //pyramid y -5 glass @@ -245,7 +255,8 @@ Add pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height ### `//spiral ` -Add spiral centered at WorldEdit position 1 with side length ``, height ``, space between walls ``, composed of ``. +Add spiral centered at WorldEdit position 1 with side length ``, +height ``, space between walls ``, composed of ``. //spiral 20 5 3 Diamond Block //spiral 5 2 1 glass @@ -253,7 +264,7 @@ Add spiral centered at WorldEdit position 1 with side length ``, height ### `//copy x/y/z/? ` -Copy the current WorldEdit region along the x/y/z/? axis by `` nodes. +Copy the current WorldEdit region along the given axis by `` nodes. //copy x 15 //copy y -7 @@ -262,7 +273,7 @@ Copy the current WorldEdit region along the x/y/z/? axis by `` nodes. ### `//move x/y/z/? ` -Move the current WorldEdit positions and region along the x/y/z/? axis by `` nodes. +Move the current WorldEdit positions and region along the given axis by `` nodes. //move x 15 //move y -7 @@ -271,7 +282,7 @@ Move the current WorldEdit positions and region along the x/y/z/? axis by `` -Stack the current WorldEdit region along the x/y/z/? axis `` times. +Stack the current WorldEdit region along the given axis `` times. //stack x 3 //stack y -1 @@ -287,7 +298,9 @@ Stack the current WorldEdit region `` times by offset ``, ``, `` ### `//stretch ` -Scale the current WorldEdit positions and region by a factor of ``, ``, `` along the X, Y, and Z axes, repectively, with position 1 as the origin. +Scale the current WorldEdit positions and region by a factor of +``, ``, `` along the X, Y, and Z axes, +respectively, with position 1 as the origin. //stretch 2 2 2 //stretch 1 2 1 @@ -295,25 +308,22 @@ Scale the current WorldEdit positions and region by a factor of ``, `< ### `//transpose x/y/z/? x/y/z/?` -Transpose the current WorldEdit positions and region along the x/y/z/? and x/y/z/? axes. +Transpose the current WorldEdit positions and region along given axes. //transpose x y - //transpose x z //transpose y z //transpose ? y ### `//flip x/y/z/?` -Flip the current WorldEdit region along the x/y/z/? axis. +Flip the current WorldEdit region along the given axis. //flip x - //flip y - //flip z //flip ? ### `//rotate x/y/z/? ` -Rotate the current WorldEdit positions and region along the x/y/z/? axis by angle `` (90 degree increment). +Rotate the current WorldEdit positions and region along the given axis by angle `` (90 degree increment). //rotate x 90 //rotate y 180 @@ -348,7 +358,6 @@ The idea is to remove anything that isn't part of the terrain, leaving a "natura //clearcut - ### `//hide` Hide all nodes in the current WorldEdit region non-destructively. @@ -357,7 +366,7 @@ Hide all nodes in the current WorldEdit region non-destructively. ### `//suppress ` -Suppress all in the current WorldEdit region non-destructively. +Suppress all `` in the current WorldEdit region non-destructively. //suppress Diamond Block //suppress glass @@ -365,7 +374,7 @@ Suppress all in the current WorldEdit region non-destructively. ### `//highlight ` -Highlight in the current WorldEdit region by hiding everything else non-destructively. +Highlight `` in the current WorldEdit region by hiding everything else non-destructively. //highlight Diamond Block //highlight glass @@ -409,8 +418,8 @@ Executes `` as a Lua chunk in the global namespace. Executes `` as a Lua chunk in the global namespace with the variable pos available, for each node in the current WorldEdit region. - //luatransform minetest.add_node(pos, {name="default:stone"}) - //luatransform if minetest.get_node(pos).name == "air" then minetest.add_node(pos, {name="default:water_source"}) + //luatransform minetest.swap_node(pos, {name="default:stone"}) + //luatransform if minetest.get_node(pos).name == "air" then minetest.add_node(pos, {name="default:water_source"}) end ### `//mtschemcreate ` @@ -439,42 +448,44 @@ Clears all objects within the WorldEdit region. //clearobjects -### `//shift x/y/z/?/up/down/left/right/front/back [+|-]` +### `//shift x/y/z/?/up/down/left/right/front/back [+/-]` -Shifts the selection area by `[+|-]` without touching its contents. The shifting axis can be absolute (`x/y/z`) or -relative (`up/down/left/right/front/back`). +Shifts the selection area by `[+|-]` without moving its contents. +The shifting axis can be absolute (`x/y/z`) or relative (`up/down/left/right/front/back`). //shift left 5 -### `//expand [+|-]x/y/z/?/up/down/left/right/front/back [reverse-amount]` +### `//expand [+/-]x/y/z/?/up/down/left/right/front/back [reverse amount]` -Expands the selection by `` in the selected absolute or relative axis. If specified, the selection can be expanded in the -opposite direction over the same axis by `[reverse-amount]`. +Expands the selection by `` in the selected absolute or relative axis. +If specified, the selection can be expanded in the opposite direction over the same axis by `[reverse amount]`. //expand right 7 5 -### `//contract [+|-]x/y/z/?/up/down/left/right/front/back [reverse-amount]` +### `//contract [+/-]x/y/z/?/up/down/left/right/front/back [reverse amount]` -Contracts the selection by `` in the selected absolute or relative axis. If specified, the selection can be contracted in the -opposite direction over the same axis by `[reverse-amount]`. +Contracts the selection by `` in the selected absolute or relative axis. +If specified, the selection can be contracted in the opposite direction over the same axis by `[reverse amount]`. //expand right 7 5 -### `//outset [hv] ` +### `//outset [h/v] ` -Expands the selection in all directions by ``. If specified, the selection can be expanded horizontally in the x and z axes `[h]` -or vertically in the y axis `[v]`. +Expands the selection in all directions by ``. If specified, +the selection can be expanded horizontally in the x and z axes using `h` +or vertically in the y axis using `v`. //outset v 5 -### `//inset [hv] ` +### `//inset [h/v] ` -Contracts the selection in all directions by ``. If specified, the selection can be contracted horizontally in the x and z axes `[h]` -or vertically in the y axis `[v]`. +Contracts the selection in all directions by ``. If specified, +the selection can be contracted horizontally in the x and z axes using `h` +or vertically in the y axis using `v`. - //outset v 5 + //inset h 5 -### `//brush none/ [parameters]` +### `//brush none/( [parameters])` Assigns the given `` to the currently held brush item, it will be ran with the first pointed solid node (as determined via raycast) as WorldEdit position 1 when using that specific brush item. diff --git a/worldedit_commands/cuboid.lua b/worldedit_commands/cuboid.lua index 61e74ca..93e45fa 100644 --- a/worldedit_commands/cuboid.lua +++ b/worldedit_commands/cuboid.lua @@ -1,5 +1,5 @@ worldedit.register_command("outset", { - params = "[h|v] ", + params = "[h/v] ", description = "Outset the selected region.", privs = {worldedit=true}, require_pos = 2, @@ -38,7 +38,7 @@ worldedit.register_command("outset", { worldedit.register_command("inset", { - params = "[h|v] ", + params = "[h/v] ", description = "Inset the selected region.", privs = {worldedit=true}, require_pos = 2, @@ -47,9 +47,7 @@ worldedit.register_command("inset", { if find == nil then return false end - - local hv_test = dir:find("[^hv]+") - if hv_test ~= nil then + if dir:find("[^hv]") ~= nil then return false, "Invalid direction." end @@ -77,8 +75,8 @@ worldedit.register_command("inset", { worldedit.register_command("shift", { - params = "[x|y|z|?|up|down|left|right|front|back] [+|-]", - description = "Moves the selection region. Does not move contents.", + params = "x/y/z/?/up/down/left/right/front/back [+/-]", + description = "Shifts the selection area without moving its contents", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -112,8 +110,8 @@ worldedit.register_command("shift", { worldedit.register_command("expand", { - params = "[+|-] [reverse-amount]", - description = "expand the selection in one or two directions at once", + params = "[+/-]x/y/z/?/up/down/left/right/front/back [reverse amount]", + description = "Expands the selection in the selected absolute or relative axis", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -161,8 +159,8 @@ worldedit.register_command("expand", { worldedit.register_command("contract", { - params = "[+|-] [reverse-amount]", - description = "contract the selection in one or two directions at once", + params = "[+/-]x/y/z/?/up/down/left/right/front/back [reverse amount]", + description = "Contracts the selection in the selected absolute or relative axis", privs = {worldedit=true}, require_pos = 2, parse = function(param) diff --git a/worldedit_commands/init.lua b/worldedit_commands/init.lua index cda517c..4e5edbe 100644 --- a/worldedit_commands/init.lua +++ b/worldedit_commands/init.lua @@ -216,7 +216,10 @@ worldedit.register_command("about", { params = "", description = "Get information about the WorldEdit mod", func = function(name) - worldedit.player_notify(name, "WorldEdit " .. worldedit.version_string .. " is available on this server. Type //help to get a list of commands, or get more information at https://github.com/Uberi/Minetest-WorldEdit") + worldedit.player_notify(name, "WorldEdit " .. worldedit.version_string.. + " is available on this server. Type //help to get a list of ".. + "commands, or get more information at ".. + "https://github.com/Uberi/Minetest-WorldEdit") end, }) @@ -428,7 +431,7 @@ worldedit.register_command("p", { }) worldedit.register_command("fixedpos", { - params = "set1/set2 x y z", + params = "set1/set2 ", description = "Set a WorldEdit region position to the position at (, , )", privs = {worldedit=true}, parse = function(param) @@ -537,7 +540,7 @@ worldedit.register_command("param2", { parse = function(param) local param2 = tonumber(param) if not param2 then - return false, "Invalid or missing param2 argument" + return false elseif param2 < 0 or param2 > 255 then return false, "Param2 is out of range (must be between 0 and 255 inclusive!)" end @@ -551,7 +554,7 @@ worldedit.register_command("param2", { }) worldedit.register_command("mix", { - params = " [] [ []] ...", + params = " [count1] [count2] ...", description = "Fill the current WorldEdit region with a random mix of , ...", privs = {worldedit=true}, require_pos = 2, @@ -771,7 +774,7 @@ end worldedit.register_command("hollowcylinder", { params = "x/y/z/? [radius2] ", - description = "Add hollow cylinder at WorldEdit position 1 along the x/y/z/? axis with length , base radius (and top radius [radius2]), composed of ", + description = "Add hollow cylinder at WorldEdit position 1 along the given axis with length , base radius (and top radius [radius2]), composed of ", privs = {worldedit=true}, require_pos = 1, parse = check_cylinder, @@ -792,7 +795,7 @@ worldedit.register_command("hollowcylinder", { worldedit.register_command("cylinder", { params = "x/y/z/? [radius2] ", - description = "Add cylinder at WorldEdit position 1 along the x/y/z/? axis with length , base radius (and top radius [radius2]), composed of ", + description = "Add cylinder at WorldEdit position 1 along the given axis with length , base radius (and top radius [radius2]), composed of ", privs = {worldedit=true}, require_pos = 1, parse = check_cylinder, @@ -825,7 +828,7 @@ end worldedit.register_command("hollowpyramid", { params = "x/y/z/? ", - description = "Add hollow pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height , composed of ", + description = "Add hollow pyramid centered at WorldEdit position 1 along the given axis with height , composed of ", privs = {worldedit=true}, require_pos = 1, parse = check_pyramid, @@ -845,7 +848,7 @@ worldedit.register_command("hollowpyramid", { worldedit.register_command("pyramid", { params = "x/y/z/? ", - description = "Add pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height , composed of ", + description = "Add pyramid centered at WorldEdit position 1 along the given axis with height , composed of ", privs = {worldedit=true}, require_pos = 1, parse = check_pyramid, @@ -890,7 +893,7 @@ worldedit.register_command("spiral", { worldedit.register_command("copy", { params = "x/y/z/? ", - description = "Copy the current WorldEdit region along the x/y/z/? axis by nodes", + description = "Copy the current WorldEdit region along the given axis by nodes", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -917,7 +920,7 @@ worldedit.register_command("copy", { worldedit.register_command("move", { params = "x/y/z/? ", - description = "Move the current WorldEdit region along the x/y/z/? axis by nodes", + description = "Move the current WorldEdit region along the given axis by nodes", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -949,7 +952,7 @@ worldedit.register_command("move", { worldedit.register_command("stack", { params = "x/y/z/? ", - description = "Stack the current WorldEdit region along the x/y/z/? axis times", + description = "Stack the current WorldEdit region along the given axis times", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -1041,7 +1044,7 @@ worldedit.register_command("stretch", { worldedit.register_command("transpose", { params = "x/y/z/? x/y/z/?", - description = "Transpose the current WorldEdit region along the x/y/z/? and x/y/z/? axes", + description = "Transpose the current WorldEdit region along the given axes", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -1071,7 +1074,7 @@ worldedit.register_command("transpose", { worldedit.register_command("flip", { params = "x/y/z/?", - description = "Flip the current WorldEdit region along the x/y/z/? axis", + description = "Flip the current WorldEdit region along the given axis", privs = {worldedit=true}, require_pos = 2, parse = function(param) @@ -1089,8 +1092,8 @@ worldedit.register_command("flip", { }) worldedit.register_command("rotate", { - params = " ", - description = "Rotate the current WorldEdit region around the axis by angle (90 degree increment)", + params = "x/y/z/? ", + description = "Rotate the current WorldEdit region around the given axis by angle (90 degree increment)", privs = {worldedit=true}, require_pos = 2, parse = function(param)