Ajout des derniers développement #1
7 changed files with 65 additions and 49 deletions
|
@ -32,12 +32,35 @@ function AbstractMobParent:createSkills()
|
|||
return {}
|
||||
end
|
||||
|
||||
-- LIFE FUNCTIONS
|
||||
-- Handle HP and stuff like that
|
||||
|
||||
function AbstractMobParent:initLife()
|
||||
self.hp = self.stats.hpmax
|
||||
self.pp = self.stats.ppmax
|
||||
self.status = 0
|
||||
end
|
||||
|
||||
function AbstractMobParent:setHP(newHP, relative)
|
||||
if (relative) then
|
||||
self.hp = self.hp + newHP
|
||||
else
|
||||
self.hp = newHP
|
||||
end
|
||||
end
|
||||
|
||||
function AbstractMobParent:setPP(newPP, relative)
|
||||
if (relative) then
|
||||
self.pp = self.pp + newPP
|
||||
else
|
||||
self.pp = newPP
|
||||
end
|
||||
end
|
||||
|
||||
function AbstractMobParent:isAlive()
|
||||
return (self.hp > 0)
|
||||
end
|
||||
|
||||
function AbstractMobParent:getStats()
|
||||
return self.stats
|
||||
end
|
||||
|
|
|
@ -9,12 +9,6 @@ function Ennemy:new(world, x, y, owner)
|
|||
self.owner = owner
|
||||
|
||||
self.actionPerTurn = 2
|
||||
|
||||
self:receiveDatas()
|
||||
self.hp = self.data.stats.hpmax
|
||||
self.pp = self.data.stats.ppmax
|
||||
|
||||
self.shownHP = self.hp
|
||||
end
|
||||
|
||||
function Ennemy:draw()
|
||||
|
@ -31,22 +25,6 @@ function Ennemy:draw()
|
|||
end
|
||||
end
|
||||
|
||||
function Ennemy:receiveDatas()
|
||||
self.data = game.ennemies:getEnnemyData(self.owner.name)
|
||||
end
|
||||
|
||||
function Ennemy:setHP(value, relative)
|
||||
if (relative) then
|
||||
value = self.hp + value
|
||||
end
|
||||
|
||||
self.hp = value
|
||||
self.tweens:newTween(0, 0.1, {shownHP = self.hp}, 'inCubic')
|
||||
if (self.hp <= 0) then
|
||||
self:destroy()
|
||||
end
|
||||
end
|
||||
|
||||
function Ennemy:getStats()
|
||||
return self.data.stats
|
||||
end
|
||||
|
|
|
@ -37,29 +37,6 @@ function Hero:initCharacter(charid)
|
|||
self.turnAction = nil
|
||||
end
|
||||
|
||||
function Hero:getStats()
|
||||
return game.characters.list[self.owner.name].stats
|
||||
end
|
||||
|
||||
function Hero:setHP(value, relative)
|
||||
if relative == true then
|
||||
value = game.characters.list[self.owner.name].stats.hp + value
|
||||
end
|
||||
|
||||
game.characters.list[self.owner.name].stats.hp = value
|
||||
--self.statusbar:updateHP()
|
||||
end
|
||||
|
||||
function Hero:setPP(value, relative)
|
||||
if relative == true then
|
||||
value = game.characters.list[self.owner.name].stats.pp + value
|
||||
end
|
||||
|
||||
game.characters.list[self.owner.name].stats.pp = value
|
||||
--self.statusbar:updatePP()
|
||||
end
|
||||
|
||||
|
||||
-- ACTIVITY FUNCTION
|
||||
-- Function to set or unset activity to the character
|
||||
|
||||
|
|
|
@ -109,6 +109,17 @@ function HeroFighter:finishAction()
|
|||
self:setInactive()
|
||||
end
|
||||
|
||||
-- LIFE functions
|
||||
function HeroFighter:setHP(value, relative)
|
||||
HeroFighter.super.setHP(self, value, relative)
|
||||
self.statusbar:updateHP()
|
||||
end
|
||||
|
||||
function HeroFighter:setPP(value, relative)
|
||||
HeroFighter.super.setPP(self, value, relative)
|
||||
self.statusbar:updatePP()
|
||||
end
|
||||
|
||||
-- DRAW FUNCTIONS
|
||||
function HeroFighter:drawIcon(x, y)
|
||||
local iconID = 1
|
||||
|
|
|
@ -17,6 +17,27 @@ function FighterParent:new(owner, isHero, id)
|
|||
self.actor = self:createActor()
|
||||
|
||||
self.isActive = false
|
||||
self.isAlive = true
|
||||
end
|
||||
|
||||
-- LIFE handling functions
|
||||
|
||||
function FighterParent:setHP(value, relative)
|
||||
self.abstract:setHP(value, relative)
|
||||
end
|
||||
|
||||
function FighterParent:setPP(value, relative)
|
||||
self.abstract:setPP(value, relative)
|
||||
end
|
||||
|
||||
function FighterParent:applyDeath()
|
||||
if (self.hp <= 0 and self.isAlive) then
|
||||
self:die()
|
||||
end
|
||||
end
|
||||
|
||||
function FighterParent:die()
|
||||
self.isAlive = false
|
||||
end
|
||||
|
||||
function FighterParent:getAbstract()
|
||||
|
@ -75,7 +96,7 @@ function FighterParent:getNonUniqueIdentificator()
|
|||
end
|
||||
|
||||
function FighterParent:canFight()
|
||||
return true
|
||||
return self.isAlive
|
||||
end
|
||||
|
||||
-- DRAW FUNCTIONS
|
||||
|
|
|
@ -35,6 +35,12 @@ function VillainFighter:endAction()
|
|||
|
||||
end
|
||||
|
||||
-- LIFE FUNCTIONS
|
||||
function VillainFighter:setHP(value, relative)
|
||||
VillainFighter.super.setHP(self, value, relative)
|
||||
self.hpbar:setHP(self.abstract.hp)
|
||||
end
|
||||
|
||||
-- DRAW FUNCTIONS
|
||||
function VillainFighter:drawIcon(x, y)
|
||||
love.graphics.setColor(1, 0, 0, 1)
|
||||
|
|
|
@ -26,11 +26,11 @@ function StatusBar:update(dt)
|
|||
end
|
||||
|
||||
function StatusBar:updateHP()
|
||||
self.tweens:newTween(0, 0.3, {hp = game.characters.list[self.charid].stats.hp}, 'linear')
|
||||
self.tweens:newTween(0, 0.3, {hp = self.abstract.hp}, 'linear')
|
||||
end
|
||||
|
||||
function StatusBar:updatePP()
|
||||
self.tweens:newTween(0, 0.3, {pp = game.characters.list[self.charid].stats.pp}, 'linear')
|
||||
self.tweens:newTween(0, 0.3, {pp = self.abstract.pp}, 'linear')
|
||||
end
|
||||
|
||||
function StatusBar:drawEmblem(x, y)
|
||||
|
|
Loading…
Reference in a new issue