Tutorial:Advanced Tiled Loader (日本語)

このチュートリアルでは Kadoba による Advanced Tiled Loader (ATL) の基本的な使用方法について網羅しています。 Advanced Tiled Loader (AdvTiledLoader ディレクトリにて) のテクスチャパックは、Tiled により生成され、適切な場所へ配置する必要があります。さて love.load から始めましょう。

function love.load()
  
  loader = require("AdvTiledLoader.Loader")
  loader.path = "maps/" --これは .tmx ファイルの場所を変更します。
  map = loader.load("mapfile.tmx") -- これはマップファイルの名前へ変更します。
  tx = 0
  ty = 0
  scale = 1 -- これで拡大率を調整します。
  
end

ここで ATL を読み込みマップの位置を示します。マップを読み込んで変数を初期化します。 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

love.draw 関数にて tx と ty を整数へ変更します。この僅かに滑らかなグラフィックのためにこれは行うべきです。 love.graphics.translate にて画像周辺の平行移動により移動を行い、実際に表示を行うために map:draw を呼び出します。

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

ここでキーボードに対して監視を行い平行移動の変数である tx および ty を適切に調整します。

詳細情報は[1]。 Kadoba による元々の投稿にあります。もっと高度なサンプルはローダー (ATL) 自身に記載されています。

関連

タイル・ベースのスクロール
効率的なタイル・ベースのスクローリング



そのほかの言語