-- A level for Enigma
-- Copyright: 	(C) 2003 Sven Siggelkow
-- License: 	GPL v2.0 or above
-- ESPRIT #020
-- force against the actors by switching to hill could be stronger!

levelw = 20
levelh = 13
create_world(levelw, levelh)

fill_floor("fl-wood")

function renderLine( line, pattern)
    for i=1, strlen(pattern) do
      local c = strsub( pattern, i, i)
      if c ==   "#" then
         set_stone("st-greenbrown",i-1,line)
      elseif c=="H" then
         set_floor("fl-gray",i-1,line)
         hollow(i-1,line)
      elseif c=="1" then
	 set_stone("st-switch",i-1,line, {action="callback", target="s1"})
      elseif c=="2" then
	 set_stone("st-switch",i-1,line, {action="callback", target="s2"})
      elseif c=="3" then
	 set_stone("st-switch",i-1,line, {action="callback", target="s3"})
      elseif c=="4" then
	 set_stone("st-switch",i-1,line, {action="callback", target="s4"})	
        end
    end
end
--              01234567890123456789
renderLine(00, "####################")
renderLine(01, "#                  #")
renderLine(02, "#                  #")
renderLine(03, "#                  #")
renderLine(04, "#                  #")  
renderLine(05, "#                  #")
renderLine(06, "#    H1 H2 H3 H4   #")
renderLine(07, "#                  #")
renderLine(08, "#                  #")
renderLine(09, "#                  #")
renderLine(10, "#                  #")
renderLine(11, "#                  #")
renderLine(12, "####################")
--              01234567890123456789

local s={0, 0, 0, 0}
function s1 () sx(1) end 
function s2 () sx(2) end 
function s3 () sx(3) end 
function s4 () sx(4) end 

function sx(num)
   %s[num] = 1-%s[num]
   if (%s[num] == 1) then 
      set_item("it-hill",3*num+2,6)
   else 
      set_item("it-hollow",3*num+2,6)
   end
end

set_actor("ac-whiteball-small", 9.5, 10.5, {player=0})
set_actor("ac-whiteball-small",10.5, 10.5, {player=0})
set_actor("ac-whiteball-small", 11.5, 10.5, {player=0})
set_actor("ac-whiteball-small",8.5, 10.5, {player=0})
