Skocz do zawartości

Jak zaznaczyć wszystkie obiekty?


Ice Cube

Rekomendowane odpowiedzi

1. Stwórz nowy, pusty obiekt o nazwie np. "oParent", będzie on rodzicem obiektów które mają mieć kolizję.

2. W obiektach które chcesz kolidować ustaw we właściwościach w polu "parent" twój nowo utworzony wcześniej obiekt "oParent"

3. I teraz w kodzie wstawiasz rodzica: if collision_line(1392,1312,1504,1216,oParent,true,true) show_message("kolizja");

Odnośnik do komentarza
Udostępnij na innych stronach

może inaczej jeszcze:

 

zrobilem ALL,czyli wszystkie obiekty w grze koliduja z linia,

ale w momencie kolizjii niewiem ktory akurat to jest obiekt i jak go odbic..

prosze napiszcie mi kompletny kod cos np.:

 

if collision_line(1392,1312,1504,1216,all,true,true)show_message("kolizja z obiektem numer:");

 

albo

 

if collision_line(1392,1312,1504,1216,all,true,true) move_bounce(obiekt ktory koliduje z linia);

 

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Wszystkie funkcje collision_* zwracają id obiektu z którym występuje kolizja

 

 

ok rozumiem ,ale jak pobrać te id? i jak poprawnie sformułowac odbicie tego obiektu,bo nigdy nie miałem do czynienia z bounce

 

if collision_line(1392,1312,1504,1216,all,true,true) move_bounce_solid(id) ??

 

bo kompletnie nic mi nie przychodzi do głowy..

Odnośnik do komentarza
Udostępnij na innych stronach

Hej dalej to rozgryzam..

Wybaczcie,że was tak męcze,ale tak łątwo sie nie poddam ;)

 

a wiec jeszcze raz mam 2 obiekty

1-pilka ktora odbija sie swobodnie od ekranu

2-linia ktora jezeli wykryje,ze dotknie ja pilka(lub cokolwiek innego) zgumuje pilke lub cokolwiek innego co ja dotknie

 

 

 

OBJEKT Linia kod pisany w STEP:

 

var objkolizja; // ustawienie zmiennej ktora pobierze nazwe obiektu ktory zetknie sie z linia

 

if collision_line(1392,1312,1504,1216,all,true,true)// jezeli zetknie sie cokolwiek z linia wykonaj

{

objkolizja=collision_line(1392,1312,1504,1216,all,true,true); // wstaw do zmiennej objkolizja nazwe obiektu ktory zetknal sie z linia

object_delete(objkolizja);} // zgumuj objekt o nazwie ktory jest w zmiennej objkolizja

 

 

 

jezeli pilka dotknie lini pojawia sie komunikat:

trying to delete non existing object

 

:(

Odnośnik do komentarza
Udostępnij na innych stronach

ok już mam :)

 

var a;

 

if collision_line(1392,1312,1578,1712,all,true,true)

{a=collision_line(1392,1312,1578,1712,all,true,true);

a.hspeed = -a.hspeed; a.vspeed = -a.vspeed;

a.x=a.xprevious ;a.y=a.yprevious;}

 

działa,obiekty odbijaja sie :)

 

tylko tak jak pisal I AM LORD problem pojawia sie wtedy,jak odbija sie wiecej obiektów,wtedy gra zaczyna płatać figle ;/

 

Ma ktos na to rozwiązanie?

 

Problem zaczyna się jak linia koliduje z większą ilością obiektów :P

Zwraca wtedy ten który ma mniejsze ID

 

 

 

właśnie doszedłem do tego etapu.. jest na to jakieś rozwiązanie?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...