summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan O'Rear <stefanor@cox.net>2009-11-07 14:49:09 -0800
committerStefan O'Rear <stefanor@cox.net>2009-11-07 14:49:09 -0800
commit397ab12c5ba31825ad7639e5e197b719f61d08ab (patch)
treeb66c01b752b7e667df10aa2f530efe4bf5094012
parente155ef1258adcc681c2d7430726b100ceb1f477e (diff)
downloadcrawl-ref-397ab12c5ba31825ad7639e5e197b719f61d08ab.tar.gz
crawl-ref-397ab12c5ba31825ad7639e5e197b719f61d08ab.zip
Vampiricism tweaks per FR#2892713
-rw-r--r--crawl-ref/source/it_use2.cc10
-rw-r--r--crawl-ref/source/item_use.cc25
-rw-r--r--crawl-ref/source/makeitem.cc9
3 files changed, 29 insertions, 15 deletions
diff --git a/crawl-ref/source/it_use2.cc b/crawl-ref/source/it_use2.cc
index ce7d4292ea..4e03196a09 100644
--- a/crawl-ref/source/it_use2.cc
+++ b/crawl-ref/source/it_use2.cc
@@ -536,8 +536,14 @@ bool unwield_item(bool showMsgs)
break;
case SPWPN_VAMPIRICISM:
- if (showMsgs)
- mpr("You feel the strange hunger wane.");
+ if (showMsgs){
+
+ if(you.species == SP_VAMPIRE){
+ mpr("You feel your glee subside.");
+ } else {
+ mpr("You feel the dreadful sensation subside.");
+ }
+ }
break;
case SPWPN_DISTORTION:
diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc
index 7868fc939f..8b612f89b6 100644
--- a/crawl-ref/source/item_use.cc
+++ b/crawl-ref/source/item_use.cc
@@ -167,6 +167,13 @@ bool can_wield(item_def *weapon, bool say_reason,
return (false);
}
+ if(you.hunger_state < HS_FULL &&
+ SPWPN_VAMPIRICISM == get_weapon_brand(*weapon) &&
+ you.species != SP_VAMPIRE){
+ SAY(mpr("You're too hungry to wield that."));
+ return(false);
+ }
+
if (!ignore_temporary_disability && is_shield_incompatible(*weapon))
{
SAY(mpr("You can't wield that with a shield."));
@@ -604,10 +611,20 @@ void wield_effects(int item_wield_2, bool showMsgs)
break;
case SPWPN_VAMPIRICISM:
- if (you.is_undead != US_UNDEAD)
- mpr("You feel a strange hunger.");
- else
- mpr("You feel strangely empty.");
+
+
+ if(you.species == SP_VAMPIRE){
+ mpr("You feel a bloodthirsty glee!");
+ break;
+ }
+
+ if (you.is_undead != US_UNDEAD) {
+ mpr("You feel a dreadful hunger.");
+ } else {
+ mpr("You feel an empty sense of dread.");
+ }
+
+ make_hungry(4500, false, false);
break;
case SPWPN_RETURNING:
diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc
index 3fabf1e128..3567d9a90c 100644
--- a/crawl-ref/source/makeitem.cc
+++ b/crawl-ref/source/makeitem.cc
@@ -1203,9 +1203,6 @@ static brand_type _determine_weapon_brand(const item_def& item, int item_level)
if (one_chance_in(4))
rc = coinflip() ? SPWPN_FLAMING : SPWPN_FREEZING;
-
- if (one_chance_in(20))
- rc = SPWPN_VAMPIRICISM;
// **** intentional fall through here ****
case WPN_MACE:
case WPN_GREAT_MACE:
@@ -1394,9 +1391,6 @@ static brand_type _determine_weapon_brand(const item_def& item, int item_level)
if (one_chance_in(25))
rc = SPWPN_PAIN;
- if (one_chance_in(10))
- rc = SPWPN_VAMPIRICISM;
-
if (item.sub_type == WPN_SPEAR && one_chance_in(6))
rc = SPWPN_RETURNING;
@@ -1506,9 +1500,6 @@ static brand_type _determine_weapon_brand(const item_def& item, int item_level)
rc = SPWPN_ELECTROCUTION;
if (one_chance_in(5))
- rc = SPWPN_VAMPIRICISM;
-
- if (one_chance_in(5))
rc = SPWPN_VENOM;
break;