home *** CD-ROM | disk | FTP | other *** search
/ GameStar Special 2004 August / GSSH0804.iso / Geschicklichkeit / Enigma / Enigma-081.exe / data / levels / ant06.lua < prev    next >
Text File  |  2003-08-18  |  3KB  |  73 lines

  1. -- Dustwalkers -- the Enigma Level
  2. -- (c) 2002 Petr Machata/ant_39
  3. -- Licensed under GPL v2.0 or above
  4. -- 2003-02-10 -- keeping up to date with latest additions to ant.lua
  5.  
  6. dofile(enigma.FindDataFile("levels/ant.lua"))
  7.  
  8. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  9. function tick()
  10.    for _=1,3 do
  11.       local bid = random(1,getn(bolders))
  12.       local dir = random(0,3)
  13.       enigma.SendMessage(bolders[bid],"direction",dir)
  14.    end
  15. end
  16. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  17.  
  18. cells={}
  19. cells[" "]=cell{floor={face="fl-sand"}}
  20. cells["#"]=cell{stone={face="st-greenbrown"}}
  21. cells["x"]=cell{stone={face="st-grate1"}}
  22. cells["@"]=cell{stone={face="st-wood"}}
  23. cells["O"]=cell{actor={face="ac-blackball", attr={player=0}}}
  24. cells["A"]=cell{stone={face="st-door", attr={name="doorA", type="v"}}}
  25. cells["B"]=cell{stone={face="st-door", attr={name="doorB", type="v"}}}
  26. cells["C"]=cell{stone={face="st-door", attr={name="doorC", type="h"}}}
  27. cells["D"]=cell{stone={face="st-door", attr={name="doorD", type="h"}}}
  28. cells["a"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorA"}}}
  29. cells["b"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorB"}}}
  30. cells["c"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorC"}}}
  31. cells["d"]=cell{item= {face="it-trigger", attr={action="openclose", target="doorD"}}}
  32. cells["0"]=oxyd
  33. bolders={}
  34. cells["V"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=SOUTH}}}}
  35. cells["<"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=WEST }}}}
  36. cells["^"]=cell{parent={{add_multistone, "st-bolder", bolders, {direction=NORTH}}}}
  37. cells["~"]=cell{stone={face="st-timer", attr={action="callback", target="tick", interval=0.10}}}
  38.  
  39. level = {
  40.    "####################",
  41.    "#  #     V V V  #  #",
  42.    "#  A    # # # # # O#",
  43.    "#  #           <#  #",
  44.    "#  #            ##x#",
  45.    "#  #    @      <   #",
  46.    "#  #       @       #",
  47.    "#  #           <   #",
  48.    "#  #     c#x#d     #",
  49.    "#  #      x x  <   #",
  50.    "#  ## # # # # # # ##",
  51.    "#00# ^ ^  #C#  ^ ^ #",
  52.    "~########## ########",
  53.    "#00# V V  #D#  V V #",
  54.    "#  ## # # # # # # ##",
  55.    "#  #      x x      #",
  56.    "#  #      #x# @    #",
  57.    "#  # b             #",
  58.    "#  #            @  #",
  59.    "#  #               #",
  60.    "#  #   a           #",
  61.    "#  B               #",
  62.    "#  #               #",
  63.    "#  #  ^ ^ ^ ^ ^ ^  #",
  64.    "####################"
  65. }
  66.  
  67. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  68. randomseed(enigma.GetTicks())
  69. set_default_parent(cells[" "])
  70. oxyd_default_flavor = "b"
  71. create_world_by_map(level)
  72. oxyd_shuffle()
  73.