diff options
-rw-r--r-- | crawl-ref/source/effects.cc | 23 | ||||
-rw-r--r-- | crawl-ref/source/makeitem.cc | 2 |
2 files changed, 20 insertions, 5 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc index 5d00413449..098d757386 100644 --- a/crawl-ref/source/effects.cc +++ b/crawl-ref/source/effects.cc @@ -1406,17 +1406,30 @@ bool acquirement(object_class_type class_wanted, int agent, if ((doodad.base_type == OBJ_WEAPONS && !can_wield(&doodad, false, true)) || (doodad.base_type == OBJ_ARMOUR - && !can_wear_armour(doodad, false, true)) - - // Trog does not gift the Wrath of Trog. - || (agent == GOD_TROG && is_fixed_artefact(doodad) - && doodad.special == SPWPN_WRATH_OF_TROG)) + && !can_wear_armour(doodad, false, true))) { destroy_item(thing_created, true); thing_created = NON_ITEM; continue; } + // Trog does not gift the Wrath of Trog, nor + // weapons of pain (work together with Necromantic magic) + // or holy wrath (blessed by TSO, a god hated by Trog) + if (agent == GOD_TROG) + { + int brand = get_weapon_brand(doodad); + if (brand == SPWPN_HOLY_WRATH + || brand == SPWPN_PAIN + || is_fixed_artefact(doodad) + && doodad.special == SPWPN_WRATH_OF_TROG) + { + destroy_item(thing_created, true); + thing_created = NON_ITEM; + continue; + } + } + // MT - Check: god-gifted weapons and armor shouldn't kill you. // Except Xom. if ((agent == GOD_TROG || agent == GOD_OKAWARU) diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc index eeecee763e..fb43795f29 100644 --- a/crawl-ref/source/makeitem.cc +++ b/crawl-ref/source/makeitem.cc @@ -280,6 +280,8 @@ static int newwave_armour_colour(const item_def &item) item_colour = WHITE; break; case ARM_SHIELD: + case ARM_LARGE_SHIELD: + case ARM_BUCKLER: item_colour = CYAN; break; default: |