diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-03-04 10:36:54 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-03-04 10:36:54 +0000 |
commit | 12246839e2efa9f89e5c246cdcb5f0ba4037c4fe (patch) | |
tree | 47a99027f2cf2a375f7051e32b767fda1e012b79 /crawl-ref/source/player.cc | |
parent | a639fc9fa82e60bb38792361e1c2bb3242cbd5fc (diff) | |
download | crawl-ref-12246839e2efa9f89e5c246cdcb5f0ba4037c4fe.tar.gz crawl-ref-12246839e2efa9f89e5c246cdcb5f0ba4037c4fe.zip |
Give transformed players appropriate shouts.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@977 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/player.cc')
-rw-r--r-- | crawl-ref/source/player.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc index 2b38d25339..cb44baa336 100644 --- a/crawl-ref/source/player.cc +++ b/crawl-ref/source/player.cc @@ -4610,6 +4610,29 @@ size_type player::body_size(int psize, bool base) const return (ret); } +bool player::cannot_speak() const +{ + if (silenced(x_pos, y_pos)) + return (true); + + // No transform that prevents the player from speaking yet. + return (false); +} + +std::string player::shout_verb() const +{ + const int transform = attribute[ATTR_TRANSFORMATION]; + switch (transform) + { + case TRAN_DRAGON: + return "roar"; + case TRAN_SPIDER: + return "hiss"; + default: + return "yell"; + } +} + int player::damage_type(int) { const int wpn = equip[ EQ_WEAPON ]; |