122 int sections =
mLife / 6;
123 if (
mLife - sections * 6 != 0 && dmg >= 6) {
124 mLife = (sections + 1) * 6;
virtual bool isOneDamage() const =0
Checks whether the boss has been damaged once.
virtual int getDamage_Fire() const =0
Gets the damage dealt by fireball attacks.
virtual int getDamage_Star() const =0
Gets the damage dealt by Star invincibility attacks.
virtual int getDamage_BlockHit() const =0
Gets the damage dealt by block hit attacks.
int updateHipAtk()
Applies ground pound (Hip) damage to the boss.
virtual int getDamage_PenguinSlide() const =0
Gets the damage dealt by Penguin slide attacks.
int updateStar()
Applies Star damage to the boss.
virtual int getDamage_Shell() const =0
Gets the damage dealt by shell attacks.
int updatePenguinSlide()
Applies Penguin slide damage to the boss.
virtual int getDamage_Fumi() const =0
Gets the damage dealt by stomp (Fumi) attacks.
int updateQuake()
Applies multiplayer ground pound (Quake) damage to the boss.
dBossLifeInf_c(int life)
Constructs a new boss life manager.
virtual bool isNonDamage() const =0
Checks whether the boss has not yet been damaged.
int updateFire()
Applies fireball damage to the boss.
int mLife
The current hit point total.
virtual bool isTwoDamage() const =0
Checks whether the boss has been damaged twice.
virtual bool isDmgSection() const
Checks whether the current HP is at a damage section boundary.
int updateBlockHit()
Applies block hit damage to the boss.
virtual int getDamage_Quake() const =0
Gets the damage dealt by multiplayer ground pound (Quake) attacks.
int updateFumi()
Applies stomp (Fumi) damage to the boss.
virtual void damageRev(int dmg)
Post-damage callback invoked when a boss survives an attack.
int updateCommon(int dmg)
Common update logic for all the update methods.
virtual ~dBossLifeInf_c()
Destroys the boss life manager.
int updateShell()
Applies shell damage to the boss.
virtual int getDamage_HipAtk() const =0
Gets the damage dealt by ground pound (Hip) attacks.
int getSection() const
Gets the current section (zero-indexed).
dBossLife_Common_c(int num)
Constructs a new boss life manager.
virtual int getDamage_Fire() const override
Gets the damage dealt by fireball attacks.
virtual ~dBossLife_Common_c()
Destroys the boss life manager.
virtual bool isDmgSection() const override
Checks whether the current HP is at a damage section boundary.
virtual bool isTwoDamage() const override
Checks whether the boss has been damaged twice.
virtual int getDamage_Fumi() const override
Gets the damage dealt by stomp (Fumi) attacks.
virtual int getDamage_Star() const override
Gets the damage dealt by Star invincibility attacks.
virtual int getDamage_HipAtk() const override
Gets the damage dealt by ground pound (Hip) attacks.
virtual int getDamage_Shell() const override
Gets the damage dealt by shell attacks.
virtual bool isOneDamage() const override
Checks whether the boss has been damaged once.
virtual int getDamage_PenguinSlide() const override
Gets the damage dealt by Penguin slide attacks.
virtual int getDamage_Quake() const override
Gets the damage dealt by multiplayer ground pound (Quake) attacks.
virtual void damageRev(int dmg) override
Post-damage callback invoked when a boss survives an attack.
virtual bool isNonDamage() const override
Checks whether the boss has not yet been damaged.
virtual int getDamage_BlockHit() const override
Gets the damage dealt by block hit attacks.