summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-08-31 08:57:00 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-08-31 08:57:00 +0000
commita102e4b13440d4d58796e919cef3ce52306d3af8 (patch)
tree4cbf3257f2cd858c9b4f18f3f84747fe52e7c4d7 /crawl-ref/source
parent440223d779dbdc8e13794e3e80fc1972f2cec400 (diff)
downloadcrawl-ref-a102e4b13440d4d58796e919cef3ce52306d3af8.tar.gz
crawl-ref-a102e4b13440d4d58796e919cef3ce52306d3af8.zip
Added shields as potentially unwearable/restricted in
you_can_wear. Mummies shouldn't autopickup known =sustenance. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2038 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r--crawl-ref/source/command.cc2
-rw-r--r--crawl-ref/source/lua/pickup.lua4
-rw-r--r--crawl-ref/source/output.cc2
-rw-r--r--crawl-ref/source/player.cc9
4 files changed, 11 insertions, 6 deletions
diff --git a/crawl-ref/source/command.cc b/crawl-ref/source/command.cc
index 61f53d29a5..3acf614088 100644
--- a/crawl-ref/source/command.cc
+++ b/crawl-ref/source/command.cc
@@ -379,7 +379,7 @@ void list_armour()
else if (!you_tran_can_wear(i))
estr << " (currently unavailable)";
else if (!you_can_wear(i))
- estr << " (ill-fitting)";
+ estr << " (restricted)";
else
estr << " none";
diff --git a/crawl-ref/source/lua/pickup.lua b/crawl-ref/source/lua/pickup.lua
index 26f68efec1..6dac74f277 100644
--- a/crawl-ref/source/lua/pickup.lua
+++ b/crawl-ref/source/lua/pickup.lua
@@ -111,7 +111,9 @@ function ch_autopickup(it)
end
if you_undead() and
(item.subtype(it) == "regeneration"
- or item.subtype(it) == "rage") then
+ or item.subtype(it) == "rage"
+ or item.subtype(it) == "sustenance"
+ and you.race() == "Mummy") then
return false
end
end
diff --git a/crawl-ref/source/output.cc b/crawl-ref/source/output.cc
index 0b8689898a..1ceee2784f 100644
--- a/crawl-ref/source/output.cc
+++ b/crawl-ref/source/output.cc
@@ -1287,7 +1287,7 @@ void print_overview_screen()
else if (!you_can_wear(e_order[i]))
{
snprintf(buf, sizeof buf,
- "%-7s: <lightgray>(ill-fitting)</lightgray>",
+ "%-7s: <lightgray>(restricted)</lightgray>",
slot);
}
else
diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc
index 1222f79510..6cf1695a8e 100644
--- a/crawl-ref/source/player.cc
+++ b/crawl-ref/source/player.cc
@@ -441,7 +441,7 @@ bool you_can_wear(int eq, bool special_armour)
{
// these can be used by all
if (eq == EQ_LEFT_RING || eq == EQ_RIGHT_RING || eq == EQ_AMULET
- || eq == EQ_WEAPON || eq == EQ_SHIELD || eq == EQ_CLOAK)
+ || eq == EQ_WEAPON || eq == EQ_CLOAK)
{
return true;
}
@@ -453,9 +453,12 @@ bool you_can_wear(int eq, bool special_armour)
if (you.is_undead)
return true;
- // anyone can wear caps/hats and robes
- if (special_armour && (eq == EQ_HELMET || eq == EQ_BODY_ARMOUR))
+ // anyone can wear caps/hats and robes and at least one of buckler/shield
+ if (special_armour
+ && (eq == EQ_HELMET || eq == EQ_BODY_ARMOUR || eq == EQ_SHIELD))
+ {
return true;
+ }
if (eq == EQ_BOOTS && (you.species == SP_NAGA || you.species == SP_CENTAUR))
return (special_armour);