Added a mechanism for controlling planes

This commit is contained in:
Erkki Seppälä 2014-10-18 20:00:13 +03:00
parent 82de7baa67
commit 4b0191e2f9
2 changed files with 23 additions and 1 deletions

View file

@ -142,5 +142,13 @@ Plane = Class{
love.graphics.draw(self.img, self.quad, self.body:getX(), self.body:getY(), self.angle, 1, 1, self.xsize / 2, self.ysize / 2) love.graphics.draw(self.img, self.quad, self.body:getX(), self.body:getY(), self.angle, 1, 1, self.xsize / 2, self.ysize / 2)
drawDebugVectors(debugVectors) drawDebugVectors(debugVectors)
end; end;
cw = function(self, isTurning)
self.turningCw = isTurning
end;
ccw = function(self, isTurning)
self.turningCcw = isTurning
end;
} }

View file

@ -6,6 +6,14 @@ Player = Class{
self.id = id self.id = id
self.name = name self.name = name
self.keys = KEYMAP[self.id] self.keys = KEYMAP[self.id]
self.actions = {
cw = function(down)
self.plane:cw(down)
end,
ccw = function(down)
self.plane:ccw(down)
end,
}
print(self.name .. ' (' .. self.id .. ') ready for action!') print(self.name .. ' (' .. self.id .. ') ready for action!')
end; end;
@ -18,6 +26,9 @@ Player = Class{
for action, keycode in pairs(self.keys) do for action, keycode in pairs(self.keys) do
if key == keycode then if key == keycode then
print(self.name .. ' pressed ' .. action .. '!') print(self.name .. ' pressed ' .. action .. '!')
if self.actions[action] then
self.actions[action](true)
end
end end
end end
end; end;
@ -26,7 +37,10 @@ Player = Class{
for action, keycode in pairs(self.keys) do for action, keycode in pairs(self.keys) do
if key == keycode then if key == keycode then
print(self.name .. ' released ' .. action .. '!') print(self.name .. ' released ' .. action .. '!')
if self.actions[action] then
self.actions[action](false)
end
end end
end end
end; end;
} }