Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    codice:
    on (rollOver) {
    setProperty("_level0.go.arrow", _rotation, 180);
    setProperty("_level0.go.white", _alpha, 70);
    }
    Il codice che tu hai inserito, utilizza una sintassi un po' vecchiotta; se non ricordo male, da flash 5 in poi potresti riscrivere lo stesso codice, semplificandolo, così:

    codice:
    on (rollOver) {
    arrow._rotation=180;
    white._alpha=70;
    }
    ...anche perché se gli oggetti "arrow" e "white", si trovano al suo interno, non serve che scrivi il percorso per esteso ma puoi usare il percorso relativo alla timeline da cui parte il comando.

    Comunque, se il movimento deve essere graduale, puoi farlo con un'interpolazione di movimento (o di forma...) oppure con AS.

    Nel primo caso, non devi fare altro che entrare nella timeline dei due oggetti e creare l'animazione di rotazione in un caso e di fading nell'altro; poi, nell'evento rollover non cambi le proprietà ma dai un gotoAndPlay al frame di inizio animazione:
    ...
    arrow.gotoAndPlay(2);
    ...


    Nel secondo caso devi aggiungere anche un evento enterFrame e modificare le azioni del "pulsante" in questa maniera:

    codice:
    on(rollOver){
    	sopra=true;
    }
    on(rollOut){
    	sopra=false;
    }
    onClipEvent(enterFrame){
    	if(sopra){
    		if(freccia._rotation<180){
    			freccia._rotation+=10;
    		}
    		if(bianco._alpha>70){
    			bianco._alpha-=10;
    		}
    	}else{
    		if(freccia._rotation>0){
    			freccia._rotation-=10;
    		}
    		if(bianco._alpha<100){
    			bianco._alpha+=10;
    		}
    	}
    }
    Ah, ti consiglierei di cambiare il nome "arrow" in "freccia" perché il primo è una proprietà di Flash.
    FaX

  2. #12
    Grazie sei stato molto esauriente ti ringrazio molto...
    Ultimo dubbio che mi è rimasto è cosa serva il comando:
    codice:
    onClipEvent(enterFrame)
    Non ho mai usato "enterFrame"

    Ancora grazie per la spiegazione

  3. #13
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    E' uno degli eventi dei movieclip (l'altro è il "Load").
    E' legato alla timeline a cui si riferisce (o quella di un movieclip o quella della _root) ed è un controllo continuo con velocità variabile a seconda del framerate del filmato (da qui il nome...); in pratica se un filmato ha 25 come indice di framerate, tutte le azioni contenute nell'evento enterFrame vengono eseguite 25 volte al secondo.
    FaX

  4. #14
    Ottimo grazie E, a proposito del metodo timeline... se io invece che applicare un effetto allo sfondo (white) o alla freccia (arrow/freccia) volessi applicarlo direttamente al pulsante, anche in quel caso potrei fare:
    codice:
    on (rollOver) {
    arrow.gotoAndPlay(2); 
    }

  5. #15
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    :master:

    ...è un po' diverso!
    Se tu fai così, vuol dire che l'effetto che vuoi dare agli oggetti l'hai fatto con un'interpolazione. Il rollOver è un evento che non ha un ciclo quindi devi per forza dare un'azione che sposti la testina di riproduzione sulla timeline.

    Con l'enterFrame fai tutto con lo script: gli effetti li applichi direttamente all'istanza che richiami.
    FaX

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.