retribution won't be able to unmutate you, so call can_safely_mutate() before trying that, and, if it returns false, fall through to the angel/pestilence retribution.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4496 c06c8d41-db1a-0410-9941-cceddc491573
E5Z2X7CXTA6FIFOIBL4QGGCKLJRKAJXHZ5TZHPXFPLTG7CA5JHYAC
LHKTUAYTN76NTTGA3USCANTFBHIDD2RDAVTDRDYPC4CA6U3URAXAC
CGYTZT5QWIEGYKUOLOK7MFXSLJKLYRZONER5ZCDZO5XYWSLG475QC
L4PKJZERR7WADKWHY3MR6J6OZFREVPL3CB43I6MLJ2BVKWCUTE7AC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
G2EYUPAIPISVAEG26BS3SQANL37EEZJ3TZBJKKWHGKQ66LB3RFQAC
DK362IHKSDADMUPD35NOTKM4WESQM37KG2PNOJRV2FGELDWULYPQC
CA6ZG6P2CE5EPAOQSB3P7NBDKTNFFHQP4CPOUFZL32ON6N32GSSQC
SWOYPTHJAWFEDBMB3ROT33VQZIXGZD5UOXEV456DDUENW2HGA66QC
{
simple_god_message(" draws some chaos from your body!", god);
bool success = false;
for (int i = 0; i < 7; i++)
if (random2(10) > i
&& delete_mutation(RANDOM_MUTATION, true, true))
if (can_safely_mutate())
{
simple_god_message(" draws some chaos from your body!", god);
bool success = false;
for (int i = 0; i < 7; i++)
if (random2(10) > i
&& delete_mutation(RANDOM_MUTATION, true, true))
{
success = true;
}
if (success && !count_mutations())
if (success && !count_mutations())
{
simple_god_message(" rids your body of chaos!");
// lower penance a bit more for being particularly successful
dec_penance(god, 1);
}
break;
}
break;
}
// deliberate fall through