summaryrefslogtreecommitdiff
path: root/src/monster.h
diff options
context:
space:
mode:
authorsniper <sniper@livecd.janhome.net>2009-03-10 14:28:31 +0100
committerIra Rice <irarice@gmail.com>2009-03-10 09:02:53 -0600
commit2353f11b75e347c9662c7224f5b3abcd9189a6bb (patch)
treebf4c6b7dca4cab6b6bacf5e32c51518cbd327ae5 /src/monster.h
parent1570fb33d5909786ef2997246ada7c46dd6de9e4 (diff)
downloadmana-2353f11b75e347c9662c7224f5b3abcd9189a6bb.tar.gz
mana-2353f11b75e347c9662c7224f5b3abcd9189a6bb.tar.bz2
mana-2353f11b75e347c9662c7224f5b3abcd9189a6bb.tar.xz
mana-2353f11b75e347c9662c7224f5b3abcd9189a6bb.zip
Extended hit type handling
The client can now differentiate between the following hit types: - hit (normal) - critical (full attack) - multi (more than one hit at once, currently not used) - reflect (reflected damage, currently not used) - flee (dodging criticals) The Being's showCrit method is now merged into takeDamage. Being's takeDamage and handleAttack now both get the opponent, the amount of damage and the attack type as parameter.
Diffstat (limited to 'src/monster.h')
-rw-r--r--src/monster.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/monster.h b/src/monster.h
index 12297373..afb55769 100644
--- a/src/monster.h
+++ b/src/monster.h
@@ -48,17 +48,20 @@ class Monster : public Being
* Handles an attack of another being by this monster. Plays a hit or
* miss sound when appropriate.
*
- * @param victim The attacked being.
- * @param damage The amount of damage dealt (0 means miss).
+ * @param victim the victim being
+ * @param damage the amount of damage dealt (0 means miss)
+ * @param type the attack type
*/
- virtual void handleAttack(Being *victim, int damage);
+ virtual void handleAttack(Being *victim, int damage, AttackType type);
/**
* Puts a damage bubble above this monster and plays the hurt sound
*
- * @param amount The amount of damage.
+ * @param attacker the attacking being
+ * @param damage the amount of damage recieved (0 means miss)
+ * @param type the attack type
*/
- virtual void takeDamage(int amount);
+ virtual void takeDamage(Being *attacker, int amount, AttackType type);
/**
* Returns the MonsterInfo, with static data about this monster.