forked from Jonathan/Peradventure
Improve tilesets and pass them into map renderer instead of modified map rows.
This commit is contained in:
@ -1,15 +1,15 @@
|
||||
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", "-"}
|
||||
{ "-", "-", "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
|
||||
@ -21,61 +21,46 @@ local map = {
|
||||
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
|
||||
local tileset = {}
|
||||
if string.find(tile, "wall") then
|
||||
tileset.char = "w"
|
||||
elseif string.find(tile, "floor") then
|
||||
tileset.char = "-"
|
||||
end
|
||||
if string.find(tile, "stone") then
|
||||
tileset.material = "stone"
|
||||
elseif string.find(tile, "wood") then
|
||||
tileset.material = "wood"
|
||||
end
|
||||
return tileset
|
||||
|
||||
-- if tile == "floor_stone" then
|
||||
-- return "-"
|
||||
-- elseif tile == "wall_stone" then
|
||||
-- return "w"
|
||||
-- end
|
||||
-- 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,
|
||||
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
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user