 |
SWiSH Forum
Forum użytkowników programów SWiSH
|
losowa kolejność scen w danej sekwencji |
Autor |
Wiadomość |
patros
Początkujący

Dołączył: 12 Lis 2009 Posty: 4 Skąd: świętokrzyskie
|
Wysłany: Czw 12 Lis, 2009 10:59 losowa kolejność scen w danej sekwencji
|
|
|
Witam,
próbuje zrobić skrypt wyświetlający reklamy (każda reklama to osobna scena). Znalazłem przykład jak za pomocą Math.random losować poszczególne sceny. Jednak odbywa się to za każdym razem po zakończonej danej scenie:
Kod: | onSelfEvent (load) {
value = Math.floor(Math.random()*50);
value=Math.ceil(value/10); //this gives a better randomisation of 1,2,3,4 or 5.
if (value==1) {
gotoSceneAndPlay("Reklama_1",1);
}
if (value==2) {
gotoSceneAndPlay("Reklama_2",1);
}
if (value==3) {
gotoSceneAndPlay("Reklama_3",1);
}
if (value==4) {
gotoSceneAndPlay("Reklama_4",1);
}
if (value==5) {
gotoSceneAndPlay("Reklama_5",1);
}
}
onFrame (151) {
gotoSceneAndPlay("Losowanie",1);
} |
i kod wykonywany na zakończenie danej sceny (każda scena zajmuje 151 klatek):
Kod: | onFrame (151) {
gotoSceneAndPlay("Losowanie",1);
} |
Zamieszczony powyżej kod losuje za każdym razem (pojedynczo) następną scenę i uzyskuję efekt np. 1,4,4,1,4 całość działa prawidłowo, jednak chciałbym osiągnąć coś takiego:
w scenie "Losowanie" losowana jest sekwencja Reklam np. 3,5,2,4,1 i reklamy wyświetlają się w takiej kolejności ("w kółko") - oczywiście do następnego przeładowania flash i wygenerowania nowej sekwencji.
Mam nadzieję, że za bardzo nie pokręciłem z opisem i wszystko jest czytelne.
Będę wdzięczny za wszelkie podpowiedzi, wskazówki.
Pozdr. |
|
|
|
 |
mielu

Pomógł: 131 razy Wiek: 48 Dołączył: 06 Kwi 2006 Posty: 1177 Skąd: Kraków
|
|
|
|
 |
patros
Początkujący

Dołączył: 12 Lis 2009 Posty: 4 Skąd: świętokrzyskie
|
Wysłany: Czw 12 Lis, 2009 13:19
|
|
|
Dzięki za szybka odpowiedź. Niestety nie mogę przetestować tego przykładu. Dostaję komunikat:
Oczekiwano zmiennej w skrypcie:
Scene_1::onFrame (2)
Scene_1, linia 8: "losowana"+k=losowane_liczby[los]; |
|
|
|
 |
mielu

Pomógł: 131 razy Wiek: 48 Dołączył: 06 Kwi 2006 Posty: 1177 Skąd: Kraków
|
Wysłany: Czw 12 Lis, 2009 13:52
|
|
|
dawno dawno temu to działało a teraz z drobną poprawką też działa
Kod: | onFrame (1) {
stop();
}
onFrame (2) {
losowane_liczby=new Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49);
for (k=1; k<=6; k++) {
los=Math.randomInt(losowane_liczby.length);
eval("losowana"+k)=losowane_liczby[los];
losowane_liczby[los]=0;
losowane_liczby.sort();
losowane_liczby.shift();
trace(losowane_liczby);
}
myNumbers = new Array (losowana1,losowana2,losowana3,losowana4,losowana5,losowana6);
myNumbers.sort();
for (k=1; k<=6; k++) {
eval("losowana"+k)=myNumbers.shift();
}
}
|
zamień kod |
|
|
|
 |
patros
Początkujący

Dołączył: 12 Lis 2009 Posty: 4 Skąd: świętokrzyskie
|
Wysłany: Czw 12 Lis, 2009 17:07
|
|
|
Działa. Zmieniłem sobie ilość liczb do 5 (tyle ma być scen) w tablicy i pętli.
Teraz pozostało mi wyświetlać kolejne sceny wg wylosowanej kolejności... i tu się zastanawiam czy zagnieżdżać instrukcje warunkowe if (chyba "najprostszy" i najmniej profesjonalny sposób) czy może w AS jest rozwiązanie lepiej wykonujące to zadanie?
[ Dodano: Nie 20 Gru, 2009 17:09 ]
Witam.
Nie tworzę nowego tematu (tylko odgrzewam stary) - znów się zabrałem za losowanie kolejności reklam i po raz kolejny poległem. W stosunku do pierwszego pomysłu zmieniłem to, że każda reklama będzie w osobnym pliku (a nie scenie-chyba tak lepiej). Wykorzystałem wskazówki od mielu i udało mi się stworzyć coś co losuje liczby od 1 do 5 (żadna się nie powtarza) jednak zawsze wyświetlana jest reklama odpowiadająca ostatniej wylosowanej liczbie.
Nie wiem, jak zrobić aby wykonywana pętla zatrzymywała się na czas wyświetlania kolejnych reklam i po wyświetleniu ostatniej rozpoczynała wyświetlanie od nowa.
Załączam wszystkie pliki. |
|
|
|
 |
|
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
|
|
|
|
|
|
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.54 sekundy. Zapytań do SQL: 15 |
|
|