Oczywiście ;)
Stwórz obiekt "Deszcz" I dodajesz następujące eventy a w nich kod:
Create
count = 20; //Ilość kropli czy tam płatków śniegu :)
sprite = sDeszcz; //Sprit odpowiedzialny za "wygląd" tego efektu
mspeed = 10; //Prędkość z jaką ma się poruszać
life = room_speed * 5; //Ile kroków ma "żyć"
for( n = 0; n < count; n += 1 )
{
array[n,0] = random( room_width ); //Pozycja startowa x
array[n,1] = 0; //Pozycja startowa y
array[n,2] = 270 + random( 40 ) - 20; //Kierunek ruchu
array[n,3] = life;
}
Draw
for( n = 0; n <= count; n += 1 )
{
array[n,3] -= 1;
// Jeśli umarł to ustaw w pozycji startowej
if( array[n,3] <= 0 )
{
array[n,0] = random( room_width );
array[n,1] = 0;
array[n,2] = 270 + random( 40 ) - 20;
array[n,3] = life;
}
// Zmiana pozycji
array[n,0] += lengthdir_x( mspeed, array[n,2] );
array[n,1] += lengthdir_y( mspeed, array[n,2] );
// Rysujemy tylko gdy jest widoczny w roomie
if!( array[n,0] > 0 && array[n,0] < room_width &&
array[n,1] > 0 && array[n,1] < room_height )
continue;
draw_sprite_ext( sprite, 0, array[n,0], array[n,1], 1, 1, array[n,2], c_white, 1 );
}
Powinno działać, sam dodałem to dzisiaj do Invers :3