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  | 
