create an instance var for enemies called AI (number-type)
When AI = 0 and every 2 secs,
-> Set AI to choose(1,2)
When AI = 1
-> Simulate enemy "Right"
-> Set enemy to walk animation
-> Set enemy Not Mirrored
When AI = 2
-> Simulate enemy "Left"
-> Set enemy to walk animation
-> Set enemy Mirrored
Enemy has a wall to right
-> Simulate enemy "Left"
-> Set enemy to walk animation
-> Set enemy Mirrored
Enemy has a wall to left
-> Simulate enemy "Right"
-> Set enemy to walk animation
-> Set enemy Not Mirrored
That's a basic AI. You can set AI = 3 for run right, 4 for run left, 5 for attack, 6 for hurt, etc. if you want more complex AI
For run and attack, I suggest using a var to store every tick the distance between you and every enemy so each enemy will calculate its own unique distance from you, then use that distance variable to determine when enemy will attack (for example X<50 when close range attack, x>150 when long range attack). Differentiate Run from Walk by the speed (adjust both max speed and vector x for both run and walk). Of course animations of Run and Walk should be different, or at least different in animation speed.
Oh I forgot, you have to use "For Each: Enemy" on every single event of AI to make each behave independently from other enemy instances.
I hope this gets you started on AI. Good luck.