• User

    Ciao, grazie per la risposta, funziona :fumato:
    ma in questo modo c'è uno stacco netto fra la posizione iniziale e quella scelta dal pulsante e io vorrei che ci fosse una sorta di animazione che mi faccia partire l'elemento dalla posizione in cui l'utente l'ha piazzato fino alla posizione scelta da me con il pulsante :arrabbiato:

    nn posso linkare il sito sul forum dato che ci sono tutte le informazioni personali del cliente, ecco perchè ti chiedevo se fosse possibili linkarti solo quello in pm e poi continuare qui.

    Ti prego aiutami!
    è l'ultima volta che mi faccio fregare, ti chiedono prima una cosa semplice semplice da fare... e poi alla fine ti ritrovi ad aggiungere cose nn previste, che nn sai fare dato che nn è il tuo campo, e se nn fai come dicono loro subito se ne escono con la frase: "OK ALLORA CI RIVOLGIAMO ALTROVE"!!!! SONO IN PANICO!!! AAARRRRGGHHHHH!!! 😢


  • Super User

    Usare la tween class per aggiungere un animazione tipo bounce
    Esempio di codice:

    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    var clip_array:Array = new Array(mc1, mc2, mc3, mc4);
    btn.onRelease = function() {
        for (var i:Number = 0; i<clip_array.length; i++) {
            new Tween(clip_array*, "_x", Elastic.easeOut, clip_array*._x, (clip_array*._width+20)*i, 3, true);
            new Tween(clip_array*, "_y", Elastic.easeOut, clip_array*._y, 20, 3, true);
        }
    };
    ```In breve, importa la classe tween, crea un array che contiene i clip filmati, crea un loop basato sul numero di item dentro l'array, applica il tween su le proprieta _x e _y di ogni clip (in ordine, i parametri sono : nome del clip a quale viene applicato l'effeto, la proprieta del clip, tipo di effetto, valore iniziale, valore finale, tempo di transition, true per il tempo in sec).  Quello codice è valido se i clip devono assere allineati orrizzontalmente (sarebbe l'uso di clip_array*._width+20)*i per la proprietà x- aggiunge la larghezza del clip multiplicato per i + 20px di spazio per staccarli un po)
    
    Ci sono differenti effetti disponibile il Elastic.easeOut è solo un esempio.
    La lista puo essere trovata qui:
    http://livedocs.adobe.com/flash/8/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001502.html
    
    Da provare e modificare come ti pare...l'esempio è tanto per darti un idea.:)

  • Super User

    Ti allego un esempio veloce...sarebbe da lavorarci sopra un po.:)


  • User

    wowwwww!!!!!!!!!! GRAZIEEEEEE!!!!!!!!!!!! :yuppi:

    Ho appena visto l'esempio, fantastico proprio quello che cercavo, ora provo ad adattare il codice al mio lavoro.
    BELLISSIMO!!!

    Ti faccio sapere come va a finire (speriamo bene) 😄

    spero di riuscirci :rollo:


  • User

    scusa se ti scoccio ancora ma sto studiando il tuo codice, e la cosa che nn mi è chiara è quale parametro mi va a definire la posizione finale dei clip

    • new Tween(clip_array*, "_x", POSIZIONE INIZIALE CHE RESTA INVARIATA-

    • Elastic.easeOut, clip_array*._x, - TIPO DI EFFETTO APPLICATO

    • (clip_array*._width+20)*i, 3, true); - POSIZIONE FINALE SPAZIO FRA LE CLIP E SECONDI -

    giusto?

    ma dove applico i valori "x" e "y"?

    Ho provato sulla guida ma nn riesco


  • Super User

    @Mekino said:

    • new Tween(clip_array*, "_x", POSIZIONE INIZIALE CHE RESTA INVARIATA-

    Quello non è la posizione iniziale.
    clip_array* è il nome del clip a quale viene applicato l'effetto
    _x è la proprietà del clip a quale è applicato l'effetto
    Di la che si ripete 2 volte la stessa cosa:
    new Tween(clip_array*, "_x",....effetto applicato alla proprietà x del clip
    new Tween(clip_array*, "_y",...effetto applicato alla proprietà y del clip
    Le posizione iniziale sono clip_array*._x e clip_array*._y
    @Mekino said:

    • Elastic.easeOut, clip_array*._x, - TIPO DI EFFETTO APPLICATO

    Ok
    @Mekino said:

    • (clip_array*._width+20)*i, 3, true); - POSIZIONE FINALE SPAZIO FRA LE CLIP E SECONDI -

    Ok, quello è usato per la proprietà x, mettendo i clip in linea orrizzontale
    Per la proprietà y invece il valore finale nel esempio è di 20

    @Mekino said:

    ma dove applico i valori "x" e "y"?
    Ho provato sulla guida ma nn riesco
    Non ho capito quella domanda...spieghi meglio il problema.:D


  • User

    ciao, ti spiego, semplicemente nn riesco ad inserire la proprietà "x" ..

    ho bisogno di dire alle clip di andare in determinati punti "x" e "y" ma nn so dove inserire i numeri per le cordinate, spero di essere stato chiaro 😞

    Ci sto provando da ieri :mmm:


  • Super User

    Come devono essere posizionati questi clip?
    Il loop for è utile se devono essere posizionati seguendo la stessa logica (nel esempio, in linea orrizontale sul axe x e con la stessa y) se non il caso, sara da posizionare ogni uno senza l'uso del array e senza l'uso del for (togliando il for e cambiando il clip_array* iniziale con il nome d'istanza del clip filmato)

    La parte in grassetto è dove viene inserito il valore finale sia per x che per y
    new Tween(clip_array*, "_x", Elastic.easeOut, clip_array*._x, (clip_array._width+20)i, 3, true);
    new Tween(clip_array*, "_y", Elastic.easeOut, clip_array*._y, 20, 3, true);


  • User

    Ciao Onsitus, credo di esserci riuscito eliminando l'array e posizionando i clip uno ad uno in questo modo riesco a gestirli meglio, il codice è questo:

    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    btn.onRelease = function() {
    new Tween(mc1, "_x", Elastic.easeOut, mc1._x, 10, 3, true);
    new Tween(mc1, "_y", Elastic.easeOut, mc1._y, 20, 3, true);
    new Tween(mc2, "_x", Elastic.easeOut, mc2._x, 397, 3, true);
    new Tween(mc2, "_y", Elastic.easeOut, mc2._y, 298, 3, true);
    };

    inserendo i valori uno ad uno, e aggiungendo due righe di x e y per ogni filmato riposizionato.

    nn so come ringraziarti credimi, hai perso na marea di tempo dietro di me 😉

    ho ancora TANTE DOMANDEEEEEEE ma ti lascio respirare 😄

    sul serio, grazie mille...


  • Super User

    Hai fatto giusto.

    Prego.:)