Advertisement
Jiysea

Cleaning after Galaxy repeating codes

May 14th, 2022
1,001
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.63 KB | None | 0 0
  1. public Sprite3d newStar()
  2.         {
  3.             Sprite3d star = new Sprite3d
  4.             {
  5.                 Layer = GetLayer("Foreground"),
  6.                 SpritePath = "sb/sprites/pixel.png",
  7.                 UseDistanceFade = false
  8.             };
  9.             return star;
  10.         }
  11.  
  12. public void GenerateStar(Sprite3d star, float width, float rotate, float randX, float randY, Boolean what = true)
  13.         {
  14.             if (!what)
  15.             {
  16.                 star.PositionX.Add(52144, randX);
  17.                 star.PositionY.Add(52144, randY);
  18.                 star.PositionZ.Add(52144, (float)-width);
  19.                 star.ScaleX.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  20.                 star.ScaleY.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  21.                 star.ScaleZ.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  22.                 star.Opacity.Add(52144, 0f).Add(52842, 0.2f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc)).Add(57493, 0.2f).Add(58656, 0f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  23.  
  24.             }
  25.             else
  26.             {
  27.                 star.PositionX.Add(52144, randX).Add(55865, randX).Add(55865 + 1, randX + Random(-10, 10), EasingFunctions.ToEasingFunction(OsbEasing.InCirc)).Add(56795, randX).Add(57493, randX);
  28.                 star.PositionY.Add(52144, randY).Add(55865, randY).Add(55865 + 1, randY + Random(-10, 10), EasingFunctions.ToEasingFunction(OsbEasing.InCirc)).Add(56795, randY).Add(57493, randY);
  29.                 star.PositionZ.Add(52144, (float)-width);
  30.                 star.ScaleX.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  31.                 star.ScaleY.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  32.                 star.ScaleZ.Add(52144, 20f).Add(57493, 20f).Add(58656, 500f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  33.                 star.Opacity.Add(52144, 0f).Add(52842, 0.1f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc)).Add(57493, 0.1f).Add(58656, 0f, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  34.  
  35.                 for (double e = 57493; e < 58656; e += 50)
  36.                 {
  37.                     star.PositionX.Add(e, randX + Random(-50, 50));
  38.                     star.PositionY.Add(e, randY + Random(-50, 50));
  39.                 }
  40.             }
  41.         }
  42.  
  43. public void Stars()
  44.         {
  45.             Scene3d scene = new Scene3d();
  46.             scene.Root.PositionX.Add(52144, 0);
  47.             scene.Root.PositionY.Add(52144, 0);
  48.             scene.Root.PositionZ.Add(52144, 0);
  49.  
  50.             PerspectiveCamera camera = new PerspectiveCamera();
  51.             camera.PositionX.Add(52144, 0);
  52.             camera.PositionY.Add(52144, 0);
  53.             camera.PositionZ.Add(52144, 100);
  54.  
  55.             for (int i = 0; i < 200; i++)
  56.             {
  57.                 Sprite3d star = newStar();
  58.                 Sprite3d starR = newStar();
  59.                 Sprite3d starG = newStar();
  60.                 Sprite3d starB = newStar();
  61.  
  62.                 float width = Random(1, 100);
  63.                 float rotate = Random((float)MathHelper.DegreesToRadians(0), (float)MathHelper.DegreesToRadians(89));
  64.                 float randX = Random((float)-1000, (float)1000);
  65.                 float randY = Random((float)-500, (float)9000);
  66.  
  67.                 GenerateStar(star, width, rotate, randX, randY, false);
  68.  
  69.                 starR.Additive = true;
  70.                 starR.Coloring.Add(52144, new Color4(255, 0, 0, 1));
  71.                 GenerateStar(starR, width, rotate, randX, randY);
  72.  
  73.                 starG.Additive = true;
  74.                 starG.Coloring.Add(52144, new Color4(0, 255, 0, 1));
  75.                 GenerateStar(starG, width, rotate, randX, randY);
  76.  
  77.                 starB.Additive = true;
  78.                 starB.Coloring.Add(52144, new Color4(0, 0, 255, 1));
  79.                 GenerateStar(starB, width, rotate, randX, randY);
  80.  
  81.                 scene.Add(star);
  82.                 scene.Add(starR);
  83.                 scene.Add(starG);
  84.                 scene.Add(starB);
  85.             }
  86.             scene.Root.PositionY.Add(55865, -500, EasingFunctions.ToEasingFunction(OsbEasing.None));
  87.             scene.Root.PositionY.Add(57493, -2000, EasingFunctions.ToEasingFunction(OsbEasing.InCirc));
  88.             scene.Root.PositionY.Add(58656, -9000, EasingFunctions.ToEasingFunction(OsbEasing.None));
  89.  
  90.             scene.Generate(camera, GetLayer("Foreground"), 52144, 58656, Beatmap.GetTimingPointAt(52144).BeatDuration / 16);
  91.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement