Kartofelek Opublikowano 31 Lipca 2008 Udostępnij Opublikowano 31 Lipca 2008 Nie jestem zaawansowanym uzytkownikiem GM - dopiero napisalem kilka skryptow. I trafilem na pewien maly problem. Tworze sobie instancje obiektu - powiedzmy ludzik. Po przeciwnej stronie sa obiekty dzialka ^^, ktore kieruja sie w kierunku najblizszych ludzikow i strzelaja: direction = point_direction(x,y,instance_nearest(x,y,ludzik).x,instance_nearest(x,y,ludzik).y); a = instance_create(x,y,kulka); a.speed = x Kod pewnie napisalem zle, bo pisalem z glowy. Chodzi o to, ze czasami program sie wysypywal, bo nie istaniala zmienna instance_nearest(x,y,ludzik).x. Pewnie chodzilo o to, ze jak jedno dzialko skierowalo sie na dana instancje ludzika i ja zniszczylo to drugie juz nie moglo pobrac x? Jak sobie z tym poradzic? W razie czego wkleje kod tworzonego skryptu. Pytanie2) Jak sie odpala skrypty (ale te "globalne") po uruchomieniu roomu? Szukalem w pomocy ale tam jest tylko o prevent xxx, a ja chcę spradzić czy znadzzenie utworzenia roomu zaistnialo. Pozdrawiam. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 31 Lipca 2008 Udostępnij Opublikowano 31 Lipca 2008 Pewnie chodzilo o to, ze jak jedno dzialko skierowalo sie na dana instancje ludzika i ja zniszczylo to drugie juz nie moglo pobrac x? tak, użyj funkcji, która sprawdza czy istnieje jakikolwiek ludzik. GML if instance_exists(ludzik) { a = instance_create(x,y,kulka); a.speed = x; a.direction = point_direction(x,y,instance_nearest(x,y,ludzik).x,instance_nearest(x,y,ludzik).y); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 31 Lipca 2008 Udostępnij Opublikowano 31 Lipca 2008 Lepiej aby było: GML if instance_exists(ludzik) { var a, f; a = instance_create(x,y,kulka); f = instance_nearest(x,y,ludzik); a.speed = x; a.direction = point_direction(x,y,f.x,f.y); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kartofelek Opublikowano 31 Lipca 2008 Autor Udostępnij Opublikowano 31 Lipca 2008 Hmm. Nie o to mi chodzilo. Ludziki są tworzone alarmem więc jest ich masowy napływ ^^ Chodzi mi o sytuację gdy powiedzmy 2 dzialka pobieraja tą samą instancję i jeden z nich ją niszczy, czy wtedy wygeneruje taki błąd, jeżeli drugie będzie chciało skorzystać z x tej instancji? Pytanie dodatkowe. Jak się obsługuje alarm ze skryptów? Wstawic zdarzenie potrafię, ale czy się da to wszstko zrobić "pisząc"? Dodatkowo owy błąd nie występuje, jeżeli zegar aktywujący zdarzenie strzelania (czyli ustawiania direction kulki na najbliższą instacnję ludzika) zwolnię z 2 na 5... 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ę