git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6947 c06c8d41-db1a-0410-9941-cceddc491573
G6EMU6AVVUJOJRN6NZK7HYS7KSPKTYLMSB3ERG7YWE7V2ZTLZJSQC Y7RTDNSXNZG2YQ6VPTWOBLMTKIWABSNXCR7XRWU3QWTWRTTOXYCQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC Z7FLGOQODOWQ2FDJRMCNM6MM3FOVORG6BMJZ3AA5HADPNJTYZD2QC E5DMZFW6WCFAKTKKOQPYTQXZ2CGLWMVH64LRXDUI2UIG4VYUHIVQC RSIUBEQUGNU4LO6KH4PKVROWQS33DAKSY4XFVGN7T3CEKSXABCSAC YCL3W2PFE6ILTGBFODCSXNPDIA46KVSZP2TI7HDMYAOEJT65RIEAC X5WLJCJVW55SXZVP7IKP7ADCJIGNKN4PKAXFECVR6TNK7XSMZR7QC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC // Now do the monsters:
// Now do the monsters.// First build the message.counted_monster_list affected_monsters;for (int i = 0; i < MAX_MONSTERS; i++){const monsters* const monster = &menv[i];if (monster->alive() && mons_near(monster))_record_monster_by_name(affected_monsters, monster);}if (!affected_monsters.empty()){const std::string message =make_stringf("%s %s frozen.",_describe_monsters(affected_monsters).c_str(),_monster_count(affected_monsters) == 1? "is" : "are");if (static_cast<int>(message.length()) < get_number_of_cols() - 2)mpr(message.c_str());else{// Exclamation mark to suggest that a lot of creatures were// affected.mpr("The monsters around you are frozen!");}}// Now damage the creatures.// Set up the cold attack.
{hurt_monster( monster, hurt );if (monster->hit_points < 1)monster_die(monster, KILL_YOU, 0);else{print_wounds(monster);
hurt_monster(monster, hurt);
if (mons_class_flag(monster->type, M_COLD_BLOOD)&& coinflip()){monster->add_ench(ENCH_SLOW);}}}
// Kill monster if necessary; cold-blooded creatures can be slowed.if (monster->hit_points < 1)monster_die(monster, KILL_YOU, 0);else if (mons_class_flag(monster->type, M_COLD_BLOOD) && coinflip())monster->add_ench(ENCH_SLOW);