monsters.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1800 c06c8d41-db1a-0410-9941-cceddc491573
C5VA63WAQRWPENIMXRPUPZLZJMC77PL2B3A77HYFWDCZU5QDG7VQC
3ZZRYX2OJM37TX5Z2JOZDIWNJOK37X3F4GME6EEG5ZVCQGMJBC4QC
HFXCFYFH2X3BIZR55ZADL3CV4MQJEEHDSIJZ7YSTHO3HTZP7GWEAC
YOH32TMLN6QJG4ZFLYWPJF3YUEGIMZPVPYN57RTB26QBBHMICV3AC
U3SFBWHMMMO2PY6PAX7FMSBSND4RCWGJR42HB47LNQXLOX7ZOB6QC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
X5WLJCJVW55SXZVP7IKP7ADCJIGNKN4PKAXFECVR6TNK7XSMZR7QC
NNG27Y5ZQAZX6UD7F7M4F6KEZBEDFXPEEC3LFUSX4ESKT7K6UJQAC
TR4NPGNO5QNNRJNVMNSUEO5QLT37HCXXDOBKXCB5XWXRQNAJ5SHAC
TV3ZC6WOZKSQQJQN26JIVKCHK6UK7WMDBYZDUYRWEAZ4JB4YVNAAC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
QDTVLBRGHDTRUVT7I3O72K6TMOYAUSAJBZUHGOEFU2RKJNUPWZSQC
YSIROVP23L7IDSVTBG7OQFQWLORVWWYINH7WPWTZO2I5BH4S7YPQC
B62ICMDTN5V7R7RBL4JALFVKEMVOOVLRSJASRNYS6CGFWBEEF5JQC
SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC
DODCHP2S4I6VZKQAVXX6D76OPNFI2YWZ4XH3HZTMAJZXA2RJ3XRQC
IDTLZ6PEPJP67PO7K5TODLXTBFAEVIE4C3HZCXIQK6OIAQKRVDUQC
AOAJ6D3OKSELEYKAT55XCVU5LYJ7SMCZKC6DIEGLLB3TF2LEENWQC
static void give_adjusted_experience(monsters *monster, killer_type killer,
bool pet_kill)
{
if (YOU_KILL(killer))
gain_exp( exper_value( monster ) );
else if (pet_kill)
gain_exp( exper_value( monster ) / 2 + 1 );
}
static bool is_pet_kill(killer_type killer, int i)
{
if (!MON_KILL(killer))
return (false);
if (i == ANON_FRIENDLY_MONSTER)
return (true);
if (i < 0 || i >= MAX_MONSTERS)
return (false);
const monsters *m = &menv[i];
if (mons_friendly(m))
return (true);
// Check if the monster was confused by you or a friendly, which
// makes casualties to this monster collateral kills.
const mon_enchant me = m->get_ench(ENCH_CONFUSION);
return (me.ench == ENCH_CONFUSION
&& (me.who == KC_YOU || me.who == KC_FRIENDLY));
}
kill_category kc =
(killer == KILL_YOU || killer == KILL_YOU_MISSILE)? KC_YOU :
(ispet)? KC_FRIENDLY :
KC_OTHER;
const kill_category kc =
YOU_KILL(killer)? KC_YOU :
ispet? KC_FRIENDLY :
KC_OTHER;