summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/itemprop.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-29 19:27:55 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-29 19:27:55 +0000
commit85e282c81b99e4c0a1f6433a25a55179f8481b0d (patch)
tree2ebc1f172917b0d0b9c376a76a75921081fff3c4 /crawl-ref/source/itemprop.cc
parentfca2ba3fa41951c7337c13a7a147bcbe5ba8f671 (diff)
downloadcrawl-ref-85e282c81b99e4c0a1f6433a25a55179f8481b0d.tar.gz
crawl-ref-85e282c81b99e4c0a1f6433a25a55179f8481b0d.zip
* Also describe enchantment limits for weapons (+9, right?), missiles,
and armour (+5 for body armour and bardings, else +2). Tidied up the code a bit. * Prettify waypoint messages as suggested by slinkies in FR 2329972. (I really should reread those tracker items before starting to code them...) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8021 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/itemprop.cc')
-rw-r--r--crawl-ref/source/itemprop.cc15
1 files changed, 7 insertions, 8 deletions
diff --git a/crawl-ref/source/itemprop.cc b/crawl-ref/source/itemprop.cc
index 401b4cba87..1ee5c195f9 100644
--- a/crawl-ref/source/itemprop.cc
+++ b/crawl-ref/source/itemprop.cc
@@ -1004,8 +1004,11 @@ int armour_max_enchant( const item_def &item )
const int eq_slot = get_armour_slot( item );
int max_plus = MAX_SEC_ENCHANT;
- if (eq_slot == EQ_BODY_ARMOUR || eq_slot == EQ_SHIELD)
+ if (eq_slot == EQ_BODY_ARMOUR || item.sub_type == ARM_CENTAUR_BARDING
+ || item.sub_type == ARM_NAGA_BARDING)
+ {
max_plus = MAX_ARM_ENCHANT;
+ }
return (max_plus);
}
@@ -1366,8 +1369,8 @@ bool is_enchantable_weapon(const item_def &wpn, bool uncurse)
if (wpn.base_type != OBJ_WEAPONS && wpn.base_type != OBJ_MISSILES)
return (false);
- // Artefacts or highly enchanted weapons cannot be enchanted, only
- // uncursed.
+ // Artefacts or highly enchanted weapons cannot be enchanted,
+ // only uncursed.
if (wpn.base_type == OBJ_WEAPONS)
{
if (is_artefact(wpn) || wpn.plus >= 9 && wpn.plus2 >= 9)
@@ -1393,12 +1396,8 @@ bool is_enchantable_armour(const item_def &arm, bool uncurse)
// Artefacts or highly enchanted armour cannot be enchanted, only
// uncursed.
- if (is_artefact(arm) || (arm.plus >= 2
- && (arm.sub_type >= ARM_CLOAK && arm.sub_type <= ARM_BOOTS
- || is_shield(arm))))
- {
+ if (is_artefact(arm) || arm.plus >= armour_max_enchant(arm))
return (uncurse && item_cursed(arm));
- }
return (true);
}