Stwórz, skrypt sprite_load:
GML
if( file_exists( argument0 ) )
{
sprite_Count += 1;
global.sprites[sprite_Count] = sprite_add( argument0, 0, 0, 0, 0, 1, 0, 0 );
return 1;
}
else
{
//możesz dać jakąś wiadomość np show_message( "Brak pliku: " + string( argument0 ) + "." );
return 0;
}
skrypt sprite_free:
GML
if( sprite_exists( global.sprites[argument0] ) )
{
sprite_delete( global.sprites[argument0] );
global.sprites[argument0] = 0;
sprite_Count -= 1;
}
skrypt sprite_free_all:
GML
for( a = 0; a <= sprite_Count; a += 1 )
{
if( sprite_exists( global.sprites[a] ) )
{
sprite_delete( global.sprites[a] );
global.sprites[a] = 0;
}
}
sprite_Count = -1;
I teraz, ładowanie: ( najlepiej użyj timeline )
GML
if( sprite_load( "sprite.gif" ) ) loading_Bar += 1;
if( sprite_load( "sprite1.gif" ) ) loading_Bar += 1;
if( sprite_load( "sprite2.gif" ) ) loading_Bar += 1;
//...
potem gdy chcesz usunąć jakiegoś sprita z pamięci:
GML
sprite_free( id_sprita ); //np. sprite_free( global.sprites[2] );
albo jak chcesz wszystkie te, które załadowałeś:
GML
sprite_free_all();
przykładowe rysowanie bara:
GML
draw_rectangle_color( 100, 100, 100 + loading_Bar * 2, 110, c_white, c_white, c_white, c_white, 0 );
Pokombinuj coś z tym. :)