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
41
42
43
44
45
46
47
48
49
50
51
52
|
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 = 4
--ret = am.group!
state.move_out_done = false
state.clear_layers!
flayer = Layer("fuel","fuel pipe",50,"data/layer_fuel.png")
elayer = Layer("electric","electric wire",10,"data/layer_electric.png")
state.add_layer(flayer)
state.add_layer(elayer)
state.money = 110
state.ship("position").x = 800
state.ship\action(coroutine.create(game.ship_move_in_co))
state.ship("sprite").source = "data/level_4.png"
t1 = flayer\mark_square(11,8,"liquid fuel thruster")
t2 = flayer\mark_square(11,7,"liquid fuel thruster")
p1 = flayer\mark_square(7,8,"liquid fuel tank")
flayer\mark_square(10,8,"fuel pipe")
t3 = elayer\mark_square(9,5,"ion thruster")
t4 = elayer\mark_square(9,10,"ion thruster")
p2 = elayer\mark_square(7,7,"battery")
elayer\mark_square(7,6,"electric wire")
elayer\mark_square(7,8,"electric wire")
elayer\mark_square(7,9,"electric wire")
elayer\mark_square(8,10,"electric wire")
elayer\mark_square(7,5,"electric wire")
elayer\mark_square(8,5,"electric wire")
elayer.node.hidden = true
state.selected_layer = flayer
state.update = () ->
flat_tiles = flayer\flat_tiles!
flat_tiles2 = elayer\flat_tiles!
path1 = graph.path(t1,p1,flat_tiles,true,flayer.tiles_adjacent)
path2 = graph.path(t2,p1,flat_tiles,true,flayer.tiles_adjacent)
path3 = graph.path(t3,p2,flat_tiles2,true,flayer.tiles_adjacent)
path4 = graph.path(t4,p2,flat_tiles2,true,flayer.tiles_adjacent)
if path1 and path2 and path3 and path4
state.ship\action(coroutine.create(game.ship_move_out_co))
ui.reload_ui_layers!
mod
|