public static void doColors()
{
if (Lighting.lightMode < 2)
{
Lighting.blueWave += (float)Lighting.blueDir * 0.0001f;
if ((double)Lighting.blueWave > 1.0)
{
Lighting.blueWave = 1f;
Lighting.blueDir = -1;
}
else if ((double)Lighting.blueWave < 0.970000028610229)
{
Lighting.blueWave = 0.97f;
Lighting.blueDir = 1;
}
if (Lighting.RGB)
{
Lighting.negLight = 0.91f;
Lighting.negLight2 = 0.56f;
Lighting.honeyLightG = 0.7f * Lighting.negLight * Lighting.blueWave;
Lighting.honeyLightR = 0.75f * Lighting.negLight * Lighting.blueWave;
Lighting.honeyLightB = 0.6f * Lighting.negLight * Lighting.blueWave;
switch (Main.waterStyle)
{
case 0:
case 1:
case 7:
case 8:
Lighting.wetLightG = 0.96f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.88f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1.015f * Lighting.negLight * Lighting.blueWave;
break;
case 2:
Lighting.wetLightG = 0.85f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.94f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1.01f * Lighting.negLight * Lighting.blueWave;
break;
case 3:
Lighting.wetLightG = 0.95f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.84f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1.015f * Lighting.negLight * Lighting.blueWave;
break;
case 4:
Lighting.wetLightG = 0.86f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.9f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1.01f * Lighting.negLight * Lighting.blueWave;
break;
case 5:
Lighting.wetLightG = 0.99f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.84f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1.01f * Lighting.negLight * Lighting.blueWave;
break;
case 6:
Lighting.wetLightG = 0.98f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.95f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 0.85f * Lighting.negLight * Lighting.blueWave;
break;
case 9:
Lighting.wetLightG = 0.88f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 1f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 0.84f * Lighting.negLight * Lighting.blueWave;
break;
case 10:
Lighting.wetLightG = 1f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightR = 0.83f * Lighting.negLight * Lighting.blueWave;
Lighting.wetLightB = 1f * Lighting.negLight * Lighting.blueWave;
break;
default:
Lighting.wetLightG = 0.0f;
Lighting.wetLightR = 0.0f;
Lighting.wetLightB = 0.0f;
break;
}
}
else
{
Lighting.negLight = 0.9f;
Lighting.negLight2 = 0.54f;
Lighting.wetLightR = 0.95f * Lighting.negLight * Lighting.blueWave;
}
if (Main.player[Main.myPlayer].nightVision)
{
Lighting.negLight *= 1.03f;
Lighting.negLight2 *= 1.03f;
}
if (Main.player[Main.myPlayer].blind)
{
Lighting.negLight *= 0.95f;
Lighting.negLight2 *= 0.95f;
}
if (Main.player[Main.myPlayer].blackout)
{
Lighting.negLight *= 0.85f;
Lighting.negLight2 *= 0.85f;
}
if (Main.player[Main.myPlayer].headcovered)
{
Lighting.negLight *= 0.85f;
Lighting.negLight2 *= 0.85f;
}
}
else
{
Lighting.negLight = 0.04f;
Lighting.negLight2 = 0.16f;
if (Main.player[Main.myPlayer].nightVision)
{
Lighting.negLight -= 0.013f;
Lighting.negLight2 -= 0.04f;
}
if (Main.player[Main.myPlayer].blind)
{
Lighting.negLight += 0.03f;
Lighting.negLight2 += 0.06f;
}
if (Main.player[Main.myPlayer].blackout)
{
Lighting.negLight += 0.09f;
Lighting.negLight2 += 0.18f;
}
if (Main.player[Main.myPlayer].headcovered)
{
Lighting.negLight += 0.09f;
Lighting.negLight2 += 0.18f;
}
Lighting.wetLightR = Lighting.negLight * 1.2f;
Lighting.wetLightG = Lighting.negLight * 1.1f;
}
int num1;
int num2;
switch (Main.renderCount)
{
case 0:
num1 = 0;
num2 = 1;
break;
case 1:
num1 = 1;
num2 = 3;
break;
case 2:
num1 = 3;
num2 = 4;
break;
default:
num1 = 0;
num2 = 0;
break;
}
if (Lighting.LightingThreads < 0)
Lighting.LightingThreads = 0;
if (Lighting.LightingThreads >= Environment.ProcessorCount)
Lighting.LightingThreads = Environment.ProcessorCount - 1;
int count = Lighting.LightingThreads;
if (count > 0)
++count;
Stopwatch stopwatch = new Stopwatch();
for (int index1 = num1; index1 < num2; ++index1)
{
stopwatch.Restart();
switch (index1)
{
case 0:
Lighting.swipe.innerLoop1Start = Lighting.minY7 - Lighting.firstToLightY7;
Lighting.swipe.innerLoop1End = Lighting.lastToLightY27 + Lighting.maxRenderCount - Lighting.firstToLightY7;
Lighting.swipe.innerLoop2Start = Lighting.maxY7 - Lighting.firstToLightY;
Lighting.swipe.innerLoop2End = Lighting.firstTileY7 - Lighting.maxRenderCount - Lighting.firstToLightY7;
Lighting.swipe.outerLoopStart = Lighting.minX7 - Lighting.firstToLightX7;
Lighting.swipe.outerLoopEnd = Lighting.maxX7 - Lighting.firstToLightX7;
Lighting.swipe.jaggedArray = Lighting.states;
break;
case 1:
Lighting.swipe.innerLoop1Start = Lighting.minX7 - Lighting.firstToLightX7;
Lighting.swipe.innerLoop1End = Lighting.lastTileX7 + Lighting.maxRenderCount - Lighting.firstToLightX7;
Lighting.swipe.innerLoop2Start = Lighting.maxX7 - Lighting.firstToLightX7;
Lighting.swipe.innerLoop2End = Lighting.firstTileX7 - Lighting.maxRenderCount - Lighting.firstToLightX7;
Lighting.swipe.outerLoopStart = Lighting.firstToLightY7 - Lighting.firstToLightY7;
Lighting.swipe.outerLoopEnd = Lighting.lastToLightY7 - Lighting.firstToLightY7;
Lighting.swipe.jaggedArray = Lighting.axisFlipStates;
break;
case 2:
Lighting.swipe.innerLoop1Start = Lighting.firstToLightY27 - Lighting.firstToLightY7;
Lighting.swipe.innerLoop1End = Lighting.lastTileY7 + Lighting.maxRenderCount - Lighting.firstToLightY7;
Lighting.swipe.innerLoop2Start = Lighting.lastToLightY27 - Lighting.firstToLightY;
Lighting.swipe.innerLoop2End = Lighting.firstTileY7 - Lighting.maxRenderCount - Lighting.firstToLightY7;
Lighting.swipe.outerLoopStart = Lighting.firstToLightX27 - Lighting.firstToLightX7;
Lighting.swipe.outerLoopEnd = Lighting.lastToLightX27 - Lighting.firstToLightX7;
Lighting.swipe.jaggedArray = Lighting.states;
break;
case 3:
Lighting.swipe.innerLoop1Start = Lighting.firstToLightX27 - Lighting.firstToLightX7;
Lighting.swipe.innerLoop1End = Lighting.lastTileX7 + Lighting.maxRenderCount - Lighting.firstToLightX7;
Lighting.swipe.innerLoop2Start = Lighting.lastToLightX27 - Lighting.firstToLightX7;
Lighting.swipe.innerLoop2End = Lighting.firstTileX7 - Lighting.maxRenderCount - Lighting.firstToLightX7;
Lighting.swipe.outerLoopStart = Lighting.firstToLightY27 - Lighting.firstToLightY7;
Lighting.swipe.outerLoopEnd = Lighting.lastToLightY27 - Lighting.firstToLightY7;
Lighting.swipe.jaggedArray = Lighting.axisFlipStates;
break;
}
if (Lighting.swipe.innerLoop1Start > Lighting.swipe.innerLoop1End)
Lighting.swipe.innerLoop1Start = Lighting.swipe.innerLoop1End;
if (Lighting.swipe.innerLoop2Start < Lighting.swipe.innerLoop2End)
Lighting.swipe.innerLoop2Start = Lighting.swipe.innerLoop2End;
if (Lighting.swipe.outerLoopStart > Lighting.swipe.outerLoopEnd)
Lighting.swipe.outerLoopStart = Lighting.swipe.outerLoopEnd;
switch (Lighting.lightMode)
{
case 0:
Lighting.swipe.function = new Action<Lighting.LightingSwipeData>(Lighting.doColors_Mode0_Swipe);
break;
case 1:
Lighting.swipe.function = new Action<Lighting.LightingSwipeData>(Lighting.doColors_Mode1_Swipe);
break;
case 2:
Lighting.swipe.function = new Action<Lighting.LightingSwipeData>(Lighting.doColors_Mode2_Swipe);
break;
case 3:
Lighting.swipe.function = new Action<Lighting.LightingSwipeData>(Lighting.doColors_Mode3_Swipe);
break;
default:
Lighting.swipe.function = (Action<Lighting.LightingSwipeData>)null;
break;
}
if (count == 0)
{
Lighting.swipe.function(Lighting.swipe);
}
else
{
int num3 = Lighting.swipe.outerLoopEnd - Lighting.swipe.outerLoopStart;
int num4 = num3 / count;
int num5 = num3 % count;
int num6 = Lighting.swipe.outerLoopStart;
Lighting.countdown.Reset(count);
for (int index2 = 0; index2 < count; ++index2)
{
Lighting.LightingSwipeData lightingSwipeData = Lighting.threadSwipes[index2];
lightingSwipeData.CopyFrom(Lighting.swipe);
lightingSwipeData.outerLoopStart = num6;
num6 += num4;
if (num5 > 0)
{
++num6;
--num5;
}
lightingSwipeData.outerLoopEnd = num6;
ThreadPool.QueueUserWorkItem(new WaitCallback(Lighting.callback_LightingSwipe), (object)lightingSwipeData);
}
Lighting.countdown.Wait();
}
TimeLogger.LightingTime(index1 + 1, stopwatch.Elapsed.TotalMilliseconds);
}
}