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

  1. levelw=80
  2. levelh=40
  3.  
  4. create_world( levelw, levelh)
  5.  
  6. fill_floor("fl-leaves", 0,0,levelw,levelh)
  7.  
  8. done_with_setup = 0
  9.  
  10. function renderLine( line, pattern)
  11.     for i=1, strlen(pattern) do
  12.         local c = strsub( pattern, i, i)
  13.         if c =="#" then
  14.             set_stone( "st-glass", i-1, line)
  15.         elseif c == "o" then
  16.             if done_with_setup == 0 then
  17.                oxyd( i-1, line)
  18.             end
  19.                 elseif c == "!" then
  20.             abyss(i-1,line)
  21. --            fill_floor("fl-water", i-1,line, 1,1)
  22.         elseif c=="z" then
  23.             set_actor("ac-blackball", i-.5,line+.5, {player=0})
  24.         elseif c=="+" then
  25.             set_stone( "st-wood", i-1, line)
  26.         elseif c=="1" then
  27.             doorv( i-1,line, {name="door1"})
  28.         elseif c=="W" then
  29.             set_attrib(laser(i-1,line, FALSE, WEST), "name", "laser")
  30.         elseif c=="L" then
  31.             set_stone("st-key_a", i-1,line, {action="on", target="laser"})
  32.         elseif c=="k" then
  33.             set_item("it-key_a", i-1,line)
  34.         elseif c=="`" then
  35.             mirrorp(i-1,line,FALSE,TRUE, 2)
  36.         elseif c=="/" then
  37.             mirrorp(i-1,line,FALSE,TRUE, 4)
  38.         elseif c=="B" then
  39.             set_stone("st-bombs", i-1,line)
  40.         elseif c=="g" then
  41.             draw_stones("st-grate1",{i-1,line}, {1,1}, 1)
  42.         elseif c=="A" then
  43.            if done_with_setup==0 then
  44.               set_stone("st-switch", i-1,line, {action="callback",target="funcc"})
  45.            end
  46.         elseif c=="h" then
  47.                     draw_stones("st-grate2",{i-1,line}, {1,1}, 1)
  48.         elseif c=="m" then
  49.                 set_stone("st-marble",i-1,line)
  50.         end
  51.     end    
  52. end
  53.  
  54. through=0
  55. swap=0
  56. function funcc()
  57.    
  58. --   handle = openfile("c:/users/Jacob/lualog.txt", "a")
  59. --   write(handle, "myline started as ")
  60. --   write(handle, myline)
  61. --   write(handle, "\n")
  62.    
  63. --   if swap == 0 then
  64.       myline0 = gsub(myline0, "#", "B")
  65.       myline1 = gsub(myline1, "#", "B")
  66.       myline2 = gsub(myline2, "#", "B")
  67.       myline3 = gsub(myline3, "#", "B")
  68.       myline4 = gsub(myline4, "#", "B")
  69.       myline5 = gsub(myline5, "#", "B")
  70.       myline6 = gsub(myline6, "#", "B")
  71.       myline7 = gsub(myline7, "#", "B")
  72.       myline8 = gsub(myline8, "#", "B")
  73.       myline9 = gsub(myline9, "#", "B")
  74.       myline10 = gsub(myline10, "#", "B")
  75.       myline11 = gsub(myline11, "#", "B")
  76.       myline12 = gsub(myline12, "#", "B")
  77.       swap = 1
  78. --   else
  79.       myline0 = gsub(myline0, "g", "#")
  80.       myline1 = gsub(myline1, "g", "#")
  81.       myline2 = gsub(myline2, "g", "#")
  82.       myline3 = gsub(myline3, "g", "#")
  83.       myline4 = gsub(myline4, "g", "#")
  84.       myline5 = gsub(myline5, "g", "#")
  85.       myline6 = gsub(myline6, "g", "#")
  86.       myline7 = gsub(myline7, "g", "#")
  87.       myline8 = gsub(myline8, "g", "#")
  88.       myline9 = gsub(myline9, "g", "#")
  89.       myline10 = gsub(myline10, "g", "#")
  90.       myline11 = gsub(myline11, "g", "#")
  91.       myline12 = gsub(myline12, "g", "#")
  92.  
  93.       myline0 = gsub(myline0, "B", "g")
  94.       myline1 = gsub(myline1, "B", "g")
  95.       myline2 = gsub(myline2, "B", "g")
  96.       myline3 = gsub(myline3, "B", "g")
  97.       myline4 = gsub(myline4, "B", "g")
  98.       myline5 = gsub(myline5, "B", "g")
  99.       myline6 = gsub(myline6, "B", "g")
  100.       myline7 = gsub(myline7, "B", "g")
  101.       myline8 = gsub(myline8, "B", "g")
  102.       myline9 = gsub(myline9, "B", "g")
  103.       myline10 = gsub(myline10, "B", "g")
  104.       myline11 = gsub(myline11, "B", "g")
  105.       myline12 = gsub(myline12, "B", "g")
  106.       swap = 0
  107. --   end
  108.  
  109.    
  110. --   write(handle, "myline is now ")
  111. --   write(handle, myline)
  112. --   write(handle, "\n")
  113. --   flush(handle)
  114. --   closefile(handle)
  115.  
  116.    renderLine(00, myline0)
  117.    renderLine(01, myline1)
  118.    renderLine(02, myline2)
  119.    renderLine(03, myline3)
  120.    renderLine(04, myline4)
  121.    renderLine(05, myline5)
  122.    renderLine(06, myline6)
  123.    renderLine(07, myline7)
  124.    renderLine(08, myline8)
  125.    renderLine(09, myline9)
  126.    renderLine(10, myline10)
  127.    renderLine(11, myline11)
  128.    renderLine(12, myline12)
  129.  
  130.     if through==1 then
  131.     through=0
  132.     end
  133. --    if through==0 then
  134. --    for i=1, strlen(pattern) do
  135. --        local c = strsub( pattern, i, i)
  136. --        if c =="#" then
  137. --        set_stone("st-greenbrown",i-1,line)
  138. --        end
  139. --    end        
  140. --    end
  141.     through=through+1
  142. end
  143.  
  144. -- Floor:  " "
  145. -- Border: "#"
  146. -- Oxyd:   "o"
  147.  
  148. myline0= "mommmmommmmmmmmmmomm"
  149. myline1= "mh###ggg########gg#o"
  150. myline2= "mggg#g#gg##gggghg##m"
  151. myline3= "m#gg#h####ghhhg###go"
  152. myline4= "m###ghgg#gghAhgg#ggm"
  153. myline5= "m#g###gg#g#hhhg##h#m"
  154. myline6= "m#gggg#ggggg#ggggg#m"
  155. myline7= "m######g#######g#g#m"
  156. myline8= "mg#gg#gg#g#gggg####m"
  157. myline9= "m####ggggg#g#g##gggm"
  158. myline10="mg#g###g###h#ghgg#gm"
  159. myline11="o##ggh#ggggg###gg#hm"
  160. myline12="mmmmmommmmmmmmmmmmom"
  161.  
  162. --myline0=  "mmmmmmmmmmmmmmmmmmmm")
  163. --myline1=  "m                  m")
  164. --myline2=  "m########## ####   m")
  165. --myline3=  "m#        # #  ### m")
  166. --myline4=  "m#    ### # #   #  m")
  167. --myline5=  "m# #### # ###   ## m")
  168. --myline6=  "m# #    #    ggg # m")
  169. --myline7=  "m# #### ###z gAg # m")
  170. --myline8=  "m#   ###  ###ggg # m")
  171. --myline9=  "m#     ###       # m")
  172. --myline10= "m######  ######### m")
  173. --myline11= "m     #            m")
  174. --myline12= "mmmmmmmmmmmmmmmmmmmm")
  175.    renderLine(00, myline0)
  176.    renderLine(01, myline1)
  177.    renderLine(02, myline2)
  178.    renderLine(03, myline3)
  179.    renderLine(04, myline4)
  180.    renderLine(05, myline5)
  181.    renderLine(06, myline6)
  182.    renderLine(07, myline7)
  183.    renderLine(08, myline8)
  184.    renderLine(09, myline9)
  185.    renderLine(10, myline10)
  186.    renderLine(11, myline11)
  187.    renderLine(12, myline12)
  188.  
  189. oxyd_shuffle()
  190. done_with_setup = 1
  191.  
  192. set_actor("ac-blackball", 9.5,6.5, {player=0})
  193.