home *** CD-ROM | disk | FTP | other *** search
/ GameStar Special 2004 August / GSSH0804.iso / Geschicklichkeit / Enigma / Enigma-081.exe / data / levels / ss_esp36.lua < prev    next >
Encoding:
Text File  |  2003-09-19  |  2.5 KB  |  74 lines

  1. -- Sven Siggelkow 2003
  2. -- ESPRIT #036
  3. -- not implemented yet: using cherry makes invisible for the rotors
  4.  
  5. levelw = 39
  6. levelh = 13
  7. create_world(levelw, levelh)
  8. oxyd_default_flavor = "b"
  9. set_actor("ac-blackball", 27.5,6.5, {player=0})
  10.  
  11. fill_floor("fl-concrete",0,0,levelw,levelh)
  12.  
  13. function renderLine( line, pattern)
  14.     for i=1, strlen(pattern) do
  15.       local c = strsub( pattern, i, i)
  16.       if c ==   "#" then
  17.          set_stone("st-marble", i-1,line)
  18.       elseif c=="M" then
  19.      set_stone("st-marble_move", i-1,line)         
  20.       elseif c=="H" then
  21.      set_stone("st-marble_hole", i-1,line) 
  22.      set_actor("ac-rotor", i-1+0.5,line+0.5, {range=4, force=30})  
  23.       elseif c=="W" then
  24.      set_item("it-wormhole",i-1,line, {name="worm1",targetx=" 6.5",targety="6.5",strength=0})   
  25.       elseif c=="w" then
  26.      set_item("it-wormhole",i-1,line, {name="worm2",targetx=" 32.5",targety="6.5",strength=0})    
  27.       elseif c=="K" then
  28.          set_item("it-cherry",i-1,line)        
  29.       elseif c=="1" then
  30.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s1"})     
  31.       elseif c=="2" then
  32.          set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s2"})                    
  33.       elseif c=="O" then
  34.      oxyd(i-1,line)         
  35.         end
  36.     end  
  37. end
  38. --               012345678901234567890123456789012345678
  39. renderLine(00 , "#######################################")
  40. renderLine(01 , "#####################H###########H#####")
  41. renderLine(02 , "##                                   ##")
  42. renderLine(03 , "## ##################O###########O## ##")
  43. renderLine(04 , "## ################################# ##")  
  44. renderLine(05 , "## ################################# ##")
  45. renderLine(06 , "## ##w1            M K   K   K  2W## ##")
  46. renderLine(07 , "## ################################# ##")
  47. renderLine(08 , "## ################################# ##")
  48. renderLine(09 , "## ##################O###########O## ##")
  49. renderLine(10 , "##                                   ##")
  50. renderLine(11 , "#####################H###########H#####")
  51. renderLine(12 , "#######################################") 
  52. --               012345678901234567890123456789012345678
  53.  
  54. local flag = {0,0}
  55.  
  56. function s1()
  57.    %flag[1] = 1-%flag[1]
  58. set_attribs(enigma.GetNamedObject("worm1"), {targetx=30*%flag[1]+6.5}) 
  59. end
  60.  
  61. function s2()
  62.    %flag[2] = 1-%flag[2]                                                 
  63. set_attribs(enigma.GetNamedObject("worm2"), {targetx=32.5-(30*%flag[2])})
  64. end
  65.  
  66. oxyd_shuffle()
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.