Qbi Wan Opublikowano 15 Stycznia 2012 Udostępnij Opublikowano 15 Stycznia 2012 Hej. Mam pytanie, czy możliwa była by analiza przykładu "Znajdowanie drogi 2.0" linijka po linijce na łamach forum? Wiem że przypisy autora są tam zamieszczone, jednak dużo rzeczy pozostaje dla mnie niezrozumiałych. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 16 Stycznia 2012 Autor Udostępnij Opublikowano 16 Stycznia 2012 To znaczy że nie?? XD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 16 Stycznia 2012 Udostępnij Opublikowano 16 Stycznia 2012 Czego dokładnie nie wiesz? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 16 Stycznia 2012 Autor Udostępnij Opublikowano 16 Stycznia 2012 No np. po co przechowywać wartość sinusa? Po co wogóle ją obliczać? OBJ>create>scr: kąt czego przechowuje "Angle"? Skąd się wziął "przyrost wartości kąta? Dlaczego jak to odpalam to wyskakują mi błędy? Dlaczego trzeba ciągle wywalać siatkę i tworzyć ją od nowa?? Mam tego więcejdlatego wpadłem na taką analizę "step by step" :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 16 Stycznia 2012 Udostępnij Opublikowano 16 Stycznia 2012 Sinus jest użyty do uzyskania efektu animacji powiększenia się i zmniejszenia markera punktu docelowego. Angle jest użyty zamiast direction Błędy wyskakują Ci dlatego, że przykład był robiony w gamemakerze w wersji 6.1 lub 6.0, a ty pewnie używasz nowszej wersji 7.0, 8.0, lub 8.1. Nie wiem od której funkcja logn jest zmieniona. Grida nie trzeba wywalać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 17 Stycznia 2012 Autor Udostępnij Opublikowano 17 Stycznia 2012 Sinus jest użyty do uzyskania efektu animacji powiększenia się i zmniejszenia markera punktu docelowego. (...) Grida nie trzeba wywalać. A gdyby nie było funkcji sinus?? Obj>Player>left pressed>code> >linia 11>Grid = mp_grid_create(0,0,40,30,16,16); //two¿ymy now¹ siatkê; >linia 21: mp_grid_destroy(Grid); //wywal siatkê Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 17 Stycznia 2012 Udostępnij Opublikowano 17 Stycznia 2012 Umówmy się, że jeżeli rzadko będziesz używał wykrywania drogi. To możesz usuwać. Ale jeżeli jest to używane praktycznie zawsze (jak w heroes albo innej strategii) to nie widzę sensu usuwania jej. Gdyby nie było sinusa, to by nie mogło być też obliczania kąta i marker po prostu by się pojawiał bez żadnego efektu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 17 Stycznia 2012 Autor Udostępnij Opublikowano 17 Stycznia 2012 Marker czyli point czy goal? i jaki to efekt? marker przecież pojawia się tylko i przy kolizji znika :P W takim razie czy usuwanie grida ma jakieś praktyczne zastosowanie? Czego dotyczy ten błąd: ERROR in action number 1 of Draw Event for object __newobject8: Error in function logn(). Nie ma tam takiego obiektu, a jedyny Goal z eventem draw nie zawiera funkcji logn(). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 19 Stycznia 2012 Autor Udostępnij Opublikowano 19 Stycznia 2012 Potrafi ktoś odpowiedzieć? Szczególnie na to ostatnie :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 19 Stycznia 2012 Udostępnij Opublikowano 19 Stycznia 2012 logn masz pewnie w creation code roomu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 20 Stycznia 2012 Autor Udostępnij Opublikowano 20 Stycznia 2012 A gdzie takowy znajdę? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 20 Stycznia 2012 Administratorzy Udostępnij Opublikowano 20 Stycznia 2012 klikasz dwa razy na room i na jednym z tabów jest duzy guzik "creation code" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 20 Stycznia 2012 Autor Udostępnij Opublikowano 20 Stycznia 2012 Znalazłem ten kod :P Jak możnaby go poprawić? Zamienić logn na coś innego??? "// SYSTEM KOMUNIKATÓW - nie jest tematem przyk³adu wiêc go nie opisuê. show_info(); var a;a=object_add();object_set_visible(a,false);object_event_add(a,ev_create,0,'global.M="";global.L=0;I=0;T=ds_grid_create(9,4);ds_grid_set(T,0,0,"Witam w przyk³adzie Znajdowanie Drogi!");ds_grid_set(T,0,1,room_width/2);ds_grid_set(T,0,2,room_height/2);ds_grid_set(T,0,3,room_speed*2);ds_grid_set(T,1,0,"Przyk³ad wykonany dla serwisu GMClan.org");ds_grid_set(T,1,1,room_width/2);ds_grid_set(T,1,2,room_height/2);ds_grid_set(T,1,3,room_speed*2);ds_grid_set(T,2,0,"Jego celem jest demonstracja dzia³ania funkcji planowania ruchu w GM");ds_grid_set(T,2,1,room_width/2);ds_grid_set(T,2,2,455);ds_grid_set(T,2,3,room_speed*4);ds_grid_set(T,3,0,"Klawiszologia: LEWY KLIK - wyznacz cie¿kê; PRAWY KLIK - id;#F1 lub F2 - Pomoc");ds_grid_set(T,3,1,room_width/2);ds_grid_set(T,3,2,445);ds_grid_set(T,3,3,room_speed*5);ds_grid_set(T,4,0,"Jeli znajdziejsz b³êdy w tym przyk³adzie, daj znaæ autorowi: most23@op.pl");ds_grid_set(T,4,1,room_width/2);ds_grid_set(T,4,2,455);ds_grid_set(T,4,3,room_speed*4);ds_grid_set(T,5,0,"© 2006 most23#www.gmclan.org | www.most23.prv.pl");ds_grid_set(T,5,1,room_width/2);ds_grid_set(T,5,2,445);ds_grid_set(T,5,3,room_speed*2);ds_grid_set(T,6,0,"F1 / F2 - Pomoc");ds_grid_set(T,6,1,580);ds_grid_set(T,6,2,17);ds_grid_set(T,6,3,false);eve nt_perform(ev_alarm,0);');object_event_add(a,ev_alarm,0,'if(I<7){global.M=ds_grid_get(T,I,0);global.L=ds_grid_get(T,I,3);instance_create(ds _grid_get(T,I,1),ds_grid_get(T,I,2),global.B);alarm[0]=ds_grid_get(T,I,3);I += 1;}else{global.M=ds_grid_get(T,7,0);global.L=ds_grid_get(T,7,3);instance_create( ds_grid_get(T,7,1),ds_grid_get(T,7,2),global.B);}');object_event_add(a,ev_keypress,113,'if(I>=6){global.M=ds_grid_get(T,3,0);global.L=ds_grid_get(T,3,3);instance_create(d s_grid_get(T,3,1),ds_grid_get(T,3,2),global.B);}');global.b=object_add();object_set_depth(global.b,-100000);object_set_visible(global.b,true);object_event_add(global.b,ev_create,0,'a[0]=global.M;a[1]=true;a[2]=false;a[3]=room_speed/2;a[4]=1;a[5]=5;a[6]=room_width*0.8;a[7]=(string_width_ext(a[0],-1,a[6])/2)+a[5];a[8]=(string_height_ext(a[0],-1,a[6])/2)+a[5];if(global.L!=false)then alarm[0]=global.L;');object_event_add(global.b,ev_alarm,0,'a[1]=false;');object_event_add(global.b,ev_draw,0,'a[9]=logn(a[3],a[4]);a[10]=a[7]*a[9];a[11]=a[8]*a[9];a[12]=x-a[10];a[13]=x+a[10];a[14]=y-a[11];a[15]=y+a[11];draw_set_alpha(a[9]*0.33);draw_rectangle_color(a[12]+5,a[14] +5,a[13]+5,a[15]+5,c_black,c_black,c_black,c_black,0);draw_set_alpha(a[9]*0.60); d raw_rectangle_color(a[12],a[14],a[13],a[15],c_maroon,c_maroon,c_black,c_black,0) ; draw_rectangle_color(a[12]-1,a[14]-1,a[13]-1,a[15]-1,c_white,c_white,c_black,c_black,1);draw_rectangle_color(a[12],a[14],a[13],a[15 ],c_black,c_black,c_black,c_black,1);if(a[2]){draw_set_font(Times10);draw_set_ha l ign(fa_center);draw_set_valign(fa_center);draw_text_ext_color(x,y,a[0],-1,a[6],c_olive,c_olive,c_white,c_white,1);}if(a[1]){if(a[4]<a[3])then a[4] += 1;else a[2]=true;}else{a[2]=false;if(a[4]>0)then a[4] -= 1;else instance_destroy();}');instance_create(0,0,a);" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 20 Stycznia 2012 Udostępnij Opublikowano 20 Stycznia 2012 Ale nie rozumiem po co Ci ten kod. On nie ma nic związanego z wyszukiwaniem ścieżki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 20 Stycznia 2012 Udostępnij Opublikowano 20 Stycznia 2012 Ten obiekt możesz całkowicie wywalić. On służy tyko do wyświetlenia interfacu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 20 Stycznia 2012 Udostępnij Opublikowano 20 Stycznia 2012 Możesz też skorzystać z mojego przykładu, niektórzy sądzą, że jest czytelniejszy. @HuderLord: stuknęło Ci 2000 postów : D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 29 Stycznia 2012 Autor Udostępnij Opublikowano 29 Stycznia 2012 ŚWIETNY! Bardzo prosty i czytelny. Chciałbym o coś dalej jeszcze spytać, ale nie wiem czy nowego tematu nie otworzyć A jakbym chciał żeby poruszały się tylko w pionie i poziomie? Przy czym chciałbym żeby najpierw wybierały poziom, potem pion, poruszając się szybciej w pozimie?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Qbi Wan Opublikowano 27 Czerwca 2012 Autor Udostępnij Opublikowano 27 Czerwca 2012 Sorki ze odgrzewam taki stary temat, ale wróciłem do tego projektu. Mam w związku z tym pewien problem: wiem już jak zrobić podążanie za punktem, domyślam się ze wtedy automatycznie wybierana jest jedna najkrótsza droga, ale jak zrobić żeby wybierana była NAJSZYBSZA? Jak w Heroes of Might and Magic: drogi dawały bonus do ruchu a postać poruszając się do punktu starała się iść nie najkrótszą drogą, ale właśnie drogami żeby było szybciej, jednocześnie unikając rzek, za które z kolei była kara do ruchu. Myślałem by nadać każdemu elementowi odpowiednia wartość która sumowana by była i porównywana z innymi rozwiązaniami, ale nie wiem jak to zainicjować. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 27 Czerwca 2012 Udostępnij Opublikowano 27 Czerwca 2012 To już są wyższe loty. Musiałbyś sam napisać system wyszukiwania ścieżek na podstawie prędkości na danym terenie. Jest gdzieś u nas na forum taki przykład na mapie opartej na hexach. 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ę