Advertisement
alestane

Terrain Generator

Jan 1st, 2012
333
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. local sprite = require "sprite"
  2.  
  3. local createMap(self, size, columns, rows)
  4.         local map = display.newGroup()
  5.         map.Tiles = {}
  6.         for row=0,rows+1 do
  7.                 map.Tiles[row] = {}
  8.                 for column=0,columns+1 do
  9.                         local tile = sprite.newSprite(self)
  10.                         tile:setReferencePoint(display.BottomLeftReferencePoint)
  11.                         map:insert(tile)
  12.                         tile.xScale, tile.yScale = size / tile.width, size / tile.height
  13.                         tile.x, tile.y = column * size, row * size
  14.                         map.Tiles[row][column] = tile
  15.                 end
  16.         end
  17.         return map
  18. end
  19.  
  20. return function(spritesheet, size, kinds)
  21.     local terrain = sprite.newSpriteSet(sprite.newSpriteSheet(spritesheet,  size, size), 1, 1)
  22.     for i, kind in ipairs(kinds) do
  23.         sprite.add(terrain, kind, i + 1, 1, 1, 1)
  24.     end
  25.     terrain.Create = createMap
  26.     return terrain
  27. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement