Brox Opublikowano 15 Maja 2014 Udostępnij Opublikowano 15 Maja 2014 Siamka mam taki kod: GML target_x = argument0; target_y = argument1; siatka = mp_grid_create(target_x - 256, target_y - 256, ((x - (target_x - 256)) / 32) + 9, ((y - (target_y - 256)) / 32) + 9, 32, 32) r = mp_grid_path(siatka, sciezka, x, y, target_x, target_y, false); mp_grid_destroy(siatka); Tworzy on ścieżkę (path) za pomocą siatki i mam taki problem że punkty tej ścieżki ustawiają się po środku danej kratki w siatce, a jak zrobić by ten punkt ustawiał się w lewym górnym rogu? Czyli jak kratka ma 32x32 to żeby punkt się nie ustawiał w pozycji 16, 16 tylko 0, 0. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 15 Maja 2014 Udostępnij Opublikowano 15 Maja 2014 A może po prostu wyśrodkuj originy w sprite. :P Nie wiem w sumie czy o to chodzi ale zakładam że chcesz uzyskać efekt taki aby postać była na środku ścieżki a nie na dole. Jeśli napisz to zobrazuj jaki efekt chcesz osiągnąć. E. Przypomniało mi się że jak ja bawiłem się na siatkach to zdaje się że do każdego koordynata musiałem dodawać 16 Ew. jak chcesz się bawić na koordynatach: GML for(i=0;i<path_get_length(path0);i++) path_change_point(path0,i,path_get_point_x(path0,i)+16/* tu możesz sobie dodawać i odejmować do woli*/,path_get_point_x(path0,i)+16/* i tu też */,speed) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Brox Opublikowano 15 Maja 2014 Autor Udostępnij Opublikowano 15 Maja 2014 Tak chodzi mi o to żeby postać chodziła po środku :D Wyśrodkowanie originów nie bardzo mi pasuje, więc póki co każdy punkt przesuwam funkcją path_change_point(), nie jest to zbytnio optymalne zwłaszcza przy długiej ścieżce. Nie wiem czy istnieje też inny sposób aby nie centrowało w tej siatce ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 15 Maja 2014 Udostępnij Opublikowano 15 Maja 2014 Tam gdzie masz rozmiar rozmiar pół w siatce daj 2 razy mniejszy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 16 Maja 2014 Udostępnij Opublikowano 16 Maja 2014 Tak chodzi mi o to żeby postać chodziła po środku :D Wyśrodkowanie originów nie bardzo mi pasuje, więc póki co każdy punkt przesuwam funkcją path_change_point(), nie jest to zbytnio optymalne zwłaszcza przy długiej ścieżce. Nie wiem czy istnieje też inny sposób aby nie centrowało w tej siatce ? Tak ale ścieżkę wyznaczasz tylko raz tak jak mówię z originami było by najbardziej optymalnie. @Threef: Wtedy i tak mogłoby zjechać ze ścieżki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 16 Maja 2014 Udostępnij Opublikowano 16 Maja 2014 Tak chodzi mi o to żeby postać chodziła po środku :D Wyśrodkowanie originów nie bardzo mi pasuje, więc póki co każdy punkt przesuwam funkcją path_change_point(), nie jest to zbytnio optymalne zwłaszcza przy długiej ścieżce. Nie wiem czy istnieje też inny sposób aby nie centrowało w tej siatce ?jest mozliwosc by wedlog path jechala niewidzialna instancja o_przewodnik a twoja postac nasladowala przewodnika, ALE zawse poprawiala swo pozicje o offset dany v origin :) cos podobnego stosowalem, kiedy postac niesmiala sie poruszac sie inaczej niz vertikalnie lub horizontalnie a przy realtime zmianach trasy to niebylo mozliwe ani z mp_grid. bo start end mi sie czasami "psul" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 16 Maja 2014 Udostępnij Opublikowano 16 Maja 2014 Możesz użyć: path_shift docs.yoyogames.com/source/dadiospice/002_reference/paths/changing%20paths/path_shift.html 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ę