m97 Opublikowano 11 Października 2011 Udostępnij Opublikowano 11 Października 2011 Witam na forum jest wiele poradników dotyczących inwentarzy, ale nie ma nic na temat skrzyń. Różnica pomiędzy skrzyniami a inwentarzem jest taka, że inwentarz jest jeden a skrzyń wiele. Zrobiłem skrzynie i jak jakąś otwieram i coś do niej włożę a następnie pójdę do następnej to znajduję w niej to samo co w poprzedniej choć powinna być pusta. Wygląda to tak jakby wszystkie skrzynie korzystały z jednej tablicy. Czy można coś z tym zrobić? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawka83 Opublikowano 11 Października 2011 Udostępnij Opublikowano 11 Października 2011 Zamień zmienne globalne la lokalne i już będzie działać. Myślcie ludzie trochę :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
m97 Opublikowano 11 Października 2011 Autor Udostępnij Opublikowano 11 Października 2011 Co mam zrobić jeśli ze zmiennej która mówisz, że ma być lokalna korzystają u mnie 3 obiekty: -skrzynia -sterownik skrzyni - Rysuje on sloty skrzyni gdy jest otwarta ponieważ gdybym umieścił tą akcje w skrzyni znikłby mi jej obrazek. - plecak - Gdyż jest on odpowiedzialny za przenoszenie obiektów z plecaka do skrzyni. Z tego co wiem zmiennej lokalnej nie będę w stanie użyć w tych trzech obiektach. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Bedziom Opublikowano 11 Października 2011 Udostępnij Opublikowano 11 Października 2011 Teoretycznie się da. GML o_skrzynia.zmienna // nazwaobiektu.nazwazmiennej</span> Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
m97 Opublikowano 11 Października 2011 Autor Udostępnij Opublikowano 11 Października 2011 Wszystko mi już działa tylko sterownik plecaka ciągle rysuje sloty wszystkich skrzynek. Może to banalne , ale nie umiem sobie z tym poradzić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 11 Października 2011 Udostępnij Opublikowano 11 Października 2011 bo jak wkladasz do skrzyni to masz global.slot[1,1]=miecz, a powinieneś przy otwieraniu skrzyni pobrac jej id do zmiennej, np. ID_SKRZYNI, a potem ID_SKRZYNI.slot[1,1]=miecz :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
m97 Opublikowano 11 Października 2011 Autor Udostępnij Opublikowano 11 Października 2011 Nie wiem czy mnie dobrze zrozumiałeś. Oto kod który tworzy skrzynię (skrzynia to zmienna lokalna): GML h = 0 otwarta = false while(h < 15){ Skrzynia [h,0] = false//pusty Skrzynia [h,1] = pusty//sprite przedmiotu Skrzynia [h,2] = false//czy stackowalny Skrzynia [h,3] = 1//liczba stackowalnych przedmiotow Skrzynia [h,4] = 0//liczba przedmiotow w kratce Skrzynia [h,5] = 0//rodzaj if(h < 5){ Skrzynia [h,6] = (h*32)+96//pozycja x Skrzynia [h,7] = 288//pozycja y } if((h > 4)&&(h<10)){ Skrzynia [h,6] = ((h - 5)*32)+96//pozycja x Skrzynia [h,7] = 320//pozycja y } if((h > 9)&&(h < 15)){ Skrzynia [h,6] = ((h - 10)*32)+96//pozycja x Skrzynia [h,7] = 352//pozycja y } h += 1 } h = 0 Oto kod w obiekcie o nazwie sterownik skrzyni który rysuję nam sloty w otwartej skrzyni: GML i = 0 h = 0 if(otwarta = true){ while(h < 15){ y = view_yview div 32*32 draw_sprite(kratka_plecaka,-1,Skrzynia[h,6]+view_xview,Skrzynia[h,7]+y) draw_sprite(Skrzynia[h,1],-1,Skrzynia[h,6]+view_xview,Skrzynia[h,7]+y) if(Skrzynia[h,4] > 0){ draw_text(Skrzynia[h,6]+view_xview,Skrzynia[h,7]+y,Skrzynia[h,4]) } h += 1 } h = 0 } h = 0 To kod wywoływany po kliknięciu na skrzynię: GML if(sterownik_skrzyni.otwarta = false){ sterownik_skrzyni.otwarta = true otwarty = true Pokoj = 5 } else{ sterownik_skrzyni.otwarta = false otwarty = false Pokoj = 0 } Jeśli brakuje jakiegoś kodu napiszcie o tym to go zamieszczę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 11 Października 2011 Udostępnij Opublikowano 11 Października 2011 bo masz jedna tablice skrzynia[], a powinieneś mieć więcej, albo zrób to na obiektach, że każda skrzynka to obiekt. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
m97 Opublikowano 12 Października 2011 Autor Udostępnij Opublikowano 12 Października 2011 Czyli zamiast nazwy tablicy powinienem podawać id obiektu skrzynia? Czy id pobiera się w ten sposób: GML var a a = id skrzynia 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ę