123456789101112131415161718192021222324252627282930313233343536373839 |
- ---@meta
- ---Tile definition
- ------------------
- -- Can be a name (string) or `mt.TileTableDef`.
- ---@alias mt.TileDef mt.TileTableDef|string
- -- Tile definition.
- ---@class mt.TileTableDef
- ---@field name string|nil
- ---@field animation mt.TileAnimDef|nil
- -- Backface culling enabled by default for most nodes.
- ---@field backface_culling boolean|nil
- -- Align style determines whether the texture will be rotated with the node
- -- or kept aligned with its surroundings. "user" means that client
- -- setting will be used, similar to `glasslike_framed_optional`.
- -- Note: supported by solid nodes and nodeboxes only.
- ---@field align_style "node"|"world"|"user"|nil
- -- Scale is used to make texture span several (exactly `scale`) nodes,
- -- instead of just one, in each direction. Works for world-aligned
- -- textures only.
- -- Note that as the effect is applied on per-mapblock basis, `16` should
- -- be equally divisible by `scale` or you may get wrong results.
- ---@field scale integer|nil
- -- * The texture's color will be multiplied with this color.
- -- * The tile's color overrides the owning node's color in all cases.
- ---@field color mt.ColorSpec|nil
- ---@field image string|nil Deprecated synonym for field `name`.
- -- Tile animation definition.
- ---@class mt.TileAnimDef
- ---@field type "vertical_frames"|"sheet_2d"|nil
- ---@field aspect_w number|nil Width of a frame in pixels ("vertical_frames").
- ---@field aspect_h number|nil Height of a frame in pixels ("vertical_frames").
- ---@field length number|nil Full loop length ("vertical_frames").
- ---@field frames_w number|nil Width in number of frames ("sheet_2d").
- ---@field frames_h number|nil Height in number of frames ("sheet_2d").
- ---@field frame_length number|nil Length of a single frame ("sheet_2d").
|