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

  1. --Siegfried Fennig 22.03.2003 Rev.0
  2.  
  3. levelw = 20
  4. levelh = 25
  5.  
  6. create_world(levelw, levelh)
  7. draw_border("st-rock5")
  8. --enigma.ConserveLevel = FALSE
  9. oxyd_default_flavor = "d"
  10. fill_floor("fl-rough", 0,0, level_width,level_height)
  11.  
  12. function renderLine( line, pattern)
  13.     for i=1, strlen(pattern) do
  14.       local c = strsub( pattern, i, i)
  15.       if c == "g" then
  16.          set_stone("st-glass1",i-1,line)
  17.       elseif c == "h" then
  18.          set_stone("st-glass1_hole",i-1,line)
  19.       elseif c == "r" then
  20.          set_stone("st-rock5",i-1,line)
  21.       elseif c == "l" then
  22.          set_attrib(laser(i-1,line, TRUE, NORTH), "name", "laser")
  23.       elseif c == "o" then
  24.          oxyd( i-1, line)
  25.       elseif c == "a" then
  26.          set_actor("ac-blackball", i-.5,line+.5, {player=0})
  27.          set_item("it-yinyang", i-1, line+.5)
  28.       elseif c == "b" then
  29.          set_actor("ac-whiteball", i-.5,line+.5, {player=1})
  30.          set_item("it-yinyang", i-1, line+.5)
  31.         end
  32.     end
  33. end
  34. --              01234567890123456789
  35. renderLine(00, "                    ")
  36. renderLine(01, " gggggggggggggggggg ")
  37. renderLine(02, " hh                 ")
  38. renderLine(03, " hh        hhh      ")
  39. renderLine(04, " hh        hhh      ")
  40. renderLine(05, "           h        ")
  41. renderLine(06, "                    ")
  42. renderLine(07, "                    ")
  43. renderLine(08, " hh                 ")
  44. renderLine(09, " hh          hhh    ")
  45. renderLine(10, " hh          hhh b  ")
  46. renderLine(11, " gggggggggggggggggg ")
  47. renderLine(12, " rrrrrrrrrrrrrrrrrr ")
  48. renderLine(13, " rr      rrr    rrr ")
  49. renderLine(14, " rr      g g     g  ")
  50. renderLine(15, " o  gg   ggr r   gg ")
  51. renderLine(16, " r g g      orgg    ")
  52. renderLine(17, "   ggggg ggr   g    ")
  53. renderLine(18, "   g   g g g   g    ")
  54. renderLine(19, "  g  ggg ggggggg    ")
  55. renderLine(20, " r gg  g            ")
  56. renderLine(21, " o   ggg       r    ")
  57. renderLine(22, " rr          ror    ")
  58. renderLine(23, " rr          rrr al ")
  59. renderLine(24, "                    ")
  60. --              01234567890123456789
  61.  
  62. oxyd_shuffle()
  63.  
  64. set_stone("st-fourswitch",18, 2, {action="callback", target="mf01"})
  65. set_attrib (mirrorp (18,14, 1,0,3), "name", "mirror01")
  66. function mf01()
  67.     mir=enigma.GetNamedObject("mirror01")
  68.     enigma.SendMessage(mir, "turn", nil)
  69. end
  70.  
  71. set_stone("st-fourswitch",10, 2, {action="callback", target="mf02"})
  72. set_attrib (mirrorp (10,14, 1,0,3), "name", "mirror02")
  73. function mf02()
  74.     mir=enigma.GetNamedObject("mirror02")
  75.     enigma.SendMessage(mir, "turn", nil)
  76. end
  77.  
  78. set_stone("st-fourswitch",10, 6, {action="callback", target="mf03"})
  79. set_attrib (mirrorp (10,18, 1,1,3), "name", "mirror03")
  80. function mf03()
  81.     mir=enigma.GetNamedObject("mirror03")
  82.     enigma.SendMessage(mir, "turn", nil)
  83. end
  84.  
  85. set_stone("st-fourswitch", 6, 8, {action="callback", target="mf04"})
  86. set_attrib (mirrorp ( 6,20, 1,1,3), "name", "mirror04")
  87. function mf04()
  88.     mir=enigma.GetNamedObject("mirror04")
  89.     enigma.SendMessage(mir, "turn", nil)
  90. end
  91.  
  92. set_stone("st-fourswitch", 4, 4, {action="callback", target="mf05"})
  93. set_attrib (mirrorp ( 4,16, 1,1,3), "name", "mirror05")
  94. function mf05()
  95.     mir=enigma.GetNamedObject("mirror05")
  96.     enigma.SendMessage(mir, "turn", nil)
  97. end
  98.  
  99. set_stone("st-fourswitch", 4, 6, {action="callback", target="mf06"})
  100. set_attrib (mirror3 ( 4,18, 1,0,1), "name", "mirror06")
  101. function mf06()
  102.     mir=enigma.GetNamedObject("mirror06")
  103.     enigma.SendMessage(mir, "turn", nil)
  104. end
  105.  
  106. set_stone("st-fourswitch", 5, 6, {action="callback", target="mf07"})
  107. set_attrib (mirror3 ( 5,18, 1,0,1), "name", "mirror07")
  108. function mf07()
  109.     mir=enigma.GetNamedObject("mirror07")
  110.     enigma.SendMessage(mir, "turn", nil)
  111. end
  112.  
  113. set_stone("st-fourswitch", 6, 6, {action="callback", target="mf08"})
  114. set_attrib (mirror3 ( 6,18, 1,0,1), "name", "mirror08")
  115. function mf08()
  116.     mir=enigma.GetNamedObject("mirror08")
  117.     enigma.SendMessage(mir, "turn", nil)
  118. end
  119.  
  120. set_stone("st-fourswitch", 3, 7, {action="callback", target="mf09"})
  121. set_attrib (mirror3 ( 3,19, 1,0,1), "name", "mirror09")
  122. function mf09()
  123.     mir=enigma.GetNamedObject("mirror09")
  124.     enigma.SendMessage(mir, "turn", nil)
  125. end
  126.  
  127. set_stone("st-fourswitch", 4, 7, {action="callback", target="mf10"})
  128. set_attrib (mirror3 ( 4,19, 1,0,1), "name", "mirror10")
  129. function mf10()
  130.     mir=enigma.GetNamedObject("mirror10")
  131.     enigma.SendMessage(mir, "turn", nil)
  132. end
  133.  
  134. set_stone("st-fourswitch", 5, 8, {action="callback", target="mf11"})
  135. set_attrib (mirror3 ( 5,20, 1,0,1), "name", "mirror11")
  136. function mf11()
  137.     mir=enigma.GetNamedObject("mirror11")
  138.     enigma.SendMessage(mir, "turn", nil)
  139. end
  140.  
  141. set_stone("st-fourswitch",12, 5, {action="callback", target="mf12"})
  142. set_attrib (mirror3 (12,17, 1,0,1), "name", "mirror12")
  143. function mf12()
  144.     mir=enigma.GetNamedObject("mirror12")
  145.     enigma.SendMessage(mir, "turn", nil)
  146. end
  147.  
  148. set_stone("st-fourswitch",13, 5, {action="callback", target="mf13"})
  149. set_attrib (mirror3 (13,17, 1,0,1), "name", "mirror13")
  150. function mf13()
  151.     mir=enigma.GetNamedObject("mirror13")
  152.     enigma.SendMessage(mir, "turn", nil)
  153. end
  154.  
  155. set_stone("st-fourswitch",14, 5, {action="callback", target="mf14"})
  156. set_attrib (mirror3 (14,17, 1,0,1), "name", "mirror14")
  157. function mf14()
  158.     mir=enigma.GetNamedObject("mirror14")
  159.     enigma.SendMessage(mir, "turn", nil)
  160. end
  161.  
  162. set_stone("st-fourswitch",12, 6, {action="callback", target="mf15"})
  163. set_attrib (mirror3 (12,18, 1,0,1), "name", "mirror15")
  164. function mf15()
  165.     mir=enigma.GetNamedObject("mirror15")
  166.     enigma.SendMessage(mir, "turn", nil)
  167. end
  168.  
  169. set_stone("st-fourswitch",13, 6, {action="callback", target="mf16"})
  170. set_attrib (mirror3 (13,18, 1,0,1), "name", "mirror16")
  171. function mf16()
  172.     mir=enigma.GetNamedObject("mirror16")
  173.     enigma.SendMessage(mir, "turn", nil)
  174. end
  175.  
  176. set_stone("st-fourswitch",14, 6, {action="callback", target="mf17"})
  177. set_attrib (mirror3 (14,18, 1,0,1), "name", "mirror17")
  178. function mf17()
  179.     mir=enigma.GetNamedObject("mirror17")
  180.     enigma.SendMessage(mir, "turn", nil)
  181. end
  182.  
  183. set_stone("st-laserswitch", 2,16, {action="callback", target="sw1"})
  184. set_stone("st-door", 2,15, {name="door1", type="v"})
  185.  
  186. function sw1()
  187.     doora=enigma.GetNamedObject("door1")
  188.     enigma.SendMessage(doora, "openclose", nil)
  189. end
  190.  
  191. set_stone("st-laserswitch",11,16, {action="callback", target="sw2"})
  192. set_stone("st-door",12,15, {name="door2", type="h"})
  193.  
  194. function sw2()
  195.     doora=enigma.GetNamedObject("door2")
  196.     enigma.SendMessage(doora, "openclose", nil)
  197. end
  198.  
  199. set_stone("st-laserswitch", 2,20, {action="callback", target="sw3"})
  200. set_stone("st-door", 2,21, {name="door3", type="v"})
  201.  
  202. function sw3()
  203.     doora=enigma.GetNamedObject("door3")
  204.     enigma.SendMessage(doora, "openclose", nil)
  205. end
  206.  
  207. set_stone("st-laserswitch",13,21, {action="callback", target="sw4"})
  208. set_stone("st-door",14,21, {name="door4", type="h"})
  209.  
  210. function sw4()
  211.     doora=enigma.GetNamedObject("door4")
  212.     enigma.SendMessage(doora, "openclose", nil)
  213. end
  214.  
  215. document( 7,11, " ")
  216. document( 8,11, " ")
  217. document( 9,17, " ")
  218. document(10,11, " ")