Functions and messages used to manipulate tile map components.
Static methods
staticget_bounds(url:HashOrStringOrUrl):TilemapBounds
Get the bounds for a tile map. This function returns multiple values: The lower left corner index x and y coordinates (1-indexed), the tile map width and the tile map height.
The resulting values take all tile map layers into account, meaning that the bounds are calculated as if all layers were collapsed into one.
Parameters:
url | the tile map |
---|
staticget_tile(url:HashOrStringOrUrl, name:HashOrString, x:Int, y:Int):Int
Get the tile set at the specified position in the tilemap.
The position is identified by the tile index starting at origo
with index 1, 1. (see Tilemap.set_tile
)
Which tile map and layer to query is identified by the URL and the
layer name parameters.
Parameters:
url | the tile map |
---|---|
name | of the layer |
x | x coordinate of the tile |
y | y coordinate of the tile |
Returns:
index of the tile
staticreset_constant(url:HashOrStringOrUrl, name:HashOrString):Void
Reset a shader constant for a tile map.
The constant must be defined in the material assigned to the tile map. Resetting a constant through this function implies that the value defined in the material will be used. Which tile map to reset a constant for is identified by the URL.
Parameters:
url | the tile map that should have a constant reset |
---|---|
name | of the constant |
staticset_constant(url:HashOrStringOrUrl, name:HashOrString, value:Vector4):Void
Set a shader constant for a tile map.
The constant must be defined in the material assigned to the tile map. Setting a constant through this function will override the value set for that constant in the material. The value will be overridden until tilemap.reset_constant is called. Which tile map to set a constant for is identified by the URL.
Parameters:
url | the tile map that should have a constant set |
---|---|
name | of the constant |
value | of the constant |
staticset_tile(url:HashOrStringOrUrl, name:HashOrString, x:Int, y:Int, new_tile:Int, ?h_flip:Bool, ?v_flip:Bool):Void
Set a tile in a tile map.
Replace a tile in a tile map with a new tile. The coordinates of the tiles are indexed so that the "first" tile just above and to the right of origo has coordinates 1,1. Tiles to the left of and below origo are indexed 0, -1, -2 and so forth.
+-------+-------+------+------+ | 0,3 | 1,3 | 2,3 | 3,3 | +-------+-------+------+------+ | 0,2 | 1,2 | 2,2 | 3,2 | +-------+-------+------+------+ | 0,1 | 1,1 | 2,1 | 3,1 | +-------O-------+------+------+ | 0,0 | 1,0 | 2,0 | 3,0 | +-------+-------+------+------+
The coordinates must be within the bounds of the tile map as it were created. That is, it is not possible to extend the size of a tile map by setting tiles outside the edges. To clear a tile, set the tile to number 0. Which tile map and layer to manipulate is identified by the URL and the layer name parameters.
Parameters:
url | the tile map |
---|---|
name | name of the layer |
x | x coordinate of the tile |
y | y coordinate of the tile |
new_tile | tile to set |
h_flip | if the tile should be horizontally flipped |
v_flip | if the tile should be vertically flipped |
staticset_visible(url:HashOrStringOrUrl, layer:HashOrString, visible:Bool):Void
Sets the visibility of the tilemap layer.
Parameters:
url | the tile map |
---|---|
layer | name of the layer |
visible | should the layer be visible |