home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar Special 2004 August
/
GSSH0804.iso
/
Geschicklichkeit
/
Enigma
/
Enigma-081.exe
/
data
/
levels
/
duffy12.lua
< prev
next >
Wrap
Text File
|
2003-06-26
|
6KB
|
150 lines
-- 2003-06-24: [ant]: changes in AddConstantForce
levelw = 100
levelh = 100
create_world(levelw, levelh)
fill_floor("fl-hay", 0,0, level_width,level_height)
laser1 = enigma.GetNamedObject("laser1")
door1=enigma.GetNamedObject("door1")
door2=enigma.GetNamedObject("door2")
door3=enigma.GetNamedObject("door3")
door4=enigma.GetNamedObject("door4")
door5=enigma.GetNamedObject("door5")
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 == "o" then
oxyd( i-1, line)
elseif c == "K" then
set_stone("st-key_a", i-1, line, {action="openclose", target="door1"})
elseif c == "j" then
set_stone("st-door", i-1, line , {name="door1", type="h"})
elseif c == "n" then
set_item("it-key_b", i-1 ,line)
elseif c == "N" then
set_stone("st-key_b", i-1, line, {action="openclose", target="door4"})
elseif c == "p" then
set_stone("st-door", i-1, line , {name="door4", type="v"})
elseif c == "k" then
set_item("it-key_a", i-1 ,line)
elseif c == "v" then
set_stone("st-door", i-1, line , {name="door2", type="h"})
elseif c == "w" then
set_item("it-trigger", i-1,line, {action="close", target="door2"})
elseif c == "x" then
set_stone("st-door", i-1, line , {name="door3", type="h"})
elseif c == "y" then
set_item("it-trigger", i-1,line, {action="close", target="door3"})
elseif c == "a" then
set_item("it-trigger", i-1,line, {action="off", target="laser1"})
elseif c == "U" then
set_stone("st-door", i-1, line , {name="door5", type="h"})
elseif c == "u" then
set_item("it-trigger", i-1,line, {action="close", target="door5"})
elseif c == "l" then
set_attrib( laser( i-1 , line, TRUE, WEST), "name", "laser1")
elseif c == "d" then
set_stone("st-death",i-1,line)
elseif c == "1" then
oneway(i-1,line, enigma.NORTH)
elseif c == "z" then
set_actor("ac-blackball", i-1,line, {player=0})
elseif c == "s" then
set_item("it-spring1",i-1,line)
elseif c == "i" then
set_stone("st-invisible",i-1,line)
elseif c == "@" then
document(i-1,line,"It isn't as easy as it looks.")
end
end
end
-- Floor: " "
-- Border: "#"
-- Oxyd: "o"
renderLine(00, "###################################d###########")
renderLine(01, "# # # s d d###")
renderLine(02, "## ## #### # # #### # ###")
renderLine(03, "## ## # # # # ### ############ ###")
renderLine(04, "## ## # #### # # l # ## ###")
renderLine(05, "## ## # # # # # ###### ## ###")
renderLine(06, "## ## ### # ## #aaaaaaaaaaa###### ## # ## #")
renderLine(07, "## ## ### # # #d######### #o # ## # ## #")
renderLine(08, "## ## ### i ###########d#### # ## ### ## #")
renderLine(09, "## ## ### ###### # # ## ## #")
renderLine(10, "## ## ###1###### ################ ### ## #d o#")
renderLine(11, "## ## ### # # ### ## ######")
renderLine(12, "## ## ### # ##### ############## ### ## ##")
renderLine(13, "## ## ###1# # @ # ### ###### ##")
renderLine(14, "## ##o#o# # # # #### ########### #### # ##")
renderLine(15, "## #### # # # z # # # ##")
renderLine(16, "## ### # ## # #################### ##")
renderLine(17, "## ## # ## # i ##")
renderLine(18, "#### oo ######## #########################")
renderLine(19, "# n#### oo # ## # ##")
renderLine(20, "# ##o# # ### ## # #################### ##")
renderLine(21, "# # ## # # ## # # ##")
renderLine(22, "# ## ## #u#U#### # ## ############### # #######")
renderLine(23, "# # #o# # # ## # ##")
renderLine(24, "# ########## # ### ## ############### ###### ##")
renderLine(25, "# # # # ## # # ##")
renderLine(26, "######## # ### ### ################## # #######")
renderLine(27, "# # ## #k # ##")
renderLine(28, "######## ########j########################## ##")
renderLine(29, "# # # # p # ## # # ##")
renderLine(30, "# # ## ### # ## # ## ###### # ####### # #######")
renderLine(31, "# # # # ## # ## # # # # # ##")
renderLine(32, "# ## ####### ## # ## # ###### # ### # ###### ##")
renderLine(33, "# # # # ## # ## # # # # # # ##")
renderLine(34, "# # ## ##### ## # ## # #### # # # ### # #######")
renderLine(35, "# # # #N # ## # ## # K# # # # # # ##")
renderLine(36, "# #### # ## # ## # #### # # # # ###### # ##")
renderLine(37, "# ### # # ## ## # # # # # # ##")
renderLine(38, "# # ### #### ####### # ###### # ############ ##")
renderLine(39, "# # # ##")
renderLine(40, "###############################################")
oxyd_shuffle()
door2=enigma.GetNamedObject("door2")
door3=enigma.GetNamedObject("door3")
door5=enigma.GetNamedObject("door5")
mytimer = 0
gravity=0
totgravity=0
function timer_handler()
if mytimer==0 then
enigma.SendMessage(door2, "open", nil)
enigma.SendMessage(door3, "open", nil)
enigma.SendMessage(door5, "open", nil)
end
mytimer = mytimer + 1
if gravity<7 then
if mytimer==40 then
gravity=gravity+1
end
elseif gravity>7 then
if mytimer==75 then
gravity=gravity+1
end
end
totgravity = totgravity+gravity
enigma.AddConstantForce(0,totgravity)
end
set_stone( "st-timer", 0, 0, {action="callback", target="timer_handler"})