<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<el:level xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://enigma-game.org/schema/level/1 level.xsd" xmlns:el="http://enigma-game.org/schema/level/1">
  <el:protected>
    <el:info el:type="level">
      <el:identity el:title="Doors Galore" el:subtitle="" el:id="RayWick001"/>
      <el:version el:score="1" el:release="1" el:revision="0" el:status="released"/>
      <el:author  el:name="Ray Wick" el:email="" el:homepage=""/>
      <el:copyright>Copyright © Ray Wick</el:copyright>
      <el:license el:type="Donated to Enigma under the projects license" el:open="true"/>
      <el:compatibility el:enigma="0.92">
      </el:compatibility>
      <el:modes el:easy="false" el:single="true" el:network="false"/>
      <el:comments>
        <el:code>Lua 5.1 and XML converted by Leveladministrators</el:code>
      </el:comments>
      <el:score el:easy="-" el:difficult="-"/>
    </el:info>
    <el:luamain><![CDATA[
LAND_FLOOR = "fl-brick"
SOFT_FLOOR = "fl-hay"
WATER_FLOOR = "fl-water"
WALL = "st-brick"

level = {
    "#@###S#L##########@#",
    "#6#~~~~~@~~~~ > #B1#",
    "C ~~~ ~~~~~~#5# D  $",
    "#     ~~~~~~~ E H G#",
    "#b+++ ~~~~~~@ #4# 7@",
    "#e    ~~~!~~+ ! #8##",
    "#  a ~~~~~~~~ !   ##",
    "# ~~~~~~~~~~~ #c???#",
    "# ~~~@~~d~~ * #??+ #",
    "# ~~~~~~  + + ###  #",
    "# ~~~~~~  +++ 3 #9I#",
    "# >  + x     +# < 2@",
    "#@##########!!###A##"
}

cells = {}
cells["!"] = function( x, y )
--    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-stoneimpulse", x, y )
end

cells["#"] = function( x, y )
--    set_floor( LAND_FLOOR, x, y )
    set_stone( WALL, x, y )
end
cells["*"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_actor( "ac-blackball", x+0.5, y+0.5 )
end
cells["@"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    oxyd(x,y)
end
cells["+"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-wood", x, y )
end
cells["~"] = function( x, y )
    set_floor( WATER_FLOOR, x, y )
end
cells["$"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-coinslot", x, y, {action="callback", target="funcc"})
end
cells["<"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-oneway-w", x, y)
end
cells["v"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-oneway-s", x, y)
end
cells[">"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-oneway-e", x, y)
end
cells["^"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-oneway-n", x, y)
end
cells["?"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_item( "it-coin1", x, y )
end
cells["x"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_item( "it-blackbomb", x, y )
end
cells[" "] = function( x, y )
    set_floor( LAND_FLOOR, x,y )
end
cells["1"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door1"} )
end
cells["2"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorv(x, y, {name="door2"} )
end
cells["3"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorv(x, y, {name="door3"} )
end
cells["4"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door4"} )
end
cells["5"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door5"} )
end
cells["6"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door6"} )
end
cells["7"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorv(x, y, {name="door7"} )
end
cells["8"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door8"} )
end
cells["9"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    doorh(x, y, {name="door9"} )
end
cells["A"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-key_a", x, y, {action="openclose", target="door1"})
end
cells["B"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-key_b", x, y, {action="openclose", target="door2"})
end
cells["C"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-key_c", x, y, {action="openclose", target="door3"})
end
cells["D"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door4"})
end
cells["E"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door5"})
end
cells["F"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door6"})
end
cells["G"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door7"})
end
cells["H"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door8"})
end
cells["I"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-floppy", x, y, {action="openclose", target="door9"})
end
cells["L"] = function( x, y )
    set_floor( SOFT_FLOOR, x, y )
    set_attrib(laser(x, y, FALSE, SOUTH), "name", "laser")
end
cells["S"] = function( x, y )
    set_floor( SOFT_FLOOR, x, y )
    set_stone( "st-switch", x, y, {target="laser", action="onoff", on=1 })
end
cells["a"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
--    set_stone( "st-wood", x, y )
    set_item( "it-key_a", x, y )
end
cells["b"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
--    set_stone( "st-wood", x, y )
    set_item( "it-key_b", x, y )
end
cells["c"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-wood", x, y )
    set_item( "it-key_c", x, y )
end
cells["d"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
--    set_stone( "st-wood", x, y )
    set_item( "it-floppy", x, y )
end
cells["e"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
    set_stone( "st-wood", x, y )
    set_item( "it-floppy", x, y )
end
cells["f"] = function( x, y )
    set_floor( LAND_FLOOR, x, y )
--    set_stone( "st-wood", x, y )
    set_item( "it-floppy", x, y )
end

create_world( strlen(level[1]), getn(level) )
fill_floor (LAND_FLOOR)

for y,line in pairs(level) do
    for x = 1,strlen(line) do
        cell = strchar(strbyte(line,x))
        cells[cell]( x-1, y-1 )
    end
end
oxyd_shuffle()
through=0
function funcc()
    if through==1 then
        through=0
    end
    if through==0 then
        SendMessage("door3", "openclose")
        SendMessage("door6", "openclose")
    end
    through=through+1
end
    ]]></el:luamain>
    <el:i18n>
      <el:string el:key="title">
        <el:english el:translate="false"/>
      </el:string>
    </el:i18n>
  </el:protected>
</el:level>
