Skocz do zawartości

zoom do środka mapy


Rekomendowane odpowiedzi

Zrobiłem zoom scrolem, ale nie mam pojęcia jak zrobić żeby zoomowało mi do środka mapy a nie do rogu?

widok z góry 2D

 

Druga sprawa to żeby obiekty się nie scalowały.

 

Obecny kod:w Event Mouse Wheel up

GML
view_wview[0] = max(640, view_wview[0] - 20);

view_hview[0] = view_wview[0] * 0.75;

 

Dodatkowo później mam zamiar zrobić przesówanie obrazu za pomocą myszki.

Odnośnik do komentarza
Udostępnij na innych stronach

dzięki wielkie :D Opisze tutaj jak by ktoś potrzebował

mamy trzy skrypty do zooma

Script 1

scrMouseControlInit

GML
// Setup an enum for zoom in/out

ZoomIn = 0;

ZoomOut = 1;

Script 2

scrMouseZoom

GML
switch (argument0)

{

case ZoomOut:

{

if (view_wview[0] <= (room_width - 64))

{

view_wview[0] += 64;

view_hview[0] += 48;

view_xview[0] -= 32;

view_yview[0] -= 24;

}

}

break;

 

case ZoomIn:

{

if (view_wview[0] > 512)

{

view_wview[0] -= 64;

view_hview[0] -= 48;

view_xview[0] += 32;

view_yview[0] += 24;

}

}

break;

}

 

ClampViewSettings();

Script 3

ClampViewSettings

 

GML
if (view_xview[0] <= 0) {

view_xview[0] = 0;

}

if ((view_xview[0] + view_wview[0]) > room_width) {

view_xview[0] = room_width - view_wview[0];

}

 

if (view_yview[0] <= 0) {

view_yview[0] = 0;

}

if ((view_yview[0] + view_hview[0]) > room_height) {

view_yview[0] = room_height - view_hview[0];

}

 

Tworzymy obiekt objMouseControl

 

w Create

GML
scrMouseControlInit();

 

w Event Mouse Wheel UP

GML
scrMouseZoom(ZoomOut);

 

w Event Mouse Wheel DOWN

GML
scrMouseZoom(ZoomIn);
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ę...