Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    MX quando far partire un movie!

    Ciao a tutti ho un problema, anzi due, non so usare bene Action script e questo è uno.
    Invece l'altro problema è : ho un movie con dentro dei rettangolini
    che fanno un movimento di scale con action script in questo modo:

    onClipEvent (load){
    this._alpha=0;
    this._xscale=0;

    }
    onClipEvent (enterFrame) {
    if(this._alpha < 50){
    this._alpha += 5;
    }
    if(this._xscale<500){
    this._xscale+=(100)/7;
    }
    }

    bene il movie è posizionato sulla timeline principale...domanda?
    come faccio a dirgli che finito il loro movimento subentra un'altro
    movie con il proprio mivimento?

    Spero di essermi spiegata bene, vi ringrazio per l'aiuto!
    Grazie mille!

  2. #2
    Utente di HTML.it L'avatar di eng
    Registrato dal
    Mar 2002
    Messaggi
    1,227

    Re: MX quando far partire un movie!

    codice:
    onClipEvent (load){
    this._alpha=0;
    this._xscale=0;
    
    }
    onClipEvent (enterFrame) {
    if(this._alpha < 50){
    this._alpha += 5;
    }
    if(this._xscale<500){
    this._xscale+=(100)/7;
    }
    
    if ((this._alpha == 50)&&(this._xscale<500))
    {
    nextFrame;
    } else{
    gotoAndPlay(n);// qui al posto di n metti il numero del frame che contiene QUESTO movieclip 
    }
    
    }
    l'altro movie (quello che segue il primo) lo piazzi al frame n+1

  3. #3
    grazie mille per la risposta, ma il problema sussiste ancora!
    Dunque intanto cosa intendi "lo piazzi al frame n+1", se n=2 lo metto nel frame 3?
    Scusami se non capisco tanto!:tongue:
    ...sai il movie rettangolini che si muovono con lo script descitto prima sono tre, è quindi un movie con dentro tre movie.
    Ho provato mettere lo script che mi hai scitto su uno dei rettangolini ma non funzina...sai comunque aiutarmi?
    Grazie mille sei gentilissimo!

  4. #4
    Anzi scusami ho capito dove mettere il movie sono scema che non ho letto bene però mi passa subito al frame n+1..e non mi fa l'animazione del primo mivie?
    come mai?
    Scusami ancora e grazie mille!

  5. #5
    ...nessuno mi può dare una mano!
    Dunque spiego meglio, ho tre movie con tre rettangolini che fanno un animazione con questo script:
    onClipEvent (load){
    this._alpha=0;
    this._xscale=0;

    }
    onClipEvent (enterFrame) {
    if(this._alpha < 20){
    this._alpha += 5;
    }
    if(this._xscale<200){
    this._xscale+=(100)/7;
    }
    }
    ...bene io vorrei che al termine di questa animazione si spostasse sul
    frame successivo che contiene un'altro movie e allora aggiungo al mio script quest'altro pezzo:
    if ((this._alpha == 20)and(this._xscale<=200))
    {
    _root.nextFrame;
    } else{
    _root.gotoAndPlay(1);
    }

    Il problema sta nel fatto che i tre rettngolini hanno misure differenti di _xscale e quindi terminano non nello stesso momento.
    Non mi funziona non so come fare, potete darmi una mano.
    grazie mille!

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    284
    se vuoi continuare ad incrementare _xscale per il risultato di questa divisione (100)/7 prova a scrivere cosi:

    onClipEvent (load){
    this._alpha=0;
    this._xscale=0;

    }
    onClipEvent (enterFrame) {
    if(this._alpha < 20){
    this._alpha += 5;
    }
    if(this._xscale<200){
    this._xscale+=(100)/7;
    arrotonda=Math.floor(this._xscale);

    }
    if ((this._alpha==23.4375)and(arrotonda==214))
    {
    _root.nextFrame();
    }
    }


    "this._alpha==23.4375" perche ti incrementa di 4.6875 invece che 5
    e "arrotonda=Math.floor(this._xscale)"(che serve ad arrotondare per difetto) perche il valore finale era una cosa tipo"214.285714285714" e penso che flash non riesca a fare una uguaglianza tra questi valori.
    p.s. non so perche incrementa di 4.6875 invece che di 5

  7. #7
    Utente di HTML.it L'avatar di eng
    Registrato dal
    Mar 2002
    Messaggi
    1,227
    per far andare bene questo esempio prova cosi':
    codice:
    onClipEvent (load){ 
    this._alpha=0; 
    this._xscale=0; 
    
    } 
    onClipEvent (enterFrame) { 
    if(this._alpha < 20){ 
    this._alpha += 5; 
    } 
    if(this._xscale<200){ 
    this._xscale+=(100)/7; // ****
    } 
    
    
    if ((this._alpha == 20)&&(this._xscale >100*6/7)) 
    { 
    _root.nextFrame; 
    } else { 
    _root.gotoAndPlay(1); 
    } 
    // okkio che il frame che contiene questo MC e' il #1 e quello successivo e' il #2
    }
    MA tu scrivi "..i tre rettngolini hanno misure differenti di _xscale e quindi terminano non nello stesso momento. "

    Intendi che la riga marcata **** ha incrementi diversi ?

    Beh allora devi mettere dei flag.

    sul primo frame della root metti l'action:
    finito=0;

    e un MC vuoto a cui associ:
    codice:
    onClipEvent(enterFrame){
    	if (_root.finito<3){
    	_root.gotoAndPlay(1); 
    }
    
    
    
    // Mentre il main script diventa:
    
    
    
    onClipEvent (load){ 
    	this._alpha=0; 
    	this._xscale=0; 
    }
    onClipEvent (enterFrame) { 
    	if(this._alpha < 20){ 
    		this._alpha += 5; 
    	} 
    	if(this._xscale<200){ 
    		this._xscale+=(100)/7; // ****
    	} 
    
    
    if ((this._alpha == 20)&&(this._xscale >100*6/7)) 
    { 
    	if(!started)
    	{
    		_root.finito++;
    		started = true;
    	}
    } 
    }

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 © 2025 vBulletin Solutions, Inc. All rights reserved.