From 2ed016b2169be612150cb9ee59ae808709ff2a86 Mon Sep 17 00:00:00 2001 From: Clifton James Palmer Date: Fri, 7 Dec 2018 18:18:22 -0600 Subject: [PATCH] Added player path --- main.lua | 5 +++++ player.lua | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/main.lua b/main.lua index 804c413..e6fe8fb 100644 --- a/main.lua +++ b/main.lua @@ -35,3 +35,8 @@ function love.update(dt) end player:update(dt) end + +function love.quit() + print('Thanks for playing!') + print('Recorded ' .. #player.path / 2 .. ' player path points') +end diff --git a/player.lua b/player.lua index 0bf6990..6c38099 100644 --- a/player.lua +++ b/player.lua @@ -6,28 +6,54 @@ Player.height = 5 Player.acceleration = 100 Player.position = {x=0, y=0} Player.vector = {x=0, y=0} +Player.path = {} function Player:new(o) o = o or {} setmetatable(o, self) self.__index = self + o:recordPosition() + o.vector = {x=o.acceleration, y=0} return o end +function Player:drawPath() + if #self.path >= 4 then + love.graphics.setColor(self.color) + love.graphics.line(self.path) + end +end + function Player:draw() love.graphics.setColor(self.color) love.graphics.rectangle('fill', self.position.x, self.position.y, self.width, self.height) + + -- add current position + self:recordPosition() + self:drawPath() + table.remove(self.path) + table.remove(self.path) +end + +function Player:recordPosition() + print(self.position.x .. ', ' .. self.position.y) + table.insert(self.path, self.position.x + self.width/2) + table.insert(self.path, self.position.y + self.height/2) end function Player:update(dt) if love.keyboard.isDown("w") then self.vector = {x=0, y=-self.acceleration} + self:recordPosition() elseif love.keyboard.isDown("s") then self.vector = {x=0, y=self.acceleration} + self:recordPosition() elseif love.keyboard.isDown("a") then self.vector = {x=-self.acceleration, y=0} + self:recordPosition() elseif love.keyboard.isDown("d") then self.vector = {x=self.acceleration, y=0} + self:recordPosition() end self.position.x = self.position.x + self.vector.x * dt -- 2.47.2