SimianVirus7 Opublikowano 9 Lutego 2022 Udostępnij Opublikowano 9 Lutego 2022 Nie mogę dopasować pocisku do lufy. Dodaje, odejmuje od x/y i wszystko się rozjeżdża. Z tego co rozumiem, to lengthdir_x/y to punkt styku linii x/y. Chyba, że jest jakiś sposób, dzięki któremu mogę ustawić punkt spawnu pocisków relatywnie do położenia i kąta broni. Na razie mam tak: oPistol - STEP dir = point_direction(oPlayer.x, oPlayer.y, mouse_x, mouse_y) x = oPlayer.x-2 + lengthdir_x(10, dir); y = oPlayer.y-20 + lengthdir_y(10, dir); //zmieniaj strony if(digit_between(dir, 90, 270)) image_yscale = -abs(image_yscale); else image_yscale = abs(image_yscale); image_angle = dir; i obliczenia do pocisku lx = x + lengthdir_x(40, dir); ly = y + lengthdir_y(40, dir); //rysuj gdzie powstanie pocisk draw_sprite_ext(sBullet, 0, lx , ly, 1, 1, dir, c_white, 1) //rysuj broń draw_sprite_ext(sprite_index, image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha); Origin broni (chyba ważne do tego): Co daje mi to: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 9 Lutego 2022 Administratorzy Udostępnij Opublikowano 9 Lutego 2022 Daj w pocisku origin poniżej pocisku, tak jakby miał niewidzialną rekojeść. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SimianVirus7 Opublikowano 10 Lutego 2022 Autor Udostępnij Opublikowano 10 Lutego 2022 No tak... to po prostu działa, dziękuje ? Co prawda będę musiał operować sprite_set_offset() przy np. skalowaniu ale chyba damy radę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 10 Lutego 2022 Administratorzy Udostępnij Opublikowano 10 Lutego 2022 19 minut temu, SimianVirus7 napisał: Co prawda będę musiał operować sprite_set_offset() przy np. skalowaniu ale chyba damy radę. Zakładam, że teraz pocisk jest rysowany za pomocą lenghtdir, więc prawdopodobnie wystarczy skalować argument length, oraz sam obrazek, bo origin zostaje w tym samym miejscu mimo skalowania (więc wykorzystaj to na swoją korzyść). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Chell Opublikowano 11 Lutego 2022 Filar Społeczności Udostępnij Opublikowano 11 Lutego 2022 a lengthdirami rozwiązałbyś swój problem, gdybyś dodał do tego jeszcze jedno przesunięcie - teraz przesuwasz pocisk tylko o 40 na jednej osi, chodziło Ci pierwotnie o coś plus minus takiego: lx = x + lengthdir_x(40, dir) + lengthdir_x(10, dir - 90); ly = y + lengthdir_y(40, dir) + lengthdir_y(10, dir - 90); więc jak to zwierzątko w scratchu, idziesz 40 kroków w prawo i 10 kroków do góry ps: kozacki sprite i kozacka animacja idle SimianVirus7 i gnysek 2 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SimianVirus7 Opublikowano 11 Lutego 2022 Autor Udostępnij Opublikowano 11 Lutego 2022 Cytat chodziło Ci pierwotnie o coś plus minus takiego Dokładnie, ale nie pomyślałbym, żeby dać dwa razy lengthdira ? kozacki sprite i kozacka animacja idle B) Dziękuje, ale przyznaje się bez bicia, że to nie moje ? dino to jakieś darmówki z itcha, a bronie były za 2$ 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ę