diff options
Diffstat (limited to 'crawl-ref')
-rw-r--r-- | crawl-ref/source/itemprop.cc | 29 | ||||
-rw-r--r-- | crawl-ref/source/itemprop.h | 1 | ||||
-rw-r--r-- | crawl-ref/source/randart.cc | 6 |
3 files changed, 10 insertions, 26 deletions
diff --git a/crawl-ref/source/itemprop.cc b/crawl-ref/source/itemprop.cc index d5a177b8f7..09d109110e 100644 --- a/crawl-ref/source/itemprop.cc +++ b/crawl-ref/source/itemprop.cc @@ -1624,30 +1624,6 @@ bool is_demonic( const item_def &item ) return (false); } // end is_demonic() -bool is_unblessed( const item_def &item ) -{ - if (item.base_type == OBJ_WEAPONS) - { - switch (item.sub_type) - { - case WPN_FALCHION: - case WPN_LONG_SWORD: - case WPN_SCIMITAR: - case WPN_KATANA: - case WPN_DEMON_BLADE: - case WPN_DOUBLE_SWORD: - case WPN_GREAT_SWORD: - case WPN_TRIPLE_SWORD: - return (true); - - default: - break; - } - } - - return (false); -} // end is_unblessed() - bool is_blessed( const item_def &item ) { if (item.base_type == OBJ_WEAPONS) @@ -1674,7 +1650,10 @@ bool is_blessed( const item_def &item ) bool is_blessable( const item_def &item ) { - return ((is_unblessed(item) || is_blessed(item)) && !is_artefact(item)); + return (!is_artefact(item) + && (item.base_type == OBJ_WEAPONS + && (is_demonic(item) + || weapon_skill(item) == SK_LONG_BLADES))); } // end is_blessable() bool normal2good( item_def &item, bool allow_blessed ) diff --git a/crawl-ref/source/itemprop.h b/crawl-ref/source/itemprop.h index 863b75bad2..5be120ab6f 100644 --- a/crawl-ref/source/itemprop.h +++ b/crawl-ref/source/itemprop.h @@ -668,7 +668,6 @@ bool is_double_ended( const item_def &item ); int double_wpn_awkward_speed( const item_def &item ); bool is_demonic( const item_def &item ); -bool is_unblessed( const item_def &item ); bool is_blessed( const item_def &item ); bool is_blessable( const item_def &item ); bool normal2good( item_def &item, bool allow_blessed = true ); diff --git a/crawl-ref/source/randart.cc b/crawl-ref/source/randart.cc index 57da9a4abc..c388dffb26 100644 --- a/crawl-ref/source/randart.cc +++ b/crawl-ref/source/randart.cc @@ -90,6 +90,12 @@ static bool god_fits_artefact(const god_type which_god, const item_def &item) break; case GOD_SHINING_ONE: // holiness, honourable combat + if (item.base_type != OBJ_WEAPONS + || weapon_skill(item) != SK_LONG_BLADES) + { + return (false); + } + if (brand != SPWPN_HOLY_WRATH) return (false); |