Привет, суть такая - враг вычисляет только начальные координаты героя,а должен обновлять их, в чем проблема не пойму
класс игры, главный обработчик:

Код AS3:
//основной игровой обработчик
private function enterFrameHandler(event:Event):void{
// Расчет delta времени
_xPos = _hero.x;
_yPos = _hero.y;
//Enemy.update(_xPos, _yPos);
// Обработка врагов, находящихся в игровом мире
for (var i:int = 0; i < _listOfEnemies.length; i++){
(_listOfEnemies[i] as Enemy).update(_xPos, _yPos);
}
}
Класс врага, наследует пустой апдейт из другого класса и расширяет его. Если привязываю кординати например к мыше все работает норм.

Код AS3:
public override function update(xPos:Number, yPos:Number):void
{
// Временный код движения объекта
// демонстрирующий работу класса
var dx:Number = xPos - enemy.x;//находим дельта-Х
var dy:Number = yPos - enemy.y;//находим дельта-У
var angle:Number = Math.atan2(dy,dx);//Тангент угла=противоположная/прилегающую
//enemy.rotation = angle * 180 / Math.PI;//Радианы в градусы
if (xPos < enemy.x)
{
enemy.scaleX = - Math.abs( enemy.scaleX );
}
else
{
enemy.scaleX = Math.abs( enemy.scaleX );
}
if (Math.abs(dx)<=2&&Math.abs(dy)<=2) {//Сравниваем расстояние и скорость по-модулю,
speed = 0; //если расстояние меньше - останавливаемся
}
else if (Math.abs(dx)>2&&Math.abs(dy)>2) {
speed = _speedRandom;
}
_speedX = Math.cos(angle)*speed;//уравнение треугольника - имея гипотенузу(скорость),
_speedY = Math.sin(angle)*speed;//находим противоположную и прилегающую
enemy.x += _speedX; //стороны(скорости по х и у)
enemy.y += _speedY;//увеличиваем положение на скорость
//trace(dx,dy)
}