hola yo de nuevo desde hace un tiempo que no aparesco. me vendria bien una ayuda si alguien puede con este tema, pasoa  explicar, estoy haciendo un rompecabezas simple, pero tengo un problema, si las piesas estan encimadas, yo al hacer click todas las piesas se mueven conmigo, como hago para desir que solo tome la pieza que esta arriba, les dejo adjunto aca mi mini proyecto. muchas gracias desde ya..

Declara una variable en create ejem: activo=false;
compara en el event step si se encuentra con otra ficha; place_meeting(x,y,objFichaParent) ficha parent es una ficha que se usa para emparentar a todas o tendrias que comparar cada una por separado.
Luego compara el depth de cada ficha y la de menor depth le activas la variable activo=true;
luego colocas algo asi.
if activo then
{x=mouse_x; y=mouse_y;}
No te doy todo el codigo por que la idea es que tu lo hagas no YO.
Pero creo que me he explicado bien.
Atentamente.-
Elvis Kelley
Mi Manual.
Mi canal de Youtube Youtube click aqui
Video tutoriales Game maker


igual no entiendo mucho lo del place_meeting(x,y,objFichaParent), me podrias mostrar en un ejemplo,


La función collision_point siempre toma la id de la instancia visible en ese punto, sin importar si hay varias más por debajo. También recomendaría cambiar la profundidad de la pieza seleccionada de manera que la seleccionada siempre sea la que tenga menor profundidad, de lo contrario podrías mover piezas por debajo de otras, se vería raro.

Te dejo un ejemplo básico: