diff options
Diffstat (limited to 'crawl-ref/source/itemprop.cc')
-rw-r--r-- | crawl-ref/source/itemprop.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/crawl-ref/source/itemprop.cc b/crawl-ref/source/itemprop.cc index 840aed7a0c..42c4e92c62 100644 --- a/crawl-ref/source/itemprop.cc +++ b/crawl-ref/source/itemprop.cc @@ -683,7 +683,8 @@ void set_equip_race( item_def &item, unsigned long flags ) } break; case OBJ_ARMOUR: - if (item.sub_type == ARM_SPLINT_MAIL + if (is_hard_helmet(item) + || item.sub_type == ARM_SPLINT_MAIL || item.sub_type == ARM_BANDED_MAIL || item.sub_type == ARM_PLATE_MAIL) { @@ -710,7 +711,8 @@ void set_equip_race( item_def &item, unsigned long flags ) } break; case OBJ_ARMOUR: - if (item.sub_type == ARM_ROBE + if (!is_hard_helmet(item) + || item.sub_type == ARM_ROBE || item.sub_type == ARM_LEATHER_ARMOUR || item.sub_type == ARM_STUDDED_LEATHER_ARMOUR) { @@ -731,6 +733,15 @@ void set_equip_race( item_def &item, unsigned long flags ) break; case ISFLAG_ORCISH: + switch (item.base_type) + { + case OBJ_ARMOUR: + if (!is_hard_helmet(item)) + return; + break; + default: + break; + } default: break; |