home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar Special 2004 August
/
GSSH0804.iso
/
Geschicklichkeit
/
Enigma
/
Enigma-081.exe
/
data
/
levels
/
ralf07.lua
< prev
next >
Wrap
Text File
|
2003-05-20
|
2KB
|
94 lines
-- A level for Enigma
-- Name: Im-pull-se
-- Filename: ralf07.lua
-- Copyright: (C) May 2003 Ralf Westram
-- Contact: amgine@reallysoft.de
-- License: GPL v2.0 or above
dofile(enigma.FindDataFile("levels/ralf.lua"))
--debug_mode()
level={
"!!!!!!!!!o!!!!!!!!!!",
"!!!!!!!! !!!!!!!!!",
"!!!!!!xxxXxxx!!!!!!!",
"!!!!!xX Xx!!!!!!",
"!!!!!x R_I_R x!!!!!!",
"!!!! x _#i#_ x !!!!!",
"!!!o X Ii iI X o!!!!",
"!!!! x _#i#_ x !!!!!",
"!!!!!x R_I_R x!!!!!!",
"!!!!!xX a Xx!!!!!!",
"!!!!!!xxxXxxx!!!!!!!",
"!!!!!!!! !!!!!!!!!",
"!!!!!!!!!o!!!!!!!!!!",
}
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
triggerstate="000000000000"
triggers=0
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
function open(x,y)
x,y = x+xlo,y+ylo
enigma.KillStone(x,y)
set_stone("st-pull",x,y)
end
function check(which)
local state = strsub(triggerstate,which,which)
state = 1-state
triggerstate = strsub(triggerstate,1,which-1)..state..strsub(triggerstate,which+1)
if (triggerstate=="111111111111") then
open(9,2)
open(9,10)
open(5,6)
open(13,6)
end
end
function set_trigger(x,y)
triggers=triggers+1
local funcn = "trig_"..triggers
dostring(funcn.." = function() check("..triggers..") end")
set_item("it-trigger",x,y,{action="callback",target=funcn})
end
function my_floor(x,y)
if mod(x+y,2)==1 then
set_floor("fl-bluegray",x,y)
else
set_floor("fl-bluegreen",x,y)
end
end
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
cells={}
cells["!"] = cell{floor="fl-abyss"}
cells["."] = cell{floor="fl-sahara"}
cells[" "] = cell{parent=my_floor}
cells["#"] = cell{parent=cells["."],stone="st-glass"}
cells["x"] = cell{parent=cells[" "],stone="st-glass1"}
cells["X"] = cell{parent=cells["."],stone="st-glass1"}
cells["a"] = cell{parent=cells[" "],actor={"ac-blackball", {player=0}}}
cells["o"] = cell{oxyd}
cells["_"] = cell{parent={cells[" "],set_trigger}}
cells["R"] = cell{parent=cells["_"],stone="st-pull"}
cells["i"] = cell{parent=cells[" "],stone="st-stoneimpulse"}
cells["I"] = cell{parent=cells["."],stone="st-stoneimpulse"}
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
rs_create_world(level,cells)
oxyd_shuffle()