summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/direct.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-01-09 14:15:43 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-01-09 14:15:43 +0000
commit447bc8ac9d8557be01da02c40349e4301f42c089 (patch)
tree70d8049ee1391103b657e1473bda0aa15c3bc491 /crawl-ref/source/direct.cc
parent88f39cd2d9a9c0c337988e24deca86267da5bb30 (diff)
downloadcrawl-ref-447bc8ac9d8557be01da02c40349e4301f42c089.tar.gz
crawl-ref-447bc8ac9d8557be01da02c40349e4301f42c089.zip
Add gore and splatter to Crawl - in the form of Jarmo's
(strongly modified, I admit) blood patch. Whenever the player or a monster capable of bleeding suffers damage (currently only in melee) or when you dissect a corpse there's a chance (depending on damage/corpse weight) that the square will turn bloody and be coloured red, with a much lower chance of additionally spattering some of the surrounding squares. These chances are probably still a bit too high for later values of possible damage dealt. Also, ranged and some of the magic attacks (earth-based, mostly) should also be able to send blood flying. :p For now, this is flavour only, but it shouldn't be too difficult to introduce relations to Necromancy or evil gods. Also consider dragons to be warm-blooded, like dinosaurs. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3230 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/direct.cc')
-rw-r--r--crawl-ref/source/direct.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/crawl-ref/source/direct.cc b/crawl-ref/source/direct.cc
index 36925ca8df..8430d326fb 100644
--- a/crawl-ref/source/direct.cc
+++ b/crawl-ref/source/direct.cc
@@ -2148,6 +2148,9 @@ static void describe_cell(int mx, int my)
if (Options.tutorial_left && tutorial_feat_interesting(grd[mx][my]))
{
feature_desc += " (Press <w>v<lightgray> for more information.)";
+ if (is_bloodcovered(mx, my))
+ feature_desc += EOL "It is spattered with blood.";
+
print_formatted_paragraph(feature_desc, get_number_of_cols());
}
else
@@ -2157,9 +2160,16 @@ static void describe_cell(int mx, int my)
if (interesting_feature(feat))
feature_desc += " (Press 'v' for more information.)";
+ bool bloody = false;
+ if (is_bloodcovered(mx, my))
+ {
+ feature_desc += EOL "It is spattered with blood.";
+ bloody = true;
+ }
+
// Suppress "Floor." if there's something on that square that we've
// already described.
- if ((feat == DNGN_FLOOR || feat == DNGN_FLOOR_SPECIAL)
+ if ((feat == DNGN_FLOOR || feat == DNGN_FLOOR_SPECIAL) && !bloody
&& (monster_described || item_described || cloud_described))
return;