Heh

Rozwiązałem problem. Bez gimnastykowania.
Adanos, wykorzystałem Twój warunek z zmienną bool IsPalyed. Jedyne co dodałem to event onmousemove dla formy (głównego okna). W samej metodzie dla formy dodałem instrukcję:
IsPlayed = false;
Dzięki temu, gdy kursor przesunie się poza TImage to automatycznie wejdzie na formę, czyli uruchomi się zdarzenie onMouseMove dla Form1. Samo to zdarzenie ustawi zmienną bool na flase, dzięki czemu warunek if dla image zostanie ponownie aktywowany.
Co więcej, mogę stosować jedną zmienną bool dla wszystkich 6 obiektów TImage.
Ominąłem najczarniejszy scenariusz, gdzie musiałbym zczytywać współrzędne kursora, co byłoby cholernie nieoptymalne.
Czyli okazało się, że to faktycznie jest takie proste na jakie wyglądało.
Dzięki wielkie za pomoc

Edit:
W moim programie Image mają niewielkie przerwy między sobą. Problem jest taki, że podczas szybszego ruchu myszką, kursor nie zjeżdża na formę, tylko automatycznie przeskakuje na kolejny image. Co z kolei sprawia, że zmienna IsPlayed się nie resetuje.
Chyba nie obejdzie się bez tablicy zmiennych boolowskich.