parent
4ff4c989d4
commit
5139d9727d
4 changed files with 43 additions and 0 deletions
|
@ -26,6 +26,12 @@ function Battler:new(world, x, y, z, owner)
|
||||||
self.isActive = false
|
self.isActive = false
|
||||||
self.debugActiveTimer = 0
|
self.debugActiveTimer = 0
|
||||||
|
|
||||||
|
self.damageNumber = {}
|
||||||
|
self.damageNumber.num = 0
|
||||||
|
self.damageNumber.isBad = true
|
||||||
|
self.showDamage = false
|
||||||
|
self.damageY = 0
|
||||||
|
|
||||||
self.isSelected = false
|
self.isSelected = false
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
end
|
end
|
||||||
|
@ -34,6 +40,19 @@ function Battler:destroy()
|
||||||
Battler.super.destroy(self)
|
Battler.super.destroy(self)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function Battler:getDamageNumberY()
|
||||||
|
return 32
|
||||||
|
end
|
||||||
|
|
||||||
|
function Battler:setDamageNumber(number)
|
||||||
|
self.damageNumber.isBad = number < 0
|
||||||
|
self.damageNumber.num = math.abs(math.floor(number))
|
||||||
|
self.damageY = self:getDamageNumberY() - 8
|
||||||
|
self.tweens:newTween(0, 0.4, {damageY = self:getDamageNumberY()}, "outBack")
|
||||||
|
self.showDamage = true
|
||||||
|
self.tweens:newTimer(0.5, "removeDamage")
|
||||||
|
end
|
||||||
|
|
||||||
function Battler:setActive()
|
function Battler:setActive()
|
||||||
core.debug:print("cbs/actor","actor " .. self.id .. " is active")
|
core.debug:print("cbs/actor","actor " .. self.id .. " is active")
|
||||||
self.isActive = true
|
self.isActive = true
|
||||||
|
@ -216,6 +235,8 @@ function Battler:timerResponse(signal)
|
||||||
|
|
||||||
if (signal == "resetMovement") then
|
if (signal == "resetMovement") then
|
||||||
self.movementType = MOVEMENT_NONE
|
self.movementType = MOVEMENT_NONE
|
||||||
|
elseif (signal == "removeDamage") then
|
||||||
|
self.showDamage = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -237,6 +258,20 @@ function Battler:die()
|
||||||
end
|
end
|
||||||
|
|
||||||
-- DRAW FUNCTIONS
|
-- DRAW FUNCTIONS
|
||||||
|
function Battler:drawDamageNumber()
|
||||||
|
if (self.showDamage) then
|
||||||
|
local x, y = self.world.map:gridToPixel(self.x, self.y, true)
|
||||||
|
if (self.damageNumber.isBad) then
|
||||||
|
love.graphics.setColor(1, 0, 0, 1)
|
||||||
|
else
|
||||||
|
love.graphics.setColor(0, 1, 0, 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
self.assets.fonts["hudnbrs_small"]:print(self.damageNumber.num, x, y - self.damageY, "center")
|
||||||
|
utils.graphics.resetColor()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function Battler:draw()
|
function Battler:draw()
|
||||||
local x, y = self.world.map:gridToPixel(self.x, self.y, true)
|
local x, y = self.world.map:gridToPixel(self.x, self.y, true)
|
||||||
love.graphics.setColor(1, 0, 0, 1)
|
love.graphics.setColor(1, 0, 0, 1)
|
||||||
|
|
|
@ -28,6 +28,8 @@ function Ennemy:draw()
|
||||||
local height = 32
|
local height = 32
|
||||||
self.assets.images["cursorpeak"]:draw(x - 7, y - 24 - 32)
|
self.assets.images["cursorpeak"]:draw(x - 7, y - 24 - 32)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
self:drawDamageNumber()
|
||||||
end
|
end
|
||||||
|
|
||||||
function Ennemy:die()
|
function Ennemy:die()
|
||||||
|
|
|
@ -66,6 +66,7 @@ end
|
||||||
|
|
||||||
function Hero:draw()
|
function Hero:draw()
|
||||||
self:drawSprite(0, -self.z)
|
self:drawSprite(0, -self.z)
|
||||||
|
self:drawDamageNumber()
|
||||||
end
|
end
|
||||||
|
|
||||||
return Hero
|
return Hero
|
||||||
|
|
|
@ -25,7 +25,12 @@ end
|
||||||
-- LIFE handling functions
|
-- LIFE handling functions
|
||||||
|
|
||||||
function FighterParent:setHP(value, relative)
|
function FighterParent:setHP(value, relative)
|
||||||
|
local relativeNumber = value
|
||||||
|
if (not relative) then
|
||||||
|
relativeNumber = relative - self.abstract.hp
|
||||||
|
end
|
||||||
self.abstract:setHP(value, relative)
|
self.abstract:setHP(value, relative)
|
||||||
|
self.actor:setDamageNumber(relativeNumber)
|
||||||
end
|
end
|
||||||
|
|
||||||
function FighterParent:setPP(value, relative)
|
function FighterParent:setPP(value, relative)
|
||||||
|
|
Loading…
Reference in a new issue