summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/describe.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-08-20 12:23:38 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-08-20 12:23:38 +0000
commit5b618acbca35621d699dc4ba3064f2a3228a5131 (patch)
treed5a68990291723d0252b29dd9193bce34929f50b /crawl-ref/source/describe.cc
parent7ca7077ed3e60d71c79c22e07fd0d2491b861ca3 (diff)
downloadcrawl-ref-5b618acbca35621d699dc4ba3064f2a3228a5131.tar.gz
crawl-ref-5b618acbca35621d699dc4ba3064f2a3228a5131.zip
Added throwing nets. These still need work, and thus
are not for 0.3. Obviously. Summary: New item type MI_THROWING_NET. The enchantment of a net describes its state, i.e. whether it's brand-new or almost falling apart (happens at -8). New attribute ATTR_CAUGHT (for monsters ENCH_CAUGHT) that means the victim cannot move and instead struggles against the net until it manages to wriggle out of it (takes a while depending on size) or it is destroyed. Monsters can still use items and spells when trapped. New trap type TRAP_NET that currently is the only source of throwing nets, though Gladiators (and some types of hunters maybe?) should start with a few, and David suggested also allowing the creation of nets for shops. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2020 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/describe.cc')
-rw-r--r--crawl-ref/source/describe.cc25
1 files changed, 24 insertions, 1 deletions
diff --git a/crawl-ref/source/describe.cc b/crawl-ref/source/describe.cc
index b383f6cb99..704ec52e2e 100644
--- a/crawl-ref/source/describe.cc
+++ b/crawl-ref/source/describe.cc
@@ -334,7 +334,7 @@ static const char *trap_names[] =
{
"dart", "arrow", "spear", "axe",
"teleport", "amnesia", "blade",
- "bolt", "zot", "needle",
+ "bolt", "net", "zot", "needle",
};
const char *trap_name(trap_type trap)
@@ -1374,6 +1374,29 @@ static std::string describe_ammo( const item_def &item )
description += "Unfortunately, it is too long and awkward "
"for you to use.";
break;
+ case MI_THROWING_NET:
+ description += "A throwing net as used by gladiators. ";
+ if (!is_throwable(item, you.body_size()))
+ description += "Unfortunately, it is too large for you to throw. ";
+ if (item.plus < 0)
+ {
+ std::string how;
+ if (item.plus > -3)
+ how = "a little";
+ else if (item.plus > -5)
+ how = "somewhat";
+ else if (item.plus > -7)
+ how = "very";
+ else
+ how = "extremely";
+
+ description += "It looks ";
+ description += how;
+ description += " worn.";
+ }
+ else if (item.plus > 1)
+ description += "The net looks brand-new!";
+ break;
case MI_NONE: // was eggplant
description += "A purple vegetable. "
"The presence of this object in the game indicates a bug. ";