diff options
-rw-r--r-- | Chat Commands.md | 195 | ||||
-rw-r--r-- | README.md | 329 | ||||
-rw-r--r-- | WorldEdit API.md | 131 | ||||
-rw-r--r-- | modpack.txt | 0 | ||||
-rw-r--r-- | worldedit/functions.lua (renamed from functions.lua) | 0 | ||||
-rw-r--r-- | worldedit/init.lua (renamed from init.lua) | 0 | ||||
-rw-r--r-- | worldedit/mark.lua (renamed from mark.lua) | 0 | ||||
-rw-r--r-- | worldedit/table_save.lua (renamed from table_save.lua) | 0 | ||||
-rw-r--r-- | worldedit/textures/worldedit_pos1.png (renamed from textures/worldedit_pos1.png) | bin | 142 -> 142 bytes | |||
-rw-r--r-- | worldedit/textures/worldedit_pos2.png (renamed from textures/worldedit_pos2.png) | bin | 157 -> 157 bytes |
10 files changed, 333 insertions, 322 deletions
diff --git a/Chat Commands.md b/Chat Commands.md new file mode 100644 index 0000000..f4febf7 --- /dev/null +++ b/Chat Commands.md @@ -0,0 +1,195 @@ +Chat Commands
+-------------
+For more information, see the [README](README.md).
+
+### //reset
+
+Reset the region so that it is empty.
+
+ //reset
+
+### //mark
+
+Show markers at the region positions.
+
+ //mark
+
+### //pos1
+
+Set WorldEdit region position 1 to the player's location.
+
+ //pos1
+
+### //pos2
+
+Set WorldEdit region position 2 to the player's location.
+
+ //pos2
+
+### //p set/get
+
+Set WorldEdit region by punching two nodes, or display the current WorldEdit region.
+
+ //p set
+ //p get
+
+### //volume
+
+Display the volume of the current WorldEdit region.
+
+ //volume
+
+### //set <node>
+
+Set the current WorldEdit region to <node>.
+
+ //set dirt
+ //set default:glass
+ //set mesecons:mesecon
+
+### //replace <search node> <replace node>
+
+Replace all instances of <search node> with <place node> in the current WorldEdit region.
+
+ //replace cobble stone
+ //replace default:steelblock glass
+ //replace dirt flowers:flower_waterlily
+ //replace flowers:flower_rose flowers:flower_tulip
+
+### //hollowsphere <radius> <node>
+
+Add hollow sphere at WorldEdit position 1 with radius <radius>, composed of <node>.
+
+ //hollowsphere 5 dirt
+ //hollowsphere 12 default:glass
+ //hollowsphere 17 mesecons:mesecon
+
+### //sphere <radius> <node>
+
+Add sphere at WorldEdit position 1 with radius <radius>, composed of <node>.
+
+ //sphere 5 dirt
+ //sphere 12 default:glass
+ //sphere 17 mesecons:mesecon
+
+### //hollowcylinder x/y/z/? <length> <radius> <node>
+
+Add hollow cylinder at WorldEdit position 1 along the x/y/z/? axis with length <length> and radius <radius>, composed of <node>.
+
+ //hollowcylinder x +5 8 dirt
+ //hollowcylinder y 28 10 default:glass
+ //hollowcylinder z -12 3 mesecons:mesecon
+ //hollowcylinder ? 2 4 stone
+
+### //cylinder x/y/z/? <length> <radius> <node>
+
+Add cylinder at WorldEdit position 1 along the x/y/z/? axis with length <length> and radius <radius>, composed of <node>.
+
+ //cylinder x +5 8 dirt
+ //cylinder y 28 10 default:glass
+ //cylinder z -12 3 mesecons:mesecon
+ //cylinder ? 2 4 stone
+
+### //pyramid <height> <node>
+
+Add pyramid at WorldEdit position 1 with height <height>, composed of <node>.
+
+ //pyramid 8 dirt
+ //pyramid 5 default:glass
+ //pyramid 2 stone
+
+### //spiral <width> <height> <spacer> <node>
+
+Add spiral at WorldEdit position 1 with width <width>, height <height>, space between walls <spacer>, composed of <node>.
+
+ //spiral 20 5 3 dirt
+ //spiral 5 2 1 default:glass
+ //spiral 7 1 5 stone
+
+### //copy x/y/z/? <amount>
+
+Copy the current WorldEdit region along the x/y/z/? axis by <amount> nodes.
+
+ //copy x 15
+ //copy y -7
+ //copy z +4
+ //copy ? 8
+
+### //move x/y/z/? <amount>
+
+Move the current WorldEdit positions and region along the x/y/z/? axis by <amount> nodes.
+
+ //move x 15
+ //move y -7
+ //move z +4
+ //move ? -1
+
+### //stack x/y/z/? <count>
+
+Stack the current WorldEdit region along the x/y/z/? axis <count> times.
+
+ //stack x 3
+ //stack y -1
+ //stack z +5
+ //stack ? 12
+
+### //transpose x/y/z/? x/y/z/?
+
+Transpose the current WorldEdit region along the x/y/z/? and x/y/z/? 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 x
+ //flip y
+ //flip z
+ //flip ?
+
+### //rotate x/y/z/? <angle>
+
+Rotate the current WorldEdit region along the x/y/z/? axis by angle <angle> (90 degree increment).
+
+ //rotate x 90
+ //rotate y 180
+ //rotate z 270
+ //rotate ? -90
+
+### //dig
+
+Dig the current WorldEdit region.
+
+ //dig
+
+### //save <file>
+
+Save the current WorldEdit region to "(world folder)/schems/<file>.we".
+
+ //save some random filename
+ //save huge_base
+
+### //load <file>
+
+Load nodes from "(world folder)/schems/<file>.we" with position 1 of the current WorldEdit region as the origin.
+
+ //load some random filename
+ //load huge_base
+
+### //metasave <file>
+
+Save the current WorldEdit region including metadata to "(world folder)/schems/<file>.wem".
+
+ //metasave some random filename
+ //metasave huge_base
+
+### //metaload <file>
+
+Load nodes and metadata from "(world folder)/schems/<file>.wem" with position 1 of the current WorldEdit region as the origin.
+
+ //metaload some random filename
+ //metaload huge_base
\ No newline at end of file @@ -34,336 +34,21 @@ Entities are used to mark the location of the WorldEdit regions. They appear as To remove the entities, simply punch them. This does not reset the positions themselves. -Commands --------- - -### //reset - -Reset the region so that it is empty. - - //reset - -### //mark - -Show markers at the region positions. - - //mark - -### //pos1 - -Set WorldEdit region position 1 to the player's location. - - //pos1 - -### //pos2 - -Set WorldEdit region position 2 to the player's location. - - //pos2 - -### //p set/get - -Set WorldEdit region by punching two nodes, or display the current WorldEdit region. - - //p set - //p get - -### //volume - -Display the volume of the current WorldEdit region. - - //volume - -### //set <node> - -Set the current WorldEdit region to <node>. - - //set dirt - //set default:glass - //set mesecons:mesecon - -### //replace <search node> <replace node> - -Replace all instances of <search node> with <place node> in the current WorldEdit region. - - //replace cobble stone - //replace default:steelblock glass - //replace dirt flowers:flower_waterlily - //replace flowers:flower_rose flowers:flower_tulip - -### //hollowsphere <radius> <node> - -Add hollow sphere at WorldEdit position 1 with radius <radius>, composed of <node>. - - //hollowsphere 5 dirt - //hollowsphere 12 default:glass - //hollowsphere 17 mesecons:mesecon - -### //sphere <radius> <node> - -Add sphere at WorldEdit position 1 with radius <radius>, composed of <node>. - - //sphere 5 dirt - //sphere 12 default:glass - //sphere 17 mesecons:mesecon - -### //hollowcylinder x/y/z/? <length> <radius> <node> - -Add hollow cylinder at WorldEdit position 1 along the x/y/z/? axis with length <length> and radius <radius>, composed of <node>. - - //hollowcylinder x +5 8 dirt - //hollowcylinder y 28 10 default:glass - //hollowcylinder z -12 3 mesecons:mesecon - //hollowcylinder ? 2 4 stone - -### //cylinder x/y/z/? <length> <radius> <node> - -Add cylinder at WorldEdit position 1 along the x/y/z/? axis with length <length> and radius <radius>, composed of <node>. - - //cylinder x +5 8 dirt - //cylinder y 28 10 default:glass - //cylinder z -12 3 mesecons:mesecon - //cylinder ? 2 4 stone - -### //pyramid <height> <node> - -Add pyramid at WorldEdit position 1 with height <height>, composed of <node>. - - //pyramid 8 dirt - //pyramid 5 default:glass - //pyramid 2 stone - -### //spiral <width> <height> <spacer> <node> - -Add spiral at WorldEdit position 1 with width <width>, height <height>, space between walls <spacer>, composed of <node>. - - //spiral 20 5 3 dirt - //spiral 5 2 1 default:glass - //spiral 7 1 5 stone - -### //copy x/y/z/? <amount> - -Copy the current WorldEdit region along the x/y/z/? axis by <amount> nodes. - - //copy x 15 - //copy y -7 - //copy z +4 - //copy ? 8 - -### //move x/y/z/? <amount> - -Move the current WorldEdit positions and region along the x/y/z/? axis by <amount> nodes. - - //move x 15 - //move y -7 - //move z +4 - //move ? -1 - -### //stack x/y/z/? <count> - -Stack the current WorldEdit region along the x/y/z/? axis <count> times. - - //stack x 3 - //stack y -1 - //stack z +5 - //stack ? 12 - -### //transpose x/y/z/? x/y/z/? - -Transpose the current WorldEdit region along the x/y/z/? and x/y/z/? 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 x - //flip y - //flip z - //flip ? - -### //rotate x/y/z/? <angle> - -Rotate the current WorldEdit region along the x/y/z/? axis by angle <angle> (90 degree increment). - - //rotate x 90 - //rotate y 180 - //rotate z 270 - //rotate ? -90 - -### //dig - -Dig the current WorldEdit region. - - //dig - -### //save <file> - -Save the current WorldEdit region to "(world folder)/schems/<file>.we". - - //save some random filename - //save huge_base - -### //load <file> - -Load nodes from "(world folder)/schems/<file>.we" with position 1 of the current WorldEdit region as the origin. - - //load some random filename - //load huge_base - -### //metasave <file> - -Save the current WorldEdit region including metadata to "(world folder)/schems/<file>.wem". - - //metasave some random filename - //metasave huge_base - -### //metaload <file> - -Load nodes and metadata from "(world folder)/schems/<file>.wem" with position 1 of the current WorldEdit region as the origin. +Chat Commands +------------- +WorldEdit is accessed in-game through an interface. By default, the mod distribution includes a chat interface for this purpose. It is documented in the [Chat Commands Reference](Chat Commands.md). - //metaload some random filename - //metaload huge_base +If visual manipulation of nodes is desired, the [WorldEdit GUI](http://minetest.net/forum/viewtopic.php?id=3112) mod provides a simple interface with buttons and text entry fields for this purpose. WorldEdit API ------------- -WorldEdit exposes all significant functionality in a simple interface. Adding WorldEdit to the file "depends.txt" in your mod gives you access to all of the `worldedit` functions. These are useful if you're looking for high-performance node manipulation without all the hassle of writing tons of code. - -### worldedit.volume(pos1, pos2) - -Determines the volume of the region defined by positions `pos1` and `pos2`. - -Returns the volume. - -### worldedit.set(pos1, pos2, nodename) - -Sets a region defined by positions `pos1` and `pos2` to `nodename`. To clear to region, use "air" as the value of `nodename`. - -Returns the number of nodes set. - -### worldedit.replace(pos1, pos2, searchnode, replacenode) - -Replaces all instances of `searchnode` with `replacenode` in a region defined by positions `pos1` and `pos2`. - -Returns the number of nodes replaced. - -### worldedit.hollow_sphere = function(pos, radius, nodename) - -Adds a hollow sphere at `pos` with radius `radius`, composed of `nodename`. - -Returns the number of nodes added. - -### worldedit.sphere = function(pos, radius, nodename) - -Adds a sphere at `pos` with radius `radius`, composed of `nodename`. - -Returns the number of nodes added. - -### worldedit.hollow_cylinder(pos, axis, length, radius, nodename) - -Adds a hollow cylinder at `pos` along the `axis` axis ("x" or "y" or "z") with length `length` and radius `radius`, composed of `nodename`. - -Returns the number of nodes added. - -### worldedit.cylinder(pos, axis, length, radius, nodename) - -Adds a cylinder at `pos` along the `axis` axis ("x" or "y" or "z") with length `length` and radius `radius`, composed of `nodename`. - -Returns the number of nodes added. - -### worldedit.pyramid(pos, height, nodename) - -Adds a pyramid at `pos` with height `height`. - -Returns the number of nodes added. - -### worldedit.spiral(pos, width, height, spacer, nodename) - -Adds a spiral at `pos` with width `width`, height `height`, space between walls `spacer`, composed of `nodename`. - -Returns the number of nodes added. - -### worldedit.copy(pos1, pos2, axis, amount) - -Copies the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") by `amount` nodes. - -Returns the number of nodes copied. - -### worldedit.move(pos1, pos2, axis, amount) - -Moves the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") by `amount` nodes. - -Returns the number of nodes moved. - -### worldedit.stack(pos1, pos2, axis, count) - -Duplicates the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") `count` times. - -Returns the number of nodes stacked. - -### worldedit.transpose(pos1, pos2, axis1, axis2) - -Transposes a region defined by the positions `pos1` and `pos2` between the `axis1` and `axis2` axes ("x" or "y" or "z"). - -Returns the number of nodes transposed. - -### worldedit.flip(pos1, pos2, axis) - -Flips a region defined by the positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z"). - -Returns the number of nodes flipped. - -### worldedit.rotate(pos1, pos2, angle) - -Rotates a region defined by the positions `pos1` and `pos2` by `angle` degrees clockwise around the y axis (supporting 90 degree increments only). - -Returns the number of nodes rotated. - -### worldedit.dig(pos1, pos2) - -Digs a region defined by positions `pos1` and `pos2`. - -Returns the number of nodes dug. - -### worldedit.serialize(pos1, pos2) - -Converts the region defined by positions `pos1` and `pos2` into a single string. - -Returns the serialized data and the number of nodes serialized. - -### worldedit.deserialize(originpos, value) - -Loads the nodes represented by string `value` at position `originpos`. - -Returns the number of nodes deserialized. - -### worldedit.deserialize_old(originpos, value) - -Loads the nodes represented by string `value` at position `originpos`, using the older table-based WorldEdit format. - -This function is deprecated, and should not be used unless there is a need to support legacy WorldEdit save files. - -Returns the number of nodes deserialized. - -### worldedit.metasave(pos1, pos2, file) - -Saves the nodes and meta defined by positions `pos1` and `pos2` into a file - -Returns the number of nodes saved - -### worldedit.metaload(pos1, file) - -Loads the nodes and meta from `file` to position `pos1` +WorldEdit exposes all significant functionality in a simple interface. Adding WorldEdit to the file "depends.txt" in your mod gives you access to all of the `worldedit` functions. The API is useful for tasks such as high-performance node manipulation, alternative interfaces, and map creation. -Returns the number of nodes loaded +This API is documented in the [WorldEdit API Reference](WorldEdit API.md). License ------- -Copyright 2012 sfan5 and Anthony Zhang (Temperest) +Copyright 2012 sfan5, Anthony Zhang (Temperest), and Brett O'Donnell (cornernote). This mod is licensed under the [GNU Affero General Public License](http://www.gnu.org/licenses/agpl-3.0.html). diff --git a/WorldEdit API.md b/WorldEdit API.md new file mode 100644 index 0000000..41fab69 --- /dev/null +++ b/WorldEdit API.md @@ -0,0 +1,131 @@ +WorldEdit API
+-------------
+For more information, see the [README](README.md).
+
+### worldedit.volume(pos1, pos2)
+
+Determines the volume of the region defined by positions `pos1` and `pos2`.
+
+Returns the volume.
+
+### worldedit.set(pos1, pos2, nodename)
+
+Sets a region defined by positions `pos1` and `pos2` to `nodename`. To clear to region, use "air" as the value of `nodename`.
+
+Returns the number of nodes set.
+
+### worldedit.replace(pos1, pos2, searchnode, replacenode)
+
+Replaces all instances of `searchnode` with `replacenode` in a region defined by positions `pos1` and `pos2`.
+
+Returns the number of nodes replaced.
+
+### worldedit.hollow_sphere = function(pos, radius, nodename)
+
+Adds a hollow sphere at `pos` with radius `radius`, composed of `nodename`.
+
+Returns the number of nodes added.
+
+### worldedit.sphere = function(pos, radius, nodename)
+
+Adds a sphere at `pos` with radius `radius`, composed of `nodename`.
+
+Returns the number of nodes added.
+
+### worldedit.hollow_cylinder(pos, axis, length, radius, nodename)
+
+Adds a hollow cylinder at `pos` along the `axis` axis ("x" or "y" or "z") with length `length` and radius `radius`, composed of `nodename`.
+
+Returns the number of nodes added.
+
+### worldedit.cylinder(pos, axis, length, radius, nodename)
+
+Adds a cylinder at `pos` along the `axis` axis ("x" or "y" or "z") with length `length` and radius `radius`, composed of `nodename`.
+
+Returns the number of nodes added.
+
+### worldedit.pyramid(pos, height, nodename)
+
+Adds a pyramid at `pos` with height `height`.
+
+Returns the number of nodes added.
+
+### worldedit.spiral(pos, width, height, spacer, nodename)
+
+Adds a spiral at `pos` with width `width`, height `height`, space between walls `spacer`, composed of `nodename`.
+
+Returns the number of nodes added.
+
+### worldedit.copy(pos1, pos2, axis, amount)
+
+Copies the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") by `amount` nodes.
+
+Returns the number of nodes copied.
+
+### worldedit.move(pos1, pos2, axis, amount)
+
+Moves the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") by `amount` nodes.
+
+Returns the number of nodes moved.
+
+### worldedit.stack(pos1, pos2, axis, count)
+
+Duplicates the region defined by positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z") `count` times.
+
+Returns the number of nodes stacked.
+
+### worldedit.transpose(pos1, pos2, axis1, axis2)
+
+Transposes a region defined by the positions `pos1` and `pos2` between the `axis1` and `axis2` axes ("x" or "y" or "z").
+
+Returns the number of nodes transposed.
+
+### worldedit.flip(pos1, pos2, axis)
+
+Flips a region defined by the positions `pos1` and `pos2` along the `axis` axis ("x" or "y" or "z").
+
+Returns the number of nodes flipped.
+
+### worldedit.rotate(pos1, pos2, angle)
+
+Rotates a region defined by the positions `pos1` and `pos2` by `angle` degrees clockwise around the y axis (supporting 90 degree increments only).
+
+Returns the number of nodes rotated.
+
+### worldedit.dig(pos1, pos2)
+
+Digs a region defined by positions `pos1` and `pos2`.
+
+Returns the number of nodes dug.
+
+### worldedit.serialize(pos1, pos2)
+
+Converts the region defined by positions `pos1` and `pos2` into a single string.
+
+Returns the serialized data and the number of nodes serialized.
+
+### worldedit.deserialize(originpos, value)
+
+Loads the nodes represented by string `value` at position `originpos`.
+
+Returns the number of nodes deserialized.
+
+### worldedit.deserialize_old(originpos, value)
+
+Loads the nodes represented by string `value` at position `originpos`, using the older table-based WorldEdit format.
+
+This function is deprecated, and should not be used unless there is a need to support legacy WorldEdit save files.
+
+Returns the number of nodes deserialized.
+
+### worldedit.metasave(pos1, pos2, file)
+
+Saves the nodes and meta defined by positions `pos1` and `pos2` into a file.
+
+Returns the number of nodes saved.
+
+### worldedit.metaload(pos1, file)
+
+Loads the nodes and meta from `file` to position `pos1`.
+
+Returns the number of nodes loaded.
\ No newline at end of file diff --git a/modpack.txt b/modpack.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/modpack.txt diff --git a/functions.lua b/worldedit/functions.lua index 2d949c6..2d949c6 100644 --- a/functions.lua +++ b/worldedit/functions.lua diff --git a/init.lua b/worldedit/init.lua index 84cf4fe..84cf4fe 100644 --- a/init.lua +++ b/worldedit/init.lua diff --git a/mark.lua b/worldedit/mark.lua index 0f011d2..0f011d2 100644 --- a/mark.lua +++ b/worldedit/mark.lua diff --git a/table_save.lua b/worldedit/table_save.lua index cbc18ae..cbc18ae 100644 --- a/table_save.lua +++ b/worldedit/table_save.lua diff --git a/textures/worldedit_pos1.png b/worldedit/textures/worldedit_pos1.png Binary files differindex 4c304aa..4c304aa 100644 --- a/textures/worldedit_pos1.png +++ b/worldedit/textures/worldedit_pos1.png diff --git a/textures/worldedit_pos2.png b/worldedit/textures/worldedit_pos2.png Binary files differindex 1502f16..1502f16 100644 --- a/textures/worldedit_pos2.png +++ b/worldedit/textures/worldedit_pos2.png |