Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ DrawSurfaceBG_Hallow()

void Terraria.Main.DrawSurfaceBG_Hallow ( double backgroundTopMagicNumber,
float bgGlobalScaleMultiplier,
int pushBGTopHack,
int[] bgTexIndexes )
inlineprivate

Definition at line 57566 of file Main.cs.

57567 {
57568 if (bgTexIndexes[0] > 0)
57569 {
57570 bgScale = 1.25f;
57571 bgParallax = 0.4;
57572 bgTopY = (int)(backgroundTopMagicNumber * 1800.0 + 1500.0) + (int)scAdj + pushBGTopHack;
57576 bgWidthScaled = (int)((float)backgroundWidth[bgTexIndexes[0]] * bgScale);
57577 SkyManager.Instance.DrawToDepth(spriteBatch, 1.2f / (float)bgParallax);
57578 bgStartX = (int)(0.0 - Math.IEEERemainder((double)screenPosition.X * bgParallax, bgWidthScaled) - (double)(bgWidthScaled / 2));
57579 if (gameMenu)
57580 {
57581 bgTopY = 320 + pushBGTopHack;
57582 }
57584 if ((double)screenPosition.Y < worldSurface * 16.0 + 16.0)
57585 {
57586 for (int i = 0; i < bgLoops; i++)
57587 {
57589 }
57590 }
57591 }
57592 if (bgTexIndexes[1] > 0)
57593 {
57594 bgScale = 1.31f;
57595 bgParallax = 0.43;
57596 bgTopY = (int)(backgroundTopMagicNumber * 1950.0 + 1750.0) + (int)scAdj + pushBGTopHack;
57600 bgWidthScaled = (int)((float)backgroundWidth[bgTexIndexes[1]] * bgScale);
57601 SkyManager.Instance.DrawToDepth(spriteBatch, 1f / (float)bgParallax);
57602 bgStartX = (int)(0.0 - Math.IEEERemainder((double)screenPosition.X * bgParallax, bgWidthScaled) - (double)(bgWidthScaled / 2));
57603 if (gameMenu)
57604 {
57605 bgTopY = 400 + pushBGTopHack;
57606 bgStartX -= 80;
57607 }
57609 if ((double)screenPosition.Y < worldSurface * 16.0 + 16.0)
57610 {
57611 for (int j = 0; j < bgLoops; j++)
57612 {
57614 }
57615 }
57616 }
57617 if (bgTexIndexes[2] <= 0)
57618 {
57619 return;
57620 }
57621 bgScale = 1.34f;
57622 bgParallax = 0.49;
57623 bgTopY = (int)(backgroundTopMagicNumber * 2100.0 + 2000.0) + (int)scAdj + pushBGTopHack;
57627 bgWidthScaled = (int)((float)backgroundWidth[bgTexIndexes[2]] * bgScale);
57628 SkyManager.Instance.DrawToDepth(spriteBatch, 1f / (float)bgParallax);
57629 bgStartX = (int)(0.0 - Math.IEEERemainder((double)screenPosition.X * bgParallax, bgWidthScaled) - (double)(bgWidthScaled / 2));
57630 if (gameMenu)
57631 {
57632 bgTopY = 480 + pushBGTopHack;
57633 bgStartX -= 120;
57634 }
57636 if ((double)screenPosition.Y < worldSurface * 16.0 + 16.0)
57637 {
57638 for (int k = 0; k < bgLoops; k++)
57639 {
57641 }
57642 }
57643 }
static double IEEERemainder(double x, double y)
Definition Math.cs:679
static Asset< Texture2D >[] Background
float scAdj
Definition Main.cs:2585
double bgParallax
Definition Main.cs:956
static int bgWidthScaled
Definition Main.cs:2575
void LoadBackground(int i)
Definition Main.cs:55998
static SpriteBatch spriteBatch
Definition Main.cs:974
static double worldSurface
Definition Main.cs:1272
Microsoft.Xna.Framework.? Rectangle GetBackgroundRect(int backgroundTextureIndex)
Definition Main.cs:57968
int bgTopY
Definition Main.cs:966
static int[] backgroundWidth
Definition Main.cs:1665
void SetBackgroundOffsets(int backgroundID, double backgroundTopMagicNumber, int pushBGTopHack)
Definition Main.cs:57314
int bgLoops
Definition Main.cs:960
int bgStartX
Definition Main.cs:958
static Microsoft.Xna.Framework.Color ColorOfSurfaceBackgroundsModified
Definition Main.cs:2581
static float bgScale
Definition Main.cs:2573
static int screenWidth
Definition Main.cs:1719
static bool gameMenu
Definition Main.cs:1926

References Terraria.GameContent.TextureAssets.Background, Terraria.Main.backgroundWidth, Terraria.Main.bgLoops, Terraria.Main.bgParallax, Terraria.Main.bgScale, Terraria.Main.bgStartX, Terraria.Main.bgTopY, Terraria.Main.bgWidthScaled, Terraria.Main.ColorOfSurfaceBackgroundsModified, Terraria.Main.gameMenu, Terraria.Main.GetBackgroundRect(), System.Text.RegularExpressions.i, System.Math.IEEERemainder(), Terraria.Graphics.Effects.SkyManager.Instance, Terraria.Main.LoadBackground(), Terraria.Main.scAdj, Terraria.Main.screenWidth, Terraria.Main.SetBackgroundOffsets(), Terraria.Main.spriteBatch, and Terraria.Main.worldSurface.

Referenced by Terraria.Main.DrawSurfaceBG().