multiple-weapon-dulling retribution.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5173 c06c8d41-db1a-0410-9941-cceddc491573
EJGNWOH3RJYL4OYAFNVTRZE4WQ5SZLBFRAU2ICOFAMCK2SNZX4MQC
U6OTXM3JN7SGPVIGQ5F6NR2I7J5V7KOWFQ7AVNNRQQDNLBEDMYFQC
P2OYYNPHIBGOLT4CRLNTTIXDN34EU2QCMFQJNLAMUAHQXZTEDPXQC
HG5LPGY3OYDIJRDBKSROGTYX5DLK7GAQJGODT22LMVDLICJAIC7AC
CQD3RU44235F3CYFDZBC3JRT2H3AE7PXJNVBBMCRF65Q5LPA3EHQC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
IBOWTB7TZLGE454RTNFG3L3VCSBSU6A43AZ3TSAH545QFV7OEACAC
SWOYPTHJAWFEDBMB3ROT33VQZIXGZD5UOXEV456DDUENW2HGA66QC
// item is valid for destroying, so give it a chance
count++;
if (one_chance_in( count ))
item = i;
}
}
// don't dull weapons below -1/-1
if (you.inv[i].base_type == OBJ_WEAPONS
&& you.inv[i].plus <= -1 && you.inv[i].plus2 <= -1)
{
continue;
}
// don't dull ammo below -1
else if (you.inv[i].plus <= -1)
continue;
// increase value of wielded weapons or large stacks of ammo
if (you.inv[item].base_type == OBJ_WEAPONS
&& you.inv[item].link == you.equip[EQ_WEAPON])
{
wielded = true;
value += 2;
}
else if (you.inv[item].quantity > random2(you.penance[GOD_ELYVILON]))
value += 1 + random2(2);
if (you.inv[i].link == you.equip[EQ_WEAPON])
wielded = true;
if (you.inv[i].link == quiver_link)
quivered = true;
// Elyvilon doesn't care about item sacrifices at altars, so I'm
// stealing _Sacrifice_Messages.
_print_sacrifice_message(GOD_ELYVILON, you.inv[item], pgain, true);
// update the weapon/ammo display, if necessary
if (wielded)
you.wield_change = true;
if (quivered)
you.m_quiver->on_item_fired(you.inv[i]);