home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar Special 2004 August
/
GSSH0804.iso
/
Geschicklichkeit
/
Enigma
/
Enigma-081.exe
/
data
/
levels
/
siegfried83.lua
< prev
next >
Wrap
Text File
|
2003-04-26
|
4KB
|
129 lines
--Siegfried Fennig 27.04.2003 Rev.1
levelw = 20
levelh = 13
create_world(levelw, levelh)
draw_border("st-rock4")
enigma.ConserveLevel = FALSE
--oxyd_default_flavor = "d"
fill_floor("fl-bluegreen", 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 == "e" then
set_stone("st-turnstile-e",i-1,line)
elseif c == "s" then
set_stone("st-turnstile-s",i-1,line)
elseif c == "w" then
set_stone("st-turnstile-w",i-1,line)
elseif c == "r" then
set_stone("st-rock4",i-1,line)
elseif c == "X" then
set_stone("st-swap",i-1,line)
elseif c == "Y" then
set_stone("st-wood",i-1,line)
elseif c == "E" then
set_stone("st-oneway",i-1,line, {orientation=enigma.EAST})
elseif c == "S" then
set_stone("st-oneway",i-1,line, {orientation=enigma.SOUTH})
elseif c == "W" then
set_stone("st-oneway",i-1,line, {orientation=enigma.WEST})
elseif c == "q" then
set_item("it-trigger",i-1,line, {action="callback", target="callback1"})
elseif c == "p" then
set_item("it-trigger",i-1,line, {action="callback", target="callback2"})
elseif c == "l" then
set_attrib(laser(i-1,line, 0, NORTH), "name", "laser")
elseif c == "m" then
mirrorp(i-1,line,0,1,3)
elseif c == "M" then
mirrorp(i-1,line,0,1,1)
elseif c == "f" then
mirror3(i-1,line,0,0,1)
elseif c == "H" then
set_item("it-hollow",i-1,line)
elseif c == "h" then
set_item("it-tinyhollow",i-1,line)
elseif c == "K" then
set_item("it-hill",i-1,line)
elseif c == "k" then
set_item("it-tinyhill",i-1,line)
elseif c == "Z" then
set_item("it-spade",i-1,line)
elseif c == "i" then
yy1( "white", i-1, line)
elseif c == "j" then
yy1( "black", i-1, line)
elseif c == "o" then
set_stone("st-oxyd",i-1,line,{color="1", flavor="d"})
elseif c == "#" then
set_floor("fl-water",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,"Dig in...")
end
end
end
function yy1( color, x, y)
stone = format( "st-%s1", color)
set_stone( stone, x, y)
end
-- 01234567890123456789
renderLine(00, " ")
renderLine(01, " rrrrrroMmfMorrrrrr ")
renderLine(02, " rrrrr########rrrrr ")
renderLine(03, " rrrrrrr jk rrrrrrr ")
renderLine(04, " rrrrrrr rl rrrrrrr ")
renderLine(05, " rrrrrrr rr rrrrrrr ")
renderLine(06, " rrrrr E X Ejrrrrr ")
renderLine(07, " rr Zr rwtterSrrrrr ")
renderLine(08, " rriYr W s HYjrrrrr ")
renderLine(09, " rr hrrr rr jjrr n ")
renderLine(10, " rr hK rr rrrrwte ")
renderLine(11, " rrr irrda b qsp ")
renderLine(12, " ")
-- 01234567890123456789
trigger1 = 0
trigger2 = 0
function triggeraction()
lasera=enigma.GetNamedObject("laser")
if trigger1 == 1 and trigger2 == 1 then
enigma.SendMessage(lasera, "on", nil)
end
if trigger1 == 0 and trigger2 == 1 then
enigma.SendMessage(lasera, "off", nil)
end
if trigger1 == 1 and trigger2 == 0 then
enigma.SendMessage(lasera, "off", nil)
end
if trigger1 == 0 and trigger2 == 0 then
enigma.SendMessage(lasera, "off", nil)
end
end
function callback1 (ispressed)
trigger1=ispressed
triggeraction()
end
function callback2 (ispressed)
trigger2=ispressed
triggeraction()
end