matis3 Opublikowano 10 Marca 2007 Udostępnij Opublikowano 10 Marca 2007 Pobrałem skrypt z działu download i mam następujący problem, jak zrobić żeby to całe inventory pojawiało się w zasięgu widoku postaci. Jak widze to inventory zostało zrobione na room bez przesuwania bo inv stoi jak słup w jednym miejscu :(. Próbowałem wieloma sposobami ale spędziłem z 2 godziny nad rozmyślaniem jak to szybko zrobić zamiast zamieniać pojedyńczo dane :(. Chciałbym aby inventory przesuwało/pojawiało się równomiernie razem z kamerą/postacią. P.S Jak zrobić aby można było przesuwać to inv myszką w inne miejsce? Z góry dziękuje za pomoc Oto ten skrypt (w obj_draw -> draw): draw_set_font(font_main); draw_set_halign(fa_left); draw_set_valign(fa_middle); draw_set_color(c_white); draw_set_alpha(0.5); draw_rectangle(10,10,210,10+(5*20)+20,false); draw_rectangle(10,10+(5*20),210,10+(5*20)+20,false); draw_set_color(c_green); draw_set_alpha(0.5); draw_rectangle(10,10+(kursor_y*20),210,10+(kursor_y*20)+20,false); //5*20 to ilosc pikseli potrzebna na wyswietlenie 5 linijek tekstu //+20 na koncu dodane jest aby wyswietlic znak > do przewijania stron draw_set_color(c_black); draw_set_alpha(1); draw_rectangle(10,10,210,10+(5*20)+20,true); for (i=0; i<5; i+=1;) { /* w przypadku gdy mamy strone 0, to 5*0=0 zatem wynik = i, czyli itemy od 0 do 4 (i<5) natomiast gdy jestesmy na 1 stronie (kursor_x=1), to i=i+5*1 czyli naprzyklad 6 dzieki temu wyswietlamy itemy od 5 do 9 */ if i+(5*kursor_x)<max_items { draw_sprite(item_img[i+(5*kursor_x)],0,20,10+(20*i)+10); draw_text(30,10+(20*i)+10,item_name[i+(5*kursor_x)]);//+10 dodane aby wysrodkowalo tekst, jest to 20/2 draw_text(190,10+(20*i)+10,string(item_n[i+(5*kursor_x)])); } } if pages>0 then draw_set_color(c_black) else draw_set_color(c_gray); draw_text(30,10+(5*20)+10,'< Strona '+string(kursor_x+1)+'/'+string(pages+1)+' >'); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kubx Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 Kiedyś mi się nudziło i zrobiłem sobie prosty przykład okienek. Jest w nich również przesuwanie. LINK Mam nadzieję, że zrozumiesz przykład Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
propaganja Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 view_xview + ilestam, view_yview + ilestam <-- jesli walniesz takie cosik przy kazdej wspolrzednej to inventory bedzie Ci latac za viewem Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 view_xview + ilestam, view_yview + ilestam <-- jesli walniesz takie cosik przy kazdej wspolrzednej to inventory bedzie Ci latac za viewem Ale tam jest tyle współrzędnych :( wogole da sie zbadac ktore to x ktore to y ?(w jakiej kolejnosci) Jeżeli bym pojedyńczo badał to jakieś 3 godziny mi zajmie. Proszę o pomoc draw_rectangle(10,10,210,10+(5*20)+20,true); które to x a które y? Kiedyś mi się nudziło i zrobiłem sobie prosty przykład okienek. Jest w nich również przesuwanie. LINK Mam nadzieję, że zrozumiesz przykład Thx także spróbuje :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość adster Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 draw_rectangle(10,10,210,10+(5*20)+20,true); Pierwsze cztery (x1,y1,x2,y2). Help w GameMakerze się kłania...tam znajdziesz opis każdego skryptu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Wielkie dzięki, powoli już zaczynam wszystko kapować. Mam jeszcze jedno pytanie jak ten skrypt przerobić aby item nie był kasowany a tylko wyrzucany w miejsce gdzie stoi postać? //usuwamy item if kursor_y+(5*kursor_x)<max_items { remove_item(item[kursor_y+(5*kursor_x)],1); event_perform(ev_other,ev_user0); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 Daj, że obiekt przedmiotu, albo tylko jego instance pojawiał się na mapce przy graczu, użyj instance_create(x,y,item)... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Ale właśnie ja wiem jaki jest skypt ale niewiem jak go złożyć razem z tym inventory bo ono ma te jakies kursor.x/y i niewiem jak cały skrypt ma wyglądać Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 To co, zrobiles inventory i nawet nie wiesz jak ?? :P if kursor_y+(5*kursor_x)<max_items { remove_item(item[kursor_y+(5*kursor_x)],1); event_perform(ev_other,ev_user0); instance_create(player.x,player.y,obj_item) } ... Nieeee, tak sie nie da, dawaj, pokaż ten pełny skrypt :P bo inaczej sie nie dowiem jak to trza... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Na samym początku piszę że pobrałem :/ https://gmclan.org/index.php?sciagnijplik=76 Z góry dzięki za pomoc Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 Oo no widzę, że to profesjonalny skrypt ! Gratz i pozdro dla gnyska ! xD No musiałbym jeszczę chwilę nad tym posiedzieć, bo tera nie mam czau, ale niedługo ci pokaże, najpierw spróbuj zrobić jak mówiłem wcześniej... btw. Kto mu, gnyskowi pozwolił uzyć grafik z Golden Sun'a !!! :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Co do twojego wczesniejszego skryptu to totalnie niewiem co wrzucić za obj_item... tam jako sloty jest jakis kursor... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 Zamiast obj_item daj po prostu item, bo chyba tak też się tam określa itemy... A zresztą możesz osobiście o to zapytać gnyska, albo poszukać tematu związanego z tym przykładem, bo sądzę, że takowy był... Jak nie to jutro podam ci skrypt, ale wcześniej dla pewności poszukaj jakiejś informacji, np. właśnie u gnyska. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Hmmm za pierwszym razem zadziałało ale raczej nie tak jak trzeba xD pojawiła się druga postać (bohater) i za drugim razem napisało że nie może stworzyć obiektu... Szukałem trochę ale za nic nie moge znaleść. To będe wdzięczny jak mi jutro odpiszesz. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 11 Marca 2007 Udostępnij Opublikowano 11 Marca 2007 Aha, już chyba wiem - daj zamiast obj_item, to item_random w tym instance_create i będzie dobrze xD Kk na jutro dorobie ci ten skrypt. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 11 Marca 2007 Autor Udostępnij Opublikowano 11 Marca 2007 Wtedy to stworzy niekoniecznie ten obiekt :) ale chyba chodzi ci o to ze jak stworze osobne przedmioty... wtedy nasuwa się 2 problem mianowicie że skrypt musi sam rozpoznawać obiekt albo wyrzucać nie zwracając uwagi na obiekt a na slota bo innaczej zadziała tylko jakbym miały dany item w specjalnym miejscu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 12 Marca 2007 Autor Udostępnij Opublikowano 12 Marca 2007 Przepraszam za double posta ale temat już zszedł troche w dół i ponawiam moje pytanie a także pytam czy można to przerobić: draw_sprite(item_img[i+(5*kursor_x)],view_yview+0,view_xview+20,view_yview+10+(2 0*i)+10); Chce to przerobić aby rysowało ograniczone sprity a nie takie jakie są w rzeczywistości. Bo jak pojawia się tam np. Miecz to zajmuje pół okna inventory. Z góry thx Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 12 Marca 2007 Udostępnij Opublikowano 12 Marca 2007 Heh, no to zmniejsz rozmiary samego sprite'a na takie jak mają inne itemy xD Btw. masz tu ten skrypcik: https://gmclan.org/up1726_11_inventory_ripped.html - ty ale ja nie wiem, musiałbym popracować nad tym, bo na razie to robi losowe itemy tak ja normalnie w obiekcie item_random - zrobiłem tak, bo tak było najłatwiej :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 12 Marca 2007 Autor Udostępnij Opublikowano 12 Marca 2007 Co do zmienienia rozmiarów sprite to o czymś takim nie ma mowy : miecz wielkości grzyba? to nie przejdzie. Co do robienia losowych itemów to ja też zrobiłem (do tego doszliśmy wcześniej) Ale wielkie dzięki za starania Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 12 Marca 2007 Udostępnij Opublikowano 12 Marca 2007 ;/ Ale przecie nawet jak zmienisz rozmiar sprite'a to rozdzielczość i tak się zmieni - 8 na 8 pixeli w rozmiarach to w końcu 8 na 8 pixeli w rezolucji, nie ?? xD (rozdzielczości)... Chyba że masz rozdzielczość monitora przynajmniej 1600:1200 (tak jak ja :P) to wtedy możesz pokombinować bardziej z grafiką... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 12 Marca 2007 Autor Udostępnij Opublikowano 12 Marca 2007 Nie chodzi o rozdzielczośc mi chodzi o to że jak itemy mają mieć taką samą wielkość to grzyb leżący na ziemi i miecz będą tej samej wielkości... co raczej nie jest normalne. Ja chciałbym żeby dopiero inv ograniczało wielkość wyświetlania sprite (minimalizowało by obrazek do potrzebnych mi rozmiarów) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
spyro Opublikowano 12 Marca 2007 Udostępnij Opublikowano 12 Marca 2007 Aha, już rozumiem ! Chodzi ci o to, żeby sprite'y były inne na pickup'a a inne na inventory ! To musisz zmienić sprite'y bodajże w get_item i add_item... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
matis3 Opublikowano 12 Marca 2007 Autor Udostępnij Opublikowano 12 Marca 2007 To wtedy zmieni się i w wyświetlaniu EDIT: Poradziłem sobie, dodałem 1 zmienną do get_item w której zawarłem 2 spirita ktorego drawował w inventory. Jeśli jeszcze ktoś mógłby mi pomóc z tym dropem byłbym wdzięczny 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ę