Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    15
    Ciao ragazzi...

    And non preoccuparti!

    Sleter; hai perfettamente ragione, vengo da una programmazione molto basilare e mi sono reso conto che con la sola linea temporale non sempre si ottengono i risultati voluti, ed è per questo che sto cimentandomi nel capire qualcosa di più...

    La soluzione da te proposta è molto snella e intuitiva... ora farò qualche prova; prima però avrei bisogno di qualche delucidazione:

    Se ho ben capito mantenendo la gestione delle clip come nel tuo esempio le azioni delle tween le metto nel fotogramma che cade sul clip specifico che deve fare quella determinata animazione in quel determinato istante...

    Da codice la gestisco con l'enterFrame? Poniamo che pippo deve apparire dal basso prima di pluto... il codice posto in corrispondenza delle clip deve essere il seguente:

    Ad esempio nel fotogramma 1

    codice:
    onEnterFrame=function() { 
    var ___tween___:Tween = new Tween(pippo, "_y", Back.easeOut, 700, 458,20,false);}
    Ad esempio nel fotogramma 5

    codice:
    onEnterFrame=function() { 
    var ___tween___:Tween = new Tween(pluto, "_y", Back.easeOut, 700, 458,20,false);}
    Grazie per la disponibilità

  2. #12
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    Ciao Maros

    Per utilizzare l'evento enterFrame sfruttando la timeline, praticamente basta inserire nel fotogramma in cui vogliamo applicare la transazione sul clip "pippo" questo codice:

    Codice PHP:
    import mx.transitions.Tween;
    import mx.transitions.easing.*;

    var 
    __tween__:Tween = new Tween(pippo"_alpha"Strong.easeOut01002true); 
    Nel fotogramma con il clip "pluto", stesso codice ovviamente sostituendo il nome dell'oggetto (clip) a cui è associata la Tween e stessa cosa per "paperino".

    In pratica l'evento enterFrame viene attivato dal fotogramma stesso quando il FlashPlayer è in esecuzione e la testina di riproduzione raggiunge il fotogramma con il codice.

    Per gestire l'evento enterFrame da codice AS2 presumo che come per AS3 sia necessario creare un "sensore" che tiene traccia del tempo trascorso (ovvero del numero di frame in esecuzione in relazione al valore di frameRate con cui è impostato il filmato) non saprei dirti molto altro perchè le mie conosceze in AS2 si sono fermate a un livello base.
    Solo da pochi mesi mi stò applicando più seriamente sullo studio di AS3 e avrei un'idea un pò più fondata su come gestire l'animazione creando un Timer che potrebbe far scattare l'evento Tween o Tweener in un determinato momento.

    Sto facendo delle prove in AS3 con la classe Timer e le Tweener caurina e se riesco a combinare qualcosa di valido e funzionale, inserisco qui il codice di esempio.

    alla prossima

    Ciao

  3. #13
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Perdonate l'ennesima intromissione, volevo segnalare che utilizzando la classe Tweener è possibile passare alla stessa un parametro delay che genera un ritardo nell'esecuzione dell'animazione, quindi poniamo di voler far partire l'animazione di opacità di tre clip a mezzo secondo di distanza l'uno dall'altro con una transizione di un secondo, avremo questo codice molto semplice:

    Codice PHP:
    Tweener.addTween(primoClip, {alpha:1time:1});
    Tweener.addTween(secondoClip, {alpha:1time:1delay:0.5});
    Tweener.addTween(terzoClip, {alpha:1time:1delay:1}); 
    Se non fosse chiaro, chiedete pure.

  4. #14
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    Ciao And80

    Avevo provato il parametro "delay" studiando sull'esempio che hai proposto sul sito che infatti mi sembrava fatto apposta per ritardare l'esecuzione dell'animazione ma nella prova che ho fatto (non sò, forse l'ho messo in una posizione non valida ?), sembrava che mi allungasse il tempo di esecuzione, ovvero i 2 secondi del parametro time diventavano 4 il che in effetti non aveva molto senso nè utilità (si poteva evitare semplicemente mettendo 4 invece di 2).

    Quindi basta mettere un delay per evitare funzioni sull' evento ENTER_FRAME o Timer:

    Codice PHP:
    import caurina.transitions.Tweener;

    pippo.alpha=0;
    pluto.alpha=0;
    paperino.alpha=0;

    Tweener.addTween(pippo, {alpha:1time:1}); 
    Tweener.addTween(pluto, {alpha:1time:1delay:0.5}); 
    Tweener.addTween(paperino, {alpha:1time:1delay:1}); 
    Bellissimo !!!

    Grazie And80 per la dritta

    ciao a tutti

  5. #15
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    Aggiungo comunque il codice per fare la stessa cosa con il Timer:

    Codice PHP:
    var mioTimer:Timer=new Timer(500,3);
    mioTimer.addEventListener(TimerEvent.TIMERalpha1);
    mioTimer.start();

    pippo.alpha=0;
    pluto.alpha=0;
    paperino.alpha=0;

    function 
    alpha1(evento:TimerEvent):void {
        
    Tweener.addTween(pippo, {alpha:1time:1});
        
    mioTimer.addEventListener(TimerEvent.TIMERalpha2);
    }
    function 
    alpha2(evento:TimerEvent):void {
        
    Tweener.addTween(pluto, {alpha:1time:1});
        
    mioTimer.addEventListener(TimerEvent.TIMERalpha3);
    }
    function 
    alpha3(evento:TimerEvent):void {
        
    Tweener.addTween(paperino, {alpha:1time:1});

    A dimostrazione del fatto che quando la conoscenza è limitata si rischiano inutili giri di codice.

    ciao

  6. #16
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    15
    Per carità sono assolutamente cosciente di avere conoscenze basiche sull'as ma pur da qualche parte dovrò iniziare!

    Per impostare il ritardo, nel mio caso, devo integrare il codice che riporta la funzione timer? in quanto ho visto che Slater ha usato caurina... che per ora non so utilizzare!

    Faccio fede all'ultimo codice postato da And80?

    Grazie!

  7. #17
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    ciao Maros

    Certo che devi fare riferimento all'ultimo codice suggerito da And80 !

    E' il più sintetico e semplice ma anche And80 per utilizzare il parametro delay ha usato caurina e AS3 come puoi vedere dal modo con cui è scritta la proprietà alpha (in AS2 sarebbe stato _alpha).

    Per farla breve: Non è necessario che studi codice e metodi obsoleti.
    Molto più saggio è affidarsi agli esperti che in questo caso, sembrano molto più convinti sull'utilizzo delle Tweener caurina in alternativa alle Tween.

    Se poi c'è stata un'evoluzione, ovviamente in meglio da AS2 a AS3, perchè continuare a usare AS2 quando gli esperti affermano che AS3 oltre a essere 7 volte più veloce è anche più potente e preciso ?
    Non credo che gli ingenieri della Adobe siano sadici perversi che si siano divertiti a penalizzare gli sviluppatori di AS2 cambiando tutte "le carte in tavola" se questo non fosse stato utile e necessario.

    Comunque scusami, non avrei mai voluto confonderti le idee ed era nelle mie intenzioni esattamente il contrario.

    ciao

  8. #18
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    15
    Ok... allora comincerò nello studiarmi la guida di And su Caurina... grazie per i consigli. Quando riuscirò a mettere su qualcosa che funzioni posto il codice...

    Grazie e a presto...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.