mirror of
https://github.com/minetest/minetest.git
synced 2024-11-27 10:03:45 +01:00
Lua_api.txt: Split long lines part 1
This commit is contained in:
parent
1137f469e2
commit
b592c52f1c
163
doc/lua_api.txt
163
doc/lua_api.txt
@ -368,7 +368,8 @@ Parameters:
|
||||
* `<p>` = current animation frame
|
||||
|
||||
Draw a step of the crack animation on the texture.
|
||||
`crack` draws it normally, while `cracko` lays it over, keeping transparent pixels intact.
|
||||
`crack` draws it normally, while `cracko` lays it over, keeping transparent
|
||||
pixels intact.
|
||||
|
||||
Example:
|
||||
|
||||
@ -457,7 +458,8 @@ Example:
|
||||
default_stone.png^[transformFXR90
|
||||
|
||||
#### `[inventorycube{<top>{<left>{<right>`
|
||||
Escaping does not apply here and `^` is replaced by `&` in texture names instead.
|
||||
Escaping does not apply here and `^` is replaced by `&` in texture names
|
||||
instead.
|
||||
|
||||
Create an inventory cube texture using the side textures.
|
||||
|
||||
@ -510,8 +512,8 @@ texture pixel.
|
||||
Multiplies texture colors with the given color.
|
||||
`<color>` is specified as a `ColorString`.
|
||||
Result is more like what you'd expect if you put a color on top of another
|
||||
color. Meaning white surfaces get a lot of your new color while black parts don't
|
||||
change very much.
|
||||
color. Meaning white surfaces get a lot of your new color while black parts
|
||||
don't change very much.
|
||||
|
||||
Hardware coloring
|
||||
-----------------
|
||||
@ -808,16 +810,19 @@ the global `minetest.registered_*` tables.
|
||||
|
||||
* `minetest.register_decoration(decoration definition)`
|
||||
* returns an integer uniquely identifying the registered decoration
|
||||
* added to `minetest.registered_decorations` with the key of `decoration.name`
|
||||
* added to `minetest.registered_decorations` with the key of
|
||||
`decoration.name`.
|
||||
* if `decoration.name` is nil, the key is the returned ID
|
||||
|
||||
* `minetest.register_schematic(schematic definition)`
|
||||
* returns an integer uniquely identifying the registered schematic
|
||||
* added to `minetest.registered_schematic` with the key of `schematic.name`
|
||||
* if `schematic.name` is nil, the key is the returned ID
|
||||
* if the schematic is loaded from a file, schematic.name is set to the filename
|
||||
* if the function is called when loading the mod, and schematic.name is a relative
|
||||
path, then the current mod path will be prepended to the schematic filename
|
||||
* if the schematic is loaded from a file, schematic.name is set to the
|
||||
filename.
|
||||
* if the function is called when loading the mod, and schematic.name is a
|
||||
relative path, then the current mod path will be prepended to the
|
||||
schematic filename.
|
||||
|
||||
* `minetest.clear_registered_biomes()`
|
||||
* clears all biomes currently registered
|
||||
@ -909,20 +914,22 @@ node definition:
|
||||
^ Only valid for "nodebox" with 'type = "leveled"', and "plantlike_rooted".
|
||||
Leveled nodebox:
|
||||
The level of the top face of the nodebox is stored in param2.
|
||||
The other faces are defined by 'fixed = {}' like 'type = "fixed"' nodeboxes.
|
||||
The other faces are defined by 'fixed = {}' like 'type = "fixed"'
|
||||
nodeboxes.
|
||||
The nodebox height is (param2 / 64) nodes.
|
||||
The maximum accepted value of param2 is 127.
|
||||
Rooted plantlike:
|
||||
The height of the 'plantlike' section is stored in param2.
|
||||
The height is (param2 / 16) nodes.
|
||||
paramtype2 == "degrotate"
|
||||
^ The rotation of this node is stored in param2. Plants are rotated this way.
|
||||
^ Only valid for "plantlike". The rotation of the node is stored in param2.
|
||||
Values range 0 - 179. The value stored in param2 is multiplied by two to
|
||||
get the actual rotation of the node.
|
||||
get the actual rotation in degrees of the node.
|
||||
paramtype2 == "meshoptions"
|
||||
^ Only valid for "plantlike". The value of param2 becomes a bitfield which can
|
||||
be used to change how the client draws plantlike nodes. Bits 0, 1 and 2 form
|
||||
a mesh selector. Currently the following meshes are choosable:
|
||||
^ Only valid for "plantlike". The value of param2 becomes a bitfield which
|
||||
can be used to change how the client draws plantlike nodes.
|
||||
Bits 0, 1 and 2 form a mesh selector.
|
||||
Currently the following meshes are choosable:
|
||||
0 = a "x" shaped plant (ordinary plant)
|
||||
1 = a "+" shaped plant (just rotated 45 degrees)
|
||||
2 = a "*" shaped plant with 3 faces instead of 2
|
||||
@ -949,7 +956,8 @@ node definition:
|
||||
is picked from the palette.
|
||||
The palette should have 32 pixels.
|
||||
paramtype2 == "glasslikeliquidlevel"
|
||||
^ Only valid for "glasslike_framed" or "glasslike_framed_optional" drawtypes.
|
||||
^ Only valid for "glasslike_framed" or "glasslike_framed_optional"
|
||||
drawtypes.
|
||||
param2 values 0-63 define 64 levels of internal liquid, 0 being empty and
|
||||
63 being full.
|
||||
Liquid texture is defined using `special_tiles = {"modname_tilename.png"},`
|
||||
@ -981,7 +989,8 @@ Look for examples in `games/minimal` or `games/minetest_game`.
|
||||
* `mesh` -- Use models for nodes, see below
|
||||
* `plantlike_rooted` -- See below
|
||||
|
||||
`*_optional` drawtypes need less rendering time if deactivated (always client side).
|
||||
`*_optional` drawtypes need less rendering time if deactivated
|
||||
(always client side).
|
||||
|
||||
Node boxes
|
||||
----------
|
||||
@ -1002,9 +1011,9 @@ A nodebox is defined as any of:
|
||||
fixed = box OR {box1, box2, ...}
|
||||
}
|
||||
{
|
||||
-- A variable height box (or boxes) with the top face position defined by
|
||||
-- the node parameter 'leveled = ', or if 'paramtype2 == "leveled"' by
|
||||
-- param2.
|
||||
-- A variable height box (or boxes) with the top face position defined
|
||||
-- by the node parameter 'leveled = ', or if 'paramtype2 == "leveled"'
|
||||
-- by param2.
|
||||
-- Other faces are defined by 'fixed = {}' as with 'type = "fixed"'.
|
||||
type = "leveled",
|
||||
fixed = box OR {box1, box2, ...}
|
||||
@ -1038,7 +1047,8 @@ A nodebox is defined as any of:
|
||||
disconnected_back = box OR {box1, box2, ...}
|
||||
disconnected_right = box OR {box1, box2, ...}
|
||||
disconnected = box OR {box1, box2, ...} -- when there is *no* neighbour
|
||||
disconnected_sides = box OR {box1, box2, ...} -- when there are *no* neighbours to the sides
|
||||
disconnected_sides = box OR {box1, box2, ...} -- when there are *no*
|
||||
neighbours to the sides
|
||||
}
|
||||
|
||||
A `box` is defined as:
|
||||
@ -1080,14 +1090,16 @@ Offset that the noise is translated by (i.e. added) after calculation.
|
||||
Factor that the noise is scaled by (i.e. multiplied) after calculation.
|
||||
|
||||
### `spread`
|
||||
Vector containing values by which each coordinate is divided by before calculation.
|
||||
Vector containing values by which each coordinate is divided by before
|
||||
calculation.
|
||||
Higher spread values result in larger noise features.
|
||||
|
||||
A value of `{x=250, y=250, z=250}` is common.
|
||||
|
||||
### `seed`
|
||||
Random seed for the noise. Add the world seed to a seed offset for world-unique noise.
|
||||
In the case of `minetest.get_perlin()`, this value has the world seed automatically added.
|
||||
Random seed for the noise. Add the world seed to a seed offset for world-unique
|
||||
noise. In the case of `minetest.get_perlin()`, this value has the world seed
|
||||
automatically added.
|
||||
|
||||
### `octaves`
|
||||
Number of times the noise gradient is accumulated into the noise.
|
||||
@ -1097,10 +1109,11 @@ Increase this number to increase the amount of detail in the resulting noise.
|
||||
A value of `6` is common.
|
||||
|
||||
### `persistence`
|
||||
Factor by which the effect of the noise gradient function changes with each successive octave.
|
||||
Factor by which the effect of the noise gradient function changes with each
|
||||
successive octave.
|
||||
|
||||
Values less than `1` make the details of successive octaves' noise diminish, while values
|
||||
greater than `1` make successive octaves stronger.
|
||||
Values less than `1` make the details of successive octaves' noise diminish,
|
||||
while values greater than `1` make successive octaves stronger.
|
||||
|
||||
A value of `0.6` is common.
|
||||
|
||||
@ -1115,13 +1128,15 @@ Leave this field unset for no special handling.
|
||||
Currently supported are `defaults`, `eased` and `absvalue`.
|
||||
|
||||
#### `defaults`
|
||||
Specify this if you would like to keep auto-selection of eased/not-eased while specifying
|
||||
some other flags.
|
||||
Specify this if you would like to keep auto-selection of eased/not-eased while
|
||||
specifying some other flags.
|
||||
|
||||
#### `eased`
|
||||
Maps noise gradient values onto a quintic S-curve before performing interpolation.
|
||||
This results in smooth, rolling noise. Disable this (`noeased`) for sharp-looking noise.
|
||||
If no flags are specified (or defaults is), 2D noise is eased and 3D noise is not eased.
|
||||
Maps noise gradient values onto a quintic S-curve before performing
|
||||
interpolation. This results in smooth, rolling noise.
|
||||
Disable this (`noeased`) for sharp-looking noise.
|
||||
If no flags are specified (or defaults is), 2D noise is eased and 3D noise is
|
||||
not eased.
|
||||
|
||||
#### `absvalue`
|
||||
Accumulates the absolute value of each noise gradient result.
|
||||
@ -1151,9 +1166,9 @@ All default ores are of the uniformly-distributed scatter type.
|
||||
### `scatter`
|
||||
Randomly chooses a location and generates a cluster of ore.
|
||||
|
||||
If `noise_params` is specified, the ore will be placed if the 3D perlin noise at
|
||||
that point is greater than the `noise_threshold`, giving the ability to create
|
||||
a non-equal distribution of ore.
|
||||
If `noise_params` is specified, the ore will be placed if the 3D perlin noise
|
||||
at that point is greater than the `noise_threshold`, giving the ability to
|
||||
create a non-equal distribution of ore.
|
||||
|
||||
### `sheet`
|
||||
Creates a sheet of ore in a blob shape according to the 2D perlin noise
|
||||
@ -1164,29 +1179,31 @@ This sheet consists of vertical columns of uniform randomly distributed height,
|
||||
varying between the inclusive range `column_height_min` and `column_height_max`.
|
||||
If `column_height_min` is not specified, this parameter defaults to 1.
|
||||
If `column_height_max` is not specified, this parameter defaults to `clust_size`
|
||||
for reverse compatibility. New code should prefer `column_height_max`.
|
||||
for reverse compatibility. New code should prefer `column_height_max`.
|
||||
|
||||
The `column_midpoint_factor` parameter controls the position of the column at which
|
||||
ore emanates from. If 1, columns grow upward. If 0, columns grow downward. If 0.5,
|
||||
columns grow equally starting from each direction. `column_midpoint_factor` is a
|
||||
decimal number ranging in value from 0 to 1. If this parameter is not specified,
|
||||
the default is 0.5.
|
||||
The `column_midpoint_factor` parameter controls the position of the column at
|
||||
which ore emanates from.
|
||||
If 1, columns grow upward. If 0, columns grow downward. If 0.5, columns grow
|
||||
equally starting from each direction.
|
||||
`column_midpoint_factor` is a decimal number ranging in value from 0 to 1. If
|
||||
this parameter is not specified, the default is 0.5.
|
||||
|
||||
The ore parameters `clust_scarcity` and `clust_num_ores` are ignored for this ore type.
|
||||
The ore parameters `clust_scarcity` and `clust_num_ores` are ignored for this
|
||||
ore type.
|
||||
|
||||
### `puff`
|
||||
Creates a sheet of ore in a cloud-like puff shape.
|
||||
|
||||
As with the `sheet` ore type, the size and shape of puffs are described by
|
||||
`noise_params` and `noise_threshold` and are placed at random vertical positions
|
||||
within the currently generated chunk.
|
||||
`noise_params` and `noise_threshold` and are placed at random vertical
|
||||
positions within the currently generated chunk.
|
||||
|
||||
The vertical top and bottom displacement of each puff are determined by the noise
|
||||
parameters `np_puff_top` and `np_puff_bottom`, respectively.
|
||||
The vertical top and bottom displacement of each puff are determined by the
|
||||
noise parameters `np_puff_top` and `np_puff_bottom`, respectively.
|
||||
|
||||
### `blob`
|
||||
Creates a deformed sphere of ore according to 3d perlin noise described by
|
||||
`noise_params`. The maximum size of the blob is `clust_size`, and
|
||||
`noise_params`. The maximum size of the blob is `clust_size`, and
|
||||
`clust_scarcity` has the same meaning as with the `scatter` type.
|
||||
|
||||
### `vein`
|
||||
@ -1195,8 +1212,8 @@ instances of 3d perlin noise with different seeds, both described by
|
||||
`noise_params`.
|
||||
|
||||
`random_factor` varies the influence random chance has on placement of an ore
|
||||
inside the vein, which is `1` by default. Note that modifying this parameter may
|
||||
require adjusting `noise_threshold`.
|
||||
inside the vein, which is `1` by default. Note that modifying this parameter
|
||||
may require adjusting `noise_threshold`.
|
||||
|
||||
The parameters `clust_scarcity`, `clust_num_ores`, and `clust_size` are ignored
|
||||
by this ore type.
|
||||
@ -1222,8 +1239,8 @@ computationally expensive than any other ore.
|
||||
Creates a single undulating ore stratum that is continuous across mapchunk
|
||||
borders and horizontally spans the world.
|
||||
|
||||
The 2D perlin noise described by `noise_params` defines the Y co-ordinate of the
|
||||
stratum midpoint. The 2D perlin noise described by `np_stratum_thickness`
|
||||
The 2D perlin noise described by `noise_params` defines the Y co-ordinate of
|
||||
the stratum midpoint. The 2D perlin noise described by `np_stratum_thickness`
|
||||
defines the stratum's vertical thickness (in units of nodes). Due to being
|
||||
continuous across mapchunk borders the stratum's vertical thickness is
|
||||
unlimited.
|
||||
@ -1234,8 +1251,8 @@ to y_max in a simple horizontal stratum.
|
||||
A parameter `stratum_thickness` can be provided instead of the noise parameter
|
||||
`np_stratum_thickness`, to create a constant thickness.
|
||||
|
||||
Leaving out one or both noise parameters makes the ore generation less intensive,
|
||||
useful when adding multiple strata.
|
||||
Leaving out one or both noise parameters makes the ore generation less
|
||||
intensive, useful when adding multiple strata.
|
||||
|
||||
`y_min` and `y_max` define the limits of the ore generation and for performance
|
||||
reasons should be set as close together as possible but without clipping the
|
||||
@ -1255,15 +1272,16 @@ Currently supported flags:
|
||||
`puff_cliffs`, `puff_additive_composition`.
|
||||
|
||||
### `puff_cliffs`
|
||||
If set, puff ore generation will not taper down large differences in displacement
|
||||
when approaching the edge of a puff. This flag has no effect for ore types other
|
||||
than `puff`.
|
||||
If set, puff ore generation will not taper down large differences in
|
||||
displacement when approaching the edge of a puff. This flag has no effect for
|
||||
ore types other than `puff`.
|
||||
|
||||
### `puff_additive_composition`
|
||||
By default, when noise described by `np_puff_top` or `np_puff_bottom` results in a
|
||||
negative displacement, the sub-column at that point is not generated. With this
|
||||
attribute set, puff ore generation will instead generate the absolute difference in
|
||||
noise displacement values. This flag has no effect for ore types other than `puff`.
|
||||
By default, when noise described by `np_puff_top` or `np_puff_bottom` results
|
||||
in a negative displacement, the sub-column at that point is not generated. With
|
||||
this attribute set, puff ore generation will instead generate the absolute
|
||||
difference in noise displacement values. This flag has no effect for ore types
|
||||
other than `puff`.
|
||||
|
||||
Decoration types
|
||||
----------------
|
||||
@ -1290,22 +1308,28 @@ A schematic specifier identifies a schematic by either a filename to a
|
||||
Minetest Schematic file (`.mts`) or through raw data supplied through Lua,
|
||||
in the form of a table. This table specifies the following fields:
|
||||
|
||||
* The `size` field is a 3D vector containing the dimensions of the provided schematic. (required)
|
||||
* The `yslice_prob` field is a table of {ypos, prob} which sets the `ypos`th vertical slice
|
||||
of the schematic to have a `prob / 256 * 100` chance of occurring. (default: 255)
|
||||
* The `size` field is a 3D vector containing the dimensions of the provided
|
||||
schematic. (required)
|
||||
* The `yslice_prob` field is a table of {ypos, prob} which sets the `ypos`th
|
||||
vertical slice of the schematic to have a `prob / 256 * 100` chance of
|
||||
occurring. (default: 255)
|
||||
* The `data` field is a flat table of MapNode tables making up the schematic,
|
||||
in the order of `[z [y [x]]]`. (required)
|
||||
Each MapNode table contains:
|
||||
* `name`: the name of the map node to place (required)
|
||||
* `prob` (alias `param1`): the probability of this node being placed (default: 255)
|
||||
* `param2`: the raw param2 value of the node being placed onto the map (default: 0)
|
||||
* `force_place`: boolean representing if the node should forcibly overwrite any
|
||||
previous contents (default: false)
|
||||
* `prob` (alias `param1`): the probability of this node being placed
|
||||
(default: 255)
|
||||
* `param2`: the raw param2 value of the node being placed onto the map
|
||||
(default: 0)
|
||||
* `force_place`: boolean representing if the node should forcibly overwrite
|
||||
any previous contents (default: false)
|
||||
|
||||
About probability values:
|
||||
|
||||
* A probability value of `0` or `1` means that node will never appear (0% chance).
|
||||
* A probability value of `254` or `255` means the node will always appear (100% chance).
|
||||
* A probability value of `0` or `1` means that node will never appear
|
||||
(0% chance).
|
||||
* A probability value of `254` or `255` means the node will always appear
|
||||
(100% chance).
|
||||
* If the probability value `p` is greater than `1`, then there is a
|
||||
`(p / 256 * 100)` percent chance that node will appear when the schematic is
|
||||
placed on the map.
|
||||
@ -1321,7 +1345,8 @@ Currently supported flags: `place_center_x`, `place_center_y`, `place_center_z`,
|
||||
* `place_center_x`: Placement of this decoration is centered along the X axis.
|
||||
* `place_center_y`: Placement of this decoration is centered along the Y axis.
|
||||
* `place_center_z`: Placement of this decoration is centered along the Z axis.
|
||||
* `force_placement`: Schematic nodes other than "ignore" will replace existing nodes.
|
||||
* `force_placement`: Schematic nodes other than "ignore" will replace existing
|
||||
nodes.
|
||||
|
||||
|
||||
HUD element types
|
||||
|
Loading…
Reference in New Issue
Block a user