Skip to content
Snippets Groups Projects
Commit 866b8041 authored by dg's avatar dg
Browse files

wilderness map

git-svn-id: http://svn.net-core.org/repos/t-engine4@134 51575b47-30f0-44d4-a5cc-537603b46e54
parent 4c49a283
No related branches found
No related tags found
No related merge requests found
require "engine.class"
local Map = require "engine.Map"
local Grid = require "engine.Grid"
require "engine.Generator"
module(..., package.seeall, class.inherit(engine.Generator))
......@@ -19,6 +20,9 @@ function _M:loadMap(file)
defineTile = function(char, grid, obj, actor)
t[char] = {grid=grid, obj=obj, actor=actor}
end,
quickEntity = function(char, e)
t[char] = {grid=Grid.new(e)}
end,
}, {__index=_G}))
local ret, err = f()
if not ret and err then error(err) end
......@@ -40,19 +44,23 @@ function _M:loadMap(file)
end
function _M:resolve(typ, c)
if not self.tiles[c] or not self.tiles[c][typ] then return end
local res = self.tiles[c][typ]
if type(res) == "function" then
return res()
return self.grid_list[res()]
elseif type(res) == "table" and res.__CLASSNAME then
print("res", res.display)
return res
elseif type(res) == "table" then
return res[rng.range(1, #res)]
return self.grid_list[res[rng.range(1, #res)]]
else
return res
return self.grid_list[res]
end
end
function _M:generate()
for i = 1, self.gen_map.w do for j = 1, self.gen_map.h do
self.map(i-1, j-1, Map.TERRAIN, self.grid_list[self:resolve("grid", self.gen_map[i][j])])
self.map(i-1, j-1, Map.TERRAIN, self:resolve("grid", self.gen_map[i][j]))
-- self.map(i-1, j-1, Map.OBJECT, self.gen_map[i][j].obj)
-- self.map(i-1, j-1, Map.ACTOR, self.gen_map[i][j].actor)
end end
......
defineTile('>', "DUN_ANCIENT_RUINS")
defineTile('.', "FLOOR")
defineTile('#', "WALL")
defineTile('*', "TOWN")
quickEntity('B', {name='blue mountains', display='^', color=colors.LIGHT_BLUE, block_move=true})
quickEntity('=', {name='the great sea', display='~', color=colors.BLUE, block_move=true})
quickEntity('.', {name='plains', display='.', color=colors.LIGHT_GREEN})
return {
[[########################################]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#........>.............................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#.....................*................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[#......................................#]],
[[########################################]],
[[========q=qqqqqqqqqgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg]],
[[=========q=qq=qqqqggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg]],
[[==========qq=q=qqqqgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg]],
[[==============qqq=qqggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg]],
[[===============q=q=q=gwwwwgggwwwwwgggggggggwwwwwwwwwwggggwwwwwwwwwwwwwggggwwwwwwwwggggwwwwwwwwwgggg]],
[[====================qwwwwwwwwwwwwwwwwggggggggwwwwwwwwwwwwwwwwwwwwwwwwwwggwwwwwwwwwwwwwwwwwwwwwwEEEE]],
[[======================wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww.EEEEEEEE]],
[[========================wwwwwwww...wwwwwwwwww..........wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww.EEEEEEEEEEE]],
[[========================..www....wwwwwwww................wwwwGGGGwwwwwwww......wwwww.EEEEEEEEEEEEEE]],
[[==========.......======.........hhhh..................GGGGGGGwwwDwwww.........wwww.EjEEEEjEEEEEEjEE]],
[[========......BB..===.........hhhhhhhh..&&&&&...&..GGGGGGGGGGGGG.................jEEEjEjEEjEjjEEEEj]],
[[=======......BB..===............hhhh.......&&&&&&GG.._._...........................jjjjjjjjjjjjjjjj]],
[[======...._.BB._..._............................M....._._TTT................II........jjjjjjjjjjjjj]],
[[=======.._..BB.._.._..hhhh................&....&MM~~~~.TT_TTTT..........I.....III........jjjjjj^^^^]],
[[======.._...BB..._._..hhh.......hhhhhh.....&&&&._MM..~.TTT_T_TT..^l......IIIIII..............jjj^^^]],
[[=====.._..TBBB...._._..h.=....hhh|hh..........__.MM__~.TTTT_h_TT.l8........_.....................^^]],
[[===...._....BB....._..hh.=_....h.|..........__...MM..~.TTTTTT_TT.=........_........................]],
[[====.._...BBBB...._....hhhh__....|........._.....MM..~.TTTTTT____a........_........................]],
[[=====.._..TTBB..._........._.....|h......._.ff...MM..~6TTTTT&&&T._........._.......................]],
[[====...__..TBBB._......hh.._.....|.hh...._.f^^^._MM..~..TTT&G&&&T._........._......................]],
[[=====..._.....__......hho+-_.2---x1hh-------_L...MM---------------_........_.......................]],
[[======..==..=__....h....h|.._.hh.|ih....._..^^^._M...~..TTTTTTTTTT._........_......................]],
[[=============.....hhh....|.._.OOO|h......_.._.._MMM...~..TTTTTTTTT.._........_....................j]],
[[======........BB...h.....|..._OOO|hh...._.._...MM.....~..TTTTTTTT...._......_....................jj]],
[[=====.........BB.........[---_.O.|.h...._._..MMMMM.s._~..TTTTTTTT....._......_..................jjj]],
[[=====.........BB............._[--|....._.._..MMMM___s.~~.TTTTTTTT......_.._._..................jjjj]],
[[======........BB....B......._....|....._._...MMMM.....~~.TTTTT.T........._.._.................jfjjj]],
[[=======.....TBBB..BBBB....._.....|....._....MMMMM....~~...TTTT.............._...............jffjjjj]],
[[==========..TBBBT........._......|...._.....MMMM.....~~...TTTT..............._...._.......fjfjjfjjj]],
[[==========..TTTBBTBB....._.......|ss__.....hMMMM....~~....TTTTTTT............._.__._ ...ffffffjjjjj]],
[[==========...TTBTT......_........___ss_....MMMMM....~~..TTTTTTTTTT............._.... ...f fffjjjj]],
[[==========.....T.T....._........_.....______MM___...~~.TTTTTTTTTT................... ffjjjjj]],
[[===========.=........._........_...........MMMM_!.!~~..TT&TTTTTTT.................. fjfjjjj]],
[[================....__........_..jjj......MMMM._!4!~~..TTTTTTTTT................... ...jjjj]],
[[=================.==E........_....jj.....ffMMM..!!!~.....TTTTT..................^^. ......jj]],
[[===================EE........._.........ffMMM.......~~.........................^^^^. .......j]],
[[===================E==......._..........ffMMMttttt._..~~~~;;....................^^^. ... .......j]],
[[===================E==......_...........f&MMMMtttt_s_.....~;;..................^^^^^. ... ........j]],
[[=====================......_.jjj........f&MMMtttttt..__s~~;;...................^^^^^^.............j]],
[[=====================.....=_.jj.........&&MMMttttt.....~...........................^^.............j]],
[[======================...==..jjj........&&_&&&.._.......~~........................................j]],
[[=======================.===..............^_^....._........~.......................................j]],
[[===========================..............._........_.....~........................................j]],
[[==========================.jj......._._.._........_....h=hh...SSS.................................j]],
[[==========================.jj._.._j_...__.........._..h===h.SSSS.................................jj]],
[[==========================..__.__._._._..&&&b....._....h=hh..SS.A.A.............................jjj]],
[[============================....._..._.__.&&&......_....~~.....AAkAAA..A..AA..A..A..AA...A.....jjjj]],
[[===========================.............._&&&^^....._....~~s...DDvvAAAAAAAAAAAAAAAAAAAAAAAAAAAAJjjj]],
[[===========================.......^.&.^^&&&&&&&......__.~~sss...DDVVVVVVVAVVVAVAA_"""_""""""..AAAjj]],
[[===========================.....^^.&.&_&^&.&^&_&&&9...._..~~ss..DDVVUVVVVVVVVVVA_"""""_""""""...AAj]],
[[===========================....^....__^^...^^^._^&&........~~.c.DDVVUUVVVVVVVAA_"""""""_"""".....AA]],
[[===========================..^^^_.._.......^^._.^^&&&........~~.DDVVVVVVVVVVAA""_""""""_"""""""....]],
[[============================.^f_.__._........_&^^^.&&&&&......e.DDVAAVAAAVVV"""""_""""_""""""".....]],
[[============================.f^_..._....hh.._&&&^^.._&&&&.&...~.DDD""A"A""""""""=="""_""""""""""...]],
[[============================.f^._.hhhhhhhh...__...._^&^&&&&&.~..DD""""""""""""======_"""""""""""AAA]],
[[===========================.^^._...h.h........._.._.^&^^._^3.~..DD"""_"_"""""=====""""""""""""AAAdd]],
[[==========================..^^.._.....===.=====_._&^...._...^.~.DD"__"_"__======"""""AA""""AAAAdddd]],
[[==========================.h...._...===========_&&^...._._...~~.DD_""""""""""""_""A"AAAAAAAAddddddd]],
[[========================.hhh=...=_.==========&^^^^.._._..._.~~..DDD""DDD""D"""DD_DDAAdddddddddddddd]],
[[======================....=====.==============^.^._=._.....~~...DDDDDDDDDDDDDDDDDDDdddddddddddddddd]],
[[==============================================.^^^==....~~~~....................ddddddddddddddddddd]],
[[===============================================..====~~~p................dddddddddddddddddddddddddd]],
[[===============================================.==^==_............ddddddddddddddddddddddddddddddddd]],
[[=================================================^^===........ddddddddddddddddddddddddddddddddddddd]],
}
......@@ -2,7 +2,7 @@ return {
name = "wilderness",
level_range = {1, 1},
max_level = 1,
width = 40, height = 30,
width = 100, height = 100,
all_remembered = true,
all_lited = true,
generator = {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment