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

◆ CalculateWaterStyle()

static int Terraria.Main.CalculateWaterStyle ( bool ignoreFountains = false)
inlinestatic

Definition at line 73026 of file Main.cs.

73027 {
73028 if (SceneMetrics.ActiveFountainColor >= 0 && !ignoreFountains)
73029 {
73030 return SceneMetrics.ActiveFountainColor;
73031 }
73032 if (bloodMoon && !dayTime)
73033 {
73034 return 9;
73035 }
73036 switch (bgStyle)
73037 {
73038 case 1:
73039 return 2;
73040 case 5:
73041 if (SceneMetrics.EvilTileCount > SceneMetrics.HolyTileCount && SceneMetrics.EvilTileCount > SceneMetrics.BloodTileCount)
73042 {
73043 return 2;
73044 }
73045 if (SceneMetrics.HolyTileCount > SceneMetrics.BloodTileCount)
73046 {
73047 return 4;
73048 }
73049 return 10;
73050 case 3:
73051 return 3;
73052 case 8:
73053 return 10;
73054 case 6:
73055 return 4;
73056 case 7:
73057 return 5;
73058 case 2:
73059 if (remixWorld)
73060 {
73061 return 6;
73062 }
73063 if ((double)(player[myPlayer].position.Y / 16f) > worldSurface)
73064 {
73065 return 12;
73066 }
73067 return 6;
73068 case 4:
73069 return 13;
73070 default:
73071 {
73072 LoaderManager.Get<WaterStylesLoader>().ChooseStyle(out var waterStyle, out var priority);
73073 if (priority >= SceneEffectPriority.BiomeLow)
73074 {
73075 return waterStyle;
73076 }
73077 if (remixWorld)
73078 {
73079 if ((double)(screenPosition.Y / 16f) > rockLayer)
73080 {
73081 return 7;
73082 }
73083 if ((double)(screenPosition.Y / 16f) > worldSurface)
73084 {
73085 return 8;
73086 }
73087 }
73088 else
73089 {
73090 if ((double)(screenPosition.Y / 16f) > rockLayer + 40.0)
73091 {
73092 if (player[myPlayer].ZoneGlowshroom)
73093 {
73094 return 7;
73095 }
73096 return 8;
73097 }
73098 if ((double)(screenPosition.Y / 16f) > worldSurface)
73099 {
73100 return 7;
73101 }
73102 }
73103 return 0;
73104 }
73105 }
73106 }
static SceneMetrics SceneMetrics
Definition Main.cs:1441
static double worldSurface
The y-coordinate of the top of the dirt layer, in tile coordinates. Corresponds to 0' on the Depth Me...
Definition Main.cs:1351
static int waterStyle
Definition Main.cs:1283
static int myPlayer
The index in F:Terraria.Main.player of this client's Player. If this is 255, this client is the ser...
Definition Main.cs:1958
static double rockLayer
The y-coordinate of the top of the caverns layer, in tile coordinates.
Definition Main.cs:1357
static bool dayTime
Definition Main.cs:1365
static bool bloodMoon
Definition Main.cs:1387
static Vector2 screenPosition
The position of the top left corner of the screen in world coordinates. Modify in M:Terraria....
Definition Main.cs:1864
static Player[] player
Definition Main.cs:1960
static int bgStyle
Definition Main.cs:877
static bool remixWorld
Definition Main.cs:377
SceneEffectPriority
This enum dictates from low to high which SceneEffect selections take priority. Setting appropriate p...

References Terraria.SceneMetrics.ActiveFountainColor, Terraria.Main.bgStyle, Terraria.Main.bloodMoon, Terraria.SceneMetrics.BloodTileCount, Terraria.Main.dayTime, Terraria.SceneMetrics.EvilTileCount, Terraria.SceneMetrics.HolyTileCount, Terraria.Main.myPlayer, Terraria.Main.player, Terraria.Main.remixWorld, Terraria.Main.rockLayer, Terraria.Main.screenPosition, Terraria.Main.waterStyle, and Terraria.Main.worldSurface.

Referenced by Terraria.Main.DrawWaters(), and Terraria.Graphics.Capture.CaptureBiome.GetBiomeByWater().

+ Here is the caller graph for this function: