Visualizzazione dei risultati da 1 a 9 su 9

Discussione: play all'indietro

  1. #1

    play all'indietro

    Ciao,
    ho un problema che spero voi riusciate a risolvere!
    Ho un movie (mc) con all'interno un'animazione di 51 Frame, ogni 5 frame circa ho messo uno stop e all'ultimo frame ho messo gotoAndStop (1).
    Nella scena ho messo anche due pulsanti uno avanti e uno indietro; a quello avanti ho detto on (press) {
    _root.mc.play();
    }

    E fino a qui tutto ok!!!

    Il problema è che vorrei dire al pulsante "indietro" di fare il play, ma al contrario, fino allo stop!!!!

    sapete aiutarmi????

    GRAZIE!!!!!!!!!!!

  2. #2
    codice:
    on(press) {
        var dove = nomemc._currentframe-1;
        nomemc.gotoAndStop(dove);
        this.onEnterFrame = function() {
            if(nomemc._currentframe%5!=0) {
                  nomemc.gotoAndStop(dove);
                  dove--;
            }
            else {
                  delete this.onEnterFrame;
            }
        }
    }
    dovrebbe andare.
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    Ti ringrazio ma mi spieghi un attimo quello che hai fatto?

    _Dove c'è scritto "dove" è una variabile messa da te e quindi non devo cambiare nulla o ci devo mettere il numero del frame, quale?

    _Nel "nomemc" naturalmente va messo _root.mc (dato che il movie si chiama mc)?

    _il "%5" per che cosa sta?

    Grazie

  4. #4
    Originariamente inviato da harpox
    _Dove c'è scritto "dove" è una variabile messa da te e quindi non devo cambiare nulla o ci devo mettere il numero del frame, quale?
    no, e' una variabile dinamica, non cambiarla



    Originariamente inviato da harpox
    _Nel "nomemc" naturalmente va messo _root.mc (dato che il movie si chiama mc)?
    e' il nome di istanza del movieclip che vuo i gestire, se sta sulla root sara' _root.nomeistanzamc



    Originariamente inviato da harpox
    _il "%5" per che cosa sta?
    hai detto che c'e' uno stop ogni 5 frame, quindi se il frame non e' divisibile per 5 non sara' in una di quelle posizioni da te scelte.



    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Ti ringrazio,
    un ultima cosa, se non rompo troppo i maroni, il fatto è che non è vero che ogni 5 o 6 frame c'è uno stop, lo stop c'è ogni tanto al frame numero 1, 7, 13, 19, 26, 32, 38, 45 quindi non è una cosa ripetuta con esattezza, e quindi dovrei riuscire a dirgli di fare il play al contrario fino allo stop, quindi metiamo di essere al frame 19, premendo il pulsante indietro deve riuscire a fare:18, 17, 16, 15, 14, e fermarsi sul 13 (dove c'è lo stop)

    Scusa se non ho spiegato esattamente prima, se riesci ad aiutarmi te ne sarei grato!!!
    Grazie

  6. #6
    Utente di HTML.it L'avatar di eng
    Registrato dal
    Mar 2002
    Messaggi
    1,227
    A-l°approccio

    crea un mc vuota che metterai sullo stage, all'interno della mc dove si trova la tua animazione, in un layer suo, sopra il frame by frame, questo layer dovra' avere la lunghezza della tua animazione, poi scrivi dentro la mc questo codice:
    codice:
    onClipEvent (enterFrame) { 
    if (_parent._currentFrame == _parent._totalFrames) { 
    a = true; 
    } else if (_parent._currentFrame == 1) { 
    a = false; 
    } 
    if (a) { 
    _parent.prevFrame(); 
    } else { 
    _parent.play (); 
    } 
    }
    -------
    B- associate al MC
    contenente l'animazione questo script:
    codice:
    onClipEvent(enterFrame){ 
    _currentframe==1 ? vai=true : (_currentframe == _totalframes ? vai=false : vai) 
    vai ? play() : prevFrame() 
    }

  7. #7
    Originariamente inviato da harpox
    Ti ringrazio,
    un ultima cosa, se non rompo troppo i maroni, il fatto è che non è vero che ogni 5 o 6 frame c'è uno stop, lo stop c'è ogni tanto al frame numero 1, 7, 13, 19, 26, 32, 38, 45 quindi non è una cosa ripetuta con esattezza, e quindi dovrei riuscire a dirgli di fare il play al contrario fino allo stop, quindi metiamo di essere al frame 19, premendo il pulsante indietro deve riuscire a fare:18, 17, 16, 15, 14, e fermarsi sul 13 (dove c'è lo stop)

    Scusa se non ho spiegato esattamente prima, se riesci ad aiutarmi te ne sarei grato!!!
    Grazie
    nel keyframe delle action della root scrivi

    var specifica;
    poi in ogni keyframe dove metti lo stop, metti sopra

    _root.specifica = "arrivato";

    poi usi sempre il codice che ti ho gia' postato ma cosi'
    codice:
    on(press) {
        _root.specifica = "movimento";
        var dove = nomemc._currentframe-1;
        this.onEnterFrame = function() {
            if(_root.specifica != "arrivato" && dove>0) {
                  nomemc.gotoAndStop(dove);
                  dove--;
            }
            else {
                  delete this.onEnterFrame;
            }
        }
    }
    dovrebbe andare
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Ti ringrazio tantissimo, un ultima cosa:
    la mia animazione e lunga 51 frame e al'ultimo ho detto gotoAndStop(1)

    posso dirgli che se è sul primo frame, premendo "indietro" vada al frame numero 50 e vada indietro fino al
    stop();
    _root.specifica = "arrivato";

    Grazie mille, dopo non ti rompero più i maroni

  9. #9
    codice:
    on(press) {
        _root.specifica = "movimento";
        var dove = nomemc._currentframe-1;
        this.onEnterFrame = function() {
            if(_root.specifica != "arrivato" && dove>0) {
                  nomemc.gotoAndStop(dove);
                  dove--;
            }
            else if(_root.specifica != "arrivato" && dove==0) {
                  dove=51;
                  nomemc.gotoAndStop(dove);
                  dove--;
            }
            else {
                  delete this.onEnterFrame;
            }
        }
    }
    ma tu non ci provi nemmeno a buttare giu' 2 righe di codice eh ???
    :tongue:
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

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.