The TileMapLayer class¶
A TileMapLayer provides information for a single layer loaded along side a TileMap instance. Layers can have one or more roles. Some have a single big texture (usually used for backgrounds), some have a collection of tiles that can be rendered. Some can also host a collection of TileMapObject instances which tend to be used for entities, polygons (lines, areas, triggers).
Each layer can also have meta information, such as a name, opacity/visibility, and custom properties to allow you to add any extra information you need to pass to the game.
[instance].name¶
Use this property to get or set the name of the layer.
[instance].opacity¶
Use this property to get or set the scalar opacity of the layer used for rendering.
[instance].type¶
This read-only property gives you the purpose of the layer. Most common values areas Group, Image, Object and Tile.
[instance].visible¶
Use this property to get or set weather the layer is visible when rendering.
[instance].object_count¶
This read-only property tells you how many objects the layer has loaded.
[instance].get_offset()¶
This function tells you the x,y coordinate offset of the layer used when rendering. Note that this function returns 2 values, example:
local layer1 = map.get_layer(0)
offsetx, offsety = layer1.offset
[instance].get_size()¶
This function gives you the layer size in pixels (also returns 2 values).
local layer1 = map.get_layer(0)
width, height = layer1.size
[instance].get_object(index)¶
This method returns a TileMapObject based on the index you provide. Because you need an index, it’s reccommended that you read the object_count property first before calling this to make sure your index is within bounds.
[instance].get_property_as_string(name)¶
This method gets the value of a custom property based on the property name. The value returned if found will be a string.
local prop1 = layer1.get_property_as_string("my_custom_property")
print("prop1=" .. prop1)
[instance].get_property_as_int(name)¶
This method gets the value of a custom property based on the property name. The value returned if found will be an integer.
[instance].get_property_as_float(name)¶
This method gets the value of a custom property based on the property name. The value returned if found will be a float.