diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-01-04 20:50:21 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-01-04 20:50:21 +0000 |
commit | e828bafa67e06c97dad7b9fcf2851e6ab5b00f28 (patch) | |
tree | 77fbcd20c3485501851302796dfa70640a5e2c90 /crawl-ref/source/mon-util.cc | |
parent | 07828b78525d85498811687311f0a9cff5901e03 (diff) | |
download | crawl-ref-e828bafa67e06c97dad7b9fcf2851e6ab5b00f28.tar.gz crawl-ref-e828bafa67e06c97dad7b9fcf2851e6ab5b00f28.zip |
Introduce a number of new uniques taken from a patch by castamir.
These are:
* Roxanne (statue spellcaster)
* Sonja (Kobold assassin)
* Eustachio (human summoner, was: Francisco)
* Azrael (efreet, was: Abdul)
* Ilsuiw (Merfolk witch
* Prince Ribbit (blink frog prince)
* Nergalle (orc sorceress)
* Saint Roka (orc priest of Beogh)
Tweaked make_book_theme_randart() to allow for one forced spell and
owner's name. Used to occasionally give Roxanne a randart book containing
Statue Form. (Was: always book of earth)
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8207 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mon-util.cc')
-rw-r--r-- | crawl-ref/source/mon-util.cc | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc index 4b00e1208c..58499bc276 100644 --- a/crawl-ref/source/mon-util.cc +++ b/crawl-ref/source/mon-util.cc @@ -633,7 +633,8 @@ bool mons_is_statue(int mc) { return (mc == MONS_ORANGE_STATUE || mc == MONS_SILVER_STATUE - || mc == MONS_ICE_STATUE); + || mc == MONS_ICE_STATUE + || mc == MONS_ROXANNE); } bool mons_is_mimic(int mc) @@ -3129,6 +3130,10 @@ const char *mons_pronoun(monster_type mon_type, pronoun_type variant, case MONS_ERICA: case MONS_TIAMAT: case MONS_ERESHKIGAL: + case MONS_ROXANNE: + case MONS_SONJA: + case MONS_ILSUIW: + case MONS_NERGALLE: gender = GENDER_FEMALE; break; case MONS_ROYAL_JELLY: @@ -4908,6 +4913,10 @@ bool monsters::pickup_item(item_def &item, int near, bool force) return pickup_scroll(item, near); case OBJ_POTIONS: return pickup_potion(item, near); + case OBJ_BOOKS: + if (force) + return pickup_misc(item, near); + // else fall through default: return (false); } @@ -7513,6 +7522,9 @@ static inline monster_type _royal_jelly_ejectable_monster() bool monsters::can_drink_potion(potion_type ptype) const { + if (mons_class_is_stationary(this->type)) + return (false); + if (mons_itemuse(this) >= MONUSE_STARTING_EQUIPMENT) { if (mons_is_skeletal(type) || mons_is_insubstantial(type) |