home *** CD-ROM | disk | FTP | other *** search
/ GameStar Special 2004 August / GSSH0804.iso / Geschicklichkeit / Enigma / Enigma-081.exe / data / levels / martin14.lua < prev    next >
Text File  |  2003-07-03  |  2KB  |  105 lines

  1. -- created by Martin Hawlisch
  2.  
  3. levelw =  20
  4. levelh = 13
  5.  
  6. difficult = (options.Difficulty==2)
  7.  
  8. create_world( levelw, levelh)
  9.  
  10. fill_floor("fl-gray", 0,0,levelw,levelh)
  11. stone = "st-glass"
  12.  
  13. draw_border( stone)
  14.  
  15. mytimer = 1
  16. function timer_handler()
  17.     laser1=enigma.GetNamedObject("laser1")
  18.     laser2=enigma.GetNamedObject("laser2")
  19.     laser3=enigma.GetNamedObject("laser3")
  20.  
  21.     if mytimer == 0 then
  22.         enigma.SendMessage(laser1, "on", nil)
  23.         if (difficult) then enigma.SendMessage(laser2, "off", nil)
  24.         else enigma.SendMessage(laser3, "off", nil)
  25.         end
  26.     end
  27.     if mytimer == 1 then
  28.         enigma.SendMessage(laser2, "on", nil)
  29.         if (difficult) then enigma.SendMessage(laser3, "off", nil)
  30.         else enigma.SendMessage(laser1, "off", nil)
  31.         end
  32.     end
  33.     if mytimer == 2 then
  34.         enigma.SendMessage(laser3, "on", nil)
  35.         if (difficult) then enigma.SendMessage(laser1, "off", nil)
  36.         else enigma.SendMessage(laser2, "off", nil)
  37.         end
  38.     end
  39.     mytimer = mytimer + 1
  40.     if mytimer == 3 then
  41.         mytimer = 0
  42.     end
  43. end
  44.  
  45. set_attrib( laser( 2, 2, TRUE, EAST), "name", "laser1")
  46. laser1 = enigma.GetNamedObject("laser1")
  47.  
  48. set_attrib( laser( 2, 3, FALSE, EAST), "name", "laser2")
  49. laser2 = enigma.GetNamedObject("laser2")
  50.  
  51. set_attrib( laser( 2, 4, FALSE, EAST), "name", "laser3")
  52. laser3 = enigma.GetNamedObject("laser3")
  53.  
  54. mirrorp( 18, 2, FALSE, FALSE, 2)
  55. mirrorp( 17, 3, FALSE, FALSE, 2)
  56. mirrorp( 16, 4, FALSE, FALSE, 2)
  57. mirrorp( 18, 5, FALSE, TRUE, 4)
  58. mirrorp( 17, 6, FALSE, TRUE, 4)
  59. mirrorp( 16, 7, FALSE, TRUE, 4)
  60. mirrorp( 18, 8, FALSE, FALSE, 4)
  61. mirrorp( 17, 9, FALSE, FALSE, 4)
  62. mirrorp( 16,10, FALSE, FALSE, 4)
  63.  
  64. set_stone( "st-timer", 0, 0, {action="callback", target="timer_handler"})
  65.  
  66. oxyd( 2, 0)
  67. oxyd( 6, 0)
  68. oxyd(10, 0)
  69. oxyd(14, 0)
  70.  
  71. oxyd( 2,12)
  72. oxyd( 6,12)
  73. oxyd(10,12)
  74. oxyd(14,12)
  75.  
  76. oxyd_shuffle()
  77.  
  78. fakeoxyd( 2, 5)
  79. fakeoxyd( 2, 6)
  80. fakeoxyd( 2, 7)
  81. fakeoxyd( 2, 8)
  82. fakeoxyd( 2, 9)
  83. fakeoxyd( 2,10)
  84.  
  85. oneway( 1, 2, enigma.NORTH)
  86. oneway( 3, 1, enigma.EAST)
  87. oneway( 7, 1, enigma.EAST)
  88. oneway(11, 1, enigma.EAST)
  89. oneway( 3,11, enigma.WEST)
  90. oneway( 7,11, enigma.WEST)
  91. oneway(11,11, enigma.WEST)
  92.  
  93. draw_stones( stone, {16,11},{-1,-1}, 5)
  94. draw_stones( stone, {18,1}, {-1,1}, 6)
  95. draw_stones( stone, {3,2},{1,1},9)
  96. draw_stones( stone, {3,10},{1,-1},9)
  97. set_stone( stone, 7,10)
  98. set_stone( stone, 7,2)
  99. set_stone( stone,11,2)
  100.  
  101. set_actor("ac-blackball", 1.5, 1.5, {player=0})
  102. timer_handler()
  103. timer_handler()
  104.  
  105.