gothicner Opublikowano 17 Stycznia 2010 Udostępnij Opublikowano 17 Stycznia 2010 Witam! od jakiegoś czasu jestem w trakcie robienia gry przygodowej i chce zrobić pasek życia i many. I mam z tym dwa problemy: po pierwsze nie wiem jak zrobić dwa osobne paski, gdy robie object o nazwie DrawHealth oraz DrawMana to wtedy gdy ma mi odjąć życie odejmuje również manę. Po drugie wiem jak zrobić pasek życia podążający za kamerą, ale wtedy jest na współżędnych x.0 y.0 a ja chce je zrobić na x.84 y.25. Za pomoc z góry dziękuje. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 17 Stycznia 2010 Udostępnij Opublikowano 17 Stycznia 2010 1. zrób dwie zmienne jedna będzie odpowiadać za manę druga za życie i wtedy rysujesz dwa prostokąty jeden czerwony drugi niebieski i gdy odejmusjesz zmienne odejmuje zmieszasz pasek 2 zrób view_xview+84 view_yview+25 proste Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boom Opublikowano 17 Stycznia 2010 Udostępnij Opublikowano 17 Stycznia 2010 odejmóje :ranting2: Po co ci osobne obiekty? Zrób jeden, za to rysujący dwa prostokąty lub sprity[nie wiem jak rozwiązujesz problem(o ile spritem to walisz draw_sprite(s_healthbar,view_xview + 84,view_yview + 24,health * sprite_get_number(s_healthbar) / maxhealth) i to samo z maną)]. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 1. zrób dwie zmienne jedna będzie odpowiadać za manę druga za życie i wtedy rysujesz dwa prostokąty jeden czerwony drugi niebieski i gdy odejmusjesz zmienne odejmuje zmieszasz pasek 2 zrób view_xview+84 view_yview+25 proste oki problem nr. 2 rozwiązany(dzięki :thumbsup: ) ale ja nie wiem co to jest zmienna <_< Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 Zmienna to np wyraz którego używasz wprowacając funkcje w swojej grze. np. global.mamklucz to zmienna. teraz jeśli nie posiadasz klucza to zmienna wynosi global.mamklucz = 0 jeśli posiadasz klucz, to zmienna wynosi 1 teraz możesz otworzyć drzwi bo masz klucz: czyli if global.mamklucz = 1 && keyboard_check(vk_enter) { //otwierasz drzwi { Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 Witam! od jakiegoś czasu jestem w trakcie robienia gry przygodowej i chce zrobić pasek życia i many. I mam z tym dwa problemy: po pierwsze nie wiem jak zrobić dwa osobne paski, gdy robie object o nazwie DrawHealth oraz DrawMana to wtedy gdy ma mi odjąć życie odejmuje również manę. Po drugie wiem jak zrobić pasek życia podążający za kamerą, ale wtedy jest na współżędnych x.0 y.0 a ja chce je zrobić na x.84 y.25. Za pomoc z góry dziękuje. Teraz jak już sobie jakoś poradziłem i wszystko wyglądał opięknie, kompletnie się zchrzaniło <_< . Więc mam klocek draw health na następójących "danych" x1: view_xview+76 y1: view_xview+23 x2:view_xview+143 y2:view_xview+28 back color: none bar color: red i NIE mam zaznaczone relative. ale jeśli się poruszę w prawo pasek rzycia wędruje w dół ekranu. Oco tu biega? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 musisz zrobić osobny obiekt, np o_draw_health ponieważ: 1. gdy rysujesz spritea i bar'a, bar ma przewage i nie rysuje spritea. 2. chodzisz instancją, czyli w tym przypadku chodzisz heatlh bar'em ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 musisz zrobić osobny obiekt, np o_draw_health ponieważ: 1. gdy rysujesz spritea i bar'a, bar ma przewage i nie rysuje spritea. 2. chodzisz instancją, czyli w tym przypadku chodzisz heatlh bar'em ;p ale nie, ja stworzyłem object HealthDraw a poruszanie się jest w object Player a pomimo to pasek spada w dół Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 Bo wszędzie ustawiłes view_xview. Dla y1 i y2 musisz dać view_yview ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 Bo wszędzie ustawiłes view_xview. Dla y1 i y2 musisz dać view_yview ;) Teraz to juz całkowicie... pasek życia porusza się w doskonały sposob, ale zamiast czerwonego paska jest jakaś mała czarna kreska :blink: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 A możesz podać jak teraz napisałeś? Bo ciężko znaleźć inne wytłumaczenie, od złego wpisania. Powinno działać :| Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 A możesz podać jak teraz napisałeś? Bo ciężko znaleźć inne wytłumaczenie, od złego wpisania. Powinno działać :| Już sobie poradziłem z paskiem, ale teraz mam kolejny problem również powiązany z życiem. Mianowicie: Mam object HealthBack w którego klocku jump to givet position w eventcie step jest ustawione: x: view_xview; y: view_yview; i na jego spricie są dwa czarne paski, a na ich współżędnych mam pasek many i energii. ale gdy się poruszam to HealthBack tak się jakoś dziwnie zacina :boxed: ... zmienia pozycje o kilka "centymetrów" w prawo a za sekunde powraca na zwoje miejsce i trochę tandetnie to wygląda. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 Takie rzeczy dawaj w draw, a najlepiej by było jakbyś te wszystkie paski i tło władował w jeden obiekt :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gothicner Opublikowano 19 Stycznia 2010 Autor Udostępnij Opublikowano 19 Stycznia 2010 Takie rzeczy dawaj w draw, a najlepiej by było jakbyś te wszystkie paski i tło władował w jeden obiekt :) Przeniesienie tego do draw spowodowało usónięcię tego sprite'a <_< Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
mipo57 Opublikowano 19 Stycznia 2010 Udostępnij Opublikowano 19 Stycznia 2010 dodaj: draw_sprite_ext( sprite_index, image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha ) i przeczytaj FAQ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 21 Stycznia 2010 Udostępnij Opublikowano 21 Stycznia 2010 Przeniesienie tego do draw spowodowało usónięcię tego sprite'a <_< przewidziałem to, napisałem wcześniej... i powiem ci jedno... ORT Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
don_soyer Opublikowano 21 Stycznia 2010 Udostępnij Opublikowano 21 Stycznia 2010 pasek rysowany nad graczem. w draw; GML var xx, yy, szerokosc, wysokosc; xx= object_gracz.x-50 yy= object_gracz.y-20 szerokosc=xx+ (zdrowie/zdrowie_max*100) wysokosc= yy+ 8 draw_set_color(c_black) draw_rectangle(xx,yy,xx+100,wysokosc,0) draw_set_color(c_red) draw_rectangle(xx,yy,szerokosc,wysokosc,0) draw_set_color(c_black) draw_rectangle(xx,yy,xx+100,wysokosc,1) draw_set_color(c_white) ED. coś takiego. z pamięci ale chyba dobrze będzie a z viewiem w lewym górnym rogu: GML var xx, yy, szerokosc, wysokosc; xx= view_xview+10 yy=view_yview+10 szerokosc=xx+ (zdrowie/zdrowie_max*100) wysokosc= yy+ 8 draw_set_color(c_black) draw_rectangle(xx,yy,xx+100,wysokosc,0) draw_set_color(c_red) draw_rectangle(xx,yy,szerokosc,wysokosc,0) draw_set_color(c_black) draw_rectangle(xx,yy,xx+100,wysokosc,1) draw_set_color(c_white) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 21 Stycznia 2010 Udostępnij Opublikowano 21 Stycznia 2010 GML (Create) HP = 100; MP = 125; HP_Max = 100; MP_Max = 125; GML (Draw) // Różne są sposoby na rysowanie tzw. health barów // HP: draw_sprite( sprBarHP, 0, view_xview[0]+10, view_yview[0]+10 ); draw_sprite_part( sprBarHP, 1, /*Left*/0, /*Top*/0, /*Right*/(HP/HP_Max)*100, /*Bottom*/30, view_xview[0]+10, view_yview[0]+10 ); // MP: draw_sprite( sprBarMP, 0, view_xview[0]+10, view_yview[0]+45 ); draw_sprite_part( sprBarMP, 1, /*Left*/0, /*Top*/0, /*Right*/(MP/MP_Max)*100, /*Bottom*/30, view_xview[0]+10, view_yview[0]+45 ); // Aby ten sposób zadziałał, stwórz dwa spritesy z dwiema klatkami 1:tył paska, 2:"główny" pasek</span> 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ę