82 lines
1.9 KiB
Lua
82 lines
1.9 KiB
Lua
local map = {
|
|
map_tiles = {
|
|
{"-", "-", "w", "w", "-", "-", "-", "-", "-", "-"},
|
|
{"-", "-", "w", "w", "-", "-", "-", "-", "-", "-"},
|
|
{"-", "-", "w", "w", "-", "w", "-", "-", "-", "-"},
|
|
{"w", "-", "-", "-", "w", "w", "-", "-", "-", "-"},
|
|
{"w", "-", "w", "-", "-", "w", "w", "w", "-", "-"},
|
|
{"w", "-", "w", "-", "-", "w", "-", "-", "-", "-"},
|
|
{"-", "-", "w", "-", "-", "w", "-", "w", "-", "-"},
|
|
{"-", "-", "-", "-", "-", "-", "-", "w", "-", "-"},
|
|
{"-", "-", "w", "-", "-", "-", "-", "w", "w", "-"},
|
|
{"-", "-", "w", "-", "-", "-", "-", "-", "w", "-"}
|
|
},
|
|
mapCrypt = function(self, tile)
|
|
if tile == "-" then
|
|
return "floor_stone"
|
|
elseif tile == "w" then
|
|
return "wall_stone"
|
|
end
|
|
end,
|
|
mapDecrypt = function(self, tile)
|
|
-- TODO: Rework function so it returns both char and mat type
|
|
-- This introduces breaking changes
|
|
local tileset = {}
|
|
if string.find(tile, "wall") then
|
|
tileset[1] = "w"
|
|
elseif string.find(tile, "floor") then
|
|
tileset[1] = "-"
|
|
end
|
|
if string.find(tile, "stone") then
|
|
tileset[2] = "stone"
|
|
elseif string.find(tile, "wood") then
|
|
tileset[2] = "wood"
|
|
end
|
|
return tileset
|
|
|
|
-- if tile == "floor_stone" then
|
|
-- return "-"
|
|
-- elseif tile == "wall_stone" then
|
|
-- return "w"
|
|
-- end
|
|
end,
|
|
-- Map Populate / check if map exists
|
|
populate = function(self, map)
|
|
for h=1,10 do
|
|
for i=1,10 do
|
|
local tile = map:create({
|
|
x = h,
|
|
y = i,
|
|
occupied_by_type = self:mapCrypt(self.map_tiles[h][i]),
|
|
occupied_by_id = ""
|
|
})
|
|
end
|
|
end
|
|
end,
|
|
mapExists = function(self, map)
|
|
local f = map:select("limit 1")
|
|
if not f[1] then
|
|
return false
|
|
else
|
|
return true
|
|
end
|
|
end,
|
|
}
|
|
local tiles = {}
|
|
|
|
return map
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|