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-01-07 |
-- 2003-01-07 |
5 |
|
-- 2003-02-20 -- major rewrite |
6 |
|
|
7 |
dofile(enigma.FindDataFile("levels/ant.lua")) |
dofile(enigma.FindDataFile("levels/ant.lua")) |
8 |
|
|
9 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
10 |
function construct0(x, y) |
function construct0(x, y) set_floor("fl-wood", x, y) end |
11 |
set_floor("fl-wood", x, y) |
function construct1(x, y) set_floor("fl-samba", x, y) end |
12 |
end |
function destruct(x, y) set_floor("fl-abyss", x, y) end |
13 |
|
|
14 |
function construct1(x, y) |
function tick() |
15 |
set_floor("fl-samba", x, y) |
rail0() |
16 |
end |
rail1() |
|
|
|
|
function destruct(x, y) |
|
|
set_floor("fl-abyss", x, y) |
|
17 |
end |
end |
18 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
19 |
|
|
20 |
cells={} |
cells={} |
21 |
cells[";"]=cell{floor={face="fl-tigris"}} |
cells[";"]=cell{floor="fl-tigris"} |
22 |
cells[","]=cell{floor={face="fl-sahara"}} |
cells[","]=cell{floor="fl-sahara"} |
23 |
cells["."]=cell{floor={face="fl-abyss"}} |
cells["."]=cell{floor="fl-abyss"} |
24 |
|
|
25 |
cells["train0"]=cell{floor={face="fl-wood"}} |
cells["train0"]=cell{floor="fl-wood"} |
26 |
cells["train1"]=cell{floor={face="fl-samba"}} |
cells["train1"]=cell{floor="fl-samba"} |
27 |
|
|
28 |
|
cells[" "]=cell{{{checkerfloor,{cells[","], cells[";"]}}}} |
29 |
cells[" "]=cell{parent={{checkerfloor,{cells[","], cells[";"]}}}} |
cells["="]=cell{parent=cells[" "],stone="st-rock5"} |
30 |
cells["="]=cell{parent=cells[" "],stone={face="st-rock5"}} |
cells["O"]=cell{parent=cells[" "],actor={"ac-blackball", {player=0}}} |
31 |
cells["O"]=cell{parent=cells[" "],item={face="ac-blackball", attr={player=0}, actor=1}} |
|
32 |
|
path0 = {} |
33 |
cells["!"]=cell{parent={cells["."], {path_empty, {0}} }} |
loco0 = {} |
34 |
cells["_"]=cell{parent={cells["!"], {path_train, {0}}, cells["train0"]}} |
cells["!"]=cell{parent={cells["."], {add_multicell, path0, 0}}} |
35 |
cells["c"]=cell{parent={cells["_"], {path_constructor,{0, construct0}}}} |
cells["_"]=cell{parent={cells["!"], {add_multicell, path0, 1}, cells["train0"]}} |
36 |
cells["d"]=cell{parent={cells["!"], {path_destructor, {0, destruct}} }} |
cells["c"]=cell{parent={cells["_"], {add_multicell, loco0, construct0}}} |
37 |
|
cells["d"]=cell{parent={cells["!"], {add_multicell, loco0, destruct}}} |
38 |
cells["C"]=cell{parent={cells["_"], cells["="]}} |
cells["C"]=cell{parent={cells["_"], cells["="]}} |
39 |
cells["D"]=cell{parent={cells["!"], cells["="]}} |
cells["D"]=cell{parent={cells["!"], cells["="]}} |
40 |
|
rail0 = new_rail(loco0, path0) |
41 |
|
|
42 |
|
path1 = {} |
43 |
|
loco1 = {} |
44 |
|
cells["?"]=cell{parent={cells["."], {add_multicell, path1, 0}}} |
45 |
|
cells["-"]=cell{parent={cells["?"], {add_multicell, path1, 1}, cells["train1"]}} |
46 |
|
cells["a"]=cell{parent={cells["-"], {add_multicell, loco1, construct1}}} |
47 |
|
cells["b"]=cell{parent={cells["?"], {add_multicell, loco1, destruct}}} |
48 |
|
cells["A"]=cell{parent=cells["-"], stone="st-grate1"} |
49 |
|
cells["B"]=cell{parent=cells["?"], stone="st-grate1"} |
50 |
|
rail1 = new_rail(loco1, path1) |
51 |
|
|
52 |
cells["?"]=cell{parent={cells["."], {path_empty, {1}} }} |
cells["~"]=cell{parent=cells[" "], stone={"st-timer", {action="callback", target="tick", interval=0.20}}} |
53 |
cells["-"]=cell{parent={cells["?"], {path_train, {1}}, cells["train1"]}} |
cells["0"]=oxyd |
|
cells["a"]=cell{parent={cells["-"], {path_constructor,{1, construct1}}}} |
|
|
cells["b"]=cell{parent={cells["?"], {path_destructor, {1, destruct}} }} |
|
|
cells["A"]=cell{parent={cells["-"]}, stone={face="st-grate1"}} |
|
|
cells["B"]=cell{parent={cells["?"]}, stone={face="st-grate1"}} |
|
|
|
|
|
cells["~"]=cell{parent={cells[" "]},stone={face="st-timer", attr={action="callback", target="move_constructors", interval=0.20}}} |
|
|
cells["0"]=cell{parent=cells[" "],stone={face="st-oxyd", attr={flavor="b", color="0"}}} |
|
|
cells["1"]=cell{parent=cells[" "],stone={face="st-oxyd", attr={flavor="b", color="1"}}} |
|
54 |
|
|
55 |
level = { |
level = { |
56 |
"====================", |
"====================", |
57 |
"= !c___CC___d! =", |
"= !c___CC___d! =", |
58 |
"= 1 !b---AA---a! 1 =", |
"= 0 !b---AA---a! 0 =", |
59 |
"= !?___CC___?! =", |
"= !?___CC___?! =", |
60 |
"= !?c------d?! =", |
"= !?c------d?! =", |
61 |
"= !?!-__d!-!?! =", |
"= !?!-__d!-!?! =", |
69 |
} |
} |
70 |
|
|
71 |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |
72 |
levelw = 20 |
oxyd_default_flavor = "b" |
73 |
levelh = 13 |
create_world_by_map(level) |
|
create_world(levelw, levelh) |
|
|
randomseed(enigma.GetTicks()) |
|
|
draw_map(0, 0, level) |
|
74 |
oxyd_shuffle() |
oxyd_shuffle() |