Closing as not a bug: you're expecting 'else' to pick instances, but it does not. 'Else' simply means 'the previous event did not run'. It's possible to move the mouse over multiple different instances (since the mouse actually moves in steps, rather than smoothly, it can cross the gap easily) without the event ever being false. In this case the else event never runs even though the cursor is over a new object. The else event does not run until the mouse is not over any instances at all.