@@ -54,30 +54,56 @@ public override void Generate()
5454 RadialParticles ( 237350 , 302069 ) ;
5555 RisingParticles ( 237350 , 302069 ) ;
5656 }
57- using ( var pool = new OsbSpritePools ( GetLayer ( "Squares" ) ) )
57+ using ( var pool = new OsbSpritePool ( GetLayer ( "Squares" ) , "sb/p.png" , OsbOrigin . Centre , false ) )
5858 {
5959 pool . MaxPoolDuration = 300000 ;
6060
61- Action < int , int , double > SquareParticles = ( startTime , endTime , maxFade ) =>
61+ Action < int , int , float > SquareParticles = ( startTime , endTime , maxFade ) =>
6262 {
63- for ( int i = startTime ; i < endTime ; i += 40 )
63+ for ( int i = startTime ; i < endTime - 2000 ; i += 40 )
6464 {
65- var duration = Random ( 2000 , 6000 ) ;
65+ var duration = Random ( 1500 , 5000 ) ;
6666 var fade = Random ( 0.5f , maxFade ) ;
67- var pos = new Vector2 ( Random ( - 127 , 320 ) , 240 ) ;
67+ var pos = new Vector2 ( Random ( - 157 , 347 ) , 240 ) ;
6868 var endPos = new Vector2 ( Random ( 320 , 767 ) , Random ( 100 , 380 ) ) ;
6969
70- var sprite = pool . Get ( i , i + duration , "sb/p.png" , OsbOrigin . Centre , false ) ;
71- sprite . Fade ( i , i + 200 , 0 , fade ) ;
72- sprite . Move ( i , i + duration , pos , endPos ) ;
73- sprite . Scale ( i , Random ( 2.0f , 8 ) ) ;
74- sprite . Fade ( i + duration - 200 , i + duration , fade , 0 ) ;
75- sprite . Rotate ( i , i + duration / 2 , Random ( - Math . PI / 4 , Math . PI / 4 ) , Random ( - Math . PI / 4 , Math . PI / 4 ) ) ;
70+ var sprite = pool . Get ( i , i + duration ) ;
71+ sprite . Fade ( i , i + 150 , 0 , fade ) ;
72+ sprite . Move ( ( OsbEasing ) Random ( 2 ) , i , i + duration , pos , endPos ) ;
73+ sprite . Scale ( i , Random ( 2 , 10 ) ) ;
74+ sprite . Fade ( i + duration - 150 , i + duration , fade , 0 ) ;
75+ sprite . Rotate ( ( OsbEasing ) Random ( 2 ) , i , i + duration , Random ( - Math . PI / 4 , Math . PI / 4 ) , Random ( - Math . PI / 4 , Math . PI / 4 ) ) ;
7676 }
7777 } ;
7878
7979 SquareParticles ( 91732 , 102518 , 1 ) ;
80- SquareParticles ( 199597 , 210384 , 0.75 ) ;
80+ SquareParticles ( 199597 , 210384 , 0.7f ) ;
81+ }
82+ using ( var pool = new OsbSpritePool ( GetLayer ( "Squares2" ) , "sb/p.png" , OsbOrigin . Centre , false ) )
83+ {
84+ Action < int , int , float , bool > ExpandingSquareParticles = ( startTime , endTime , maxFade , right ) =>
85+ {
86+ for ( int i = startTime ; i < endTime - 2000 ; i += 40 )
87+ {
88+ var duration = Random ( 1000 , 4000 ) ;
89+ var fade = Random ( 0.5f , maxFade ) ;
90+ var pos = new Vector2 ( right ? 767 : - 127 , Random ( - 100 , 600 ) ) ;
91+ var endPos = new Vector2 ( 320 , 240 ) ;
92+
93+ var sprite = pool . Get ( i , i + duration ) ;
94+ sprite . Fade ( i , i + 150 , 0 , fade ) ;
95+ sprite . Move ( ( OsbEasing ) Random ( 2 ) , i , i + duration , pos , endPos ) ;
96+ sprite . Scale ( i , Random ( 2 , 10 ) ) ;
97+ sprite . Fade ( i + duration - 150 , i + duration , fade , 0 ) ;
98+ sprite . Rotate ( ( OsbEasing ) Random ( 2 ) , i , i + duration , Random ( - Math . PI / 4 , Math . PI / 4 ) , Random ( - Math . PI / 4 , Math . PI / 4 ) ) ;
99+ }
100+ } ;
101+
102+ ExpandingSquareParticles ( 113305 , 155103 , 0.8f , true ) ;
103+ ExpandingSquareParticles ( 113305 , 155103 , 0.8f , false ) ;
104+
105+ ExpandingSquareParticles ( 258923 , 300721 , 0.8f , true ) ;
106+ ExpandingSquareParticles ( 258923 , 300721 , 0.8f , false ) ;
81107 }
82108 }
83109 }
0 commit comments