Ciao a tutti, da flash cs3 ho importato un immagine e convertita in movieclip con nome bordo.
Da un file .AS vorrei portelo spostare in una certa posizione, come posso fare per avere un riferimento a quel movieclip ??
grazie
Ciao a tutti, da flash cs3 ho importato un immagine e convertita in movieclip con nome bordo.
Da un file .AS vorrei portelo spostare in una certa posizione, come posso fare per avere un riferimento a quel movieclip ??
grazie
Ciao, dipende da un po' di cose, immagino che il file .as sia una classe e a questo punto ci sono tre possibilità:
1. la classe è la document class e in questo caso raggiungi facilmente il clip usando la proprietà root;
2. la classe è un'estensione di un display object (Sprite o MovieClip) e quindi si può usare la proprietà root, ma solo dopo che l'istanza della stessa è stata aggiunta alla display list del filmato;
3. la classe non estende un display object e perciò non possiede la proprietà root, di conseguenza l'unico modo di passargliela è dal filmato stesso, magari in una proprietà della classe creata apposta.
Ciao, intanto grazieper l'aiuto!
Io sono nella situazione n. 2
Ho importato due immagini, le ho trascinate sullo stage e le ho incovertite in movieclip. Ho una classe che estende Sprite e da li dentro vorrei poterle muovere.
Potresti farmi un esempio su come posso fare ??
grazie
Ok, allora per essere certo che la classe valorizzi la proprietà root devi impostare una funzione per Event.ADDED_TO_STAGE, dentro a quella funzione potrai gestire i movieclip appartenenti a root attraverso una delle due sintassi:
root["istanza_clip"]
MovieClip(root).istanza_clip
Scusa ma non ho capito cosa intendi con: "impostare una funzione per Event.ADDED_TO_STAGE"
Io le due immagini le ho aggiunte tramite interfaccia grafica allo stage, aggiunte ogniuna a un livello diverso e convertite singolarmente a movieclip....
grazie ancora...
No, dicevo per l'istanza della classe che hai creato, se non l'aggiungi allo stage con addChild non potrai sfruttare la proprietà root (e a quel punto non avrebbe neanche molto senso che sia un'estensione di Sprite).
Genericamente, la tua classe dovrebbe assomigliare pressappoco a questa:
Codice PHP:package {
import flash.display.Sprite;
import flash.events.Event;
public class SomeClass extends Sprite {
public function SomeClass () {
addEventListener(Event.ADDED_TO_STAGE, __added__);
}
private function __added__ (e:Event) {
trace(root)
}
}
}
Quindi se voglio avere un riferimento a un movieclip (in questo caso un immagine) devo per forza usare un loader e caricarlo da codice, poi posso ad esempio spostarlo tramite il movieclip a cui il loader è associato ??
No, non devi farlo, forse è meglio che chiarisci cosa sia questa classe e come venga utilizzata nel tuo filmato, perchè pare che stiamo parlando di due cose differenti.
per ora non è niente di particolare, sto cercando solo di posizionare il movieclip (direttamente dal costruttore) in una cera posizione.
Poi il passo successivo sarà quello di animare un movimento....
mi basterebbe capire come fare a fare:
mioMovieClip_01.x = 10;
mioMovieClip_02.x = 30;
Da Flash ho importato due immagini, ho aggiunto la prima a un livello e la seconda a un altro livello. Le ho convertite tutte e due in due movieclip di nome rispettivamente mioMovieClip_01 e mioMovieClip_02.
Ho creato una classe miaAnimazione.as e dal costruttore vorrei poter posizionare i due movielcip in due punti.
Ancora non ci siamo, puoi postare la classe e il codice che usi per inserirla nel filmato?