Tutorial:Advanced Tiled Loader
In this tutorial we will cover the basics of using Kadoba's Advanced Tiled Loader. You'll need the Advanced Tiled Loader (in the AdvTiledLoader directory), a mapfile generated by Tiled, and a texturepack in the appropriate location. Let's start with the love.load function:
function love.load()
loader = require("AdvTiledLoader.Loader")
loader.path = "maps/" --Change this to wherever your .tmx files are
map = loader.load("mapfile.tmx") --Change this to the name of your mapfile
tx = 0
ty = 0
scale = 1 -- Adjust zoom with this
end
Here we load the ATL and tell it where our maps are. We load the maps and initialize our variables. Moving onto love.draw:
function love.draw()
local ftx, fty = math.floor(tx), math.floor(ty)
love.graphics.push()
love.graphics.scale(scale)
love.graphics.translate(ftx, fty)
map:draw()
love.graphics.pop()
end
In the love.draw function we change tx and ty into integers. This makes for slightly smoother graphics should. We move around the image with love.graphics.translate, and then we call map:draw to actually render it for us.
function love.update(dt)
if love.keyboard.isDown("up") then ty = ty + 250*dt end
if love.keyboard.isDown("down") then ty = ty - 250*dt end
if love.keyboard.isDown("left") then tx = tx + 250*dt end
if love.keyboard.isDown("right") then tx = tx - 250*dt end
end
Here we listen for a keypress and then adjust the translate variables, tx and ty appropriately.
More information can be found on Kadoba's original post here. More advanced samples are included with the loader itself.
See Also
Tile-based Scrolling
Efficient Tile-based Scrolling
Tutorials
Other languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info