diff options
author | pubby <pubby8@gmail.com> | 2013-08-31 16:40:44 -0500 |
---|---|---|
committer | pubby <pubby8@gmail.com> | 2013-08-31 16:49:50 -0500 |
commit | 65c58ed6ccd53a9a080255ee37e131123ac65e96 (patch) | |
tree | d4a3d59267fa5c14ae7573b91f7dac9b66955159 /crawl-ref/source/monster.h | |
parent | c4b51221cd6f40f90127768df0e2e1ad7ed7310e (diff) | |
parent | 70ca29ee15926336c0ab2369cb25743a9e510e08 (diff) | |
download | crawl-ref-65c58ed6ccd53a9a080255ee37e131123ac65e96.tar.gz crawl-ref-65c58ed6ccd53a9a080255ee37e131123ac65e96.zip |
Merge branch 'master' into dwants
Conflicts:
crawl-ref/docs/crawl_manual.reST
crawl-ref/source/abl-show.cc
crawl-ref/source/dat/descript/ability.txt
crawl-ref/source/delay.cc
crawl-ref/source/enum.h
crawl-ref/source/main.cc
crawl-ref/source/mon-cast.cc
crawl-ref/source/mon-gear.cc
crawl-ref/source/mon-spll.h
crawl-ref/source/mutation-data.h
crawl-ref/source/mutation.cc
crawl-ref/source/ng-restr.cc
crawl-ref/source/ng-setup.cc
crawl-ref/source/output.cc
crawl-ref/source/player-act.cc
crawl-ref/source/player.cc
crawl-ref/source/species.cc
crawl-ref/source/spl-data.h
crawl-ref/source/wiz-you.cc
Diffstat (limited to 'crawl-ref/source/monster.h')
-rw-r--r-- | crawl-ref/source/monster.h | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/crawl-ref/source/monster.h b/crawl-ref/source/monster.h index 8b6440e585..213fd82d2f 100644 --- a/crawl-ref/source/monster.h +++ b/crawl-ref/source/monster.h @@ -54,12 +54,11 @@ public: monster_type base_monster; // zombie base monster, draconian colour unsigned int number; // #heads (hydra), etc. int colour; + mid_t summoner; int foe_memory; // how long to 'remember' foe x,y // once they go out of sight. - int shield_blocks; // Count of shield blocks this round. - god_type god; // What god the monster worships, if // any. @@ -238,7 +237,7 @@ public: item_def *weapon(int which_attack = -1) const; item_def *launcher(); item_def *missiles(); - item_def *shield(); + item_def *shield() const; hands_reqd_type hands_reqd(const item_def &item) const; @@ -300,10 +299,12 @@ public: int skill(skill_type skill, int scale = 1, bool real = false) const; void attacking(actor *other); + bool can_go_frenzy() const; bool can_go_berserk() const; void go_berserk(bool intentional, bool potion = false); - void go_frenzy(); + bool go_frenzy(actor *source); bool berserk() const; + bool berserk_or_insane() const; bool has_lifeforce() const; bool can_mutate() const; bool can_safely_mutate() const; @@ -367,7 +368,7 @@ public: bool is_icy() const; bool is_fiery() const; bool is_skeletal() const; - bool is_spiny() const; + int spiny_degree() const; bool paralysed() const; bool cannot_move() const; bool cannot_act() const; @@ -375,7 +376,7 @@ public: bool confused_by_you() const; bool caught() const; bool asleep() const; - bool backlit(bool check_haloed = true, bool self_halo = true, bool check_corona = true) const; + bool backlit(bool check_haloed = true, bool self_halo = true) const; bool umbra(bool check_haloed = true, bool self_halo = true) const; int halo_radius2() const; int silence_radius2() const; @@ -425,12 +426,12 @@ public: bool fully_petrify(actor *foe, bool quiet = false); void slow_down(actor *, int str); void confuse(actor *, int strength); - bool drain_exp(actor *, const char* aux = NULL, bool quiet = false, - int pow = 3); + bool drain_exp(actor *, bool quiet = false, int pow = 3); bool rot(actor *, int amount, int immediate = 0, bool quiet = false); int hurt(const actor *attacker, int amount, beam_type flavour = BEAM_MISSILE, - bool cleanup_dead = true); + bool cleanup_dead = true, + bool attacker_effects = true); bool heal(int amount, bool max_too = false); void blame_damage(const actor *attacker, int amount); void blink(bool allow_partial_control = true); @@ -497,6 +498,8 @@ public: bool is_divine_companion() const; bool is_projectile() const; + // Jumping spiders (jump instead of blink) + bool is_jumpy() const; private: void init_with(const monster& mons); |