summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-08-13 18:01:43 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-08-13 18:01:43 +0000
commitc037773236312cc930035ee49f50fe765a7874ad (patch)
tree651cbc5091b5bf891ae03ac9284af1fc127c2111 /crawl-ref
parent6229f7e7bb5de9df89ff67e7e3c75d8cf0a99b58 (diff)
downloadcrawl-ref-c037773236312cc930035ee49f50fe765a7874ad.tar.gz
crawl-ref-c037773236312cc930035ee49f50fe765a7874ad.zip
Apply Jude's scrolls of silence patch.
The scrolls cast the spell with a power of 25 which means it has a duration of about 24, and is the same as casting the spell with 5 levels in each of Spc, Ench, Air, as well as 21 Int. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10540 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/dat/descript/items.txt8
-rw-r--r--crawl-ref/source/item_use.cc5
-rw-r--r--crawl-ref/source/itemname.cc1
-rw-r--r--crawl-ref/source/itemprop.h1
-rw-r--r--crawl-ref/source/makeitem.cc18
-rw-r--r--crawl-ref/source/shopping.cc1
6 files changed, 26 insertions, 8 deletions
diff --git a/crawl-ref/source/dat/descript/items.txt b/crawl-ref/source/dat/descript/items.txt
index 7801d6ca10..c119ed4711 100644
--- a/crawl-ref/source/dat/descript/items.txt
+++ b/crawl-ref/source/dat/descript/items.txt
@@ -1296,6 +1296,14 @@ beings in the vicinity. Also, the magical resistances of the reader and
nearby beings are halved for a short duration. The latter effect does
not apply to beings fully immune to magic.
%%%%
+scroll of silence
+
+This scroll eliminates all sound near the reader. This makes reading
+scrolls, casting spells, praying or yelling in the reader's vicinity
+impossible. (Applies to reader too, of course.) This silence will not
+hide your presence, since its oppressive, unnatural effect will almost
+certainly alert any living creature that something is very wrong.
+%%%%
scythe
A farm implement, usually unsuited to combat.
diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc
index ab92e696e2..3779037005 100644
--- a/crawl-ref/source/item_use.cc
+++ b/crawl-ref/source/item_use.cc
@@ -56,6 +56,7 @@ REVISION("$Rev$");
#include "spells1.h"
#include "spells2.h"
#include "spells3.h"
+#include "spells4.h"
#include "spl-book.h"
#include "spl-cast.h"
#include "spl-mis.h"
@@ -5173,6 +5174,10 @@ void read_scroll(int slot)
break;
}
+ case SCR_SILENCE:
+ cast_silence(25);
+ break;
+
case SCR_VULNERABILITY:
_vulnerability_scroll();
break;
diff --git a/crawl-ref/source/itemname.cc b/crawl-ref/source/itemname.cc
index 247f6b3b81..496b1e6481 100644
--- a/crawl-ref/source/itemname.cc
+++ b/crawl-ref/source/itemname.cc
@@ -547,6 +547,7 @@ static const char* scroll_type_name(int scrolltype)
case SCR_ENCHANT_WEAPON_III: return "enchant weapon III";
case SCR_HOLY_WORD: return "holy word";
case SCR_VULNERABILITY: return "vulnerability";
+ case SCR_SILENCE: return "silence";
default: return "bugginess";
}
}
diff --git a/crawl-ref/source/itemprop.h b/crawl-ref/source/itemprop.h
index 461376cb92..ef9e4e8c17 100644
--- a/crawl-ref/source/itemprop.h
+++ b/crawl-ref/source/itemprop.h
@@ -309,6 +309,7 @@ enum scroll_type
SCR_ENCHANT_WEAPON_III,
SCR_HOLY_WORD,
SCR_VULNERABILITY,
+ SCR_SILENCE, // 25
NUM_SCROLLS
};
diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc
index e5ca9b445f..d429f5cfc2 100644
--- a/crawl-ref/source/makeitem.cc
+++ b/crawl-ref/source/makeitem.cc
@@ -2453,15 +2453,16 @@ static void _generate_scroll_item(item_def& item, int force_type,
321, (item_level < 4 ? SCR_TELEPORTATION : SCR_IMMOLATION),
// Medium-level scrolls
- 160, (depth_mod < 4 ? SCR_TELEPORTATION : SCR_ACQUIREMENT),
- 160, (depth_mod < 4 ? SCR_TELEPORTATION : SCR_ENCHANT_WEAPON_III),
- 160, (depth_mod < 4 ? SCR_DETECT_CURSE : SCR_SUMMONING),
- 160, (depth_mod < 4 ? SCR_PAPER : SCR_VULNERABILITY),
+ 140, (depth_mod < 4 ? SCR_TELEPORTATION : SCR_ACQUIREMENT),
+ 140, (depth_mod < 4 ? SCR_TELEPORTATION : SCR_ENCHANT_WEAPON_III),
+ 140, (depth_mod < 4 ? SCR_DETECT_CURSE : SCR_SUMMONING),
+ 140, (depth_mod < 4 ? SCR_PAPER : SCR_VULNERABILITY),
+ 140, (depth_mod < 4 ? SCR_PAPER : SCR_SILENCE),
// High-level scrolls
- 160, (depth_mod < 7 ? SCR_TELEPORTATION : SCR_VORPALISE_WEAPON),
- 160, (depth_mod < 7 ? SCR_DETECT_CURSE : SCR_TORMENT),
- 160, (depth_mod < 7 ? SCR_DETECT_CURSE : SCR_HOLY_WORD),
+ 140, (depth_mod < 7 ? SCR_TELEPORTATION : SCR_VORPALISE_WEAPON),
+ 140, (depth_mod < 7 ? SCR_DETECT_CURSE : SCR_TORMENT),
+ 140, (depth_mod < 7 ? SCR_DETECT_CURSE : SCR_HOLY_WORD),
0);
}
while (agent == GOD_XOM && _is_boring_item(OBJ_SCROLLS, item.sub_type));
@@ -2472,7 +2473,8 @@ static void _generate_scroll_item(item_def& item, int force_type,
|| item.sub_type == SCR_ENCHANT_WEAPON_III
|| item.sub_type == SCR_ACQUIREMENT
|| item.sub_type == SCR_TORMENT
- || item.sub_type == SCR_HOLY_WORD)
+ || item.sub_type == SCR_HOLY_WORD
+ || item.sub_type == SCR_SILENCE)
{
item.quantity = 1;
}
diff --git a/crawl-ref/source/shopping.cc b/crawl-ref/source/shopping.cc
index 24ca43d0e9..d2aa646019 100644
--- a/crawl-ref/source/shopping.cc
+++ b/crawl-ref/source/shopping.cc
@@ -1413,6 +1413,7 @@ unsigned int item_value( item_def item, bool ident )
break;
case SCR_TORMENT:
case SCR_HOLY_WORD:
+ case SCR_SILENCE:
case SCR_VULNERABILITY:
valued += 75;
break;