SWiSH Forum Strona Główna SWiSH Forum
Forum użytkowników programów SWiSH

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload

Poprzedni temat «» Następny temat
Ruch paska
Autor Wiadomość
Krzychu 
Praktyk


Pomógł: 1 raz
Dołączył: 21 Sie 2005
Posty: 25
Skąd: Poznań
Wysłany: Nie 23 Paź, 2005 18:09   Ruch paska
   Moje WWW: @ work :)


Witam

moj problem wyglada nastepujaco, chce zrobic cos takiego jak na stronie www.dudson.pl tzn ze poszczeglone dzialy sa na pasku ktory sie przesuwa, cos tam w wolnej chwili grzebalem jednak nigdy nie moglo wyjsc mi tak zeby dzialalo to elastycznie, tzn ze gdy wcisne przycisk np 5 to przesunie sie to o 5 dzialow, jak przycisk 3 to wroci te dwa dzialy, cos mi sie tam blokowalo i juz nie mialem do tego ani sily ani checi :/

moze ktos wie jak to zrobic? i przedstawilby mi krotki przyklad na jedno przesuniecie, dalej sobie poradze.. :-D=
 
     
lemondude
Praktyk


Pomógł: 4 razy
Dołączył: 16 Maj 2005
Posty: 25
Wysłany: Pon 24 Paź, 2005 09:09   

Witka,

Sprawa jest dość prosta. Podstawą jest złożenie paska czy też innego obiektu który będzie przewijany i określenie dla każdej pozycji finalnej współrzędnych x i y. Oczywiście, ponieważ pokazywana ma być tylko część całosci, ograniczasz pasek z lewej i prawej strony (lub poprostu tworzysz okienko) poprzez maskowanie, lub nałożenie obiektów przykrywających marginesy (w tym wypadku poprostu obiekty te powinny być nad "paskiem" w polu outline, tzn. na wyższej warstwie).

Następnie tworzysz jakiś pusty sprite, nie zawierający żadnego obiektu. I wklepujesz skrypt:



Kod:

onFrame (1,afterPlacedObjectEvents) {
    stop();
}
onFrame (2,afterPlacedObjectEvents) {
    tellTarget (pasek) {
        _x -= x1;
        _x *= 0.6;
        _x += x1;
        _y -= y1;
        _y *= 0.6;
        _y += y1;
    }
}


Następnie powielasz ten kod na innych klatkach (3-4,5-6,7-8 etc.) dla innych wartości x i y, gdzie każda z nich to okreslona wcześniej współżędna końcowego położenia paska.
Parametr określony tu przeze mnie jako 0,6 to nic innego jak easing, tzn. jak szybko wykonany bedzie ruch oraz jak gwałtownie będzie przyspieszał i hamował.

Skrypt ten to poprostu zdefiniowanie ruchu z dowolnej współrzędnej na określoną przez xn,yn pozycję. Po ukończeniu definiowania ruchów i pozycji paska, podpinasz pod buttony ten sprite. Tzn. odpalasz odpowiednią klatkę na naciśnięcie buttona. Sprite zapętla się wykonując ruch.

Dlaczego nie narysować tego ruchu na timeline? Ponieważ na timeline musiałbyś napisać ruch z każdej współrzędnej na każdą. Czyli przy 4 pozycjach miał byś chyba 16 ruchów (nigdy nie byłem dobry z kombinatoryki).

Pozdrawiam,
Lemon
 
     
Krzychu 
Praktyk


Pomógł: 1 raz
Dołączył: 21 Sie 2005
Posty: 25
Skąd: Poznań
Wysłany: Pon 24 Paź, 2005 13:36   
   Moje WWW: @ work :)


wlasnie ja probowalem to zrobic na timeline i chyba nie rozwiazalem wszystkich mozliwosci dlatego sie blokowalo..

kurcze ja wszystko rozumiem tylko generalnie swisha nie mam rozgryznietego, moglbys zalaczyc plik z przykladem? to mi wiele pomoze :roll:
 
     
lemondude
Praktyk


Pomógł: 4 razy
Dołączył: 16 Maj 2005
Posty: 25
Wysłany: Sro 26 Paź, 2005 22:46   

Witka,

Pasek w załączniku.

Pozdr,
Lemon
 
     
Krzychu 
Praktyk


Pomógł: 1 raz
Dołączył: 21 Sie 2005
Posty: 25
Skąd: Poznań
Wysłany: Czw 27 Paź, 2005 15:12   
   Moje WWW: @ work :)


dziekuje bardzo :)
 
     
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  


Powered by phpBB modified by Przemo © 2003 phpBB Group
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
         
Strona wygenerowana w 0.07 sekundy. Zapytań do SQL: 11