proper message is always displayed when they happen.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4677 c06c8d41-db1a-0410-9941-cceddc491573
I2ZR5QRPQEDTO5V5ILIJUA5KIEOGJY3BRHRNPXS5BJG7GXTBXJSQC P2OYYNPHIBGOLT4CRLNTTIXDN34EU2QCMFQJNLAMUAHQXZTEDPXQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC PEXHYCLRKDG2PVOJ3DDCMUZUK2HTSPU5WKH4MODFL4FTBQRQTY5QC JDZCDMUCQ7VENYVLB62KQWUIRGABID37OKATOKCBUPCDL7W75NPAC A3QXTQ5RKIGDWIKA7JHIGIHQE5EVGO6WNNWF6XY2VZNP67JESDHQC KOBNLIHIAHSV6IPA3R4HI2KB5HY5XIIJQPJ2GBETYB5AK73NAKJQC TN2D3PHU7VSGUND2BDIC2F4U6O2HFSV3JXLF7HMYYMY7GZXM6IFAC IT3NSSLR756K7TZ7S7DOMS7DZUVGIFS5EAR22PEERAF5ZRBICV4AC RW5UFKOQ5JYDVX7LEW26AWEFKFA4M5PTAIXWRCVESEQK3WKTY6VQC UFKLHUYL7WAQ3CI3D42T4C6KBGAUR63DSQAUQTTZG7GJMXSCVJWAC SQFABNVS6OSVRBMJAIV6KIIZW2TYIOQ5BZGLPYJ6BPFD2HMRH4MAC BWHU47MJ7KAVKMKMRBVYLOHUCASSNVCGPC3SPMNBAC7DLI6XX2YQC FDMKFGCTWKKSBP3B5VE4BSVFHUVNX5BSDFRVD6E735DHPVYEQFGQC CQD3RU44235F3CYFDZBC3JRT2H3AE7PXJNVBBMCRF65Q5LPA3EHQC // If you don't worship a good god, you make all// non-hostile holy beings hostile. If you do worship a// good god, you make all non-hostile evil and unholy beings// hostile.else if ((mons_is_holy(monster) &&!is_good_god(you.religion)) ||(mons_is_evil_or_unholy(monster) &&is_good_god(you.religion)))
// If you don't worship a good god, you make all non-hostile// holy beings hostile.else if (!is_good_god(you.religion))
return apply_to_all_dungeons(_moral_beings_on_level_attitude_change);
return apply_to_all_dungeons(_holy_beings_on_level_attitude_change);}static bool _evil_beings_on_level_attitude_change(){bool success = false;for ( int i = 0; i < MAX_MONSTERS; ++i ){monsters *monster = &menv[i];if (monster->type != -1&& mons_is_evil_or_unholy(monster)){#ifdef DEBUG_DIAGNOSTICSmprf(MSGCH_DIAGNOSTICS, "Evil attitude changing: %s on level %d, branch %d",monster->name(DESC_PLAIN).c_str(),static_cast<int>(you.your_level),static_cast<int>(you.where_are_you));#endifif (is_good_god(you.religion)){// If you worship a good god, you make all non-hostile// evil and unholy beings hostile.if (monster->attitude != ATT_HOSTILE){monster->attitude = ATT_HOSTILE;behaviour_event(monster, ME_ALERT, MHITYOU);// for now CREATED_FRIENDLY/WAS_NEUTRAL stayssuccess = true;}}}}return success;}static bool _evil_beings_attitude_change(){return apply_to_all_dungeons(_evil_beings_on_level_attitude_change);