giant eyeballs, eyes of draining, eyes of devastation, or great orbs of eyes will now be spawned outside player LOS.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7335 c06c8d41-db1a-0410-9941-cceddc491573
N7KLZSYDHJYZ6UYV6YSXCO53NLWOFWJF43IOKZHDLFLR67B2USPAC JX6YMUFJWDYHL72GVQDQWC26E4EEJAFRTIN5XZIY3B4S2M4V4KHAC SLLTYX5LKR3TL75K5CTVINM42WQR5XY5HWYROSCXHP4DTFEGTCMAC KFULGQQOHWUTXOM3BXCCYPGGVGGY4Z6265XUFRCBPNLTZAEHJZSQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC SWOYPTHJAWFEDBMB3ROT33VQZIXGZD5UOXEV456DDUENW2HGA66QC G2EYUPAIPISVAEG26BS3SQANL37EEZJ3TZBJKKWHGKQ66LB3RFQAC ZSW72OXJ3ZHULVRLHEIJTD6HA5LCH6PX46TSSM65A3O45RI7L2SAC 7MIGVW67NPURCPMLLMCUQQPEYPXFXKUQQMG4OTEQWYXZ2WM6CQ4QC LEGFIEUGVU2LZELGQH4TZTIJGKEVUHFTRGQ4Y2KGLSK7KNDI7BFQC 3XL4DKV7PSWAU3ZBJSKZFJ2VUYABC47I7KKWGIRCJYXULQD453MQC CGYTZT5QWIEGYKUOLOK7MFXSLJKLYRZONER5ZCDZO5XYWSLG475QC YVLLVKCGD7Y3LXWJGZRVLC23O6W5DVJAJ452SBKARSEZFXNPBV7QC DKRSOHZXL6EPSLKOKHF7GJXSZEJVY7CXGACSHWLM5B5FTRETWWCAC DVCPTGG5UWM4QMV3TJOLC4BDB77WUGQTJSU5NXQWOSIGSVL7E37AC SIDH2P7NBIG5KEOE27XHD3ZT2NQ2OJZFN6VZXWNWYFFY5YVXSSVQC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC 7OUAAZXWRGOXSQR5ELUZ25KQ5DMWAZBBPFIIZNSEXTTANSJKONLAC TGJZXTUIAKCFZQJ54ZQEBGFBVZSJCAX6AWDRSH3TP7UJRLGUM5SAC 5B5DP5S6A6LQMKZYVLQAEMHQZWFWYDHPCKQGRNSCNNYIBQYZ6BIQC NG53L53MSFQZAIVKHG54IEMXNJ33AYVPF2OZM4MMJFDKEJCGPBSAC T5XERKCC6UL2UI2HKE34BTKNINTOXOSDCBYGC3A3JY7XMKIQW4GQC UIQABYXDQ4JIVMVEAQCOVR3HOKNNQCAGMGRETLEX3KISPCHCIIOQC 2PZXX7DNNOL5X3TF2ID22AGDHLHUHBPSAXQJR6EWG5YAXRJCAYWAC simple_god_message(success ? " sends the divine host to punish ""you for your evil ways!": "'s divine host fails to appear.",god);
if (success)god_speaks(god, "You feel Zin's eyes turn towards you...");elsesimple_god_message("'s eyes are elsewhere at the moment.",god);
}}// restrict_not_LOS: restrict target to be outside PLAYER line of sight.bool monster_random_space(const monsters *monster, coord_def& target,bool restrict_not_LOS){int tries = 0;while (tries++ < 150){target.x = 10 + random2(GXM - 20);target.y = 10 + random2(GYM - 20);// Don't land on top of another monster.if (mgrd(target) != NON_MONSTER || target == you.pos())continue;if (is_sanctuary(target) && !mons_wont_attack(monster))continue;if (restrict_not_LOS && see_grid(target))continue;if (monster_habitable_grid(monster, grd(target)))return (true);
while (true){newpos.x = 10 + random2(GXM - 20);newpos.y = 10 + random2(GYM - 20);
if (monster_random_space(monster, newpos))monster->moveto(newpos);
// Don't land on top of another monster.if (mgrd(newpos) != NON_MONSTER || newpos == you.pos())continue;if (is_sanctuary(newpos) && !mons_wont_attack(monster))continue;if (monster_habitable_grid(monster, grd(newpos)))break;}monster->moveto(newpos);