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

  1. -- Sven Siggelkow 2003
  2. -- ESPRIT #049
  3.  
  4. levelw = 182
  5. levelh = 13
  6. create_world(levelw, levelh)
  7. oxyd_default_flavor = "a"
  8. display.SetFollowMode(display.FOLLOW_SCROLLING)
  9. set_actor("ac-blackball", 178.5,6.5, {player=0})
  10. fill_floor("fl-bluegray",0,0,levelw,levelh)
  11.  
  12.  
  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-rock3", i-1,line)
  19.       elseif c =="-" then
  20.          set_stone("st-rock3_break",i-1,line)
  21.       elseif c=="M" then
  22.      set_stone("st-rock3_move",i-1,line)
  23.       elseif c=="H" then
  24.      set_stone("st-rock3_hole",i-1,line)
  25.       elseif c=="h" then
  26.      set_stone("st-rock3_hole",i-1,line)
  27.      set_item("it-crack0",i-1,line)
  28.       elseif c=="c" then
  29.      set_item("it-crack1",i-1,line)
  30.       elseif c=="e" then
  31.      set_item("it-crack0",i-1,line)
  32.       elseif c=="d" then
  33.      set_item("it-crack3",i-1,line)
  34.       elseif c=="0" then
  35.      set_stone("st-door_c", i-1,line,{name="door0"})
  36.       elseif c=="9" then
  37.      set_stone("st-door_c", i-1,line)
  38.       elseif c == "K" then
  39.          set_stone("st-coinslot", i-1,line, {action="openclose", target="door0"})
  40.       elseif c =="g" then
  41.          set_stone("st-grate2",i-1,line)
  42.       elseif c =="!" then
  43.          set_stone("st-grate2",i-1,line)
  44.      set_item("it-hammer", i-1,line)
  45.       elseif c=="a" then
  46.          set_stone("st-rock3_hole",i-1,line)    
  47.            set_item("it-coin", i-1,line,{value=1})
  48.       elseif c=="b" then    
  49.      set_stone("st-rock3_hole",i-1,line)
  50.      set_item("it-coin", i-1,line,{value=4})
  51.       elseif c =="i" then
  52.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s1"})
  53.       elseif c =="j" then
  54.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s2"})
  55.       elseif c =="k" then
  56.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s3"})
  57.       elseif c =="l" then
  58.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s4"})
  59.       elseif c =="m" then
  60.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s5"})
  61.       elseif c =="n" then
  62.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s6"})
  63.       elseif c=="." then
  64.          set_item("it-hill",i-1,line)
  65.       elseif c=="o" then
  66.          set_item("it-hollow",i-1,line)
  67.       elseif c=="w" then
  68.      set_stone("st-glass1",i-1,line)
  69.       elseif c =="Z" then
  70.          set_item("it-wormhole",i-1,line, {targetx="175.5",targety="6.5",strength=0})
  71.          set_stone("st-glass", i-1,line)
  72.       elseif c =="Y" then
  73.          set_stone("st-glass", i-1,line)
  74.          set_item("it-wormhole",i-1,line, {targetx="6.5",targety="6.5",strength=0})
  75.       elseif c =="X" then
  76.          set_item("it-wormhole",i-1,line, {targetx="23.5",targety="11.5",strength=0})
  77.       elseif c =="W" then
  78.          set_item("it-wormhole",i-1,line, {targetx="13.5",targety="5.5",strength=0})         
  79.       elseif c=="S" then
  80.          set_stone("st-switch", i-1,line,{target="s0", action="callback"})
  81.       elseif c=="1" then
  82.      set_stone("st-door_c", i-1,line,{name="door1"})
  83.       elseif c=="2" then
  84.      set_stone("st-door_c", i-1,line,{name="door2"})        
  85.       elseif c=="3" then
  86.      set_stone("st-door_c", i-1,line,{name="door3"})
  87.       elseif c=="4" then
  88.      set_stone("st-door_c", i-1,line,{name="door4"})        
  89.       elseif c=="5" then
  90.      set_stone("st-door_c", i-1,line,{name="door5"})
  91.       elseif c=="6" then
  92.      set_stone("st-door_c", i-1,line,{name="door6"})        
  93.       elseif c=="f" then
  94.          set_stone("st-fourswitch", i-1,line,{target="s7", action="callback"})
  95.       elseif c=="O" then
  96.      oxyd(i-1,line)         
  97.         end
  98.     end  
  99. end
  100. --               01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901
  101. renderLine(00 , "##################################f#############f##############f#########f################f###########################################################################################")
  102. renderLine(01 , "#       w               ww 1  .o  o...   o   .   .   oo.    o.  o  ..  .  .  ooo    .   o  .        oi  #-----#---------#################H MHHHHHHHHHHb9ggg9       #   # c M e       #")
  103. renderLine(02 , "#       w wwwwwwwwwwwww ww ###f######f##########f#################f#######f###############f###########  #-##-##-#########-----##--------#H HHHHHHHHHHHH9g!g9    e dMe  # e #e        #")
  104. renderLine(03 , "# O     w w           w ww 2 o..o    o.o.      ..o.       ..      ..o     o.       .    .  o      .  j  #-#---------#####-#-#-##-######-#H HHHHHHHHHHHH9ggg0 d     # c #   #       O #")
  105. renderLine(04 , "#       w w wwwwwwwww w ww ########f######f###f###########f#####f#f######f########f####f##############  #-#-#-#####-#####-#-#-##--#####-#H HHHHHHHHHHHH99K99     c #   H   # e       #")
  106. renderLine(05 , "# O     w w w       w w ww 3               ..o.          .....................oooooooooooo           k  ###-#-----#-------#-#-###-#-----#H HHHHHHHHHHHH            H c He  #       O #")  
  107. renderLine(06 , "S    Z  w w wwwwwww w wXwW ####f#f##########f########f#########f##############f#############f#########  --#-###############-#-###-#####-#H HHHHHHHHHHHH          c #c  # c M    Y    #")
  108. renderLine(07 , "# O     w w         w wwww 4      ..   oo            o.o                  o   ..       oo    .       l  #-#-##-----########-#-###-#-----#H HHHHHHHHHHaH           e#   #  e#e      O #")
  109. renderLine(08 , "#       w wwwwwwwwwww wwww ###########f##########f################f#########f########f################  #-#-##-###-#########--###-#-#####H HHHHHHHHHHHH        d   #  c#   H e       #")
  110. renderLine(09 , "# O     w               ww 5           .       ...    .oo.        .   o   o o                        m  #-#----###-------###-####-#----##H HHHHHHHHHHHH           c# e H ceh       O #")
  111. renderLine(10 , "#       wwwwwwwwwwwwwwwwww ####f########f##############f#########f####f#######f#########f#############  #-#############--#---------#-#---H HHHHHHHHHHHH            He dM   #         #")
  112. renderLine(11 , "#                       ww 6               .o.         ooo   ...      o.       o.         ...        n  #---------------###########--####H aHHHHHHHHHHH            #   #  c#e        #")
  113. renderLine(12 , "##################################f#########f#######f########f###############f######f#################################################################################################") 
  114. --               01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901
  115.  
  116. door = 0
  117.  
  118. function s0() -- "opens" the wormholes
  119. enigma.KillStone(5, 6)
  120. enigma.KillStone(176, 6)
  121. end
  122.  
  123. function s1() sx(1) end
  124. function s2() sx(2) end
  125. function s3() sx(3) end
  126. function s4() sx(4) end
  127. function s5() sx(5) end
  128. function s6() sx(6) end
  129.  
  130. function sx(x) -- opens all doors, var door stores next door approaching
  131. door=x
  132. for i=1,6 do
  133.   enigma.SendMessage(enigma.GetNamedObject("door"..i), "open", nil)
  134.   end
  135. end
  136.  
  137. function s7() -- if any fourswitch is touched only the next door approaching will be closed
  138. enigma.SendMessage(enigma.GetNamedObject("door"..door), "close", nil)
  139. end                                                                               
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.