Cygnus Opublikowano 23 Lipca 2015 Udostępnij Opublikowano 23 Lipca 2015 Cześć wszystkim. Mam taki problem,ustawiłem sobie pasek energii nad wrogami ,ale chciałbym,żeby dany pasek energii wroga znalazł się w odpowiednim miejscu w HUD,czyli jak podejdę do wroga,to dopiero wtedy pasek wroga pojawi się w HUD,a jak odejdę od wroga to zniknie..itd za każdym razem obojętnie do którego wroga podejdę.Próbuje i mi nie wychodzi czy w klockach idzie możliwość ustawienia dystansu? bo tak to jak się ustawi pasek w tym miejscu jak na rysunku HUD to wszystkie paski wszystkich wrogów na danej planszy się tam gromadzą:/a nie o taki efekt chodzi. Tu na rysunku to rozrysowałem... a tu w obj_wrog w Create dałem na te hp takie klocki GMLVAR - set variable maxHP to 5 VAR - set variable hp to 5 VAR - set variable hp_percent to (hp/maxHp)*100 w STEP GMLVAR - set variable hp_percent to (hp/maxHp)*100 no i Draw GMLset the color niebieski draw rectangle - x1-25, y1-40, x2-25+(hp_percent/2) ,y2-50,filled-filled zaznaczone relative set the color-czerwony draw rectangle - x1-25, y1-40, x2 25 ,y2 50,filled -outline i zaznaczone relative a tu kod obj_game_controller ,gdzie znajduje się w nim HUD DRAW GUI GML///Draw player HUD draw_sprite(spr_UI_topleft,1,0,0); draw_set_color(c_white); var __guiW = display_get_gui_width(), __guiH = display_get_gui_height(); draw_sprite(spr_healthbar,0,0,0); draw_text(32, 44, string(" Lives: " + string(global.life))); draw_text(36, 88, string(" Coins: " + string(global.coins))); draw_text(36, 110,string(" Watch: " + string(global.watch))); //punkty draw_set_color(c_white); draw_set_valign(fa_middle); draw_set_halign(fa_center); draw_set_font(fn_punkty); draw_text(470,39,"$"+string(global.pScore)); if instance_exists(par_player) { hpHUD = lerp(hpHUD,par_player.hp,.5); maxHpHUD = par_player.maxHp; with obj_player { var _offset; _offset = 0; draw_set_font(fnt_pwrup); draw_set_valign(fa_bottom); draw_set_halign(fa_center); draw_set_color(c_white); draw_texture_flush(); if pwrupSpd > 0 { draw_sprite_ext(spr_pwrup_speed,0,__guiW-26,29+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,29+35*_offset,string(ceil(pwrupSpd/room_speed))); _offset++; } if pwrupStr > 0 { draw_sprite_ext(spr_pwrup_strength,0,__guiW-26,35+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,35+35*_offset,string(ceil(pwrupStr/room_speed))); _offset++; } if pwrupJmp > 0 { draw_sprite_ext(spr_pwrup_jump,0,__guiW-26,28+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,28+35*_offset,string(ceil(pwrupJmp/room_speed))); _offset++; } } } else { hpHUD = lerp(hpHUD,0,.5); } draw_sprite_part(spr_healthbar,1,94,0,91/maxHpHUD*hpHUD,32,4,0); Tu rysunek jak to ma wyglądać.. 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ę