Exigo Opublikowano 28 Marca 2012 Udostępnij Opublikowano 28 Marca 2012 Mam przykładowo taką funkcję, "dodaj_obiekt": GML _i = instance_create(0, 0, obiekt); _i.x = 123; _i.y = 123 _i.asd = 0; Obiekt ten jest pusty. Służy tylko do trzymania danych. Używam jej wielokrotnie. Teraz moim celem jest dostanie się do indeksów które zwrócą mi te "obiekty". Można by przy tworzeniu zrobić jakiś stos/tablicę, i trzymać to pod ręką. Ale chciałbym zrobić to (zakładam, jeśli jest to możliwe) w prostszy sposób. Tak więc: skąd mogę pobrać indeksy do wszystkich "obiektów"? (np. jak zdobyć tą wartość "asd") Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Raalsky Opublikowano 28 Marca 2012 Udostępnij Opublikowano 28 Marca 2012 Dodawaj kolejne id do stosu? Pewnie to wiesz, ale instance_create zwraca id danego obiektu. Ewentualnie tablica asocjacyjna i sobie je jakoś nazywaj. Indeksy rosną bodajże o stałą wartość w GM, więc jedynie musisz wiedzieć który to był obiekt z kolei. Wytłumacz trochę bardziej swój problem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Maximal Opublikowano 28 Marca 2012 Udostępnij Opublikowano 28 Marca 2012 GML for ( i = 0; i < instance_count; i += 1 ) { iid = instance_id[ i ]; if ( instance_exists( iid ) && iid.object_index == obiekt ) { zmienna = iid.asd; } } Coś takiego? Tylko, że jeżeli masz dużo obiektów innych typów to rzeczywiście będzie szybciej trzymać identyfikatory tych konkretnych w jakiejś strukturze danych. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 28 Marca 2012 Autor Udostępnij Opublikowano 28 Marca 2012 Na szczęście przed chwilą odkryłem coś takiego jak "with (obiekt)". W każdym razie dzięki za fatygę. ; ) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę