diff options
author | dolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-07-28 18:39:07 +0000 |
---|---|---|
committer | dolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-07-28 18:39:07 +0000 |
commit | 6d5bf15adddfa9829fa99c097ad715432f449c2f (patch) | |
tree | fcd5a7bab89cd30d8a702d8cbcd47e76aa92900e /crawl-ref/source | |
parent | 3b56aaee9f71dfb8274f9c2e86eca9a2b0a7dfd9 (diff) | |
download | crawl-ref-6d5bf15adddfa9829fa99c097ad715432f449c2f.tar.gz crawl-ref-6d5bf15adddfa9829fa99c097ad715432f449c2f.zip |
Forward-port vampire satiation fixes and cosmetic fixes from 0.5 r10447.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10453 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/delay.cc | 9 | ||||
-rw-r--r-- | crawl-ref/source/tilepick.cc | 7 |
2 files changed, 12 insertions, 4 deletions
diff --git a/crawl-ref/source/delay.cc b/crawl-ref/source/delay.cc index 995494cf13..9244f4e5da 100644 --- a/crawl-ref/source/delay.cc +++ b/crawl-ref/source/delay.cc @@ -829,8 +829,15 @@ void handle_delay() // XXX: need to handle passwall when monster digs -- bwr if (delay.type == DELAY_FEED_VAMPIRE) { + // Vampires stop feeding if ... + // * engorged ("alive") + // * bat form runs out due to becoming full + // * corpse becomes poisonous as the Vampire loses poison resistance if (you.hunger_state == HS_ENGORGED - || you.hunger_state > HS_SATIATED && player_in_bat_form()) + || you.hunger_state > HS_SATIATED && player_in_bat_form() + || you.hunger_state >= HS_SATIATED + && is_valid_item(mitm[delay.parm1]) + && is_poisonous(mitm[delay.parm1])) { // Messages handled in _food_change() in food.cc. stop_delay(); diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc index c32f7c6b5d..916dacc00a 100644 --- a/crawl-ref/source/tilepick.cc +++ b/crawl-ref/source/tilepick.cc @@ -4408,19 +4408,20 @@ void tile_place_monster(int gx, int gy, int idx, bool foreground, bool detected) else { // Retain the magic mapped terrain, but don't give away the real - // features either. + // features. if (is_terrain_mapped(gc)) { unsigned int feature = grd(gc); unsigned int grid_symbol; - unsigned short grid_color; - get_item_symbol(feature, &grid_symbol, &grid_color); + unsigned short grid_colour; + get_item_symbol(feature, &grid_symbol, &grid_colour); unsigned int fg; unsigned int bg; tileidx_unseen(fg, bg, grid_symbol, gc); env.tile_bk_bg(gc) = bg; +// env.tile_bk_bg(gc) = fg; } env.tile_bk_fg(gc) = t0; } |