what you need to do is apply the effect ONLY ONCE!
you do NOT need to retexture/set object effect every single frame.
Generally, I try to wrap stuff up in functions, so I would have a function like this:
function decreaseEnemyHP(num,amount)
if amount=0 then exitfunction
dec enemy(num).ehealth, amount
if enemy(num).ehealth=8 then texture object num,17:set object effect num,16
if enemy(num).ehealth=5 then texture object num,18:set object effect num,16
if enemy(num).ehealth=3 then texture object num,19:set object effect num,16
if enemy(num).ehealth=2 then texture object num,20:set object effect num,16
You can do it other ways too, but the key point is ONLY reset the texture/effect when the variable ehealth is changed!

Tell me if there's a broken link to images in a thread I post, and I'll fix 'em.