Skocz do zawartości

View śledzący dwa obiekty


Rekomendowane odpowiedzi

Mógłby mi ktoś pomoc?

Chcę zrobić żeby view (platformówka) śledził dwóch graczy...

Znaczy, nie tylko jednego, ale oby dwa...

A jeszcze bym chciał zrobić, żeby gdy te dwa obiekty są od siebie dalej niż wielkość rooma ekran się rozdziela ;P

Dodam jeszcze, że obiekt2 jest sparentowany z obiectem1, i view ma śledzić object1 ale śledzi object2 :S

 

Help

Odnośnik do komentarza
Udostępnij na innych stronach

Stworz sobie obiekt 'kontrol'.

W evencie Step:

GML
if(object1.x > view_xview[0])&&(object1.y > view_yview[0])&&(object1.x < view_xview[0]+view_wview[0])&&(object1.y < view_yview[0]+view_hview[0])

{

view_xview[0]=mean(object1.x,object2.x)

view_yview[0]=mean(object1.y,object2.y)

view_hview[0]=/wysokosc ekranu/

view_wview[0]=/szerokosc ekranu/

view_visible[1]=0

}

else

{

//kod z dwoma viewami, chyba wiesz, jak :P

}

Nie jestem pewien, czy dziala, bo nie mam jak sprawdzic.

Odnośnik do komentarza
Udostępnij na innych stronach

Ech...

W miejsce tego kodu z 2 viewami wpisz:

GML
view_visible[1]=1

view_object[0]=object1

view_object[1]=object2

view_wview[0]=/zaleznie od ustawienia, 1024 lub 512/

view_hview[0]=/zaleznie od ustawienia, 384 lub 768/

//i viewovi 1 ustawic na poczatku tak samo</span>

To tak z grubsza...

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if(Gracz.x > view_xview[0])&&(Gracz.y > view_yview[0])&&(Gracz2.x < view_xview[0]+view_wview[0])&&(Gracz2 < view_yview[0]+view_hview[0])

{

view_xview[0]=mean(Gracz.x,Gracz2.x)

view_yview[0]=mean(Gracz.y,Gracz2.y)

view_hview[0]=640

view_wview[0]=480

view_visible[1]=0

}

else

{

view_visible[1]=1

view_object[0]=Gracz

view_object[1]=Gracz2

view_wview[0]=640

view_hview[0]=480

view_wview[0]=640

view_hview[0]=480

}

 

Co jest źle?

Nawet jak zmieniam to na początku z Gracz2 na Gracz, to nie działa :/ Psuje się wszystko :/

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if(Gracz.x > view_xview[0])&&(Gracz.y > view_yview[0])&&(Gracz.x < view_xview[0]+view_wview[0])&&(Gracz < view_yview[0]+view_hview[0])

{

view_xview[0]=mean(Gracz.x,Gracz2.x)

view_yview[0]=mean(Gracz.y,Gracz2.y)

view_hview[0]=640

view_wview[0]=480

view_visible[1]=0

}

else

{

view_visible[1]=1

view_object[0]=Gracz

view_object[1]=Gracz2

view_wview[0]=640

view_hview[0]=240

view_wview[1]=640

view_hview[1]=240

view_yport[1]=240

}

Jak teraz nie zadziala, to nie wiem...

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