-- Sven Siggelkow 2003
-- ESPRIT #085
-- This level should only be solvable if the marble activates
-- without anything (no inventory) the trigger. If somebody knows to realize this,
-- please change it. For now the doors open if the trigger is activated.


levelw = 20
levelh = 13
create_world(levelw, levelh)
oxyd_default_flavor = "a"
set_actor("ac-blackball", 3.5, 6.5, {player=0})
fill_floor("fl-ice_001", 0,0, level_width,level_height)

function renderLine( line, pattern)
    for i=1, strlen(pattern) do
      local c = strsub( pattern, i, i)
      if c ==   "#" then
         set_stone("st-door_a",i-1,line)
      elseif c=="D" then                                                                
         set_stone("st-death", i-1,  line)
      elseif c=="1" then                                                                
         set_stone("st-door_a", i-1,  line,{name="door1"})
      elseif c=="2" then                                                                
         set_stone("st-door_a", i-1,  line,{name="door2"})
      elseif c =="t" then
         set_item("it-trigger", i-1,line, {invisible=1,action="callback", target="s1"})
      elseif c=="M" then
         set_item("it-magnet",i-1,line,{on=1})
      elseif c=="." then                 
         set_item("it-extralife", i-1,line)
      elseif c=="O" then
	 oxyd(i-1,line) 
        end
    end
end
--              01234567890123456789
renderLine(00, "####################")
renderLine(01, "#    ...          D#")
renderLine(02, "#                  #")
renderLine(03, "#                  #")
renderLine(04, "#              #####")  
renderLine(05, "#        OO    #1  #")
renderLine(06, "#       OMMO    tOO#")
renderLine(07, "#        OO    #2  #")
renderLine(08, "#              #####")
renderLine(09, "#                  #")
renderLine(10, "#                  #")
renderLine(11, "#                 D#")
renderLine(12, "####################")
--              01234567890123456789

oxyd_shuffle()

no_inventory = true

function s1()
if no_inventory==true then
  enigma.SendMessage(enigma.GetNamedObject("door1"), "open", nil)
  enigma.SendMessage(enigma.GetNamedObject("door2"), "open", nil)
  end
end