Ice Cube Opublikowano 17 Grudnia 2016 Udostępnij Opublikowano 17 Grudnia 2016 Witam czy idzie jakoś zaznaczyc wszystkie obiekty za jednym razem w collision_line? if collision_line(1392,1312,1504,1216,WSZYSTKIE OBIEKTY,true,true) show_message("kolizja"); ewentualnie kilka obiektów np.objekt 1,2,5,8,9 ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 17 Grudnia 2016 Udostępnij Opublikowano 17 Grudnia 2016 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 Więcej opcji udostępniania...
ediepl Opublikowano 17 Grudnia 2016 Udostępnij Opublikowano 17 Grudnia 2016 Za obiekt możesz wpisać all, też będzie działać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 18 Grudnia 2016 Autor Udostępnij Opublikowano 18 Grudnia 2016 Super! :) a teraz jak napisac komende BOUNCE obiektu,ktory sie zetknie z linia? if collision_line(1392,1312,1504,1216,oParent,true,true) BOUNCE...... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 19 Grudnia 2016 Autor Udostępnij Opublikowano 19 Grudnia 2016 tzn. w klockach dałbym bounce against solid object z opcja other ale jak to napisać w kodzie? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 19 Grudnia 2016 Administratorzy Udostępnij Opublikowano 19 Grudnia 2016 GML hspeed *= -1; vspeed *= -1; albo jedna z: move_bounce_solid, move_bounce_all Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 19 Grudnia 2016 Autor Udostępnij Opublikowano 19 Grudnia 2016 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 Więcej opcji udostępniania...
ediepl Opublikowano 19 Grudnia 2016 Udostępnij Opublikowano 19 Grudnia 2016 Wszystkie funkcje collision_* zwracają id obiektu z którym występuje kolizja Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 19 Grudnia 2016 Udostępnij Opublikowano 19 Grudnia 2016 Problem zaczyna się jak linia koliduje z większą ilością obiektów :P Zwraca wtedy ten który ma mniejsze ID Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 19 Grudnia 2016 Autor Udostępnij Opublikowano 19 Grudnia 2016 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 Więcej opcji udostępniania...
I am Lord Opublikowano 19 Grudnia 2016 Udostępnij Opublikowano 19 Grudnia 2016 GML IDKOLIZJI = collision_line(1392,1312,1504,1216,all,true,true); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 20 Grudnia 2016 Autor Udostępnij Opublikowano 20 Grudnia 2016 nic z tego nie rozumiem ;( Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sutikku Opublikowano 20 Grudnia 2016 Udostępnij Opublikowano 20 Grudnia 2016 ta funkcja zwraca id obiektu. Dla przykładu. Masz funkcję np dodaj(). I wygląda to tak GML wynik = dodaj(2,5); //a więc wynik=7</span> A collision_line() zwróci ci ID obiektu który w tym momencie ma kolizję. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ice Cube Opublikowano 21 Grudnia 2016 Autor Udostępnij Opublikowano 21 Grudnia 2016 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 Więcej opcji udostępniania...
Ice Cube Opublikowano 21 Grudnia 2016 Autor Udostępnij Opublikowano 21 Grudnia 2016 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 Więcej opcji udostępniania...
Sutikku Opublikowano 21 Grudnia 2016 Udostępnij Opublikowano 21 Grudnia 2016 Kolizja w piłce z obiektem linia. A nie, że linia ma kolizje z piłką. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę