diff options
Diffstat (limited to 'crawl-ref/source/externs.h')
-rw-r--r-- | crawl-ref/source/externs.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/crawl-ref/source/externs.h b/crawl-ref/source/externs.h index c8f294523c..4c69d915e4 100644 --- a/crawl-ref/source/externs.h +++ b/crawl-ref/source/externs.h @@ -309,7 +309,8 @@ public: virtual bool can_mutate() const = 0; virtual bool can_safely_mutate() const = 0; virtual bool mutate() = 0; - virtual int hurt(const actor *attacker, int amount) = 0; + virtual int hurt(const actor *attacker, int amount, + beam_type flavour = BEAM_MISSILE) = 0; virtual void heal(int amount, bool max_too = false) = 0; virtual void banish(const std::string &who = "") = 0; virtual void blink(bool allow_partial_control = true) = 0; @@ -895,7 +896,8 @@ public: void confuse(int strength); void rot(actor *agent, int rotlevel, int immed_rot); void heal(int amount, bool max_too = false); - int hurt(const actor *agent, int amount); + int hurt(const actor *attacker, int amount, + beam_type flavour = BEAM_MISSILE); int holy_aura() const; int warding() const; @@ -1140,7 +1142,7 @@ public: void scale_hp(int num, int den); bool gain_exp(int exp); - void react_to_damage(int damage); + void react_to_damage(int damage, beam_type flavour); void add_enchantment_effect(const mon_enchant &me, bool quiet = false); void remove_enchantment_effect(const mon_enchant &me, bool quiet = false); @@ -1288,7 +1290,8 @@ public: void slow_down(int str); void confuse(int strength); void rot(actor *agent, int rotlevel, int immed_rot); - int hurt(const actor *agent, int amount); + int hurt(const actor *attacker, int amount, + beam_type flavour = BEAM_MISSILE); void heal(int amount, bool max_too = false); void blink(bool allow_partial_control = true); void teleport(bool right_now = false, bool abyss_shift = false); |