MVLBKQVOJ7DCX3XDVC3S5WBSYEUSCMFIWULUM7G2C777UZFT7SKAC
NW3WF4AHXC2D3ZO3VUH73T3L5SJGVDTUGG4PPCDFZTKJKSTPURXAC
CUWG6VMY5WJRKAMJDFMKPPSMFWS6AEYV3JJRGVIV3QLJNJBK752QC
RBAGQ2PB7V5YAM5KSHSZR2E3MLKDSRVM5XYGI2TIXP5QMVBOQHDQC
4OKEEU32EGHIDAJ75GH3USSQHQPZBDZVC7TOP7ALMHZRUFPE5WEQC
7AMQN7MITMXBNVDAK5VOXTQ4TZIAOD6ZLOFJG7GQMBTY23Y2BKSAC
LV6V7V62RQUOXYH2ZL7P5VHLXZOFMAMUSYRBEDIVPP27ISCEHFWAC
L3AZ25JHBR3UGYOWQIYSAIMUSTCCI6LLAWQCL7QRMHVXR4NGV7RAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
HGBHRHXFVTEWYYV2D5HKTKL4Z6OSNR2ZOIHFQX55CVRCXQUQ7MQAC
resists.elec = 0;
resists.poison = 0;
resists.fire = 0;
resists.cold = 0;
resists.acid = 0;
resists.sticky_flame = false;
resists.rotting = false;
// An ugly thing gets one random resistance.
ugly_thing_add_resistance();
if (one_chance_in(3))
att_flav = _ugly_thing_flavour_upgrade(att_flav);
// A very ugly thing gets one more random resistance, and another
// possible resistance based on its upgraded attack flavour.
ugly_thing_add_resistance();
att_flav = _ugly_thing_flavour_upgrade(att_flav);
while (res == 0);
// Guarantee certain resistances for upgraded attack flavours.
if (att_flav == AF_POISON_MEDIUM && !resists.poison)
resists.poison++;
else if (att_flav == AF_NAPALM && !resists.sticky_flame)
resists.sticky_flame = true;
else if (att_flav == AF_ROT && !resists.rotting)
resists.rotting = true;