karolo320 Opublikowano 26 Marca 2012 Udostępnij Opublikowano 26 Marca 2012 dzień dobry, czy poniższy kod jest optymalny? Da się to zrobić lepiej, szybciej? :) Pragnę mieć w tablicy id trzech najblizszych instancji w promieniu global.zasi[4,lvl] od punktu x+16,y+16, oto mój kod: GML for(i=0;i<=2;i+=1){ obj[i,0]=-1//id obiektu obj[i,1]=-1//dystans } with(o_wrog){ var odl; odl=point_distance(other.x+16,other.y+16,x,y) if odl<global.zasi[4,other.lvl]{//zasieg if odl<other.obj[2,1] or other.obj[2,1]=-1{ if odl<other.obj[0,1] or other.obj[0,1]=-1{ var pomocnik; pomocnik[0]=other.obj[1,0] pomocnik[1]=other.obj[1,1] other.obj[1,0]=other.obj[0,0] other.obj[1,1]=other.obj[0,1] other.obj[0,1]=odl other.obj[0,0]=id other.obj[2,0]=pomocnik[0] other.obj[2,1]=pomocnik[1] }else{ if odl<other.obj[1,1] or other.obj[1,1]=-1{ other.obj[2,0]=other.obj[1,0] other.obj[2,1]=other.obj[1,1] other.obj[1,1]=odl other.obj[1,0]=id }else{ if odl<other.obj[2,1] or other.obj[2,1]=-1{ other.obj[2,1]=odl other.obj[2,0]=id } } } } } } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 26 Marca 2012 Udostępnij Opublikowano 26 Marca 2012 Sprawdź jeszcze z kolejką priorytetową czy przypadkiem nie będzie szybsze. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 26 Marca 2012 Autor Udostępnij Opublikowano 26 Marca 2012 z czym..? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 26 Marca 2012 Udostępnij Opublikowano 26 Marca 2012 http://www.gmlscripts.com/script/instance_nth_nearest Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 26 Marca 2012 Administratorzy Udostępnij Opublikowano 26 Marca 2012 kolejka priorytetowa - prioryty queue 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ę