diff options
Diffstat (limited to 'crawl-ref/source/effects.cc')
-rw-r--r-- | crawl-ref/source/effects.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc index 4a3368b944..1d1a31cdb3 100644 --- a/crawl-ref/source/effects.cc +++ b/crawl-ref/source/effects.cc @@ -1526,14 +1526,17 @@ bool acquirement(object_class_type class_wanted, int agent) { thing.plus -= plusmod; thing.plus2 += plusmod; + if (!is_random_artefact(thing)) + thing.plus = std::max(static_cast<int>(thing.plus), 0); } // more accuracy, less damage else if (agent == GOD_OKAWARU) { thing.plus += plusmod; thing.plus2 -= plusmod; + if (!is_random_artefact(thing)) + thing.plus2 = std::max(static_cast<int>(thing.plus2), 0); } - } else if (thing.base_type == OBJ_ARMOUR && !is_fixed_artefact( thing ) |