If you're looking for some place to start from when loading maps and tilesets, you can use some code that I devised for this purpose for a 2D platformer I'm making.
The level files live in a directory called "levels" and have an extension of ".level". Use level.lua to load them. They are objects: call "level.load" to create one and ":draw()" on the returned object to draw it to the screen.
Code: Select all
local _ = 0
local level = {
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, 1, 1, 1, 1,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, 1, 1, 1, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, 1, 1, 1, 1, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, 1, 1, 1, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, _, 2, 1, 1, 3, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, _, _, _, _, _, _, 2, 1, 1, 1, 1, _, _, _, _, _, _, _, _,},
{_, _, _, _, _, 1, _, _, _, _, 2, 1, 1, 1, 1, 1, 1, _, _, _, _, _, _, _,},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,},
}
level.tileset = "basic1"
return level
Tilesets are made up of a tileset file and an image, specified in the tileset file. I put them in a directory named "tilesets" and always give them the extension ".tileset" to set them apart. The tileset is loaded automatically with the level, using loadtileset.lua.