Kewin Opublikowano 30 Lipca 2019 Udostępnij Opublikowano 30 Lipca 2019 Robiem gre na androida. Nie mam pojęcia jak zrobić coś w stylu joystica, którym będę mógł obracać objektem o 360 stopni i poruszać nim. Programójem dopiero parę miesięcy więc proszę o szczegółowe odpowiedzi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 My potrzebujemy więcej informacji. Nie mamy pojęcia, jaką masz kamerę, nie wiemy jak chcesz sterować i co znaczy "będę mógł obracać obiektem o 360 stopni i poruszać nim". Opisz problem lepiej, jeśli oczekujesz "szczegółowych" odpowiedzi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Używam kamery podążającej za graczem. Chciałbym zrobić joystick np. taki ja w guns of boom. Czyli jak przesune główkę od joysticka do przodu to moja postać pójdzie do przodu i obróci się w taki sposób że twarzą będzie szedła do przodu a nie plecami. Moją postać widać z góry. Joystick ma być na ekranie bo to gra na androida. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Takie poruszanie, jakie opisałeś nie jest łatwe. Zaczynając od tego, że musisz rysować swój joystick na ekranie. Czego sposobów jest sporo. Najprostszy to rysowanie na warstwie GUI na stałej pozycji. ///Draw GUI //oczywiście koordynanty dobierz pod rozdzielczość i UI _x = 64 _y = 720-64 _r = 32 draw_circle(_x,_y,_r,1) Tu będziesz miał od razu ustawione pozycje joysticka jako zmienne. Możemy je teraz wykorzystywać przy wykrywaniu inputu. Pytanie jest jednak jak w ogóle porusza się twoja postać? Bo sposobów są setki. if(mouse_check_button(mb_left)) { var mx = display_mouse_get_x(); var my = display_mouse_get_y(); if(point_in_circle(mx,my,_x,_y,_r)) { direction = point_direction(_x,_y,mx,my) speed = point_distance(_x,_y,mx,my) } } Oczywiście ustawienie direction i speed to tragiczne rozwiązanie... ale to jest kierunek w jakim ten przykład będzie podążać. Samo wykrywanie joysticka też jest tylko konceptem który jest tragiczny. Traci input gdy wyjedziesz palcem poza joystick. Musisz sprawdzać czy pierwsze dotknięcie jest na joysticku i czy gracz kontynuuje trzymanie palca Jakbyś pokazał screen to rozwiał byś 80% pytań. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Screen Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Joystick Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 To akurat jest przykład screenów które nic nie wnosza Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Czego wysłać screen? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Jak twoja postać wygląda w grze. Jak odbywa się poruszanie. I poza tym zacząć już próbować. Całego rozwiązania na tacy nie dostaniesz, szczególnie że w większości zależy od twojej gry i nie jest to uniwersalne rozwiązanie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Pierwsze zdjęcie przedstawia postać na razie jest prosta bo zajmujem się programowaniem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Nie chodzi mi o grafikę postaci, a o to jak ona wygląda w świecie gry. Potrzebny screen z gry. Screen tego jak twoja postać się porusza, nie screen z edytora grafiki. To mi prawie nic nie dało. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 if (keyboard_check(vk_left)) { image_angle = image_angle + 3; audio_sound_pitch(silnik,random_range(59.2,59.4)) audio_play_sound(silnik,6,0); } if (keyboard_check(vk_right)) { image_angle = image_angle - 3; audio_sound_pitch(silnik,random_range(59.2,59.4)) audio_play_sound(silnik,6,0); } if (keyboard_check(vk_up)) { motion_add(image_angle, 0.03); audio_sound_pitch(silnik,random_range(0.2,0.4)) audio_play_sound(silnik,0,0); } Chciałbym tak zrobić żeby to wszystko robił joystick. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 OK bardzo ładnie. Więc to powinno zadziałać. Co prawda wymaga masy tweekowania jak pisałem wyżej: if(mouse_check_button(mb_left)) { var mx = display_mouse_get_x(); var my = display_mouse_get_y(); if(point_in_circle(mx,my,_x,_y,_r)) { image_angle += (_x-my)/10 motion_add(image_angle, (_y-my)/30) } } Wartości 10 i 30 to taka na oko "czułość". Oczywiście nic nie testowałem, nie mam przy sobie programu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 co oznacza "_r "? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Zmienna, która jest wykorzystywana w funkcji do rysowania okręgu oraz funkcji do sprawdzania, czy zaszło dotknięcie. Polecam kliknąć na funkcję i wcisnąć F12 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 ok, dzieki,dopiero zaczynam przygodę z programowaniem Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Spokojnie. Jeszcze wiele pytań cię czeka. Śmiało pytaj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 if(mouse_check_button(mb_left)) { var mx = display_mouse_get_x(); var my = display_mouse_get_y(); if(point_in_circle(mx,my,_x,_y,_r)) { image_angle += (_x-my)/10 motion_add(image_angle, (_y-my)/30) } } ten kod do step event joystick? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Dalej to jest draw GUI event. Z tego powodu że potrzebujesz mieć wcześniej zdefiniowane pozycje joystika Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Narysowało takie kółko. Ale nic ono nie robi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 To prawdopodobnie musisz zamienić funkcje display_mouse_get_x() na window_mouse_get_x(). Piszę z głowy, nie pamiętam Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Pewnie dobrze mi napisałeś ale ja coś źle robię. Mam sam event draw gui tak ma być czy ma być jeszcze np. create event. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Dodaj jeszcze to i sprawdź czy kółko rysuje ci się pod palcem draw_circle(display_mouse_get_x(),display_mouse_get_y(),8,0) Jeżeli nie to spróbuj z tymi drugimi funkcjami które podałem Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Pojawiło się kółko ale nie lata koło kursora tylko raz jest daleko raz blisko Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 postać się rusza ale nie można nad nią zapanować Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 31 Lipca 2019 Administratorzy Udostępnij Opublikowano 31 Lipca 2019 Bo motion_add dodaje prędkośc, ale nigdy jej nie zatrzymujesz. Pewnie dodanie else { speed = 0; } za ostatnim nawiasem klamrowym załatwi sprawę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 31 Lipca 2019 Udostępnij Opublikowano 31 Lipca 2019 Cytuj ata koło kursora tylko raz jest daleko raz blisko Co to znaczy? Musisz umieć to zinterpretować. Ta kopka pokazuje punkt w który mgra myśli że dotykasz ekranu. Musisz pokombinować by było dobrze. Tutaj nie pomogę. Za dużo rzeczy zależnych od ciebie w projekcie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 _x = 130 _y = 1000-64 _r = 64 draw_circle(_x,_y,_r,10) if(mouse_check_button(mb_left)) { var mx = window_mouse_get_x(); var my = window_mouse_get_y(); if(point_in_circle(mx,my,_x,_y,_r)) { image_angle += (_x-my)/10 motion_add(image_angle, (_y-my)/30) } } else { speed = 0; } draw_circle(display_mouse_get_x(),display_mouse_get_y(),8,0); postać można teraz zatrzymać ale idzie tam gdzie ona chce a nie ja Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 31 Lipca 2019 Administratorzy Udostępnij Opublikowano 31 Lipca 2019 Postać idzie tam, gdzie dotkniesz palcem w okręgu względem jego środka. Jak chcesz ruch taki jak gałką analogową na padzie, to są gotowe przkłady na yoyogames.com, w marketplace albo na forum. Coś na tej zasadzie ? Update: albo np. to: https://marketplace.yoyogames.com/assets/483/easy-mobile-controls Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kewin Opublikowano 31 Lipca 2019 Autor Udostępnij Opublikowano 31 Lipca 2019 Tak dokładnie o takie mi chodziło. Ale mam inną wersję game makera czy przez to może coś u mnie inaczej działać? 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ę