Plane: added ability to die

This commit is contained in:
Erkki Seppälä 2014-10-19 01:51:57 +03:00
parent 5a5381e817
commit ec4d8a309f
2 changed files with 26 additions and 12 deletions

View file

@ -81,6 +81,10 @@ Plane = Class{
self.powerupmode = nil
end;
receiveDamage = function(self, amount)
self.health = math.max(0, self.health - amount);
end;
getGunPosition = function(self)
local x = self.body:getX()
local y = self.body:getY()
@ -248,20 +252,22 @@ Plane = Class{
end;
draw = function(self)
PhysicsEntity.draw(self)
love.graphics.push()
if self.health > 0 then
PhysicsEntity.draw(self)
love.graphics.push()
if self.goingRight then
love.graphics.translate(self.body:getX(), self.body:getY())
love.graphics.scale(-1, 1)
love.graphics.draw(self.frames[0], self.quad, 0, 0, -self.angle, 1, 1, self.xsize / 2, self.ysize / 2)
else
love.graphics.translate(self.body:getX(), self.body:getY())
love.graphics.draw(self.frames[0], self.quad, 0, 0, self.angle, 1, 1, self.xsize / 2, self.ysize / 2)
if self.goingRight then
love.graphics.translate(self.body:getX(), self.body:getY())
love.graphics.scale(-1, 1)
love.graphics.draw(self.frames[0], self.quad, 0, 0, -self.angle, 1, 1, self.xsize / 2, self.ysize / 2)
else
love.graphics.translate(self.body:getX(), self.body:getY())
love.graphics.draw(self.frames[0], self.quad, 0, 0, self.angle, 1, 1, self.xsize / 2, self.ysize / 2)
end
love.graphics.pop()
drawDebug(self.debugVectors)
end
love.graphics.pop()
drawDebug(self.debugVectors)
end;
cw = function(self, isTurning)

View file

@ -5,6 +5,7 @@ require 'scoreboard'
require 'entities/chaingunpowerup'
require 'entities/plane'
require 'chaingunmode'
require 'entities/plane'
level_state = {}
@ -137,6 +138,13 @@ function begin_contact(a, b, coll)
elseif bObj:isinstance(Plane) and aObj:isinstance(ChaingunPowerUp) then
aObj.deleteLater = true
bObj:setPowerUpMode(ChaingunMode())
else
if aObj:isinstance(Plane) then
aObj:receiveDamage(1000);
end
if bObj:isinstance(Plane) then
bObj:receiveDamage(1000);
end
end
end
end