|#state, player| {x = 400, y = 300, r = 10, health = 5} |#port, on draw player, needs, @draw player| |#port body, on draw player, Lua| local player = self.state.player love.graphics.circle("fill", player.x, player.y, player.r) |#port, on move player, needs, @move player , takes, @dir up, @dir down, @dir left, @dir right| |#port body, on move player, Lua| local player = self.state.player local dir_y = (dir_down - dir_up) local dir_x = (dir_right - dir_left) player.x = player.x + dir_x * self.state.dt * 300 player.y = player.y + dir_y * self.state.dt * 300 |#port, on is move up down, needs, @is [move up] down?| @[move up] is down |#port body, on is move up down, Lua| if love.keyboard.isDown("w") then counters["@[move up] is down"] = 1 end |#port, on is move left down, needs, @is [move left] down?| @[move left] is down |#port body, on is move left down, Lua| if love.keyboard.isDown("a") then counters["@[move left] is down"] = 1 end |#port, on is move down down, needs, @is [move down] down?| @[move down] is down |#port body, on is move down down, Lua| if love.keyboard.isDown("s") then counters["@[move down] is down"] = 1 end |#port, on is move right down, needs, @is [move right] down?| @[move right] is down |#port body, on is move right down, Lua| if love.keyboard.isDown("d") then counters["@[move right] is down"] = 1 end |drawing scene| , draw player |draw player| , @draw player |updating scene| , move player |move player| , @is [move up] down?, @is [move left] down? , @is [move down] down?, @is [move right] down? , moving player |moving player, @[move up] is down| , @dir up , moving player |moving player, @[move left] is down| , @dir left , moving player |moving player, @[move down] is down| , @dir down , moving player |moving player, @[move right] is down| , @dir right , moving player |@dir left, @dir right| |@dir down, @dir up| |moving player| , @move player |move player| , @is key pressed, @key A , moving player |#include| notecards/main-loop.nv || run main loop