home *** CD-ROM | disk | FTP | other *** search
- -- 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"})
-
-