few other related bits.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5907 c06c8d41-db1a-0410-9941-cceddc491573
4ORX7M2SWZX3WEZWQ7JSFKKT64PTVWEJD4BP5A5UW67HB3PIXRGQC
LYHGBPHKEAK57MRSBF4EDVKPZT5BCHLZ347PEPSOCAWBEW7JD6NAC
ENQRCBNN7MKP6FFQAZ62FYXEVWCRJB5747LTYMZGRGINXQL6HT5AC
ESDVB6VRDLVNBA2I4Z5PXDTUZIQ3VC44UK6JIELTB5IWNIBHITQQC
YL3F5FHSLFL3ADBOGXSJZT6LMPJR5EW3RL3JA5TAFF4GDB546T5AC
TBLVONZGCKVUXW7NEG4NSDMFIIO6UZOG4FHTJGT6MKSSO3B5J46AC
6RCVWJDZFZMZQK6QPIMUYQPFAZ3NEGDO5TWBZI3ZJWD6UK6AZMDAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
WT66JDIRTLLP37SHTV4GI3V64JFJ4D25LNRLGCHFG6CLEFKJ3QGQC
PEXHYCLRKDG2PVOJ3DDCMUZUK2HTSPU5WKH4MODFL4FTBQRQTY5QC
I2ZR5QRPQEDTO5V5ILIJUA5KIEOGJY3BRHRNPXS5BJG7GXTBXJSQC
KOBNLIHIAHSV6IPA3R4HI2KB5HY5XIIJQPJ2GBETYB5AK73NAKJQC
RW5UFKOQ5JYDVX7LEW26AWEFKFA4M5PTAIXWRCVESEQK3WKTY6VQC
ESCBI3FPH2KWUEYDGE2LCX6AENLSV4XC6BCI7R2LQBMSUJIN2LFAC
TN2D3PHU7VSGUND2BDIC2F4U6O2HFSV3JXLF7HMYYMY7GZXM6IFAC
XOQT7UV34HL6343R7VDXA6LAOTQDAKUAF3IWOROKHSMXRYGO5G6AC
SQFABNVS6OSVRBMJAIV6KIIZW2TYIOQ5BZGLPYJ6BPFD2HMRH4MAC
4A3Y2BLAYXUFAAT6EK5GYT5ZIMQXQX64ZVJCKNPGEZY7IGTUWWIAC
D2T32ZGFCJFZVJW7H2AEV3QD7Z4ZYKWEPOZTAFTAPDUTBGXNJXNAC
WA57DRAZPLTIY6LVTYBBOP2NFFJ3FZJYOJL4CQC24BL4H66RR3PAC
RX6575DZOHRUXQUZH34YZGPZJF4STUPLBQDIVTINA2L6LVCKRIGQC
YZXHBEKWQPY4BTKG5FFGLP3AIRBQSTKQVLJJHWKQEA3HTN4UHDYQC
MDR5DQBWC2BYHXQXL2S5DCWED4ZOXLGBN3EC4KJL3SN6KZ6P3ONAC
BSAKBTGIAD3JFZPNLMEI6SOJ2XPT4EJNETZYBW2555ASJTZ2GEGQC
2ALB464KJGL5EKNUOFDAVZDEWBJBN6N5LZF3KHS3D5EZLZ36QVWAC
LC6XAT35IRP2B5MFZSVROVFOOPLDIXUFWKSMIKP2TXC7WQSL66MQC
NI7CBUTMYGDGHBYHR7AK6F5ENZD5ETOX24MEXW5Y5GXABNV75OYAC
WA2OSEGWVCESURYWNERNYWQKHE6SU4XQ4Q4HJY5B6ZPGNFUKQEEQC
E5DMZFW6WCFAKTKKOQPYTQXZ2CGLWMVH64LRXDUI2UIG4VYUHIVQC
// If you worship a good god, you get another chance to
// make hostile holy beings good neutral.
if (monster->attitude == ATT_HOSTILE &&
(monster->flags & MF_ATT_CHANGE_ATTEMPT))
if (!testbits(monster->flags, MF_ATT_CHANGE_ATTEMPT)
// If you don't worship a good god, you make all non-hostile
// holy beings hostile.
else if (!is_good_god(you.religion))
// If you don't worship a good god, you make all friendly
// and good neutral holy beings hostile.
else if (!is_good_god(you.religion) && mons_wont_attack(monster))
if (monster->attitude != ATT_HOSTILE
|| monster->has_ench(ENCH_CHARM))
{
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
// If you worship a good god, you make all non-hostile
// evil and unholy beings hostile.
if (monster->attitude != ATT_HOSTILE
|| monster->has_ench(ENCH_CHARM))
{
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
if (monster->attitude != ATT_HOSTILE
|| monster->has_ench(ENCH_CHARM))
{
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
if (monster->attitude != ATT_HOSTILE
|| monster->has_ench(ENCH_CHARM))
{
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
monster->attitude = ATT_HOSTILE;
monster->del_ench(ENCH_CHARM, true);
behaviour_event(monster, ME_ALERT, MHITYOU);
// for now CREATED_FRIENDLY/WAS_NEUTRAL stays
if (mon->attitude != ATT_HOSTILE || mon->has_ench(ENCH_CHARM))
{
mon->attitude = ATT_HOSTILE;
mon->del_ench(ENCH_CHARM);
behaviour_event(mon, ME_ALERT, MHITYOU);
mon->attitude = ATT_HOSTILE;
mon->del_ench(ENCH_CHARM);
behaviour_event(mon, ME_ALERT, MHITYOU);
if (see_grid(mon->x, mon->y) && player_monster_visible(mon))
{
std::string aura = "";
if (see_grid(mon.pos()) && player_monster_visible(mon))
{
std::string aura = "";
if (holy)
aura = "holy";
else if (unholy)
aura = "unholy";
else if (lawful)
aura = "lawful";
else if (antimagical)
aura = "anti-magical";
if (holy)
aura = "holy";
else if (unholy)
aura = "unholy";
else if (lawful)
aura = "lawful";
else if (antimagical)
aura = "anti-magical";
mprf("%s is enraged by your %s aura!",
mon->name(DESC_CAP_THE).c_str(), aura.c_str());
}
mprf("%s is enraged by your %s aura!",
mon->name(DESC_CAP_THE).c_str(), aura.c_str());