I have not used the "WAIT" plugin, but I think I have a fair idea of what the specific issue is.
The initial check is a point of reference for which Enemy to destroy. However after 3 seconds, it does not have that point of reference, so it culls the lot. To get around this issue, I would suggest making use of a private variable to calculate the 3 second delay. Something along the lines of
Enemy.value('isSeen') greater than 0 - clamp(Enemy.value('isSeen') + 100 * timedelta, 0 , 300) - Destroy Enemy.
And have an event that is like this
Enemy.value('isSeen') equal to 0 - set Enemy.value('isSeen') - 1
So this will only trigger once, and it will be unique to each Enemy.