aboutsummaryrefslogtreecommitdiff
path: root/src/level1.moon
diff options
context:
space:
mode:
Diffstat (limited to 'src/level1.moon')
-rw-r--r--src/level1.moon56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/level1.moon b/src/level1.moon
new file mode 100644
index 0000000..a77814e
--- /dev/null
+++ b/src/level1.moon
@@ -0,0 +1,56 @@
+layer = require "layers"
+game = require "game"
+state = require "global"
+graph = require "graph"
+disp = require "dispatch"
+import Layer from layer
+ui = require "ui"
+print("In level1, Layer is", Layer)
+for k,v in pairs layer
+ print(k,":",v)
+mod = ...
+
+mod.setup_level = () ->
+ state.current_level = 1
+ --ret = am.group!
+ state.clear_layers!
+ elayer = Layer("fuel","fuel pipe",50,"data/layer_fuel.png")
+ state.add_layer(elayer)
+ state.ship("sprite").source = "data/level_1.png"
+ state.money = 200
+ state.ship\action(coroutine.create(game.ship_move_in_co))
+ elayer\mark_square(9,8,"liquid fuel thruster")
+ elayer\mark_square(6,8,"liquid fuel tank")
+ elayer\mark_square(7,8,"fuel pipe")
+ --Hint fuel pipe
+ tp = disp.normal_to_window(vec2((8*32)+16,(8*32)+16))
+ fuel_hint = am.translate(tp) ^ am.sprite("data/pipe1111_hint.png")\tag "sprite"
+ elayer.node\append(fuel_hint)
+ should_hint = true
+ fuel_hint\action(coroutine.create(() ->
+ while should_hint
+ alpha = 0
+ for i = 1,256,10
+ fuel_hint("sprite").color = vec4(1,1,1,i/256)
+ coroutine.yield!
+ for i = 1,256,10
+ fuel_hint("sprite").color = vec4(1,1,1,1 - (i/256))
+ coroutine.yield!
+ ))
+
+
+ state.selected_layer = elayer
+ state.update = () ->
+ print("Game level updated!")
+ flat_tiles = elayer\flat_tiles!
+ path1 = graph.path(elayer\get_tile(6,8),elayer\get_tile(9,8),flat_tiles,true,elayer.tiles_adjacent)
+ --path2 = graph.path(elayer\get_tile(6,8),elayer\get_tile(9,7),flat_tiles,false,elayer.tiles_adjacent)
+ print("path:",path1, path2)
+ --print("selected layer:",state.active_layer)
+ if path1
+ state.ship\action(coroutine.create(game.ship_move_out_co))
+ ui.reload_ui_layers!
+
+ --ret ^ elayer.node
+ --ret
+mod