summaryrefslogtreecommitdiffhomepage
path: root/not/Player.lua
diff options
context:
space:
mode:
authorAki <nthirtyone@gmail.com>2017-04-04 14:30:15 +0200
committerAki <nthirtyone@gmail.com>2017-04-04 14:30:15 +0200
commit5c51b6e4d39bc55887f94dc65e58fd1765d86c1c (patch)
tree6695789c539f3ef748a6180e06211e6b01fab72a /not/Player.lua
parent10db7a170cf28db93740448bba76f7a9cd452664 (diff)
downloadroflnauts-5c51b6e4d39bc55887f94dc65e58fd1765d86c1c.zip
roflnauts-5c51b6e4d39bc55887f94dc65e58fd1765d86c1c.tar.gz
roflnauts-5c51b6e4d39bc55887f94dc65e58fd1765d86c1c.tar.bz2
First steps to move player-input logics into Player from Hero
Diffstat (limited to 'not/Player.lua')
-rw-r--r--not/Player.lua22
1 files changed, 19 insertions, 3 deletions
diff --git a/not/Player.lua b/not/Player.lua
index fd1613c..373505d 100644
--- a/not/Player.lua
+++ b/not/Player.lua
@@ -2,6 +2,7 @@
-- Special `not.Hero` controllable by a player.
Player = {
-- TODO: move functions and properties related to controls from `not.Hero`.
+ controlSet = --[[Controller.sets.*]]nil,
}
-- `Player` is a child of `Hero`.
@@ -10,13 +11,28 @@ Player.__index = Player
setmetatable(Player, Hero)
-- Constructor of `Player`.
-function Player:new (...)
+-- TODO: I'm sure it is a duplicate, but `not.World.create*` methods need to pass proper parameters.
+function Player:new (game, world, x, y, name)
local o = setmetatable({}, self)
- o:init(...)
+ o:init(name, game, x, y)
+ -- Load portraits statically to `not.Hero`.
+ -- TODO: this is heresy, put it into `load` method or something similar.
+ if Hero.portrait_sprite == nil then
+ Hero.portrait_sprite = love.graphics.newImage("assets/portraits.png")
+ Hero.portrait_frame = love.graphics.newImage("assets/menu.png")
+ end
return o
end
-- Initializer of `Player`.
function Player:init (...)
Hero.init(self, ...)
-end \ No newline at end of file
+end
+
+-- Controller set manipulation.
+function Player:assignControlSet (set)
+ self.controlset = set
+end
+function Player:getControlSet ()
+ return self.controlset
+end