Jump to content
Antyvirek

[ACTIONSCRIPT 3.0] AddChild z klasy zewnętrznej

Recommended Posts

Witam
 
Mam 2 problemy; z góry mówię że szukałem już sporo ale jako że jeszcze nie mam dużego doświadczenia w tym języku to nie byłem w stanie niczego wydedukować. Więc tak:
 
Problem 1:
Mam na głownej osi czasu (załóżmy scena 1 klatka 1) na stole MovieClip o nazwie MC. Tworzę zewnętrzną klasę Class która posiada metodę :
 
public function Play():void {
MC.gotoAndPlay("atak1");
}
 
Jak zrobić żeby to zadziałało? Dodam że wklejanie przed tym root czy stage nie pomaga. 
 
Drugi problem: 
Mam w bibliotece movieclip MC i klasę Class. Chciałbym żeby konstruktor klasy zewnętrznej dodawał movie clip do głownej osi i żeby kolejne metody mogły nim manipulować (gotoandplay itp); Póki co wygląda to tak:
 
public function Add():void {
 
var temp:MovieClip = new MC();
addChild(temp);
temp.x = 200;
temp.y = 200;
}
 
Niestety obydwa przypadki nie działaja, domyślam sie że chodzi o to że nie zdefiniowałem ścieżki do głownej osi... ale jak to zrobić? Chodzi mi o najprostszy sposób.
 
Z góry dziękuje za pomoc

Share this post


Link to post
Share on other sites

Nie znam dokładnej struktury plików, ani szczegółów klas, więc nie będę klecił jakiegoś pseudo kodu, który być może zadziała. Tym bardziej, że już dawno nie dłubałem we flashu.

 

Spróbuj czegoś spod tych linków:

http://stackoverflow.com/questions/7280203/how-do-i-access-a-movieclip-on-the-stage-using-as3-class

http://stackoverflow.com/questions/4475364/how-to-target-movie-clip-on-the-stage-from-doc-class-as3

http://rabidgadfly.com/2008/10/refer-to-stage-from-as3-class/

 

Ogólnie chodzi o to, że dopóki nie przekażesz klasie referencji do obiektu (nieważne, czy pojedynczego MC, czy do jakiegoś roota, stage, timeline, skąd będziesz wyciągać potem to, co potrzebne), to klasa nie będzie mieć zielonego pojęcia, że chodzi Ci o ten obiekt. W tej klasie nie będzie on istniał, więc nie będzie można na nim działać.

Share this post


Link to post
Share on other sites

Dzięki, wpadłem na inny pomysł który rozwiązuje mój problem;

Tworzę movieclip w bibliotece, i osobną klasę. Movieclip jest połączony z klasą i posiada wszystkie jej właściwości a addchild daję na głownej osi.

 

Dziękuję za pomoc, naprowadziło mnie to nieco, chociaz dalej nie wiem jak zrobić powyższe rzeczy : )

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...


×
×
  • Create New...