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

  1. -- Sven Siggelkow 2003
  2. -- ESPRIT #086
  3.  
  4. levelw = 20
  5. levelh = 13
  6. create_world(levelw, levelh)
  7. oxyd_default_flavor = "c"
  8. enigma.SlopeForce = 90
  9. set_actor("ac-blackball", 10,5, {player=0})
  10. set_actor("ac-top", 10,11, {range=100, force=100})
  11. fill_floor("fl-leaves",0,0,levelw,7)
  12. fill_floor("fl-abyss",0,7,levelw,6)
  13.  
  14. function renderLine( line, pattern)
  15.     for i=1, strlen(pattern) do
  16.       local c = strsub( pattern, i, i)
  17.       if c ==   "#" then
  18.          set_stone("st-plain", i-1,line)
  19.       elseif c=="b" then
  20.          set_stone("st-actorimpulse", i-1,line) 
  21.       elseif c=="x" then
  22.          set_stone("st-door_c", i-1,line, {name="s1"})
  23.       elseif c=="y" then
  24.          set_stone("st-door_c", i-1,line, {name="s2"})
  25.       elseif c=="1" then
  26.          set_stone("st-switch", i-1,line, {action="callback", target="s1"}) 
  27.       elseif c=="2" then
  28.          set_stone("st-switch", i-1,line, {action="callback", target="s2"}) 
  29.       elseif c=="g" then
  30.          set_floor("fl-gradient",  i-1,  line, {type=21})   
  31.          --set_floor("fl-normal",  i-1,  line)
  32.       elseif c=="O" then
  33.      oxyd(i-1,line)         
  34.         end
  35.     end  
  36. end
  37. --               01234567890123456789
  38. renderLine(00 , "####################")
  39. renderLine(01 , "#O  #          #  O#")
  40. renderLine(02 , "#   #          #   #")
  41. renderLine(03 , "####################")
  42. renderLine(04 , "#   #          #   #")  
  43. renderLine(05 , "#O  #          #  O#")
  44. renderLine(06 , "####################")
  45. renderLine(07 , "                    ")
  46. renderLine(08 , "                    ")
  47. renderLine(09 , "  #b############b#  ")
  48. renderLine(10 , "  2gggggggggggggg1  ")
  49. renderLine(11 , "  #b############b#  ")
  50. renderLine(12 , "                    ") 
  51. --               01234567890123456789
  52.  
  53. set_stone("st-door_c", 4,2, {name="x1"})
  54. set_stone("st-door_c", 2,3, {name="x2"})
  55. set_stone("st-door_c", 15,5, {name="x3"})
  56. set_stone("st-door_c", 15,1, {name="y1"})
  57. set_stone("st-door_c", 17,3, {name="y2"})
  58. set_stone("st-door_c", 4,4, {name="y3"})
  59. oxyd_shuffle()
  60.  
  61. function s1()
  62. enigma.SendMessage(enigma.GetNamedObject("x1"), "openclose", nil)
  63. enigma.SendMessage(enigma.GetNamedObject("x2"), "openclose", nil)
  64. enigma.SendMessage(enigma.GetNamedObject("x3"), "openclose", nil)
  65. end
  66.  
  67. function s2()
  68. enigma.SendMessage(enigma.GetNamedObject("y1"), "openclose", nil)
  69. enigma.SendMessage(enigma.GetNamedObject("y2"), "openclose", nil)
  70. enigma.SendMessage(enigma.GetNamedObject("y3"), "openclose", nil)
  71. end
  72.  
  73.