Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [flash][as3]Problem z tween class
Suule
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Witam

Jestem w trakcie tworzenia stronki we flash'u cs3.
Ale utknąłem na w miarę łatwym problemie.

A mianowicie, postanowiłem menu wraz z animacja napisać w AS3.
Chce by po wcisnięciu przycisku rozsunęły się 'kolumny' a pośrodku nich był tekst. (Kolumny są zarazem przyciskami). Po wciśnięciu przycisku, kolumny, złączyłyby się, a następnie rozsunęły, ukazując tekst.

Problem w tym iż nie potrafię zrobić, tak jakby dwóch animacji jednego obiektu, w jednej funkcji, a jaśniej, zamiast złączać i rozłączać, animacja wykonuje tylko jeden ruch... czyli złącza się.

Kod owej funkcji wygląda następująco:
Kod
<pre class="alt2" dir="ltr" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 418px; text-align: left;">function aboutPage1(e:MouseEvent):void
{
    if (aboutPage.x != 346.0) /* sprawdza czy po raz pierwszy weszliśmy na strone, jeżeli tak to złączanie kolumn nie jest wymagane - tylko rozjeżdżają się... to działa. */
    {
    new Tween(homePage,"x",Strong.easeOut,homePage.x,310,12,false);
    new Tween(aboutPage,"x",Strong.easeOut,aboutPage.x,346,12,false);
    new Tween(servicesPage,"x",Strong.easeOut,servicesPage.x,382,12,false);
    new Tween(testPage,"x",Strong.easeOut,testPage.x,418,12,false);
    new Tween(contactPage,"x",Strong.easeOut,contactPage.x,454,12,false);
    }else   /* No i właśnie tutaj jest problem, wykonuje tylko pierwsze 4 linijki kodu, czyli kolumny się zjeżdżają */
    {
    new Tween(homePage,"x",Strong.easeOut,homePage.x,50,12,false, );
    new Tween(aboutPage,"x",Strong.easeOut,aboutPage.x,86,12,false);
    new Tween(servicesPage,"x",Strong.easeOut,servicesPage.x,636,12,false);
    new Tween(testPage,"x",Strong.easeOut,testPage.x,672,12,false);
    new Tween(contactPage,"x",Strong.easeOut,contactPage.x,708,12,false);
    
//dalsza część kodu nie jest wykonywana.
    new Tween(homePage,"x",Strong.easeOut,homePage.x,50,12,false);
    new Tween(aboutPage,"x",Strong.easeOut,aboutPage.x,86,12,false);
    new Tween(servicesPage,"x",Strong.easeOut,servicesPage.x,636,12,false);
    new Tween(testPage,"x",Strong.easeOut,testPage.x,672,12,false);
    new Tween(contactPage,"x",Strong.easeOut,contactPage.x,708,12,false);
    }

Moja prośba/pytanie brzmi:
Czy da się zamieścić dwie animacje obiektu w jednym Tween'ie, jeżeli nie... to jak wykonać efekt taki jaki napisałem na początku postu.
Proszę o pomoc! (IMG:http://www.flashzone.pl/forum2/images/smilies/smile.gif)

P.s
Jeżeli zrobiłem głupi błąd to się nie dziwcie, to będzie moja pierwsza strona napisana w 100% we flash'u.

Czyżby nikt nie wiedział? (IMG:style_emoticons/default/smile.gif) )
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Nie możesz dać dwóch obiektów do klasy tween.

Za to gorąco polecam klasę Caurina Tweener do wszelkich animacji http://code.google.com/p/tweener/

Efekt który chcesz uzyskac to nic innego jak sprytne połączenia animacji rozejscia i zejscia (zrób aby było odpowiedzialne za to tylko 2 funkcje). Po użyciu zdarzeń onComplete dla tego tweenera łątwiej bedzie uzyskac zamierzony cel.
Go to the top of the page
+Quote Post
Suule
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Dzięki, właśnie pobieram tą klasę.
Początkowo używałem zwykłej klasy tween, z opcją onFinish, i w funkcji miałem linijkę z kodem continue ale nie działało to zbytnio dobrze...

Więc spróbują z tą nową klasą, jakbym miał jakieś problemy to dam znać

[edit]
Jeszcze raz wookieb, klasa która mi poleciłeś jest rzeczywiście bardzo pomocna, i problem z którym się męczyłem tyle praktycznie sam się rozwiązał w 5min.

Ten post edytował Suule 17.08.2009, 13:36:28
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 22:06