nie do końca rozumiem ale chodzi ci ze jest obrazek i ma się tak zmniejszać ?
:
Jak tak to wiem jak musisz zrobić ...
Robisz skrypt o jakiej nazwie chcesz , dajesz tam to :
GML
var _pos, _colMerge;
if !argument5 {_pos = - ((argument2 / 100) * sprite_get_height(argument3)) + sprite_get_height(argument3);}
else {_pos = -((argument2 / 100) * sprite_get_width(argument3)) + sprite_get_width(argument3);}
_colMerge = c_white;
if argument4 {if argument2>=50 {_colMerge=merge_color(c_white, c_green, argument2/150);}
else {_colMerge=merge_color(c_red, c_white, argument2/75);} }
if !argument5 {
draw_sprite_part_ext(argument3, 0, 0, _pos,
sprite_get_width(argument3), sprite_get_height(argument3) - _pos, argument0, argument1 + _pos,
1, 1, _colMerge, draw_get_alpha()) }
else {
draw_sprite_part_ext(argument3, 0, 0, 0,
sprite_get_width(argument3) - _pos, sprite_get_height(argument3), argument0, argument1,
1, 1, _colMerge, draw_get_alpha()) }
potem w create obiektu :
zmienna = 100;
maxzmienna=100;
draw :
GML
skrypt(x,y,(zmienna/maxzmienna)*100,sprite_index,0,0);
A jeśli ma być przeźroczysty to daj jeszcze pod to
GML
draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,image_angle,image_blend,przezroczystosc od 0 do 1);
Trochę chyba pomieszalem ale powinno dzialać .
zmieniaj zmienną żeby zmieniał się wymiar sprita .
Jak będzie się źle "deformował" to ustaw origin sprita na 0 i sprawdź .