home *** CD-ROM | disk | FTP | other *** search
- -- Sven Siggelkow 2003
- -- Thanks to Thomas Schmalz
-
- levelw = 20
- levelh = 13
- create_world(levelw, levelh)
-
- fill_floor("fl-dunes")
-
- 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=="D" then
- set_stone("st-death",i-1,line)
- elseif c=="p" then
- set_stone("st-door_a",i-1,line)
- elseif c=="|" then
- set_stone("st-greenbrown_hole",i-1,line)
- if (options.Difficulty==1) then -- easy
- set_stone("st-grate2",i-1,line)
- else -- hard
- set_stone("st-greenbrown_hole",i-1,line)
- end
- set_floor("fl-gradient", i-1, line, {type=1})
- elseif c=="a" then
- if (options.Difficulty==1) then -- easy
- set_stone("st-grate2",i-1,line)
- else -- hard
- set_stone("st-greenbrown_hole",i-1,line)
- end
- hollow(i-1,line, {name="hollow1"})
- elseif c=="b" then
- if (options.Difficulty==1) then -- easy
- set_stone("st-grate2",i-1,line)
- else -- hard
- set_stone("st-greenbrown_hole",i-1,line)
- end
- hollow(i-1,line, {name="hollow2"})
- elseif c=="c" then
- if (options.Difficulty==1) then -- easy
- set_stone("st-grate2",i-1,line)
- else -- hard
- set_stone("st-greenbrown_hole",i-1,line)
- end
- hollow(i-1,line, {name="hollow3"})
- elseif c=="d" then
- if (options.Difficulty==1) then -- easy
- set_stone("st-grate2",i-1,line)
- else -- hard
- set_stone("st-greenbrown_hole",i-1,line)
- end
- hollow(i-1,line, {name="hollow4"})
- elseif c=="e" then
- set_stone("st-door_a", i-1,line, {name="door1", type="v"})
- elseif c=="f" then
- set_stone("st-door_a", i-1,line, {name="door2", type="v"})
- elseif c=="g" then
- set_stone("st-door_a", i-1,line, {name="door3", type="v"})
- elseif c=="h" then
- set_stone("st-door_a", i-1,line, {name="door4", type="v"})
- 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"})
- elseif c=="W" then
- set_stone("st-timer",i-1,line, {action="openclose", target="door1"})
- elseif c=="X" then
- set_stone("st-timer",i-1,line, {action="openclose", target="door2"})
- elseif c=="Y" then
- set_stone("st-timer",i-1,line, {action="openclose", target="door3"})
- elseif c=="Z" then
- set_stone("st-timer",i-1,line, {action="openclose", target="door4"})
- elseif c=="5" then
- set_stone("st-fourswitch",i-1,line, {name="switch1", action="openclose", target="door1"})
- elseif c=="6" then
- set_stone("st-fourswitch",i-1,line, {name="switch2", action="openclose", target="door2"})
- elseif c=="7" then
- set_stone("st-fourswitch",i-1,line, {name="switch3", action="openclose", target="door3"})
- elseif c=="8" then
- set_stone("st-fourswitch",i-1,line, {name="switch4", action="openclose", target="door4"})
- elseif c=="x" then
- set_actor("ac-whiteball-small", i,line+.5, {player=0})
- end
- end
- end
- -- 01234567890123456789
- renderLine(00, "####W#56#XY#78#Z####")
- renderLine(01, "# #")
- renderLine(02, "# x x x x #")
- renderLine(03, "# #")
- renderLine(04, "# #")
- renderLine(05, "# pepfp pgphp #")
- renderLine(06, "# p|p|p p|p|p #")
- renderLine(07, "# p|p|p p|p|p #")
- renderLine(08, "# p|p|p p|p|p #")
- renderLine(09, "# p|p|p p|p|p #")
- renderLine(10, "# p|p|p p|p|p #")
- renderLine(11, "# pcpdp papbp #")
- renderLine(12, "#DDD#1#2#DD#3#4#DDD#")
- -- 01234567890123456789
-
- local s={0, 0, 0, 0}
-
- function s1()
- %s[1] = 1-%s[1]
- if (%s[1] == 1) then
- set_item("it-hill",12,11)
- else
- set_item("it-hollow",12,11)
- end
- end
-
- function s2()
- %s[2] = 1-%s[2]
- if (%s[2] == 1) then
- set_item("it-hill",14,11)
- else
- set_item("it-hollow",14,11)
- end
- end
-
- function s3()
- %s[3] = 1-%s[3]
- if (%s[3] == 1) then
- set_item("it-hill",5,11)
- else
- set_item("it-hollow",5,11)
- end
- end
-
- function s4()
- %s[4] = 1-%s[4]
- if (%s[4] == 1) then
- set_item("it-hill",7,11)
- else
- set_item("it-hollow",7,11)
- end
- end
-
-