X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2FHero.cpp;h=a3361c6045e0e368bfcbde718d51e80cfcde96ea;hb=8639675fbf1d232ab8188dd283149ab650e10336;hp=3fbd320dc6e308d0e40651e4db1f66f239030f8b;hpb=d7927b645a22776d6e1e1c209365e8f74c4350e9;p=l2e.git diff --git a/src/battle/Hero.cpp b/src/battle/Hero.cpp index 3fbd320..a3361c6 100644 --- a/src/battle/Hero.cpp +++ b/src/battle/Hero.cpp @@ -13,18 +13,22 @@ Hero::Hero() : name("") , sprite(0) +, weapon(0) +, armor(0) +, shield(0) +, helmet(0) +, ring(0) +, jewel(0) + +, meleeAnimation(0) +, attackAnimation(0) +, spellAnimation(0) + , maxHealth(0) , health(0) , maxMana(0) , mana(0) -, attack(0) -, defense(0) -, agility(0) -, intelligence(0) -, gut(0) -, magicResistance(0) - , level(0) , ip(0) { @@ -34,4 +38,19 @@ Hero::~Hero() { } + +void Hero::SubtractHealth(int amount) { + if (amount > Health()) { + health = 0; + } else { + health -= amount; + int ipGain(amount * 255 / health); + if (ip + ipGain > 255) { + ip = 255; + } else { + ip += ipGain; + } + } +} + }