• User Attivo

    Actionscript 3: impostare manualmente lo z-order (o depth) ?

    Ciao a tutti,

    Mi chiedevo se, e come fosse possibile impostare manualmente la profondità di un movieclip in actionscript 3.0 (adobe flash cs3).

    So che c'è la funzione swapChildren, ma questa accetta valori da 0 al numero di movie clip presenti, io invece ho bisogno di assegnare delle profondita arbitrarie (ad esempio se c'è una movie clip soltanto, devo poter assegnare anche una profondità di 200, poi magari ne metto un altra e devo dargli come profondità 100, o 300, ecc...)..

    Il problema è che sto facendo un tool per creare scene isometriche (stile habbo hotel), e devo fare una funzione che data la posizione del tile nella mappa isometrica mi ritorna la profondità da assegnare allo stesso per ottenere il giusto ordine di profondità di tutti gli elementi della scena (la profondità la ottengo facendo depth = x*larghezza_griglia + y), ma questo mi restituisce un valore che, se posiziono ad esempio il primo tile in basso a destra mi darà la depth massima (ad es. 600), e se poi ne posiziono un altro in alto a sinistra mi darà ad esempio depth=0 perchè deve stare in ultimo piano....ma questi valori non posso assegnarli con la funzione swapChildren perchè questa si aspetta una valore da 0 al numero di movieclip (proprio perchè il valore che gli passo rappresenta un indice del movie clip, che più alto è e più in alto mette il movieclip).....

    Mi serve quindi una funzione, attributo, ecc... che mi permette di assegnare arbitrariamente un "peso" di profondità ad una movieclip, in modo che poi magari in qualche modo li normalizza automaticamente il flash, o qualcosa del genere....

    Come posso fare? qualche suggerimento ?

    Grazie 🙂


  • Super User

    Ciao,
    con Actionscript 3.0 il metodo swapDepths è stato rimosso.
    Quì c'è un articolo che spiega come gestire i depths con Falsh CS3:
    http://www.flepstudio.org/index.php?option=com_content&task=view&id=54&Itemid=1