-- Copyright (c) 2004 Jacob Scott -- License: GPL v2.0 or above -- Enigma Level: Kaleidoscope rooms_wide=1 rooms_high=1 levelw=1+(19*rooms_wide)+1 levelh=1+(12*rooms_high) create_world( levelw, levelh) fill_floor("fl-hay", 0,0,levelw,levelh) 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 =="X" then set_stone( "st-death", i-1, line) elseif c == "o" then oxyd( i-1, line) elseif c == "*" then set_stone( "st-brownie", i-1, line) elseif c == "!" then abyss(i-1,line) elseif c == "~" then set_floor("fl-water",i-1,line) elseif c=="z" then set_actor("ac-blackball", i-.5,line+.5, {player=0}) elseif c=="y" then set_actor("ac-whiteball", i-1,line+.5, {player=1}) elseif c=="S" then set_actor("ac-top", i-.5,line+.5, {range=100,force=5,player=1}) elseif c == "g" then draw_stones("st-grate1",{i-1,line}, {1,1}, 1) elseif c=="+" then set_stone( "st-wood", i-1, line) elseif c=="=" then set_floor("fl-space",i-1,line) elseif c=="T" then set_stone("st-timer",i-1,line,{interval=1,loop=1,action="callback",target="funcctimer"}) end end end renderLine(00,"XXXXXXXXXXXXXXXXXXXXT") renderLine(01,"X o o X ") renderLine(02,"X o XX o X ") renderLine(03,"X X ") renderLine(04,"X X o o X X ") renderLine(05,"X X ") renderLine(06,"XoX S z XoX ") renderLine(07,"X X ") renderLine(08,"X X o o X X ") renderLine(09,"X X ") renderLine(10,"X o XX o X ") renderLine(11,"X o o X ") renderLine(12,"XXXXXXXXXXXXXXXXXXXX ") oxyd_shuffle() sandp=3 bluegreenp=6 spacep=12 inversep=18 leavesp=21 woodp=25 tigrisp=27 ice_001p=31 metalp=34 normalp=37 bumpsp=40 marblep=42 saharap=44 inverse2p=48 concretep=50 rough_redp=53 rough_bluep=56 swampp=60 rockp=63 gravelp=66 lightp=69 redp=72 roughp=75 hayp=78 plankp=82 grayp=85 brickp=89 dunesp=92 springboardp=93 himalayap=95 mortarp=97 blackp=98 whitep=99 floor_001p=100 bluegrayp=103 wovenp=104 lightgrayp=105 darkgrayp=106 stonep=108 fftimer=0 skiprandom=0 function funcctimer() if fftimer==0 then skiprandom=1 fftimer=1 else skiprandom=0 end for i=0,levelw do for j=0,levelh do if skiprandom==0 then changefloor=random(8) else changefloor=1 end if changefloor==1 then donefloor=0 floornum=random(108)-1 if floornum