home *** CD-ROM | disk | FTP | other *** search
- -- Dustwalkers -- the Enigma Level
- -- (c) 2002 Petr Machata/ant_39
- -- Licensed under GPL v2.0 or above
- -- 2003-02-10 -- keeping up to date with latest additions to ant.lua
-
- dofile(enigma.FindDataFile("levels/ant.lua"))
-
- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- function tick()
- for _=1,3 do
- local bid = random(1,getn(bolders))
- local dir = random(0,3)
- enigma.SendMessage(bolders[bid],"direction",dir)
- end
- end
- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-
- cells={}
- cells[" "]=cell{floor={face="fl-sand"}}
- cells["#"]=cell{stone={face="st-greenbrown"}}
- cells["x"]=cell{stone={face="st-grate1"}}
- cells["@"]=cell{stone={face="st-wood"}}
- cells["O"]=cell{actor={face="ac-blackball", attr={player=0}}}
- cells["A"]=cell{stone={face="st-door", attr={name="doorA", type="v"}}}
- cells["B"]=cell{stone={face="st-door", attr={name="doorB", type="v"}}}
- cells["C"]=cell{stone={face="st-door", attr={name="doorC", type="h"}}}
- cells["D"]=cell{stone={face="st-door", attr={name="doorD", type="h"}}}
- cells["a"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorA"}}}
- cells["b"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorB"}}}
- cells["c"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorC"}}}
- cells["d"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorD"}}}
- cells["0"]=oxyd
- bolders={}
- cells["V"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=SOUTH}}}}
- cells["<"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=WEST }}}}
- cells["^"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=NORTH}}}}
- cells["~"]=cell{stone={face="st-timer", attr={action="callback", target="tick", interval=0.10}}}
-
- level = {
- "####################",
- "# # V V V # #",
- "# A # # # # # O#",
- "# # <# #",
- "# # ##x#",
- "# # @ < #",
- "# # @ #",
- "# # < #",
- "# # c#x#d #",
- "# # x x < #",
- "# ## # # # # # # ##",
- "#00# ^ ^ #C# ^ ^ #",
- "~########## ########",
- "#00# V V #D# V V #",
- "# ## # # # # # # ##",
- "# # x x #",
- "# # #x# @ #",
- "# # b #",
- "# # @ #",
- "# # #",
- "# # a #",
- "# B #",
- "# # #",
- "# # ^ ^ ^ ^ ^ ^ #",
- "####################"
- }
-
- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- randomseed(enigma.GetTicks())
- set_default_parent(cells[" "])
- oxyd_default_flavor = "b"
- create_world_by_map(level)
- oxyd_shuffle()
-