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

◆ UpdateLightToSkyColor()

void Terraria.Graphics.Light.LegacyLighting.UpdateLightToSkyColor ( float tileR,
float tileG,
float tileB )
inlineprivate

Definition at line 432 of file LegacyLighting.cs.

433 {
434 int num = Utils.Clamp(_expandedRectLeft, 0, Main.maxTilesX - 1);
435 int num2 = Utils.Clamp(_expandedRectRight, 0, Main.maxTilesX - 1);
436 int num3 = Utils.Clamp(_expandedRectTop, 0, Main.maxTilesY - 1);
437 int num4 = Utils.Clamp(_expandedRectBottom, 0, (int)Main.worldSurface - 1);
438 if (!((double)num3 < Main.worldSurface))
439 {
440 return;
441 }
442 for (int i = num; i < num2; i++)
443 {
444 LightingState[] array = _states[i - _expandedRectLeft];
445 for (int j = num3; j < num4; j++)
446 {
447 LightingState lightingState = array[j - _expandedRectTop];
448 Tile tile = Main.tile[i, j];
449 if (tile == null)
450 {
451 tile = new Tile();
452 Main.tile[i, j] = tile;
453 }
454 if ((!tile.active() || !Main.tileNoSunLight[tile.type]) && lightingState.R < _skyColor && tile.liquid < 200 && (Main.wallLight[tile.wall] || tile.wall == 73))
455 {
456 lightingState.R = tileR;
457 if (lightingState.G < _skyColor)
458 {
459 lightingState.G = tileG;
460 }
461 if (lightingState.B < _skyColor)
462 {
463 lightingState.B = tileB;
464 }
465 }
466 }
467 }
468 }

References Terraria.Graphics.Light.LegacyLighting._expandedRectBottom, Terraria.Graphics.Light.LegacyLighting._expandedRectLeft, Terraria.Graphics.Light.LegacyLighting._expandedRectRight, Terraria.Graphics.Light.LegacyLighting._expandedRectTop, Terraria.Graphics.Light.LegacyLighting._skyColor, Terraria.Graphics.Light.LegacyLighting._states, Terraria.Tile.active(), System.array, Terraria.Tile.liquid, Terraria.Main.maxTilesX, Terraria.Main.maxTilesY, Terraria.DataStructures.Tile, Terraria.Main.tile, Terraria.Main.tileNoSunLight, Terraria.Tile.type, Terraria.Tile.wall, Terraria.Main.wallLight, and Terraria.Main.worldSurface.

Referenced by Terraria.Graphics.Light.LegacyLighting.ProcessArea().