git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8806 c06c8d41-db1a-0410-9941-cceddc491573
GNVJ7ESHE4IPEZCRTBTHUQXSZWWKXLOU76G3XSTEAURMI4JCPLMAC
RN3HIEGIHXOU32QJNLO4QW53PJRS2VQMONI4X43WP3I35EP2N5IQC
J575GAKXLB6ZTGXYWQPO4LK4LZKDNITOP5ID73MTFZ35L34ZJIXAC
5VTEA63UZKKR7A6GEBWJLTL3C3YMTA7DFQ6KSWJO4M2VMSQFTWNQC
CVYS2M2XNT3GLAYJB2FJCYLONILJ35TPZTICJGYTGRBXHDMUXLVQC
MPQIZUHUAHOF2CKNTLSYCGMR7FIC3EPA2RHZIY6JOQKAS6H6YY4AC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
KAOE5HB3THUKVGFZRO5EZESHEB3Q34WUO5DFMLWIKOBF47LZTIYAC
EOJPYR3QD5GGS7GB2P7SBLMOP7YC57YMIVR7VKCOMWNCKNBPESBQC
NLQNXH3SVJ52CWXEV35FSSZP32VHC4QFGN3HINF4KO5GZHZMOBKQC
F7QFSXE22UPQTBLYJLY26HJ3QPHFNBJMUOFJRV35R5YCHSGKTBYQC
Z37LPWKBVEMAADJPZDI3DIPZTEIE4HI456I5PM2XTAG74X237XFQC
CRUW4EVU3UDWNKXBCPWWHWXXGE7EMEHKK3PLLUD7NWPYY4K2R3YAC
if (monster->hit_points < -25
|| monster->hit_points < -monster->max_hit_points
|| monster->max_hit_points <= 0
|| monster->hit_dice < 1)
{
return (false);
}
// Elyvilon specials.
if (_ely_protects_ally(monster))
return (true);
if (_ely_heals_monster(monster, killer, i))
return (true);
// Yredelemnul special.
if (_yred_enslaves_soul(monster, killer))
return (true);
// Beogh special.
static bool _monster_avoided_death(monsters *monster, killer_type killer, int i)
{
if (monster->hit_points < -25
|| monster->hit_points < -monster->max_hit_points
|| monster->max_hit_points <= 0
|| monster->hit_dice < 1)
{
return (false);
}
// Elyvilon specials.
if (_ely_protect_ally(monster))
return (true);
if (_ely_heal_monster(monster, killer, i))
return (true);
// Yredelemnul special.
if (_yred_enslave_soul(monster, killer))
return (true);
// Beogh special.
if (_beogh_forcibly_convert_orc(monster, killer, i))
return (true);
return (false);
}