Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    MC che avanza tenendo premuto bottone

    Ciao, ho creato un MC della lunghezza di 8 frame e ogni frame contiene un'immagine. Sotto le immagini ci sono 2 bottoni (avanti e indietro).
    Tenendo premuto avanti devo fare in modo che le mie immagini scorrano avanti, al contrario tenendo premuto indietro le immagini mi devono retrocedere, se mollo il pulsante il clip mi si deve fermare nell'immagine in cui mi trovo in quel momento, se lo ripremo continua a muoversi nel senso in cui stava andando.
    Come fare?
    ...perchè quando uno lavora....lavora!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    2,008
    Supongo che le immagini siano tutte dentro la stessa MC
    quindi associ a questa MC uno script cosi:
    onClipEvent (enterFrame) {
    if (_root.muovi == 1) {
    this._x += 3;
    }
    if (_root.muovi == 2) {
    this._x -= 3;
    }
    }

    e nel bottone avanti:

    on (press) {
    _root.muovi = 1;
    }
    on (release) {
    _root.muovi = 0;
    }

    nel bottone indietro:

    on (press) {
    _root.muovi = 2;
    }
    on (release) {
    _root.muovi = 0;
    }

  3. #3
    Grazie grandeorco ma forse mi sono spiegato male io....
    sono 8 immagini che vanno da 1 a 8.
    supponiamo di partire dalla 1, premento il tasto avanti mi compare la 2, se tengo premuto avanti compare la 3 e così via....

    Con lo script che mi hai mandato non funziona così...

    ti viene in mente altro?
    ...perchè quando uno lavora....lavora!

  4. #4
    modifica così lo script di grandeorco

    if (_root.muovi == 1 && _currentframe < 8) {
    this.nextFrame();
    }
    if (_root.muovi == 2 _currentframe > 1) {
    this.prevFrame();
    }
    }

    e nel bottone avanti:

    on (press) {
    _root.muovi = 1;
    }
    on (release) {
    _root.muovi = 0;
    }

    nel bottone indietro:

    on (press) {
    _root.muovi = 2;
    }
    on (release) {
    _root.muovi = 0;
    }
    "...non è detto che sia tardi se non guardi che ora è..."

  5. #5
    Non so se dipenda dal fatto che ho sbagliato qualcosa io ma non funziona...
    creo in un livello un MC con dentro gli 8 frame (immagini).
    Creo un altro livello (sempre dentro al MC) per i due bottoni.
    attribuisco ai bottoni i due pezzetto di scipt e la parte dedicata al MC?
    Dove la inserisco? Devo mettere anche qualche stop?
    ...perchè quando uno lavora....lavora!

  6. #6
    ah, i bottoni sono nella clip? allora fai così

    metti uno stop nel primo frame della clip e nelle sue azioni metti

    onClipEvent(load){
    avanti = 0;
    }
    onClipEvent(enterFrame){
    if (this.muovi == 1 && this._currentframe < 8) {
    this.nextFrame();
    }
    if (this.muovi == 2 this._currentframe > 1) {
    this.prevFrame();
    }
    }

    nel pulsante avanti

    on (press) {
    this.muovi = 1;
    }
    on (release) {
    this.muovi = 0;
    }

    nel pulsante indietro:

    on (press) {
    this.muovi = 2;
    }
    on (release) {
    this.muovi = 0;
    }
    "...non è detto che sia tardi se non guardi che ora è..."

  7. #7
    Inserito tutto come detto:
    mi viene restituito questo errore:

    **Error** Scene=Scene 1, layer=img 3D, frame=1:Line 8: ')' expected
    if (this.muovi == 2 this._currentframe > 1) {

    **Error** Scene=Scene 1, layer=img 3D, frame=1:Line 9: Statement must appear within on/onClipEvent handler
    this.prevFrame();

    **Error** Scene=Scene 1, layer=img 3D, frame=1:Line 10: Unexpected '}' encountered
    }

    Total ActionScript Errors: 3 Reported Errors: 3


    Ah! dimenticavo...AS versione 1 o 2?
    ...perchè quando uno lavora....lavora!

  8. #8
    maledetta fretta...

    onClipEvent(load){
    avanti = 0;
    }
    onClipEvent(enterFrame){
    if (this.muovi == 1 && this._currentframe < 8) {
    this.nextFrame();
    }
    if (this.muovi == 2 && this._currentframe > 1) {
    this.prevFrame();
    }
    }

    dimenticato un doppio &

    questo è un flash5...
    "...non è detto che sia tardi se non guardi che ora è..."

  9. #9
    Perfetto Raffa! ora fuzionaaaa :quote:
    una cosa però...il clip è impostato in maniera tale che se vado "avanti" va dal frame 1 all' 8 e poi si ferma....vorrei che (nel caso io tenga premuto il bottone) andasse in loop quindi arrivato al frame 8 riprendesse dall' 1...è possibile?

    grazie ancora
    ...perchè quando uno lavora....lavora!

  10. #10
    prova così

    onClipEvent(load){
    avanti = 0;
    }
    onClipEvent(enterFrame){
    if (this.muovi == 1) {
    if(this._currentframe < 8){
    this.nextFrame();
    }else{
    this.gotoAndStop(1)
    }
    }
    if (this.muovi == 2 && this._currentframe > 1) {
    this.prevFrame();
    }
    }
    "...non è detto che sia tardi se non guardi che ora è..."

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.