1 |
-- Woodraiser -- the Enigma Level |
-- Wells -- the Enigma Level |
2 |
-- (c) 2003 Petr Machata/ant_39 |
-- (c) 2003 Petr Machata/ant_39 |
3 |
-- Licensed under GPL v2.0 or above |
-- Licensed under GPL v2.0 or above |
4 |
-- 2003-02-15 |
-- 2003-03-07 |
5 |
|
|
6 |
dofile(enigma.FindDataFile("levels/ant.lua")) |
Require("levels/ant.lua") |
7 |
|
|
8 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
9 |
|
cells = {} |
10 |
|
|
11 |
wall_switched = nil |
cells[" "] = cell{floor="fl-himalaya"} |
12 |
function switch_wall() |
cells["#"] = cell{stone="st-rock4"} |
13 |
wall_switched = not(wall_switched) |
cells["S"] = cell{{{switch, "switchb", "callback"}}} |
14 |
|
|
15 |
if (wall_switched) then |
cells["e"] = cell{item ="it-extralife"} |
16 |
draw_func(enigma.KillStone, {4,1}, {0,1}, 11) |
cells["s"] = cell{item ="it-spring1"} |
17 |
draw_func(stone, {15,1}, {0,1}, 11) |
cells["O"] = cell{actor={face="ac-blackball", attr={player=0}, mode=2}} |
18 |
else |
|
19 |
draw_func(enigma.KillStone, {15,1}, {0,1}, 11) |
doors1 = {} |
20 |
draw_func(stone, {4,1}, {0,1}, 11) |
doors2 = {} |
21 |
end |
cells["1"] = cell{{{add_multistone, "st-door_b", doors1, {type="v"}}}} |
22 |
end |
cells["2"] = cell{{{add_multistone, "st-door_b", doors2, {type="v"}}}} |
23 |
|
switch1 = cell{{{send_group_message, doors1, "openclose", nil; mode=-1}}} |
24 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
switch2 = cell{{{send_group_message, doors2, "openclose", nil; mode=-1}}} |
25 |
floor = cell{floor={face="fl-himalaya"}} |
switchb = cell{{switch1, switch2}} |
26 |
stone = cell{stone={face="st-rock4"}} |
|
27 |
seed = cell{item ={face="it-seed"}} |
cells["%"] = cell{{cells["#"], switch2}} |
28 |
actor = cell{actor={face="ac-blackball", attr={player=0}, mode=2}} |
|
29 |
sw0 = cell{parent={{switch, "switch_wall", "callback"}}} |
level = { |
30 |
|
"####.##########.####", |
31 |
|
"#0 ### ### s#", |
32 |
|
"# 1 2 #", |
33 |
|
"# 1 2 #", |
34 |
|
"# 1 2 #", |
35 |
|
"# ### ### #", |
36 |
|
"S X.# O #.X S", |
37 |
|
"# ### ### #", |
38 |
|
"# 1 2 #", |
39 |
|
"# 1 2 #", |
40 |
|
"# 1 2 #", |
41 |
|
"#e ### ### 0#", |
42 |
|
"####.##########.###%" |
43 |
|
} |
44 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
45 |
|
|
|
create_world(20, 13) |
|
46 |
oxyd_default_flavor = "c" |
oxyd_default_flavor = "c" |
47 |
fill_world_func(floor) |
set_default_parent(cells[" "]) |
48 |
draw_border_func(stone) |
create_world_by_map(level) |
|
actor(2, 6) |
|
|
oxyd({{1,1},{1,11},{18,11},{18,1}}) |
|
|
seed(10,11) |
|
|
set_funcs(sw0, {{0,6},{19,6}}) |
|
|
switch_wall() |
|
|
oxyd_shuffle() |
|