Well first i think you have to refine the AI to construct 2 Event Model.
For example :
If it fails to reach its target, it will back up a bit, then re-attempt
The first event seems to be a comparison of :
Fighter.X + (size from point 0 to weapon) AND Fighter.X + (size from point 0 to weapon)
=> Fighter.attacking=true
=> Fighter set Animation "Attack"
=> ActTimer.start (0.5) // the time to reach end of attack animation
Fighter in collision with Player AND Fighter.attacking==true
This is just the begining... but i hope you understand how to.
I think you should analyse the pattern with event handler and timer
Sorry for explainning with my own understood i'm not fluent to write event of construct 2 ^^