SWiSH Forum
Forum użytkowników programów SWiSH

Skrypty do programu SWiSH2 i SWISHmax - Przwijanie tekstu ładowanego z txt

tAboon - Pon 28 Mar, 2005 21:50
Temat postu: Przwijanie tekstu ładowanego z txt
Po utworzeniu pola tekstowego do którego będzie ładowany plik z zewnątrz, tworzymy dwa batony odpoweidzialne za rpzewijanie tekstu np.: GÓRA i DÓŁ po czym przypisujemy im akcje:
Przewijanie w góre:
Kod:
on (press) {
    nazwa_pola_tekstowego.scroll -=1;
}


Przewijanie w dół:
Kod:
on (press) {
    nazwa_pola_tekstowego.scroll -=1;
}



Pozdrófka

filip - Pon 28 Mar, 2005 22:25
Temat postu: Scroll
Skrypt fajny i przydatny.
Jednak w przypadku dlugiego tekstu jest dosc uciazliwe ciagle klikanie w przycisk w celu przewiniecia tekstu.
Czy jest mozliwosc zmodyfikowania tak skryptu aby text przewijany byl dopoki nie zwolnimy przycisku?

tAboon - Sro 20 Kwi, 2005 21:58

1. Tworzymy shape, który będziemy używali jako scroll w dół i konwertujemy do batona (Modify / Convert / Convert to Button).
2. We właściwościach po prawej zmieniamy nazwę batona na "down" oraz zaznaczamy opcje: for "Has separate over state", "Has separate down state", and "Use bounding box for hit-state".
3. Według własnej inwencji twórczej możemy również zaznaczyć opcje Up, Over, and Down states (aby uzyskać odpowiedni efekt).
4. Powtarzamy krok #1, #2, i #3 aby stworzyć batona do przewijania tekstu w górę i nazywamy go „up”.
Tworzenie skryptów dla batonów
5. Otwieramy sobie okienko skryptów dla batona "down".
6. Definiujemy pod jakimi akcjami chcemy aby baton reagował wybieramy Press action (Add Script / Events / Button / OnPress).
7. Dorzucamy podskrypt Name=Expr (Add Script / Statements / Name=Expr). W polu NAME wpisujemy "isPressed" oraz jako wartość "true"
8. Teraz dodajemy akcję on(release) dla tego batona (Add Script / Events / Button / OnRelease) – oraz zaznaczamy opcję "Release Outside". Dodajemy ponownie podskrypt Name=Expr z takim samym wpisemw polu NAME "isPressed" ale wartość podajemy „false”.
9. Cały skrypt powinien wyglądać następująco:
Kod:
on (press) {
    ispressed = true;
}
on (release,releaseOutside) {
    isPressed = false;
}

10. powtarzamy kroki od #5 do #8 dla batona "up".
Tworzenie skryptu do przewijania tekstu
11. Zaznaczamy batona „down” i grupujemy go do sprajta (Modify Menu / Grouping / Group as Sprite).
12. Nadajemy sprajtowi unikalną nazwę.
13. Otwieramy skrypt dla tego sprajta i dodajemy akcję OnLoad (Add Script / Events / Frame / OnLoad).
14. Nastepnie podskrypt Name=Expr w polu NAME wpisujemy "isPressed" natomiast w polu wartości "false"
15. Teraz dodajemy kolejny skrypt OnEnterFrame (Add Script / Events / Frame / OnEnterFrame).
16. Dodajemy podksrypt IF (Add Script / Conditional / IF). W polu na dole wpisujemy "isPressed".
17. Teraz dodajemy Name=Expr (Add Script / Statements / Name=Expr). W polu target wybieramy pole tekstowe, do którego jest ładowany tekst, W polu NAME wpisujemy "scroll". Zmieniamy operatora z “=(set value)” na "+=(add or plus)" I na dole podajemy wartość 1.
18. Skrypt powinień wyglądać następująco:
Kod:
onLoad () {
    ispressed = false;
}
onEnterFrame() {
    if (ispressed) {
        pole_tekstowe.scroll += 1;
    }
}

19. Powtarzamy kroki od #11 do #17 dla batona "up" tylko operator wybieramy "-=(subtract)".
25. Skrypt dla batona w w gore powinien wyglądać następująco:
Kod:
onLoad () {
    ispressed = false;
}
onEnterFrame() {
    if (ispressed) {
        pole_tekstowe.scroll -= 1;
    }
}



Teraz robimy play i sprawdzamy jak działa. Przykład działający PRZYKŁAD


Tekst jest tłumaczeniem z malymi poprawkami z tutoriala ze strony SWiSHzone

zmyslo - Czw 08 Wrz, 2005 14:12
Temat postu: A jak zrobić opóźnienie wczytania tekstu z pliku?
Witam mam prośbę dotyczącą Switha, prawdopodobnie banalną.


Zrobiłem sobie przewijanie ładowalnego tekstu wg. http://swish.wodip.opole....topic.php?t=117

ale chciałbym by tekst wczytywany został z pewnym opóźnieniem, tzn wówczas gdy określony sprite zostanie wyświetlony do końca.

tAboon - Czw 08 Wrz, 2005 23:37

w ostatniej klatce gdzie masz sprajta daj skrypt do ładowania *.txt
pamiętaj o uzyciu _root, albo _parent rpzy podawaniu ścieżki do pola tekstowego gdzie ma być załadowany tekst.
Przykład:
Kod:
onFrame (136) {
    pole_tekstu.loadVariables("http://www.adres.pl/pliku/plik.txt");
}

PiQ - Pią 09 Wrz, 2005 01:38

a ja mam pytanie dotyczące tego kodu podanego prze tAnoon'a (tego drugiego - dłuższego) !
Jak zrobić, aby po dojechaniu do końca ładowanego tekstu przestało przewijać ??
Bo mi przewija do bólu :D a jakoś nie mogę tego zrobić by sie zatrzymał na końcu ładowanego tekstu !

Pozdrawiam !

tAboon - Pią 09 Wrz, 2005 09:22

:? powiem szczerze, że niczego szczególnego nie dawałem do skryptów od przewijania i mi się zatrzymuje na końcu tekstu.
PiQ - Pią 09 Wrz, 2005 11:49

Hmmm a ja mogę przwijać i przewijać, mi się nie zatrzymuje :D użyłem tego kody z tego posta :P więc może ktoś też miał taki problem i go rozwiązał ?
vanns - Pią 07 Kwi, 2006 19:09

heh ja to dopiero zaczynam i mam pytanko jak w swish 2 wczytac plik txt ?? prosil bym o jakies proste wytlumaczenie
Pozdrawiam

stefcio - Czw 13 Kwi, 2006 08:55
Temat postu: odp
Powinieneś poszukac:) i nie tu zadawać to pytanie :0 ale odpowiem ci:

Kod:
on (press)
pole_tekstu.loadVariables("http://www.adres.pl/pliku/plik.txt");
}


pole_textu----- to pole textowe dynamiczne

vanns - Sob 22 Kwi, 2006 16:26

Sefcio prosta odpowiedz mopze i dla innych ze wzgledu na to ze jak wlacze swish maxa to bez problemu znajduje pole dynamiczne ale w swish 2 juz jest gorzej nigdzie tego niema.

Moze zrobil bys mi cos takiego ?? i podeslal mailem lub w zalaczniku tutaj??

stefcio - Nie 30 Kwi, 2006 11:39
Temat postu: odp
mialem przez dlugi czas swish 2 ale niemam pojęcia gdzie tam to zrobic:(

Powered by phpBB modified by Przemo © 2003 phpBB Group