The wait 2 seconds will trigger every tick as well, so after two seconds it will start trying to turn to object 2, but at the same time it's still trying every tick to turn to object 1 so it will remain facing object 1.
I'm guessing what you would like it to do is rotate to object 1, wait 2 seconds and then rotate to object 2?
If so, this should work:
Add an instance variable to the enemy called "target"; set it to 1.
Add a timer behaviour to the enemy.
Add this code to your event sheet:
Event: enemy| instance variable "target" = 1
Sub-event: enemy| NOT is within angle 2 of angle(enemy.X, enemy.Y, object1.X, object1.Y): Action: enemy| rotate 2 degrees towards (object1.X,object1.Y)
Sub-event: enemy| is within angle 2 of angle(enemy.X, enemy.Y, object1.X, object1.Y): Action: enemy | set timer "wait" to 2 seconds
Action: enemy | set instance variable "target" = 0
Event: Enemy| On timer "wait": set instance variable "target" = 2
Event: enemy| instance variable "target" = 2
Sub-event: enemy| NOT is within angle 2 of angle(enemy.X, enemy.Y, object2.X, object2.Y): Action: enemy| rotate 2 degrees towards (object2.X,object2.Y)
Hope that helps