• User

    gotoAndPlay e le variabili

    salve, ho un grosso problema:
    nello stage ho due pulsanti con il seguente script

    on(press){
    testVariabile++;
    }
    nell'altro

    on(press){
    testVariabile1++;
    }

    a questi clip sono associati dei caratteri dinamici che aumentano di una unità ogni volta che si preme il tasto.

    ho un'altro clip con il seguente codice

    onClipEvent (enterFrame) {
    if (Variabile == 3) {
    gotoAndPlay("boom");

    }
    }
    vorrei che il clip dopo tre volte che si preme il pulsante cambi fotogramma, ma il clip non cambia il fotogramma in "boom" neanche a prenderlo a cannonate ho provato anche questo codice dicendogli che la variabile si trova su pulsante uno.

    onClipEvent (enterFrame) {
    if (uno.Variabile == 3) {
    gotoAndPlay("boom");

    }
    }
    niente da fare.
    dove stò sbgliando??
    grazie anticipatamente.


  • on(press){
    _root.testVariabile++;
    }

    La variabile assegnala alla _root

    onClipEvent (enterFrame) {
    if (_root.testVariabile == 3) {
    gotoAndPlay("boom");
    }
    }

    I bottoni e il movie clip devono stare sullo stesso frame, anche su più livelli ma sullo stesso frame. Altrimenti devi usare le variabili _global che esistono in tutto il filmato


  • User

    Negativo!!
    ho provato a creare un nuovo file con soli due tasti due testi dinamici che funzionano perfettamente, un clip chiamato actions dove metto il testo on clip etc. ma il fotogramma boom non lo richiama manco a cercarlo.
    Eppure anche i testi scrivono il codice come hai detto tu!!


  • Prova a cambiare gotoAndPlay("boom");

    Se il fotogramma boom è nel clip a cui hai assegnato il codice onenterframe devi mettere this.gotoAndPlay("boom");

    Altrimenti _root.gotoAndPlay("boom");

    Poi metti un trace(_root.testVariabile); dopo l'if, così testi il valore della variabile. Con Ctrl+invio testi il filmato e vedrai il valore in una finestra di controllo.


  • User

    Ti ringrazio per le dritte, credo di essermi dimenticato di inserire nel codice questo script: Variabile = new Array; dopo che l'ho inserito funziona perfettamente.
    Io volevo una tastiera con un display dove, se si azzecava il codice (3-5-2) si passava al fotogramma tipo "sei salvo" mentre se si sbagliava al fotogramma del tipo "ai perso" oppure un clip di esplosione. quello esatto da mettere nel clip actions è il seguente:
    Il disply lo si crea come si vuole ed anche i tasti.

    onClipEvent(enterFrame) {

    Variabile = new Array ;
    Variabile2 = new Array;
    Variabile3 = new Array;

    if ((testVariabile == 3) and (testVariabile2 == 5) and (testVariabile3 == 1)) {
    _root.gotoAndStop("boom");
    }
    else {

    if ((testVariabile > 0) and (testVariabile2 > 0) and (testVariabile3 > 2)) {
    _root.gotoAndStop("boom2");
    }
    }

    }

    il codice dei pulsanti è questo:

    on (press) {
    _root.actions.testVariabile++;
    }

    Grazie tantissime, sicuramente ci risentiremo.


  • Variabile = new Array ;
    Variabile2 = new Array;
    Variabile3 = new Array; Questo mettilo fuori dell'onEnterFrame altrimenti ad ogni frame ricrei un array

    Ciao buon lavoro