Flash: riferirsi a una variabile

Di: rikkardone | 26/09/2020 18:37:15
Ciao!
Ho assegnato a un bottone (posizionato sulla timeline principale) una variabile, per esempio:

inizio = 1;

Quando questa variabile viene richiamata da un condizionale "if" posizionato dentro a una movie clip, per esempio:

home = 1;
if (home == 1) {
if (inizio == 1) {
gotoAndPlay(1);
}
}

...è giusto chiamarla "inizio" o bisogna riferirsi a questa utilizzando _root o _parent o chissàché?
Mi viene questo dubbio amletico perché non mi riesce il "gioco" con le variabili che sto già usando per lo stesso lavoro... e l'unica differenza è che la variabile è applicata a un bottone della scena principale, mentre viene poi richiamata all'interno di un fotogramma di una movie clip comunque inserita nella timeline della scena 1.

Risposte



Ragazzi, lasciate stare.
Ho inserito il bottone nella movie clip e pace all'anima sua... e soprattutto alla mia!

Problema risolto!

Di: rikkardone | 26/09/2020 18:37:15


Ciao Rikkardone,
per evitare di perderti delle variabili o di doverle cercare puoi posizionarle sulla _root, così non ti confondi...
Per esempio, dentro ad un MovieClip qualunque che si trova in una parte qualunque del filmato scrivi:
_root.miaVar = 1;
Da un’altra parte, che sia un pulsante o un MovieClip o una Classe puoi chiedere la variabile così:
if (_root.miaVar == 1) {...};
Questo sistema è comodo se ti servono delle variabili per tutto il filmato. Inoltre puoi dare un’occhiata anche a _global, che è molto meglio, cito dalla guida di Flash:
A differenza delle variabili e funzioni dichiarate localmente o nella linea temporale, le variabili e funzioni globali sono visibili in tutte le linee temporali e aree di validità del file SWF, a condizione che non siano oscurate da identificatori con nomi uguali nelle aree di validità interne.

Di: Professore | 26/09/2020 18:37:15