SKiD Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 Witam, mam mały problem. Próbuję zrobić system celowania, w którym zależnie od stanu gracza i od tego czy się porusza czy nie; chciał bym zmniejszyć lub zwiększyć jego celność. Tutaj mam kilka stanów do których będę musiał to zrobić: Gracz stoi w miejscu | celność = 90% Gracz porusza się | celność = 75% Gracz blisko śmierci stoi w miejscu | celność = 55% Gracz blisko śmierci porusza się | celność = 35% Nie proszę was od razu o kody. Chciałbym najpierw jakieś wyjaśnienie lub coś co mi pomoże w zrobieniu tego samemu. Jak na razie mam event z drag&drop w którym tworze ruchomy obiekt (obj_bullet) o szybkości 44. Na x i y. Odkręcony w stronę lotu. Z góry dzięki za waszą pomoc. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 Zrób sobie zmienną accuracy - celność i daj jej w stepie create jakąś wartość, i zmieniaj ją przy chodzeniu itd, następnie tworząc pociska nadaj mu direction - obj.direction=direction+random_range(-accuracy, accuracy) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SKiD Opublikowano 20 Sierpnia 2011 Autor Udostępnij Opublikowano 20 Sierpnia 2011 Coś takiego? Create EVENT GML accuracy=90 Step GML if normal=true { if keyboard_check_pressed(vk_a) | keyboard_check_pressed(vk_d) | keyboard_check_pressed(vk_w) | keyboard_check_pressed(vk_s) { accuracy=75 } } LMB Pressed GML instance_create(x,y,obj_bullet) with motion_set(random_range(-accuracy, accuracy),44) mogłem pomylić przyciski ale to nic wielkiego... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 Niekoniecznie, w tym wypadku im większa wartość tym większy rozrzut. EDIT:LPM GML obj=instance_create(x,y,obj_bullet) obj.direction=direction+random_range(-accuracy, accuracy) EDIT2: i klawisze od a do z to np: keyboard_check_pressed(ord("A")) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SKiD Opublikowano 20 Sierpnia 2011 Autor Udostępnij Opublikowano 20 Sierpnia 2011 Więc musiał bym zrobić na odwrót? np. accuracy=10 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 Tak, i jeszcze musisz dodać prędkość pocisku np: obj.speed=6 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SKiD Opublikowano 20 Sierpnia 2011 Autor Udostępnij Opublikowano 20 Sierpnia 2011 Wpisałem wszystko ale gdy okręcam się graczem i strzelam pocisk jest skierowany w prawą stronę (tak jak jego sprite) i leci tylko w prawą stronę. Jakieś pomysły? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 ??A masz jakiś kod w pocisku?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SKiD Opublikowano 20 Sierpnia 2011 Autor Udostępnij Opublikowano 20 Sierpnia 2011 W create image_angle=direction EDIT obj.direction=direction+random_range(-accuracy, accuracy) zamieniłem na obj.direction=image_angle+random_range(-accuracy, accuracy) i teraz pocisk leci tam gdzie celujesz ale nadal się nie odkręca w tą stronę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 20 Sierpnia 2011 Udostępnij Opublikowano 20 Sierpnia 2011 To pewnie dlatego że zmieniasz w hero tylko image_angle a nie direction. Daj w step image_angle=direction(w obj_bullet) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
SKiD Opublikowano 20 Sierpnia 2011 Autor Udostępnij Opublikowano 20 Sierpnia 2011 Zrobiłem. Musiałem zamienić GML obj.direction=direction+random_range(-accuracy, accuracy) na GML obj.direction=point_direction(x,y,mouse_x,mouse_y)+random_range(-accuracy,accuracy) Dzięki za pomoc. Jak wyjdzie wersja próbna dodam Cię w creditsach. 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ę