Skocz do zawartości

najechanie myszą, wykonanie akcji po kliknięciu na obj.


marker

Rekomendowane odpowiedzi

Mam 2 pytania: zrobiłem obj.1 i obj.2 i próbuję w końcu nie za pomocą klocków, a kodów ustawić tak, aby po kliknięciu na dany obj. była wykonana akcja. Problem jest w tym, że gdy kliknę byle gdzie na roomie mychą, to wykonywana jest akcja, a chciałbym, żeby była wykonywana tylko wtedy, gdy mb_left pressed + mysz jest na obj... Może jeszcze bym sobie poradził,ale obj. jest ruchomy.

 

 

 

Drugie pytanie: jak zrobić, aby akcja wykonywana była po najechaniu myszą na obj? Obiekt jest ruchomy.

 

 

 

I bardzo proszę nie odsyłać mnie do pomocy GML, gdyż nie mogę tego znaleźć, albo mój angielski nie jest taki cudowny :)

 

 

 

jak zwykle, z góry dzięki

Odnośnik do komentarza
Udostępnij na innych stronach

Metoda podana przez poprzednika jest dziadoska, także się wtrącę :)

 

Funkcja mouse_on():

GML
if(mouse_x>=x && mouse_y>=y && mouse_x<x+sprite_width && mouse_y<y+sprite_height){ return 1; }else{ return 0; }

Użycie:

GML
if(mouse_on() && mouse_check_button_pressed(mb_left))

 

Prosta i szybka metoda, bez niepotrzebnego kiczowatego rozbijania kodu na eventy.

 

Jeśli musisz sprawdzić, czy myszka jest nad kulką (w tym przypadku jest sprawdzane, czy myszka znajduje się w prostokącie) użyj Pitagorasa (point_distance()), jeśli już koniecznie musisz sprawdzić nieregularny kształt to po prostu sprawdzaj GMowym eventem, czy myszka jest nad obiektem, i, jeśli tak, to zmieniaj jakąś zmienną.

 

Bo są sytuacje, kiedy po prostu nie można sobie pozwolić na niepotrzebne rozbicie kodu na kilka eventów - zresztą lepiej mieć wszystko w jednym (+Create/Draw) i tyle. :P

 

Jakby co: [mouse_x/y] to pozycja myszki w roomie.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeżeli nie masz maski to Ci to nic nie da, jeżeli masz powiedzmy nadrawowany kwadracik i żeby sprawdzić czy kursor jest nad nim nie użyjesz sprite_width/height no bo nie masz maski/sprita.

To wtedy można stworzyć sobie jakieś własne wartości width i height i za ich pomocą rysować prostokąt oraz wykrywać kliknięcie.

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...