1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
layer = require "layers"
game = require "game"
state = require "global"
graph = require "graph"
import Layer from layer
ui = require "ui"
mod = ...
mod.setup_level = () ->
state.current_level = 3
--ret = am.group!
state.move_out_done = false
state.clear_layers!
elayer = Layer("fuel","fuel pipe",50,"data/layer_fuel.png")
state.add_layer(elayer)
state.money = 100
state.ship("position").x = 800
state.ship\action(coroutine.create(game.ship_move_in_co))
state.ship("sprite").source = "data/level_3.png"
t1 = elayer\mark_square(11,8,"liquid fuel thruster")
t2 = elayer\mark_square(11,7,"liquid fuel thruster")
p1 = elayer\mark_square(6,6,"liquid fuel tank")
p2 = elayer\mark_square(6,9,"liquid fuel tank")
elayer\mark_square(9,7,"fuel pipe")
elayer\mark_square(9,8,"fuel pipe")
elayer\mark_square(10,8,"fuel pipe")
state.selected_layer = elayer
state.update = () ->
flat_tiles = elayer\flat_tiles!
path1 = graph.path(t1,p1,flat_tiles,false,elayer.tiles_adjacent)
path2 = graph.path(t1,p2,flat_tiles,false,elayer.tiles_adjacent)
path3 = graph.path(t2,p1,flat_tiles,false,elayer.tiles_adjacent)
path4 = graph.path(t2,p2,flat_tiles,false,elayer.tiles_adjacent)
--print("selected layer:",state.active_layer)
if (path1 or path2) and (path3 or path4)
state.ship\action(coroutine.create(game.ship_move_out_co))
ui.reload_ui_layers!
mod
|