2021-05-07 21:41:39 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-03-01 08:44:37 +08:00
<class name= "TileData" inherits= "Object" version= "4.1" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2021-05-07 21:41:39 +08:00
<brief_description >
2022-11-21 10:48:36 +08:00
Settings for a single tile in a [TileSet].
2021-05-07 21:41:39 +08:00
</brief_description>
<description >
2022-11-21 10:48:36 +08:00
[TileData] object represents a single tile in a [TileSet]. It is usually edited using the tileset editor, but it can be modified at runtime using [method TileMap._tile_data_runtime_update].
2021-05-07 21:41:39 +08:00
</description>
<tutorials >
</tutorials>
<methods >
2021-06-10 02:01:08 +08:00
<method name= "add_collision_polygon" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2021-09-06 17:56:31 +08:00
Adds a collision polygon to the tile on the given TileSet physics layer.
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "get_collision_polygon_one_way_margin" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "float" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the one-way margin (for one-way platforms) of the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "get_collision_polygon_points" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "PackedVector2Array" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the points of the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "get_collision_polygons_count" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "int" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns how many polygons the tile has for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-09-15 21:23:58 +08:00
<method name= "get_constant_angular_velocity" qualifiers= "const" >
<return type= "float" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-09-15 21:23:58 +08:00
<description >
Returns the constant angular velocity applied to objects colliding with this tile.
</description>
</method>
<method name= "get_constant_linear_velocity" qualifiers= "const" >
<return type= "Vector2" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-09-15 21:23:58 +08:00
<description >
Returns the constant linear velocity applied to objects colliding with this tile.
</description>
</method>
2021-05-07 21:41:39 +08:00
<method name= "get_custom_data" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "Variant" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_name" type= "String" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the custom data value for custom data layer named [param layer_name].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "get_custom_data_by_layer_id" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "Variant" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the custom data value for custom data layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "get_navigation_polygon" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "NavigationPolygon" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the navigation polygon of the tile for the TileSet navigation layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "get_occluder" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "OccluderPolygon2D" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the occluder polygon of the tile for the TileSet occlusion layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2022-02-24 00:25:50 +08:00
<method name= "get_terrain_peering_bit" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "int" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "peering_bit" type= "int" enum= "TileSet.CellNeighbor" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns the tile's terrain bit for the given [param peering_bit] direction.
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "is_collision_polygon_one_way" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Returns whether one-way collisions are enabled for the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "remove_collision_polygon" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Removes the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "set_collision_polygon_one_way" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
<param index= "2" name= "one_way" type= "bool" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Enables/disables one-way collisions on the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "set_collision_polygon_one_way_margin" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
<param index= "2" name= "one_way_margin" type= "float" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Enables/disables one-way collisions on the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "set_collision_polygon_points" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygon_index" type= "int" />
<param index= "2" name= "polygon" type= "PackedVector2Array" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the points of the polygon at index [param polygon_index] for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-06-10 02:01:08 +08:00
<method name= "set_collision_polygons_count" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "polygons_count" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the polygons count for TileSet physics layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2021-09-15 21:23:58 +08:00
<method name= "set_constant_angular_velocity" >
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "velocity" type= "float" />
2021-09-15 21:23:58 +08:00
<description >
Sets the constant angular velocity. This does not rotate the tile. This angular velocity is applied to objects colliding with this tile.
</description>
</method>
<method name= "set_constant_linear_velocity" >
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "velocity" type= "Vector2" />
2021-09-15 21:23:58 +08:00
<description >
Sets the constant linear velocity. This does not move the tile. This linear velocity is applied to objects colliding with this tile. This is useful to create conveyor belts.
</description>
</method>
2021-05-07 21:41:39 +08:00
<method name= "set_custom_data" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_name" type= "String" />
<param index= "1" name= "value" type= "Variant" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the tile's custom data value for the TileSet custom data layer with name [param layer_name].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "set_custom_data_by_layer_id" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "value" type= "Variant" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the tile's custom data value for the TileSet custom data layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "set_navigation_polygon" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "navigation_polygon" type= "NavigationPolygon" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the navigation polygon for the TileSet navigation layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
<method name= "set_occluder" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "layer_id" type= "int" />
<param index= "1" name= "occluder_polygon" type= "OccluderPolygon2D" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the occluder for the TileSet occlusion layer with index [param layer_id].
2021-05-07 21:41:39 +08:00
</description>
</method>
2022-02-24 00:25:50 +08:00
<method name= "set_terrain_peering_bit" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "peering_bit" type= "int" enum= "TileSet.CellNeighbor" />
<param index= "1" name= "terrain" type= "int" />
2021-05-07 21:41:39 +08:00
<description >
2022-08-09 23:19:47 +08:00
Sets the tile's terrain bit for the given [param peering_bit] direction.
2021-05-07 21:41:39 +08:00
</description>
</method>
</methods>
<members >
<member name= "flip_h" type= "bool" setter= "set_flip_h" getter= "get_flip_h" default= "false" >
2022-11-21 10:48:36 +08:00
If [code]true[/code], the tile will have its texture flipped horizontally.
2021-05-07 21:41:39 +08:00
</member>
<member name= "flip_v" type= "bool" setter= "set_flip_v" getter= "get_flip_v" default= "false" >
2022-11-21 10:48:36 +08:00
If [code]true[/code], the tile will have its texture flipped vertically.
2021-05-07 21:41:39 +08:00
</member>
2022-02-26 07:24:08 +08:00
<member name= "material" type= "Material" setter= "set_material" getter= "get_material" >
The [Material] to use for this [TileData]. This can be a [CanvasItemMaterial] to use the default shader, or a [ShaderMaterial] to use a custom shader.
2021-09-06 17:56:31 +08:00
</member>
2019-09-25 01:45:03 +08:00
<member name= "modulate" type= "Color" setter= "set_modulate" getter= "get_modulate" default= "Color(1, 1, 1, 1)" >
2022-11-21 10:48:36 +08:00
Color modulation of the tile.
2021-05-07 21:41:39 +08:00
</member>
<member name= "probability" type= "float" setter= "set_probability" getter= "get_probability" default= "1.0" >
2022-11-21 10:48:36 +08:00
Relative probability of this tile being selected when drawing a pattern of random tiles.
2021-05-07 21:41:39 +08:00
</member>
2022-02-24 00:25:50 +08:00
<member name= "terrain" type= "int" setter= "set_terrain" getter= "get_terrain" default= "-1" >
2022-11-21 10:48:36 +08:00
ID of the terrain from the terrain set that the tile uses.
2022-02-24 00:25:50 +08:00
</member>
2021-05-07 21:41:39 +08:00
<member name= "terrain_set" type= "int" setter= "set_terrain_set" getter= "get_terrain_set" default= "-1" >
2022-11-21 10:48:36 +08:00
ID of the terrain set that the tile uses.
2021-05-07 21:41:39 +08:00
</member>
2023-01-27 01:47:54 +08:00
<member name= "texture_origin" type= "Vector2i" setter= "set_texture_origin" getter= "get_texture_origin" default= "Vector2i(0, 0)" >
2022-11-21 10:48:36 +08:00
Offsets the position of where the tile is drawn.
2021-05-07 21:41:39 +08:00
</member>
<member name= "transpose" type= "bool" setter= "set_transpose" getter= "get_transpose" default= "false" >
2022-11-21 10:48:36 +08:00
If [code]true[/code], the tile will display transposed, i.e. with horizontal and vertical texture UVs swapped.
2021-05-07 21:41:39 +08:00
</member>
2021-05-21 16:08:15 +08:00
<member name= "y_sort_origin" type= "int" setter= "set_y_sort_origin" getter= "get_y_sort_origin" default= "0" >
2022-11-21 10:48:36 +08:00
Vertical point of the tile used for determining y-sorted order.
2021-05-07 21:41:39 +08:00
</member>
<member name= "z_index" type= "int" setter= "set_z_index" getter= "get_z_index" default= "0" >
2022-11-21 10:48:36 +08:00
Ordering index of this tile, relative to [TileMap].
2021-05-07 21:41:39 +08:00
</member>
</members>
<signals >
<signal name= "changed" >
<description >
2022-11-21 10:48:36 +08:00
Emitted when any of the properties are changed.
2021-05-07 21:41:39 +08:00
</description>
</signal>
</signals>
</class>