Prototype/Tile: Difference between revisions
(Note effect of minable on hidden tiles) |
(to_tiles is an array, formatting) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 39: | Line 39: | ||
Name of a tile. | Name of a tile. | ||
{{Prototype property|effect_color|[[Types/Color|Color]]|<nowiki> | {{Prototype property|effect_color|[[Types/Color|Color]]|<nowiki>{r=1, g=1, b=1, a=1} (white)</nowiki>|optional=true}} | ||
{{Prototype property|tint|[[Types/Color|Color]]|<nowiki> | {{Prototype property|tint|[[Types/Color|Color]]|<nowiki>{r=1, g=1, b=1, a=1} (white)</nowiki>|optional=true}} | ||
{{Prototype property|walking_sound|[[Types/Sound|Sound]]|optional=true}} | {{Prototype property|walking_sound|[[Types/Sound|Sound]]|optional=true}} | ||
Line 50: | Line 50: | ||
* medium - [[Types/Sound|Sound]] | * medium - [[Types/Sound|Sound]] | ||
* large - [[Types/Sound|Sound]] | * large - [[Types/Sound|Sound]] | ||
If the [[Types/Sound|Sound]] is provided directly, it is loaded as the "small" build sound. | |||
{{Prototype property|mined_sound|[[Types/Sound|Sound]]|optional=true}} | {{Prototype property|mined_sound|[[Types/Sound|Sound]]|optional=true}} | ||
Line 79: | Line 81: | ||
{{Prototype property|scorch_mark_color|[[Types/Color|Color]]|optional=true}} | {{Prototype property|scorch_mark_color|[[Types/Color|Color]]|optional=true}} | ||
{{Prototype property|check_collision_with_entities|[[Types/bool|bool]]|false|optional=true}} | |||
If set to true, the game will check for collisions with entities before building or mining the tile. If entities are in the way it is not possible to mine/build the tile. | |||
{{Prototype property|icons, icon, icon_size (IconSpecification)|[[Types/IconSpecification|IconSpecification]]|optional=true}} | {{Prototype property|icons, icon, icon_size (IconSpecification)|[[Types/IconSpecification|IconSpecification]]|optional=true}} | ||
Line 89: | Line 94: | ||
{{Prototype property|transitions|[[Types/table|table]] of [[Types/TileTransitions|TileTransitions]]|optional=true}} | {{Prototype property|transitions|[[Types/table|table]] of [[Types/TileTransitions|TileTransitions]]|optional=true}} | ||
Extra transitions. Array of [[Types/TileTransitions|TileTransitions]]. Each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory property <code>to_tiles</code>, which is a [[Types/string|string]] which is the name of a tile. Furthermore, each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory property <code>transition_group</code> which is a [[Types/uint8|uint8]]. | Extra transitions. Array of [[Types/TileTransitions|TileTransitions]]. | ||
Each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory property <code>to_tiles</code>, which is a [[Types/table|table]] (array) of [[Types/string|string]] which is the name of a tile.<br> | |||
Furthermore, each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory property <code>transition_group</code> which is a [[Types/uint8|uint8]]. | |||
{{Prototype property|transitions_between_transitions|[[Types/table|table]] of [[Types/TileTransitions|TileTransitions]]|optional=true}} | {{Prototype property|transitions_between_transitions|[[Types/table|table]] of [[Types/TileTransitions|TileTransitions]]|optional=true}} | ||
Array of [[Types/TileTransitions|TileTransitions]]. Each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory properties <code>transition_group1</code> and<code>transition_group2</code> , which are of | Array of [[Types/TileTransitions|TileTransitions]]. | ||
Each [[Types/TileTransitions|TileTransitions]] needs the extra mandatory properties <code>transition_group1</code> and <code>transition_group2</code>, which are of [[Types/uint8|uint8]]. | |||
{{Prototype property|autoplace|[[Types/AutoplaceSpecification|AutoplaceSpecification]]|optional=true}} | {{Prototype property|autoplace|[[Types/AutoplaceSpecification|AutoplaceSpecification]]|optional=true}} | ||
{{Prototype property|placeable_by|[[Types/ItemToPlace|ItemToPlace]] or [[Types/table|table]] of [[Types/ItemToPlace|ItemToPlace]]|optional=true}} | {{Prototype property|placeable_by|[[Types/ItemToPlace|ItemToPlace]] or [[Types/table|table]] of [[Types/ItemToPlace|ItemToPlace]]|optional=true}} |
Latest revision as of 16:42, 17 June 2022
Prototype definitions » PrototypeBase » Prototype/Tile
A tile. Only 255 instances of this prototype may be defined.
Mandatory properties
Inherits all properties from PrototypeBase.
collision_mask
Type: CollisionMask
layer
Type: uint8
Specifies transition drawing priority.
variants
Type: TileTransitions
Graphics for this tile. This has extra properties besides the properties from TileTransitions:
- main - table of TileSprite - Mandatory. Array of TileSprites with the following extra properties:
- size - uint32 - Mandatory. - Only powers of 2 from 1 to 128 can be used. Square size of the tile arrangement this animation is used for. Used to calculate the
width
andheight
of the animation which cannot be set directly. (width or height) = size * 32 / scale. - probability - double - Optional. - Default: 1.0 - Probability of 1x1 (size = 1) version of tile must be 1.
- weights - table of double - Optional. - Array of double.
- size - uint32 - Mandatory. - Only powers of 2 from 1 to 128 can be used. Square size of the tile arrangement this animation is used for. Used to calculate the
- material_background - TileSprite - Optional. Width and height are given by the game, setting them will not have an effect. Width and height are calculated from the expected size (32) and the scale. So, for HR tiles at a size of 64x64, the scale needs to be 0.5.
map_color
Type: Color
pollution_absorption_per_second
Type: double
Emissions absorbed per second by this tile. Use a negative value if pollution is created instead of removed.
Optional properties
transition_overlay_layer_offset
Type: uint8
Default: 0
layer_group
Type: string
Default: "water" if draw_in_water_layer
is true, else "ground"
One of "zero", "water", "water-overlay", "ground" and "top".
draw_in_water_layer
Type: bool
Default: false
Used only for the layer_group
default, see above.
transition_merges_with_tile
Type: string
Name of a tile.
effect_color
Type: Color
Default: {r=1, g=1, b=1, a=1} (white)
tint
Type: Color
Default: {r=1, g=1, b=1, a=1} (white)
walking_sound
Type: Sound
build_sound
Type: table
Either one Sound or a table with the following optional key/value pairs:
If the Sound is provided directly, it is loaded as the "small" build sound.
mined_sound
Type: Sound
walking_speed_modifier
Type: double
Default: 1
vehicle_friction_modifier
Type: double
Default: 1
decorative_removal_probability
Type: float
Default: 0.0
allowed_neighbors
Type: table of string
Default: All tiles
Array of tile names that are allowed next to this one.
needs_correction
Type: bool
Default: false
minable
Type: MinableProperties
If you want the tile to not be mineable, don't specify the minable property. Only non-mineable tiles become hidden tiles when placing mineable tiles on top of them.
next_direction
Type: string
Name of a tile.
can_be_part_of_blueprint
Type: bool
Default: true
effect
Type: string
Name of a Prototype/TileEffect.
trigger_effect
Type: TriggerEffect
Called by InvokeTileEffectTriggerEffectItem.
scorch_mark_color
Type: Color
check_collision_with_entities
Type: bool
Default: false
If set to true, the game will check for collisions with entities before building or mining the tile. If entities are in the way it is not possible to mine/build the tile.
icons, icon, icon_size (IconSpecification)
Type: IconSpecification
If this is not set, the material_background
in variants
is used as the icon.
effect_color_secondary
Type: Color
Used by the pollution shader.
effect_is_opaque
Type: bool
transitions
Type: table of TileTransitions
Extra transitions. Array of TileTransitions.
Each TileTransitions needs the extra mandatory property to_tiles
, which is a table (array) of string which is the name of a tile.
Furthermore, each TileTransitions needs the extra mandatory property transition_group
which is a uint8.
transitions_between_transitions
Type: table of TileTransitions
Array of TileTransitions.
Each TileTransitions needs the extra mandatory properties transition_group1
and transition_group2
, which are of uint8.
autoplace
Type: AutoplaceSpecification
placeable_by
Type: ItemToPlace or table of ItemToPlace