Los pasos serían
1.-Añades un listener al "enemigo" de tipo ENTER_FRAME
2.-En la función acercas el enemigo al heroe
Falta saber si el enemigo se mueve sólo en horizontal/vertical, o también se puede mover en diagonal o simplemente se mueve en línea recta hacia el héroe
También deberíamos considerar a qué velocidad se mueve.
Según sea el movimiento, la función cambiará
Vamos, si tenemos dos MCs "enemigo" y "heroe". Voy a suponer que se mueve a "velocidad constante"
Código ActionScript :
//Si se mueve en línea recta, podemos usar Math.atan2(y,x)
enemigo.addEventListener(Events.ENTER_FRAME, perseguirHeroe)
function perseguirHeroe(e:Event){
var ang_rad=Math.atan2((enemigo.y-heroe.y),(enemigo.y-heroe.y))
enemigo.x+=10*Math.cos(ang_rad)
enemigo.y+=10*Math.sin(ang_rad)
}
Código ActionScript :
//Si se mueve sólo horizontal y verticalmente
enemigo.addEventListener(Events.ENTER_FRAME, perseguirHeroe)
function perseguirHeroe(e:Event){
var inc_x=(heroe.x>enemigo.x) ? 1 :((heroe.x<enemigo.x) ? -1:0 )
var inc_y=(heroe.y>enemigo.y) ? 1 :((heroe.y<enemigo.y) ? -1:0 )
enemigo.x+=10*inc_x
enemigo.y+=10*inc_y
}
NOTA:El código NO lo he probado, lo he hecho a modo de que veas cómo hacerlo
NOTA2:Falta, en el código, comprobar cuándo está cerca.