View difference between Paste ID: 6FLRBhcq and cQXeVSzp
SHOW: | | - or go back to the newest paste.
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