summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/fight.cc
diff options
context:
space:
mode:
authorDarshan Shaligram <dshaligram@users.sourceforge.net>2010-01-08 13:11:44 +0530
committerDarshan Shaligram <dshaligram@users.sourceforge.net>2010-01-08 13:16:12 +0530
commit6d0eb3000187dd587e961ca87ddb9eca947f15dc (patch)
tree420aac3eaf6aee2ef5ccf5eebcef33d1fcd19791 /crawl-ref/source/fight.cc
parent2aef97c76417be892660cf4f91da3953f222d2b9 (diff)
downloadcrawl-ref-6d0eb3000187dd587e961ca87ddb9eca947f15dc.tar.gz
crawl-ref-6d0eb3000187dd587e961ca87ddb9eca947f15dc.zip
Add snapping turtles, alligator snapping turtles and sea snakes to the Shoals, remove yaktaurs, centaurs and stone giants.
Snapping turtles get reaching attacks. Sea snakes get strong venom.
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r--crawl-ref/source/fight.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc
index 5e61322646..9bcc3a5256 100644
--- a/crawl-ref/source/fight.cc
+++ b/crawl-ref/source/fight.cc
@@ -4542,7 +4542,7 @@ std::string melee_attack::mons_attack_verb(const mon_attack_def &attk)
return (attack_types[attk.type]);
}
-std::string melee_attack::mons_weapon_desc()
+std::string melee_attack::mons_attack_desc(const mon_attack_def &attk)
{
if (!you.can_see(attacker))
return ("");
@@ -4565,6 +4565,11 @@ std::string melee_attack::mons_weapon_desc()
return (result);
}
+ else if (attk.flavour == AF_REACH
+ && grid_distance(attacker->pos(), defender->pos()) == 2)
+ {
+ return " from afar";
+ }
return ("");
}
@@ -4592,7 +4597,7 @@ void melee_attack::mons_announce_hit(const mon_attack_def &attk)
attacker->conj_verb( mons_attack_verb(attk) ).c_str(),
mons_defender_name().c_str(),
debug_damage_number().c_str(),
- mons_weapon_desc().c_str(),
+ mons_attack_desc(attk).c_str(),
attack_strength_punctuation().c_str());
}
}
@@ -5286,7 +5291,7 @@ void melee_attack::mons_perform_attack_rounds()
}
// Skip dummy attacks.
- if ((attk.type != AT_HIT && !unarmed_ok)
+ if ((!unarmed_ok && attk.type != AT_HIT && attk.flavour != AF_REACH)
|| attk.type == AT_SHOOT)
{
--effective_attack_number;