Difference between revisions of "Tutorial:Advanced Tiled Loader"

m (test.)
m
 
Line 46: Line 46:
 
[[parent::Tutorials]]
 
[[parent::Tutorials]]
  
 +
{{#set:Title=Tutorial:Advanced Tiled Loader}}
 
{{#set:LOVE Version=0.7.2}}
 
{{#set:LOVE Version=0.7.2}}
 
{{#set:Description=Using the Advanced Tiled Loader}}
 
{{#set:Description=Using the Advanced Tiled Loader}}

Latest revision as of 02:23, 7 November 2016

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