diff options
author | Aki <nthirtyone@gmail.com> | 2016-05-27 17:43:34 +0200 |
---|---|---|
committer | Aki <nthirtyone@gmail.com> | 2016-05-27 17:43:34 +0200 |
commit | f9d6f8e3a41835671da69f20702c0313bda96fe0 (patch) | |
tree | 3726d0da5be1c0d7a974a2ae9f4a17d5ece95e74 /player.lua | |
parent | 50fc48bf4e1de8382513da390eeece796f18926e (diff) | |
download | roflnauts-f9d6f8e3a41835671da69f20702c0313bda96fe0.zip roflnauts-f9d6f8e3a41835671da69f20702c0313bda96fe0.tar.gz roflnauts-f9d6f8e3a41835671da69f20702c0313bda96fe0.tar.bz2 |
Controller
Diffstat (limited to 'player.lua')
-rw-r--r-- | player.lua | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -39,6 +39,7 @@ Player = { jumptimer = 0.14, -- Keys controller = nil, + controller_empty = {isDown = function () return false end}, -- HUD portrait_sprite = nil, portrait_sheet = require "portraits" @@ -78,6 +79,14 @@ function Player:assignController(controller) controller:setParent(self) end +function Player:getController() + if self.controller ~= nil then + return self.controller + else + return self.controller_empty + end +end + -- Update callback of `Player` function Player:update (dt) -- # VERTICAL MOVEMENT @@ -98,7 +107,7 @@ function Player:update (dt) -- # HORIZONTAL MOVEMENT -- Walking local x,y = self.body:getLinearVelocity() - local controller = self.controller + local controller = self:getController() if controller:isDown("left") then self.facing = -1 self.body:applyForce(-250, 0) @@ -189,7 +198,7 @@ end -- Keypressed callback (I think?) of `Player` function Player:controllerPressed (key) - local controller = self.controller + local controller = self:getController() -- Jumping if key == "jump" then if not self.inAir then @@ -242,7 +251,7 @@ end -- Keyreleased callback (I think?) of `Player` function Player:controllerReleased (key) - local controller = self.controller + local controller = self:getController() -- Jumping if key == "jump" then self.jumpactive = false |