git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1975 c06c8d41-db1a-0410-9941-cceddc491573
NUYXKJP5YXHRDUQW5QW7UC3D5U3VPANIOZAOHFCPWMSRYGMA3GCAC T2AYVN57EFJQLFUFLAZDXKDAFDGTDLQIEQWQZNYFWJZBYSTYH4QQC TZTHE3TEKUDMNLAXWKHO66SYIVCVCIOJLKF3MCHSNJTXCKTWK3LAC Y7ZDLE2BHSLBQUXBWLAFBJXXIH5WYGPBRJDIH33WX7VPLO7PFODQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC 3NFVCXRVGHN2CHLLWFZES5RBS4R2BCDS4EEQNSDCFYIFQWQK7MUQC OP6CTAKWCAU64JXQ3USQYR5E5IFHQHNCACII5UMVRXUTZXJQOAZAC }// instead berserkers attack nearest monstersif (mon->has_ench(ENCH_BERSERK)&& (mon->foe == MHITNOT || isFriendly && mon->foe == MHITYOU)){// intelligent monsters prefer to attack the player,// even when berserkingif (!isFriendly && proxPlayer && mons_intel(mon->type) >= I_NORMAL){mon->foe = MHITYOU;}else{set_nearest_monster_foe(mon);}
int mx = mon->x;int my = mon->y;for (int k = 1; k <= 8; k++)for (int x = mx - k; x <= mx + k; x++)for (int y = my - k; y <= my + k; y++){if (x != mx-k && x != mx+k && y != my-k && y != my+k)continue;if (!friendly && x == you.x_pos && y == you.y_pos&& mons_player_visible(mon)){mon->foe = MHITYOU;return;}if (mgrd[x][y] != NON_MONSTER&& !(x == mx && y == my)){monsters *foe = &menv[mgrd[x][y]];if (mons_monster_visible(mon, foe)&& mons_friendly(foe) != friendly){mon->foe = mgrd[x][y];return;}}}}