22 lines
		
	
	
		
			544 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			544 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
| local utils = require "lib.utils.utils"
 | |
| --- @class TileGrid : Grid
 | |
| local map = setmetatable({}, require "lib.level.grid.base")
 | |
| map.__index = map
 | |
| 
 | |
| --- create new map
 | |
| --- @param type "procedural"|"handmaded"
 | |
| --- @param template Procedural|Handmaded
 | |
| --- @param size? Vec3
 | |
| local function new(type, template, size)
 | |
|     local tMap = require('lib.level.' .. type).new(template, size)
 | |
|     return setmetatable({ __grid = tMap }, map)
 | |
| end
 | |
| 
 | |
| function map:draw()
 | |
|     utils.each(self.__grid, function(el)
 | |
|         el:draw()
 | |
|     end)
 | |
| end
 | |
| 
 | |
| return { new = new }
 |