summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/constants.lua10
-rw-r--r--include/default_proc.lua42
2 files changed, 52 insertions, 0 deletions
diff --git a/include/constants.lua b/include/constants.lua
new file mode 100644
index 0000000..5d8e860
--- /dev/null
+++ b/include/constants.lua
@@ -0,0 +1,10 @@
+KEY_W = 119
+KEY_A = 97
+KEY_S = 115
+KEY_D = 100
+KEY_SPACE = ' '
+
+
+TILE_WALL = 'w'
+TILE_SPACE = ' '
+TILE_ENEMY = 'e' \ No newline at end of file
diff --git a/include/default_proc.lua b/include/default_proc.lua
new file mode 100644
index 0000000..13ef15d
--- /dev/null
+++ b/include/default_proc.lua
@@ -0,0 +1,42 @@
+--[[
+These are the default implementations of the override actions.
+If you want to add custom logic into your game you can define a "proc.lua" in your map dir.
+
+The following functions are also available via our C library:
+
+void c_update_player_pos (dx, dy)
+boolean c_player_can_move (dx, dy)
+boolean c_enemy_can_move (id, dx, dy)
+c_spawn_enemy (x, y)
+c_destroy_enemy (id)
+c_trigger_win()
+c_trigger_loss(msg)
+c_fatal(msg)
+
+--]]
+
+require "include.constants";
+
+---@param pressedKey number
+function onKeyPress(pressedKey)
+
+ dx = 0
+ dy = 0
+ if (pressedKey == KEY_W) then
+ dy = -1
+ elseif pressedKey == KEY_A then
+ dx = -1
+ elseif pressedKey == KEY_S then
+ dy = 1
+ elseif pressedKey == KEY_D then
+ dx = 1
+ end
+
+ if c_player_can_move(dx, dy) then
+ c_update_player_pos(dx, dy)
+ end
+end
+
+function onUpdate()
+
+end \ No newline at end of file