Походу есть ещё вариант: EntityVisible(ent,dest_ent)
только для этого надо стенам добавить EntityPickMode - это чтобы враг сквозь стены не подглядывал
А что касается угла обзора, то вот я вытащил из обучалки BlitzSchool:
If (180 - Abs( DeltaYaw(aEnemies(i)\enemysphere, player))) < 100
Пока работает, может быть кто знает, какие здесь минусы есть?