hudy0070 Opublikowano 23 Stycznia 2008 Udostępnij Opublikowano 23 Stycznia 2008 Lengthdir ta opcja jest mi w ogóle nie znana dlatego chciałbym się zapytać jak ją dokładnie zrobić. Mam obiekt Hero, i obiekt pocisk. Hero ma lufę z której ma strzelać pocisk ale tak się nie dzieje. UŻYŁEM opcji szukaj no i znalazłem to lengthdir ale w ogóle nie czaje jak mam tego użyć, można prosić o pomoc? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 23 Stycznia 2008 Udostępnij Opublikowano 23 Stycznia 2008 mam nadzieje ze nie palne jakiejs glupoty. najprostrzy przykład: przy tworzeniu pocisku we współrzedne dajesz: x=hero.x+lenghtdir_x(r,<<kąt o ile ma sie odchylic od kierunku obiektu bazowego>>) y=hero.y+lenghtdir_y(r,<<kąt o ile ma sie odchylic od kierunku obiektu bazowego>>) w wypadku mojego bazgroła to bedzie: x=hero.x+lengthdir_x(999,hero.direction+45) y=hero.y+lengthdir_y(999,hero.direction+45) w ten sposob pociski beda pojawiac sie w punkcie odleglym o 999 pixeli, odchylonym od kierynku 0 obiektu hero o 45 stopni jak napisalem jakas glupote to mnie poprawcie ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 23 Stycznia 2008 Autor Udostępnij Opublikowano 23 Stycznia 2008 FATAL ERROR in action number 1 of Create Event for object pocisk_o: COMPILATION ERROR in code action Error in code at line 4: x=hero_o.x+lenghtdir_x(25,hero_o.direction+40) at position 13: Unknown function or script: lenghtdir_x what a?! EDIT: źle było zapisane xD t z h pomyliłeś miejscami xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 23 Stycznia 2008 Udostępnij Opublikowano 23 Stycznia 2008 moja wina th zamiast ht zaraz poprawie lengthdir_x(len,dir) - pamietaj bezmyslne kopiowanie zwieksza ryzyko wypadku smiertelnego... :twisted: @UP - a jednak nie calkiem bezmyslne... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 23 Stycznia 2008 Autor Udostępnij Opublikowano 23 Stycznia 2008 Strzela dalej koło ludzia mojego xD jeżeli kąt jest o ileś mniejszy lub większy to bardzo źle xD? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 23 Stycznia 2008 Udostępnij Opublikowano 23 Stycznia 2008 zrobie ci przykładzik, poczekaj chwile a znajdziesz tu linka... no i jest : https://gmclan.org/up3255_11_lengthdir.html moze nie oto ci chodzilo: popatrz na sprite postaci swojej, pomysl w jakiej odleglosci od postaci ma sie pojawic pocisk, i o ile stopni musisz przekrecic ten punkt aby znalazl sie na lufie broni... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 24 Stycznia 2008 Autor Udostępnij Opublikowano 24 Stycznia 2008 Dalej mi nie wychodzi ;/ a Twój przykład też typek strzela ale nie dokładnie z lufy. Nie dało by się tego zrobić z image_xscale? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Yoda Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 image_xscale? A co to ma do rzeczy :/ Musisz tak dobierać dystans w lengthdir'ze żeby w końcu zaczął wylatywać z lufy -musisz pokombinować :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 Dalej mi nie wychodzi ;/ a Twój przykład też typek strzela ale nie dokładnie z lufy. Nie dało by się tego zrobić z image_xscale? bo to jest przyklad demonstrujacy zasade dzialania a nie przepis na gotowe (i tak nie znam rozmiarow twojej grafiki), zeby strzelal dokladnie z lufy, musisz ustawic kat (dir), a potem poexperymentowac z odlegloscia (len). Trza troche ruszyc glowa, popracowac, a nie: "Nie dziala, buuuu... :crying: " Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 Hmm. pokaże inny przykład. Ustalmy sobie promień, np. : GML r = 100; Przyda się także ilość kulek: GML max = 6; Oraz przejście: GML add = 0; No i narysujmy je: GML for( i = 0; i < max; i += 1; ) { _x = lengthdir_x( r, i * ( 360 / max ) + add ); _y = lengthdir_y( r, i * ( 360 / max ) + add ); draw_circle( 200 + _x, 200 + _y, 8, false ); } Teraz rozumiesz ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 24 Stycznia 2008 Autor Udostępnij Opublikowano 24 Stycznia 2008 Dalej nie rozumiem. Nie wiecie czy to nie mogło się nadać? shoot_x = x + sin(degtorad(direction + 90))*23; shoot_y = y + cos(degtorad(direction + 90))*23; instance_create(shoot_x,shoot_y,object2); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 Lepiej uprościć to sobie prostymi funkcjami, bo z tego na pewno nic nie rozumiesz -_- ... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 24 Stycznia 2008 Autor Udostępnij Opublikowano 24 Stycznia 2008 A nie można by stworzyć taki sam sprite tylko że origin na koncu pistoletu a w obiekcie hero zrobić create instance? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
copoconaco Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 1. Ustalasz kat (dir) 2. Testujesz odleglosc (len) - R1, R2, R3 lengthdir_x(len,dir) instance_create(hero_obj.x+lengthdir_x(90,direction-26),hero_obj.y+lengthdir_y(90,direction-26),bullet_obj) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 A czy Mr. hudy0070 wie coś o kątach i kołach? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 24 Stycznia 2008 Autor Udostępnij Opublikowano 24 Stycznia 2008 coś tam wie xD środkowe i wpsane <lol2> nie o to Ci chodzi wiem zbiajm sobie dobra mam coś takiego Ps. Samo hudy wystarczy cyferki dla ozdoby xD Ładnie wychodzi tylko strzelanie do dołu :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 24 Stycznia 2008 Udostępnij Opublikowano 24 Stycznia 2008 A może by tak dać - w r i image_angle+dir? EDIT: Pokaz kod strzelania Edit2: Najlepiej prześlij mi plik gm6/7 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 24 Stycznia 2008 Autor Udostępnij Opublikowano 24 Stycznia 2008 Konrad skorzystałem z Twojego przykładu no i mam ludzia wszystko już pięknie ładnie tylok się obracać za myszką nie chce :( chociarz mam taki kod GML direction=point_direction(x,y,mouse_x,mouse_y) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 25 Stycznia 2008 Autor Udostępnij Opublikowano 25 Stycznia 2008 pisze duble posta bo nikt nie odpowiedział na pierwsze pytanie otóż: dlaczego mój obiekt nie chce się obracać chociaż mam ten kod wyżej ? GML direction=point_direction(x,y,mouse_x,mouse_y) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kryniak Opublikowano 25 Stycznia 2008 Udostępnij Opublikowano 25 Stycznia 2008 Bo musisz jeszcze dać instrukcję: GML image_angle=direction;Tyle razy było to wałkowane. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 25 Stycznia 2008 Autor Udostępnij Opublikowano 25 Stycznia 2008 Albo jestem głupi albo źle ustawiłem lengthdir no bo dalej pocisk tworzy się koło typa. A robiłem tak jak Konrad mi przykład robił. 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ę