mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-11-19 01:21:05 +01:00
Add API document for mcl_walls
This commit is contained in:
parent
99e4b04e55
commit
beb8e50eb6
2 changed files with 34 additions and 3 deletions
31
mods/ITEMS/mcl_walls/API.md
Normal file
31
mods/ITEMS/mcl_walls/API.md
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
# API for MineClone 2 walls
|
||||||
|
|
||||||
|
This API allows you to add more walls (like the cobblestone wall) to MineClone 2.
|
||||||
|
|
||||||
|
## `mcl_walls.register_wall(nodename, description, tiles, invtex, groups, sounds)`
|
||||||
|
|
||||||
|
Adds a new wall type. This is optimized for stone-based walls, but other materials are theoretically possible, too.
|
||||||
|
|
||||||
|
The current implementation registers a couple of nodes for the different nodeboxes.
|
||||||
|
All walls connect to solid nodes and all other wall nodes.
|
||||||
|
|
||||||
|
The crafting recipe is NOT registered, you have to add your own.
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
* `nodename`: Full itemstring of the new wall node (base node only). ***Must not have an underscore!***
|
||||||
|
* `description`: Item description of item (tooltip), visible to user
|
||||||
|
* `tiles`: Wall textures table, same syntax as for `minetest.register_node`
|
||||||
|
* `inventory_image`: Inventory image (optional, default is an ugly 3D image)
|
||||||
|
* `groups`: Base group memberships (optional, default is `{cracky=3}`)
|
||||||
|
* `sounds`: Sound table (optional, by default default uses stone sounds)
|
||||||
|
|
||||||
|
The following groups will automatically be added to the nodes (where applicable), you do not need to add them
|
||||||
|
to the `groups` table:
|
||||||
|
|
||||||
|
* `deco_block=1`
|
||||||
|
* `not_in_creative_inventory=1` (except for the base node which the player can take)
|
||||||
|
* `wall=1`
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
mcl_walls.register_wall("mymod:granitewall", "Granite Wall", {"mymod_granite.png"}, "mymod_granite_wall_inv.png")
|
|
@ -85,11 +85,11 @@ local full_blocks = {
|
||||||
* nodename: Itemstring of base node to add. Must not contain an underscore
|
* nodename: Itemstring of base node to add. Must not contain an underscore
|
||||||
* description: Item description (tooltip), visible to user
|
* description: Item description (tooltip), visible to user
|
||||||
* tiles: Wall textures table
|
* tiles: Wall textures table
|
||||||
* invtex: Inventory image (optional)
|
* inventory_image: Inventory image (optional)
|
||||||
* groups: Base group memberships (optional, default is {cracky=3})
|
* groups: Base group memberships (optional, default is {cracky=3})
|
||||||
* sounds: Sound table (optional, default is stone)
|
* sounds: Sound table (optional, default is stone)
|
||||||
]]
|
]]
|
||||||
function mcl_walls.register_wall(nodename, description, tiles, invtex, groups, sounds)
|
function mcl_walls.register_wall(nodename, description, tiles, inventory_image, groups, sounds)
|
||||||
|
|
||||||
local base_groups = groups
|
local base_groups = groups
|
||||||
if not base_groups then
|
if not base_groups then
|
||||||
|
@ -196,7 +196,7 @@ function mcl_walls.register_wall(nodename, description, tiles, invtex, groups, s
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
groups = main_node_groups,
|
groups = main_node_groups,
|
||||||
tiles = tiles,
|
tiles = tiles,
|
||||||
inventory_image = invtex,
|
inventory_image = inventory_image,
|
||||||
stack_max = 64,
|
stack_max = 64,
|
||||||
drawtype = "nodebox",
|
drawtype = "nodebox",
|
||||||
node_box = {
|
node_box = {
|
||||||
|
|
Loading…
Reference in a new issue