C´est bien compliqué ce que tu nous demande.
Pour une map 2D ( mais je pense que c´est adaptable a une map ISO) j´avais pensé à ca ( c´est du C, je connais pas flash) pour voir à quelles coordonnées en tiles on etait a partir des coordonnes en pixels :
int i,j, xmousepix, xmousetiles, ymousepix, ymousetiles;
for ( i=0;i<mapw;i++)
{
for ( j=0;j<maph;j++)
{
if ( (xmousepix>=i && xmousepix<=i*tilew) && ( ymouse>=j && ymouse<=j*tileh))
{
xmousetiles=i;
ymousetiles=j;
}
}
}
Explications : euh... Est-ce necessaire ? Bon là c´est pour du carré or tu cherche du losange... mais je pense que tu n´as qu´à adapter...
P.S. : tilew = largeur d´un tile et tileh = hauteur d´un tile...