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

    help: onClipEvent e goToAndPlay()

    Sto iniziando a studiare actionscript e ho un piccolo
    problema con flash.

    Fuori dello stage principale ho due istanze di due
    movie-clip chiamate: "rettangolo" e "cerchio".

    Obiettivo: all'inizio il rettangolo si sposta ad una
    posizione predefinita. Una volta arrivato, compare il
    cerchio. stop. semplice.


    --- COME CI HO PROVATO ---

    In pratica ho fatto così:
    1. frame 1:
    ---
    stop();
    ---

    2. frame 1: piazzo il rettangolo e gli associo
    ---
    onClipEvent(EnterFrame)
    {
    "spostati fino al punto desiderato";
    "se l'istanza rettangolo raggiunge una certa
    posizione allora goToAndPlay(2)"
    } // fine onClipEvent
    ---

    3. frame 2: piazzo il cerchio e l'azione stop();

    Non mi funziona: resta sempre al frame 1. Sembra non
    rilevare la funzione goToAndPlay(2).

    Mi potete aiutare?

    ciao e grazie

  2. #2
    Non è ben chiaro quello che vuoi fare. Cerca di spiegare chi fa muovere che cosa e con quale azione lo vorresti fare.
    Se sei incerto... Tieni aperto!!!

  3. #3
    Utente di HTML.it L'avatar di Nix82
    Registrato dal
    Oct 2001
    residenza
    Mussolente (VI)
    Messaggi
    1,122
    E ti credo che resta al frame 1 ! Se c'è uno stop sul fotogramma senza niente sullo stage cosa vuoi che faccia ??

    Qual'è il tuo obbiettivo ?
    La cultura è il nostro passaporto per il domani. Il futuro appartiene alle persone che si preparano oggi.
    Martin Luther King

  4. #4
    Obiettivo:
    1. lo swiff parte
    2. il rettangolo si sposta ad una certa posizione
    3. una volta che il rettangolo ha raggiunto la posizione predefinita, il cerchio viene visualizzato in una certa posizione.

    Ho risolto tutti e tre i punti con un codice che non mi sembra pulitissimo.

    Ora vi dico come ho fatto PERO' se avete suggerimenti migliori...

    A. Posiziono le istanze "quadrato" e "cerchio" fuori dallo stage (che ha dimensioni 400x300)
    B. [frame 1]
    stop(); // altrimenti il filmato prosegue e va in loop
    C. all'istanza "quadrato" associo l'azione seguente:
    ---
    onClipEvent (load) {
    // posiziono il quadrato
    this._x = -200;
    this._y = 150;
    // posizione obiettivo
    targetx = 200;
    }

    onClipEvent (enterFrame) {
    if (this._x<targetx) {
    // lo muovo
    this._x += 10;
    } else {
    // "quadrato" ha raggiunto la posizione
    // e quindi faccio partire "cerchio"
    _root.cerchio._x=200;
    _root.cerchio._y=150;
    _root.cerchio.play();
    }
    }
    ---

    Il problema è nato dal fatto che "cerchio" in realtà è una animazione che deve essere ciclata una sola volta (nell'ultimo frame di questa animazione ho messo una azione stop(). Col codice appena descritto in realtà "cerchio"-animazione cicla in continuo. Allora ho modificato il codice come segue.

    ---
    onClipEvent (load) {
    // posiziono il quadrato
    this._x = -200;
    this._y = 150;
    // posizione obiettivo
    targetx = 200;
    // inizializzo il check
    check = false;
    }

    onClipEvent (enterFrame) {
    if (this._x<targetx) {
    // lo muovo
    this._x += 10;
    } else {
    if(!check){
    // "quadrato" ha raggiunto la posizione
    // e quindi faccio partire "cerchio"
    _root.cerchio._x=200;
    _root.cerchio._y=150;
    _root.cerchio.play();
    }
    check = true;
    }
    }

    ---
    e all'istanza "cerchio"-animazione associo l'azione

    ---
    onClipEvent (load) {
    this.stop();
    }
    ---


    All'inizio pensavo si potesse risolvere posizionando l'istanza "cerchio" sul [frame 2] e attribuendo al quadrato l'azione

    ---
    onClipEvent (enterFrame) {
    if (this._x<targetx) {
    // lo muovo
    this._x += 10;
    } else {

    // "quadrato" ha raggiunto la posizione
    // e quindi faccio partire "cerchio"
    goToAndPlay(2);
    }
    }
    ---
    Però così non sembra funzionare (ovvio che da qualche parte c'e' un errore).

    Vabbè spero di essere stato un po' piu' chiaro. In ogni caso il problema è risolto.

    Sarebbe tutto più semplice se fosse possibile postare anche files .fla

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.