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
Gra klocki
Autor Wiadomość
tobiasz256 
Początkujący


Wiek: 31
Dołączył: 28 Mar 2012
Posty: 5
Skąd: Przysucha
Wysłany: Sro 28 Mar, 2012 15:24   Gra klocki

Na początku chciałbym się serdecznie przywitać jestem nowym użytkownikiem forum i od razu przepraszam jeżeli założyłem temat w nieodpowiednim dziale. Szukałem informacji na interesujący mnie temat ale niestety nie znalazłem. Mój problem polega na tym iż chcę zrobić prostą gierkę piłka rakietka od której będzie odbijać się piłka oraz tylko kilka klocków. Gra ma polegać na tym że piłka ma się odbić od rakietki i przy kontakcie z klockiem ma się od niego odbić a klocek ma zniknąć. Odbijanie i poruszanie piłki już zrobiłem ale mam problem ze znikaniem klocków. Zastosowałem taką instrukcję if (_parent.pilka.isNearThis(40,90)) {_parent.vel_x=-_parent.vel_x;} przy odbijaniu piłki ale nie mogę poradzić sobie ze znikaniem klocka. Jestem początkujący we SWISH'u bardzo proszę bardziej doświadczonych ode mnie o pomoc.
 
     
espe1
Profesjonalista


Pomógł: 16 razy
Dołączył: 02 Lis 2011
Posty: 175
Skąd: łódzkie
Wysłany: Sro 28 Mar, 2012 15:36   

a gdzie plik swi???
co mam napisać sobie grę od zera, żeby odpowiedzieć na twoje pytanie
chyba nikt nie jest na tyle głupi
 
     
tobiasz256 
Początkujący


Wiek: 31
Dołączył: 28 Mar 2012
Posty: 5
Skąd: Przysucha
Wysłany: Sro 28 Mar, 2012 15:43   

Przepraszam najmocniej całkiem zapomniałem już załączam.
 
     
espe1
Profesjonalista


Pomógł: 16 razy
Dołączył: 02 Lis 2011
Posty: 175
Skąd: łódzkie
Wysłany: Sro 28 Mar, 2012 16:15   

Tworzysz piłkę i nazywasz ją ball, dodajesz skrypt:
(trzeba tylko zmienić punkt start x i y, w zależności od wielkości sceny)
Kod:

onSelfEvent (load) {
dir = Math.round(Math.random() * 1);
speed =10;
 
if (dir == 1) {
var Ang = 45;
} else {
var Ang = 135;
}
 
xspeed = speed * Math.cos((Ang) * Math.PI / 180);
yspeed = speed * Math.sin((Ang) * Math.PI / 180);
}
 
onSelfEvent (enterFrame) {
this._x += xspeed;
this._y += yspeed;
if ((this._x <= _root.ball._width/2) || (this._x >= Stage.width - _root.ball._width/2)) {
xspeed = -xspeed;
}
 
if ((this._y <= _root.ball._width/2) || (_root.pad.hitTest(this))) { yspeed = -yspeed;
}
if (this._y > Stage.height-_root.ball._height/2) {
_x = 150; //punkt start x, w którym pojawia się piłka
_y = 80;  //punkt start y, w którym pojawia się piłka
 
dir = Math.round(Math.random() * 1);
speed = 10;
if (dir == 1) {
var Ang = 45;
} else {
var Ang = 135;
}
xspeed = speed * Math.cos((Ang) * Math.PI / 180);
yspeed = speed * Math.sin((Ang) * Math.PI / 180);
}
}


na dole sceny dajesz szejpa (to nasza "paletka") do odbijania piłki, nazywasz ją pad i dodajesz skrypt:
Kod:

onSelfEvent (enterFrame) {
if(Key.isDown(Key.RIGHT)) {
if(this._x <= Stage.width-_root.pad._width/2) {
this._x += 10
}
}
if(Key.isDown(Key.LEFT)) {
if(this._x >= _root.pad._width/2) {
this._x -= 10;
}
}
}


u góry dajesz cegiełki, szejpy (szejpa trzeba zgrupować jako MovieClip) i do każdego dajesz skrypt:
(można utworzyć 1 szt i skopiować)
Kod:

onSelfEvent (enterFrame) {
if ((this.hitTest(_root.ball))) {
_root.ball.yspeed = -_root.ball.yspeed;
this.play();
}
onFrame (1) {
    stop();
}
onFrame (2) {
    play();
}
onFrame (12) {
    stop();
}
}


od klatki 2 do 11 dajesz: Fade Out(10), a na 1 klatce place
 
     
^Januszr 



Pomógł: 216 razy
Dołączył: 11 Maj 2005
Posty: 1854
Skąd: Stolyca od urodzenia
Wysłany: Sro 28 Mar, 2012 20:13   

Craig kiedyś już to napisał i udostępnił: http://www.swish-designs.co.uk/blog/?p=2141
_________________
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: Sro 28 Mar, 2012 21:32   

cegiełki można też zduplikować, tworzymy 1 cegiełkę i nazywamy ją rect, do cegiełki dajemy skrypt:
Kod:


onSelfEvent (enterFrame) {
if ((this.hitTest(_root.ball))) {
_root.ball.yspeed = -_root.ball.yspeed;
removeMovieClip();
}
}


[ Dodano: Czw 29 Mar, 2012 00:15 ]

i nie można już nic wpisać wyskakuje bład php
 
     
tobiasz256 
Początkujący


Wiek: 31
Dołączył: 28 Mar 2012
Posty: 5
Skąd: Przysucha
Wysłany: Czw 29 Mar, 2012 15:58   

Dziękuję serdecznie za pomoc, mam pytanie dlaczego te skrypty nie działają w Swish 3? jedynie w 4 wszystko działa elegancko
 
     
^Januszr 



Pomógł: 216 razy
Dołączył: 11 Maj 2005
Posty: 1854
Skąd: Stolyca od urodzenia
Wysłany: Czw 29 Mar, 2012 17:45   

Może powinieneś zmienić w ExportSettings --> SWF na jakiś wyższy player? Już nie pamiętam z jakich korzystał SM3. Ale to zapewne ta kwestia. A może także składnia skryptu? Wielkie i małe litery?
_________________
Niestety używam nieoficjalnych wersji Swish, które można zassać z forums.swishzone.com - jest na szczycie listy w BugsForum.
 
     
tobiasz256 
Początkujący


Wiek: 31
Dołączył: 28 Mar 2012
Posty: 5
Skąd: Przysucha
Wysłany: Pią 30 Mar, 2012 15:13   

No właśnie problem polega na skrypcie w 3 wywala błędy a w 4 jest okej
 
     
espe1
Profesjonalista


Pomógł: 16 razy
Dołączył: 02 Lis 2011
Posty: 175
Skąd: łódzkie
Wysłany: Pią 30 Mar, 2012 19:29   

Problem polega na tym, że nie da się nic napisać na tym forum bo wywala błędy.

Do sceny 1 należy dodać skrypt z załącznika.
Utworzyć 1 cegiełkę, nazwać rect przesunąć za scenę i dodać skrypt, który jest powyżej

[ Dodano: Pią 30 Mar, 2012 21:15 ]
u mnie śmiga w SM3 (załącznik)
 
     
tobiasz256 
Początkujący


Wiek: 31
Dołączył: 28 Mar 2012
Posty: 5
Skąd: Przysucha
Wysłany: Sob 31 Mar, 2012 09:31   

Z tym skryptem teraz działa:) wielkie dzięki.
 
     
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.13 sekundy. Zapytań do SQL: 15