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
Klawisze i obiekt
Autor Wiadomość
vanioch 
Przyjaciel


Wiek: 37
Dołączył: 27 Lut 2011
Posty: 49
Skąd: bydgoszcz
Wysłany: Pon 19 Gru, 2011 18:40   Klawisze i obiekt

Witam, jak wykonać efekt że powiedzmy mamy pewną drogę oraz kulkę. Kulka możemy sterować klawiaturą (strzałkami) ale kulka nie może wyjść poza tą drogę (reaguję na kolizję ze ścianą drogi) odbija się od niej.
 
     
^Januszr 



Pomógł: 216 razy
Dołączył: 11 Maj 2005
Posty: 1854
Skąd: Stolyca od urodzenia
Wysłany: Pon 19 Gru, 2011 19:36   

Kiedyś zrobiłem 10 poziomowy labirynt (tak Mielu i Shastan - nudziło mi się), gdzie kolizje realizowałem poprzez:
Kod:
onSelfEvent (enterFrame) {
    if (_parent.JaKis_obiekt.hitTest(this)) {
       //tutaj to co ma zrobić, np nextSceneAndPlay()
    }
}

^^to do obiektu.

A ruch? no to chyba najzwyklej - tu na tym forum już o tym powinno być:
Kod:
onSelfEvent (enterFrame) {
    if (Key.isDown(Key.right)) {
       JaKis_obiekt._x += 0.5;
    }
    if (Key.isDown(Key.left)) {
       JaKis_obiekt._x -= 0.5;
    }
    if (Key.isDown(Key.down)) {
        JaKis_obiekt._y += 0.5;
    }
    if (Key.isDown(Key.up)) {
        JaKis_obiekt._y -= 0.5;
    }
}

^^ to do sceny

Tyle, że jak masz jakąś krzywą to raczej trzeba by to pociąć na setki elementów i każdemu przypisać taki sam skrypt. Ja zrobiłem labirynt z "cegiełk". No i jak do teraz nie potrafię go do końca przejść :(
_________________
Niestety używam nieoficjalnych wersji Swish, które można zassać z forums.swishzone.com - jest na szczycie listy w BugsForum.
 
     
espe1
Profesjonalista


Pomógł: 16 razy
Dołączył: 02 Lis 2011
Posty: 175
Skąd: łódzkie
Wysłany: Pon 19 Gru, 2011 19:43   

a prościej:

Kod:

on (keyPress("<UP>")) {
_root.ball._y -= 2;
if (ball.hitTest(_root.pgorna)) {
_root.ball._y += 2;
}
}
on (keyPress("<DOWN>")) {
_root.ball._y += 2;
if (ball.hitTest(_root.pdolna)) {
_root.ball._y -= 2;
}
}
on (keyPress("<LEFT>")) {
_root.ball._x -= 2;
if (ball.hitTest(_root.plewa)) {
_root.ball._x += 2;
}
}
on (keyPress("<RIGHT>")) {
_root.ball._x += 2;
if (ball.hitTest(_root.pprawa)) {
_root.ball._x += 2;
}
}


trzeba dodać 5 obiektów:

ball - piłka
pdolna - przeszkoda dolna itd:
pgorna
pprawa
plewa
 
     
vanioch 
Przyjaciel


Wiek: 37
Dołączył: 27 Lut 2011
Posty: 49
Skąd: bydgoszcz
Wysłany: Pon 19 Gru, 2011 20:49   

espe1 a jak będzie więcej ścian nie tylko 4? Np przeszkoda składać się bedzie z 20 takich ścianek to rozumiem 20 ifów?
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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.11 sekundy. Zapytań do SQL: 14