--Siegfried Fennig 23.04.2003 Rev.0 levelw = 20 levelh = 13 create_world(levelw, levelh) enigma.ConserveLevel = FALSE oxyd_default_flavor = "b" fill_floor("fl-gray", 0, 0, level_width, level_height) function renderLine( line, pattern) for i=1, strlen(pattern) do local c = strsub( pattern, i, i) if c =="t" then set_stone("st-turnstile",i-1,line) elseif c == "n" then set_stone("st-turnstile-n",i-1,line) elseif c == "s" then set_stone("st-turnstile-s",i-1,line) elseif c == "e" then set_stone("st-turnstile-e",i-1,line) elseif c == "w" then set_stone("st-turnstile-w",i-1,line) elseif c == "r" then set_stone("st-rock6",i-1,line) elseif c == "X" then set_stone("st-oneway_black",i-1,line, {orientation=enigma.EAST}) elseif c == "x" then set_stone("st-oneway_white",i-1,line, {orientation=enigma.EAST}) elseif c == "g" then set_stone("st-glass1",i-1,line) elseif c == "Y" then set_stone("st-switch_black",i-1,line, {action="callback", target="callback1"}) elseif c == "y" then set_stone("st-switch_white",i-1,line, {action="callback", target="callback2"}) elseif c == "L" then set_attrib(laser(i-1,line, FALSE, EAST), "name", "laser") elseif c == "m" then mirrorp(i-1,line,0,1,2) elseif c == "M" then mirrorp(i-1,line,0,0,4) elseif c == "o" then oxyd( i-1, line) elseif c == "a" then set_actor("ac-blackball", i-.5,line+.5, {player=0}) set_item("it-yinyang", i-1, line+.5) elseif c == "b" then set_actor("ac-whiteball", i-.5,line+.5, {player=1}) set_item("it-yinyang", i-1, line+.5) elseif c == "d" then document(i-1,line,"Nothing can stop us!") end end end -- 01234567890123456789 renderLine(00, "rrrrrrrrrrrrrrrrrrrr") renderLine(01, "rggggggggggggggrggrr") renderLine(02, "og n n n n g mr") renderLine(03, "rg tewtewtewt ro r") renderLine(04, "rg n sbX r") renderLine(05, "rgwtewt wt wte rY r") renderLine(06, "og s sn n n gd mr") renderLine(07, "rg tewtewte tery r") renderLine(08, "rg s x r") renderLine(09, "rgwtewt wt wtear r") renderLine(10, "og s s s s g mr") renderLine(11, "rggggggggggggggLggMr") renderLine(12, "rrrrrrrrrrrrrrrrrrrr") -- 01234567890123456789 switch1 = 0 switch2 = 0 function switchaction() lasera=enigma.GetNamedObject("laser") if switch1 == 1 and switch2 == 1 then enigma.SendMessage(lasera, "on", nil) end if switch1 == 0 and switch2 == 1 then enigma.SendMessage(lasera, "off", nil) end if switch1 == 1 and switch2 == 0 then enigma.SendMessage(lasera, "off", nil) end if switch1 == 0 and switch2 == 0 then enigma.SendMessage(lasera, "off", nil) end end function callback1 (ison) switch1=ison switchaction() end function callback2 (ison) switch2=ison switchaction() end