I believe if you have several conditions in one event and the first condition is false, others are not evaluated. (Unless it's an OR-block)
But if you have several conditions in one expression, for example Enemy.Type="zombie" & Function.Call("GetEnemyHealth")>0 , the function will still be called and evaluated even if the enemy is not zombie.