Skocz do zawartości

Poruszanie viewe,


Mentoss

Rekomendowane odpowiedzi

Przeszukałem forum, myślałem długo i mam mały problem.

Potrzebuję kodu, który:

 

 

- przy kliknieciu LPM "łapie viewa"

- przy poruszaniu myszką przesuwa go

- przy puszczeniu LPM'a view ma zostać puszczony, żebym mógł grać w spokoju

 

jeśliby ktoś mógł to niech mi podpowie... a jak nie, to niech chociaż naprowadzi

Odnośnik do komentarza
Udostępnij na innych stronach

chodzi mi o coś takiego, że lewym klikam w jakimkolwiek miejscu i od tego momentu mysz pozostaje w tym samym miejscu w stosunku do rooma, a jak poruszę myszką, to zmienia się x i y viewa

 

edit:

 

i sorki, że mnie nie było tak długo...

Odnośnik do komentarza
Udostępnij na innych stronach

Myszki nie ustawisz w jednym miejscu. Każdy ruch mychy powoduje zmianę mouse_x i mouse_y. Możesz stworzyć obiekt kursor, który zastąpi kursor myszki. Daj mu w stepie:

GML
if(!mouse_check_button(mb_left)))

{

x=mouse_x;

y=mouse_y;

}

Ale gdy puścisz LPM, to obiekt ten natychmiast przeskoczy na x=mouse_x i y=mouse_y.

Pamiętaj, aby w opcjach odznaczyć opcję wyświetlania kursora.

Odnośnik do komentarza
Udostępnij na innych stronach

Może to co ci dam nie będzie zbytnio przyciągało ale będzie to kod na coś, że jak przytrzymasz LPM to wiev będziesz kontrolował myszką.

W roomie dajesz wieva obiektowi o_mycha.

Obiekt o_mycha: (step)

GML
x = mouse_x

y = mouse_y

To sprawia że ten obiekt będzie tam gdzie mysz.

I daj temu obiektowi No button (w myszy):

No i klocek zamienia w obiekt o_nmycha

W obiekcie o_nmycha:

Global left button:

klocek zamieniający w o_mycha.

 

No to tyle, mam nadzieję że pomogłem tym prostym przykładzikiem :)

Odnośnik do komentarza
Udostępnij na innych stronach

Moim zdaniem chodzi o coś takiego (sugeruje się tym - łapanie zooma).

Są dwie opcje.

W jednej myszką latasz po widocznym obszarze a view w ogóle się nie rusza.

W drugiej ruchy myszki powodują natychmiastowe przesuwanie rooma (najlepiej będzie - im bliżej krawędzi, tym szybciej).

Do przechodzenia między tymi dwiema opcjami służy kliknięcie myszki.

Tak to rozumiem... O to chodzi ?

Odnośnik do komentarza
Udostępnij na innych stronach

Stwórz objekt który będzie miał ustawionego view'a na środku ekranu i gdy lewy wciśnięty:

GML
x=mouse_x

y=mouse_y

a jeśli chcesz taki żeby nie było przeskoków to ustawiasz że

view_hborder[0]=mouse_x-view_xview

view_vborder[0]=mouse_y-view_yview

view_object[0]=object0 i kombinujesz coś z tymi wartościami aż wyjdzie hehe

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ę...