home *** CD-ROM | disk | FTP | other *** search
/ GameStar Special 2004 August / GSSH0804.iso / Geschicklichkeit / Enigma / Enigma-081.exe / data / levels / level5b.lua < prev    next >
Text File  |  2003-01-05  |  5KB  |  172 lines

  1. -- Siegfried Fennig
  2. levelw = 20
  3. levelh = 13
  4.  
  5. create_world(levelw, levelh)
  6. oxyd_default_flavor = "c"
  7. draw_border("st-rock1")
  8. fill_floor("fl-bluegreen", 0,0, level_width,level_height)
  9.  
  10. oxyd( 5, 2)
  11. oxyd( 9, 2)
  12. oxyd( 10, 2)
  13. oxyd( 14, 2)
  14. oxyd( 5, 10)
  15. oxyd( 9, 10)
  16. oxyd( 10, 10)
  17. oxyd( 14, 10)
  18. oxyd_shuffle()
  19.  
  20. set_stone( "st-timer", 2, 2, {action="callback", target="t_h1"})
  21. set_stone( "st-timer", 17, 2, {action="callback", target="t_h2"})
  22. set_stone( "st-timer", 17, 10, {action="callback", target="t_h3"})
  23.  
  24. hammer(5,6)
  25.  
  26. draw_stones("st-thief", {2,5}, {1,0},16)
  27. draw_stones("st-thief", {2,7}, {1,0},16)
  28.  
  29. draw_stones("st-stone_break", {4,1}, {1,0},12)
  30. draw_stones("st-stone_break", {4,3}, {1,0},12)
  31. draw_stones("st-stone_break", {4,9}, {1,0},12)
  32. draw_stones("st-stone_break", {4,11}, {1,0},12)
  33. draw_stones("st-stone_break", {6,2}, {1,0},3)
  34. draw_stones("st-stone_break", {11,2}, {1,0},3)
  35. draw_stones("st-stone_break", {4,2}, {1,0},1)
  36. draw_stones("st-stone_break", {15,2}, {1,0},1)
  37. draw_stones("st-stone_break", {6,10}, {1,0},3)
  38. draw_stones("st-stone_break", {11,10}, {1,0},3)
  39. draw_stones("st-stone_break", {4,10}, {1,0},1)
  40. draw_stones("st-stone_break", {15,10}, {1,0},1)
  41.  
  42. draw_stones("st-grate2", {2,6},{1,0},2)
  43. draw_stones("st-grate2", {16,6},{1,0},2)
  44.  
  45. oneway(1,5, enigma.SOUTH)
  46. oneway(1,7, enigma.NORTH)
  47. oneway(18,5, enigma.NORTH)
  48. oneway(18,7, enigma.SOUTH)
  49.  
  50. fill_floor("fl-abyss", 1,1, 5,3)
  51. fill_floor("fl-abyss", 14,1, 5,3)
  52. fill_floor("fl-abyss", 14,9, 5,3)
  53. fill_floor("fl-abyss", 3,9, 3,3)
  54. fill_floor("fl-abyss", 7,2, 6,2)
  55. fill_floor("fl-abyss", 7,9, 6,2)
  56. fill_floor("fl-abyss", 1,11, 2,1)
  57. fill_floor("fl-abyss", 2,9, 1,1)
  58.  
  59. timer = 0
  60.  
  61. function t_h1()
  62.     doora=enigma.GetNamedObject("door1")
  63.     doorb=enigma.GetNamedObject("door2")
  64.     doorc=enigma.GetNamedObject("door3")
  65.     doord=enigma.GetNamedObject("door4")
  66.  
  67.     if timer == 0 then
  68.         enigma.SendMessage(doora, "open", nil)
  69.      end
  70.     if timer == 1 then
  71.         enigma.SendMessage(doorb, "open", nil)
  72.     end
  73.     if timer == 2 then
  74.         enigma.SendMessage(doorc, "open", nil)
  75.     end
  76.     if timer == 3 then
  77.         enigma.SendMessage(doord, "open", nil)
  78.         enigma.SendMessage(doora, "close", nil)
  79.     end
  80.     if timer == 4 then
  81.         enigma.SendMessage(doorb, "close", nil)
  82.     end
  83.     if timer == 5 then
  84.         enigma.SendMessage(doorc, "close", nil)
  85.     end
  86.     if timer == 6 then
  87.         enigma.SendMessage(doord, "close", nil)
  88.     end
  89. end
  90.  
  91. function t_h2()
  92.     doora=enigma.GetNamedObject("door5")
  93.     doorb=enigma.GetNamedObject("door6")
  94.     doorc=enigma.GetNamedObject("door7")
  95.     doord=enigma.GetNamedObject("door8")
  96.  
  97.     if timer == 4 then
  98.         enigma.SendMessage(doora, "open", nil)
  99.     end
  100.     if timer == 5 then
  101.         enigma.SendMessage(doorb, "open", nil)
  102.     end
  103.     if timer == 6 then
  104.         enigma.SendMessage(doorc, "open", nil)
  105.     end
  106.     if timer == 7 then
  107.         enigma.SendMessage(doord, "open", nil)
  108.         enigma.SendMessage(doora, "close", nil)
  109.     end
  110.     if timer == 8 then
  111.         enigma.SendMessage(doorb, "close", nil)
  112.     end
  113.     if timer == 9 then
  114.         enigma.SendMessage(doorc, "close", nil)
  115.     end
  116.     if timer == 10 then
  117.         enigma.SendMessage(doord, "close", nil)
  118.     end
  119. end
  120.  
  121. function t_h3()
  122.     doora=enigma.GetNamedObject("door9")
  123.     doorb=enigma.GetNamedObject("door10")
  124.     doorc=enigma.GetNamedObject("door11")
  125.     doord=enigma.GetNamedObject("door12")
  126.  
  127.     if timer == 8 then
  128.         enigma.SendMessage(doora, "open", nil)
  129.     end
  130.     if timer == 9 then
  131.         enigma.SendMessage(doorb, "open", nil)
  132.     end
  133.     if timer == 10 then
  134.         enigma.SendMessage(doorc, "open", nil)
  135.     end
  136.     if timer == 11 then
  137.         enigma.SendMessage(doord, "open", nil)
  138.         enigma.SendMessage(doora, "close", nil)
  139.     end
  140.     if timer == 0 then
  141.         enigma.SendMessage(doorb, "close", nil)
  142.     end
  143.     if timer == 1 then
  144.         enigma.SendMessage(doorc, "close", nil)
  145.     end
  146.     if timer == 2 then
  147.         enigma.SendMessage(doord, "close", nil)
  148.     end
  149.  
  150.     timer = timer + 1
  151.     if timer == 12 then
  152.         timer = 0
  153.     end
  154. end
  155.  
  156. set_stone("st-door_b", 4,6, {name="door1", type="v"})
  157. set_stone("st-door_b", 5,6, {name="door2", type="v"})
  158. set_stone("st-door_b", 6,6, {name="door3", type="v"})
  159. set_stone("st-door_b", 7,6, {name="door4", type="v"})
  160. set_stone("st-door_b", 8,6, {name="door5", type="v"})
  161. set_stone("st-door_b", 9,6, {name="door6", type="v"})
  162. set_stone("st-door_b", 10,6, {name="door7", type="v"})
  163. set_stone("st-door_b", 11,6, {name="door8", type="v"})
  164. set_stone("st-door_b", 12,6, {name="door9", type="v"})
  165. set_stone("st-door_b", 13,6, {name="door10", type="v"})
  166. set_stone("st-door_b", 14,6, {name="door11", type="v"})
  167. set_stone("st-door_b", 15,6, {name="door12", type="v"})
  168.  
  169. set_actor("ac-blackball", 2.5, 10.5, {player=0})
  170.  
  171.  
  172.