Skocz do zawartości

bar


CTRL

Rekomendowane odpowiedzi

rysujesz taki pasek do hp o pelnym rozmiarze [maxymalnym]

 

teraz musisz obliczyc aktualna szerokosc dla danego hp

 

ukladasz prosta proporcje, zakladajac ze max hp to 100, tego ucza w szkole hm?

 

health / 100 = x / sprite_get_width(sprite_hp_bara)

 

czyli x = sprite_get_width(sprite_hp_bara) * health / 100

 

draw_sprite_part(sprite_hp_bara, -1, 0,0, x, sprite_get_height(sprite_hp_bara), pozycjax, pozycjay, );

Odnośnik do komentarza
Udostępnij na innych stronach

Prosze Bardzo o to Kod :

 

SCRIPTS: (o nazwie scr_pasek_zycia)

GML
var pasek, czas, czas_max, dlugosc, xx, yy, xx1, yy1, kolor, kolor1;

 

xx = argument0;

yy = argument1;

xx1 = argument2;

yy1 = argument3;

czas = argument4;

czas_max = argument5;

 

dlugosc = xx - xx1;

 

 

pasek = ( czas / czas_max ) * dlugosc;

kolor1 = draw_get_color();

draw_set_color(c_black);

draw_rectangle(xx-1,yy-1,xx1+1,yy1+1,false);

draw_set_color(kolor1);

kolor = merge_color(c_red,c_lime,czas/czas_max);

draw_rectangle_color(xx,yy,xx-pasek,yy1,kolor,kolor,kolor,kolor,false);

 

DRAW bohatera, worga:

GML
scr_pasek_zycia(x-20,y+20,x+20,y+25,punkty_zycia,punkty_zycia_max);
Odnośnik do komentarza
Udostępnij na innych stronach

Prosze Bardzo o to Kod :

 

SCRIPTS: (o nazwie scr_pasek_zycia)

GML
var pasek, czas, czas_max, dlugosc, xx, yy, xx1, yy1, kolor, kolor1;

 

xx = argument0;

yy = argument1;

xx1 = argument2;

yy1 = argument3;

czas = argument4;

czas_max = argument5;

 

dlugosc = xx - xx1;

 

 

pasek = ( czas / czas_max ) * dlugosc;

kolor1 = draw_get_color();

draw_set_color(c_black);

draw_rectangle(xx-1,yy-1,xx1+1,yy1+1,false);

draw_set_color(kolor1);

kolor = merge_color(c_red,c_lime,czas/czas_max);

draw_rectangle_color(xx,yy,xx-pasek,yy1,kolor,kolor,kolor,kolor,false);

 

DRAW bohatera, worga:

GML
scr_pasek_zycia(x-20,y+20,x+20,y+25,punkty_zycia,punkty_zycia_max);

 

toć on chciał ze sprita a nie ze zwykłego prostokąta.

masz, przerób sobie: https://gmclan.org/up1558_11_pasek_zycia__butle.html

Odnośnik do komentarza
Udostępnij na innych stronach

nie łatwiej zrobić dwa sprite'y (tlo i sam healthbar(on sam ma mieć 1px długości))

GML
draw_sprite_ext( spr_healthbar, image_index, view_xview+20, view_yview+20, life, 1, 0, image_blend, 1 );

draw_sprite_ext( spr_tlo, image_index, view_xview+20, view_yview+20, image_xscale, image_yscale, image_angle, image_blend, image_alpha );

ale jeśli masz już healthbar o długości np.100px to ustaw tam life/100

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...