Skocz do zawartości

Tworzenie kolizji bez obrazu i Mask z tym samym object'em


Rekomendowane odpowiedzi

GMK (Zostanie usunięte po udzieleniu odpowiedzi)

 

GML
with(OBJ)

{

if not collision_point(x-16,y,OBJ /* Jak zrobić kolizje z takim samym objektem? */,1,1)

{

if keyboard_check(ord('A')) {x-=3}

if keyboard_check(ord('D')) {x+=3}

if keyboard_check(ord('W')) {y-=3}

if keyboard_check(ord('S')) {y+=3}

}

}

Gra nie może zawierać sprite'ów ani więcej niż 2 object'ów na object liście

Odnośnik do komentarza
Udostępnij na innych stronach

Poprawka

GML
with(OBJ)

{

if not collision_point(x-16,y,OBJ /* Jak zrobić kolizje z takim samym objektem? tylko inną z inną właściwością */,1,1)

{

if keyboard_check(ord('A')) {x-=3}

if keyboard_check(ord('D')) {x+=3}

if keyboard_check(ord('W')) {y-=3}

if keyboard_check(ord('S')) {y+=3}

}

}

właściwością a mianowicie OBJ.type

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

other masz tylko w trakcie kolizji - ogólnie jak coś nie ma sprite/maski, to nie ma kolizji, bo nie ma rozmiaru - jest niemierzalne - można co najwyżej sprawdzać czy x,y są w jakimś tam prostokącie, ale to jest prosta matematyka przecież (sprawdzanie czy punkt jest w prostokącie)

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem jak jest w GM:Studio, ale do gm8 other również można używać by odwoływać się do własności instancji która poprzedza with. Drzewo typu:

GML
var _val;

 

with OBJ

{

caller = other.id;

 

with ANOTHER

{

_val = id;

with other

{

another_id = _val;

}

}

// to samo co wyżej po 'with other'

another_id = _val;

}

Również działa.
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ę...