Example #1
0
        public static Color GetColor(int x, int y)
        {
            int num  = x - Lighting.firstTileX + Lighting.offScreenTiles;
            int num2 = y - Lighting.firstTileY + Lighting.offScreenTiles;

            if (num < 0 || num2 < 0 || num >= Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10 || num2 >= Main.screenHeight / 16 + Lighting.offScreenTiles * 2)
            {
                return(Color.Black);
            }
            Lighting.LightingState lightingState = Lighting.states[num][num2];
            int num3 = (int)(255f * lightingState.r * Lighting.brightness);
            int num4 = (int)(255f * lightingState.g * Lighting.brightness);
            int num5 = (int)(255f * lightingState.b * Lighting.brightness);

            if (num3 > 255)
            {
                num3 = 255;
            }
            if (num4 > 255)
            {
                num4 = 255;
            }
            if (num5 > 255)
            {
                num5 = 255;
            }
            Color result = new Color((int)((byte)num3), (int)((byte)num4), (int)((byte)num5), 255);

            return(result);
        }
Example #2
0
        public static float Brightness(int x, int y)
        {
            int num  = x - Lighting.firstTileX + Lighting.offScreenTiles;
            int num2 = y - Lighting.firstTileY + Lighting.offScreenTiles;

            if (num < 0 || num2 < 0 || num >= Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10 || num2 >= Main.screenHeight / 16 + Lighting.offScreenTiles * 2 + 10)
            {
                return(0f);
            }
            Lighting.LightingState lightingState = Lighting.states[num][num2];
            return((lightingState.r + lightingState.g + lightingState.b) / 3f);
        }
Example #3
0
        public static void BlackOut()
        {
            int num  = Main.screenWidth / 16 + Lighting.offScreenTiles * 2;
            int num2 = Main.screenHeight / 16 + Lighting.offScreenTiles * 2;

            for (int i = 0; i < num; i++)
            {
                Lighting.LightingState[] array = Lighting.states[i];
                for (int j = 0; j < num2; j++)
                {
                    Lighting.LightingState lightingState = array[j];
                    lightingState.r = 0f;
                    lightingState.g = 0f;
                    lightingState.b = 0f;
                }
            }
        }
Example #4
0
        public static void GetColor9Slice(int centerX, int centerY, ref Color[] slices)
        {
            int num  = centerX - Lighting.firstTileX + Lighting.offScreenTiles;
            int num2 = centerY - Lighting.firstTileY + Lighting.offScreenTiles;

            if (num <= 0 || num2 <= 0 || num >= Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10 - 1 || num2 >= Main.screenHeight / 16 + Lighting.offScreenTiles * 2 - 1)
            {
                for (int i = 0; i < 9; i++)
                {
                    slices[i] = Color.Black;
                }
                return;
            }
            int num3 = 0;

            for (int j = num - 1; j <= num + 1; j++)
            {
                Lighting.LightingState[] array = Lighting.states[j];
                for (int k = num2 - 1; k <= num2 + 1; k++)
                {
                    Lighting.LightingState lightingState = array[k];
                    int num4 = (int)(255f * lightingState.r * Lighting.brightness);
                    int num5 = (int)(255f * lightingState.g * Lighting.brightness);
                    int num6 = (int)(255f * lightingState.b * Lighting.brightness);
                    if (num4 > 255)
                    {
                        num4 = 255;
                    }
                    if (num5 > 255)
                    {
                        num5 = 255;
                    }
                    if (num6 > 255)
                    {
                        num6 = 255;
                    }
                    slices[num3] = new Color((int)((byte)num4), (int)((byte)num5), (int)((byte)num6), 255);
                    num3        += 3;
                }
                num3 -= 8;
            }
        }
Example #5
0
        public static Color GetColor(int x, int y, Color oldColor)
        {
            int num  = x - Lighting.firstTileX + Lighting.offScreenTiles;
            int num2 = y - Lighting.firstTileY + Lighting.offScreenTiles;

            if (Main.gameMenu)
            {
                return(oldColor);
            }
            if (num < 0 || num2 < 0 || num >= Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10 || num2 >= Main.screenHeight / 16 + Lighting.offScreenTiles * 2 + 10)
            {
                return(Color.Black);
            }
            Color white = Color.White;

            Lighting.LightingState lightingState = Lighting.states[num][num2];
            int num3 = (int)((float)oldColor.R * lightingState.r * Lighting.brightness);
            int num4 = (int)((float)oldColor.G * lightingState.g * Lighting.brightness);
            int num5 = (int)((float)oldColor.B * lightingState.b * Lighting.brightness);

            if (num3 > 255)
            {
                num3 = 255;
            }
            if (num4 > 255)
            {
                num4 = 255;
            }
            if (num5 > 255)
            {
                num5 = 255;
            }
            white.R = (byte)num3;
            white.G = (byte)num4;
            white.B = (byte)num5;
            return(white);
        }
Example #6
0
        public static void Initialize(bool resize = false)
        {
            if (!resize)
            {
                Lighting.tempLights   = new Dictionary <Point16, Lighting.ColorTriplet>();
                Lighting.swipe        = new Lighting.LightingSwipeData();
                Lighting.countdown    = new CountdownEvent(0);
                Lighting.threadSwipes = new Lighting.LightingSwipeData[Environment.ProcessorCount];
                for (int i = 0; i < Lighting.threadSwipes.Length; i++)
                {
                    Lighting.threadSwipes[i] = new Lighting.LightingSwipeData();
                }
            }
            int num  = Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10;
            int num2 = Main.screenHeight / 16 + Lighting.offScreenTiles * 2 + 10;

            if (Lighting.states == null || Lighting.states.Length < num || Lighting.states[0].Length < num2)
            {
                Lighting.states         = new Lighting.LightingState[num][];
                Lighting.axisFlipStates = new Lighting.LightingState[num2][];
                for (int j = 0; j < num2; j++)
                {
                    Lighting.axisFlipStates[j] = new Lighting.LightingState[num];
                }
                for (int k = 0; k < num; k++)
                {
                    Lighting.LightingState[] array = new Lighting.LightingState[num2];
                    for (int l = 0; l < num2; l++)
                    {
                        Lighting.LightingState lightingState = new Lighting.LightingState();
                        array[l] = lightingState;
                        Lighting.axisFlipStates[l][k] = lightingState;
                    }
                    Lighting.states[k] = array;
                }
            }
        }
Example #7
0
 public static void Initialize(bool resize = false)
 {
     if (!resize)
     {
         Lighting.tempLights = new Dictionary<Point16, Lighting.ColorTriplet>();
         Lighting.swipe = new Lighting.LightingSwipeData();
         Lighting.countdown = new CountdownEvent(0);
         Lighting.threadSwipes = new Lighting.LightingSwipeData[Environment.ProcessorCount];
         for (int index = 0; index < Lighting.threadSwipes.Length; ++index)
             Lighting.threadSwipes[index] = new Lighting.LightingSwipeData();
     }
     int length1 = Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10;
     int length2 = Main.screenHeight / 16 + Lighting.offScreenTiles * 2 + 10;
     if (Lighting.states != null && Lighting.states.Length >= length1 && Lighting.states[0].Length >= length2)
         return;
     Lighting.states = new Lighting.LightingState[length1][];
     Lighting.axisFlipStates = new Lighting.LightingState[length2][];
     for (int index = 0; index < length2; ++index)
         Lighting.axisFlipStates[index] = new Lighting.LightingState[length1];
     for (int index1 = 0; index1 < length1; ++index1)
     {
         Lighting.LightingState[] lightingStateArray = new Lighting.LightingState[length2];
         for (int index2 = 0; index2 < length2; ++index2)
         {
             Lighting.LightingState lightingState = new Lighting.LightingState();
             lightingStateArray[index2] = lightingState;
             Lighting.axisFlipStates[index2][index1] = lightingState;
         }
         Lighting.states[index1] = lightingStateArray;
     }
 }
Example #8
0
		public static void Initialize(bool resize = false)
		{
			if (!resize)
			{
				Lighting.tempLights = new Dictionary<Point16, Lighting.ColorTriplet>();
				Lighting.swipe = new Lighting.LightingSwipeData();
				Lighting.countdown = new CountdownEvent(0);
				Lighting.threadSwipes = new Lighting.LightingSwipeData[Environment.ProcessorCount];
				for (int i = 0; i < Lighting.threadSwipes.Length; i++)
				{
					Lighting.threadSwipes[i] = new Lighting.LightingSwipeData();
				}
			}
			int num = Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10;
			int num2 = Main.screenHeight / 16 + Lighting.offScreenTiles * 2 + 10;
			if (Lighting.states == null || Lighting.states.Length < num || Lighting.states[0].Length < num2)
			{
				Lighting.states = new Lighting.LightingState[num][];
				Lighting.axisFlipStates = new Lighting.LightingState[num2][];
				for (int j = 0; j < num2; j++)
				{
					Lighting.axisFlipStates[j] = new Lighting.LightingState[num];
				}
				for (int k = 0; k < num; k++)
				{
					Lighting.LightingState[] array = new Lighting.LightingState[num2];
					for (int l = 0; l < num2; l++)
					{
						Lighting.LightingState lightingState = new Lighting.LightingState();
						array[l] = lightingState;
						Lighting.axisFlipStates[l][k] = lightingState;
					}
					Lighting.states[k] = array;
				}
			}
		}
		public static void Initialize()
		{
			Lighting.tempLightX = new int[Lighting.maxTempLights];
			Lighting.tempLightY = new int[Lighting.maxTempLights];
			Lighting.tempLight = new float[Lighting.maxTempLights];
			Lighting.tempLightG = new float[Lighting.maxTempLights];
			Lighting.tempLightB = new float[Lighting.maxTempLights];
			Lighting.swipe = new Lighting.LightingSwipeData();
			Lighting.countdown = new CountdownEvent(0);
			Lighting.threadSwipes = new Lighting.LightingSwipeData[Environment.ProcessorCount];
			for (int i = 0; i < Lighting.threadSwipes.Length; i++)
			{
				Lighting.threadSwipes[i] = new Lighting.LightingSwipeData();
			}
			int num = Main.screenWidth + Lighting.offScreenTiles * 2 + 10;
			int num2 = Main.screenHeight + Lighting.offScreenTiles * 2 + 10;
			Lighting.states = new Lighting.LightingState[num][];
			Lighting.axisFlipStates = new Lighting.LightingState[num2][];
			for (int j = 0; j < num2; j++)
			{
				Lighting.axisFlipStates[j] = new Lighting.LightingState[num];
			}
			for (int k = 0; k < num; k++)
			{
				Lighting.LightingState[] array = new Lighting.LightingState[num2];
				for (int l = 0; l < num2; l++)
				{
					Lighting.LightingState lightingState = new Lighting.LightingState();
					array[l] = lightingState;
					Lighting.axisFlipStates[l][k] = lightingState;
				}
				Lighting.states[k] = array;
			}
		}
Example #10
0
        public static void GetColor4Slice(int centerX, int centerY, ref Color[] slices)
        {
            int i   = centerX - Lighting.firstTileX + Lighting.offScreenTiles;
            int num = centerY - Lighting.firstTileY + Lighting.offScreenTiles;

            if (i <= 0 || num <= 0 || i >= Main.screenWidth / 16 + Lighting.offScreenTiles * 2 + 10 - 1 || num >= Main.screenHeight / 16 + Lighting.offScreenTiles * 2 - 1)
            {
                for (i = 0; i < 4; i++)
                {
                    slices[i] = Color.Black;
                }
                return;
            }
            Lighting.LightingState lightingState  = Lighting.states[i][num - 1];
            Lighting.LightingState lightingState2 = Lighting.states[i][num + 1];
            Lighting.LightingState lightingState3 = Lighting.states[i - 1][num];
            Lighting.LightingState lightingState4 = Lighting.states[i + 1][num];
            float num2 = lightingState.r + lightingState.g + lightingState.b;
            float num3 = lightingState2.r + lightingState2.g + lightingState2.b;
            float num4 = lightingState4.r + lightingState4.g + lightingState4.b;
            float num5 = lightingState3.r + lightingState3.g + lightingState3.b;

            if (num2 >= num5)
            {
                int num6 = (int)(255f * lightingState3.r * Lighting.brightness);
                int num7 = (int)(255f * lightingState3.g * Lighting.brightness);
                int num8 = (int)(255f * lightingState3.b * Lighting.brightness);
                if (num6 > 255)
                {
                    num6 = 255;
                }
                if (num7 > 255)
                {
                    num7 = 255;
                }
                if (num8 > 255)
                {
                    num8 = 255;
                }
                slices[0] = new Color((int)((byte)num6), (int)((byte)num7), (int)((byte)num8), 255);
            }
            else
            {
                int num9  = (int)(255f * lightingState.r * Lighting.brightness);
                int num10 = (int)(255f * lightingState.g * Lighting.brightness);
                int num11 = (int)(255f * lightingState.b * Lighting.brightness);
                if (num9 > 255)
                {
                    num9 = 255;
                }
                if (num10 > 255)
                {
                    num10 = 255;
                }
                if (num11 > 255)
                {
                    num11 = 255;
                }
                slices[0] = new Color((int)((byte)num9), (int)((byte)num10), (int)((byte)num11), 255);
            }
            if (num2 >= num4)
            {
                int num12 = (int)(255f * lightingState4.r * Lighting.brightness);
                int num13 = (int)(255f * lightingState4.g * Lighting.brightness);
                int num14 = (int)(255f * lightingState4.b * Lighting.brightness);
                if (num12 > 255)
                {
                    num12 = 255;
                }
                if (num13 > 255)
                {
                    num13 = 255;
                }
                if (num14 > 255)
                {
                    num14 = 255;
                }
                slices[1] = new Color((int)((byte)num12), (int)((byte)num13), (int)((byte)num14), 255);
            }
            else
            {
                int num15 = (int)(255f * lightingState.r * Lighting.brightness);
                int num16 = (int)(255f * lightingState.g * Lighting.brightness);
                int num17 = (int)(255f * lightingState.b * Lighting.brightness);
                if (num15 > 255)
                {
                    num15 = 255;
                }
                if (num16 > 255)
                {
                    num16 = 255;
                }
                if (num17 > 255)
                {
                    num17 = 255;
                }
                slices[1] = new Color((int)((byte)num15), (int)((byte)num16), (int)((byte)num17), 255);
            }
            if (num3 >= num5)
            {
                int num18 = (int)(255f * lightingState3.r * Lighting.brightness);
                int num19 = (int)(255f * lightingState3.g * Lighting.brightness);
                int num20 = (int)(255f * lightingState3.b * Lighting.brightness);
                if (num18 > 255)
                {
                    num18 = 255;
                }
                if (num19 > 255)
                {
                    num19 = 255;
                }
                if (num20 > 255)
                {
                    num20 = 255;
                }
                slices[2] = new Color((int)((byte)num18), (int)((byte)num19), (int)((byte)num20), 255);
            }
            else
            {
                int num21 = (int)(255f * lightingState2.r * Lighting.brightness);
                int num22 = (int)(255f * lightingState2.g * Lighting.brightness);
                int num23 = (int)(255f * lightingState2.b * Lighting.brightness);
                if (num21 > 255)
                {
                    num21 = 255;
                }
                if (num22 > 255)
                {
                    num22 = 255;
                }
                if (num23 > 255)
                {
                    num23 = 255;
                }
                slices[2] = new Color((int)((byte)num21), (int)((byte)num22), (int)((byte)num23), 255);
            }
            if (num3 >= num4)
            {
                int num24 = (int)(255f * lightingState4.r * Lighting.brightness);
                int num25 = (int)(255f * lightingState4.g * Lighting.brightness);
                int num26 = (int)(255f * lightingState4.b * Lighting.brightness);
                if (num24 > 255)
                {
                    num24 = 255;
                }
                if (num25 > 255)
                {
                    num25 = 255;
                }
                if (num26 > 255)
                {
                    num26 = 255;
                }
                slices[3] = new Color((int)((byte)num24), (int)((byte)num25), (int)((byte)num26), 255);
                return;
            }
            int num27 = (int)(255f * lightingState2.r * Lighting.brightness);
            int num28 = (int)(255f * lightingState2.g * Lighting.brightness);
            int num29 = (int)(255f * lightingState2.b * Lighting.brightness);

            if (num27 > 255)
            {
                num27 = 255;
            }
            if (num28 > 255)
            {
                num28 = 255;
            }
            if (num29 > 255)
            {
                num29 = 255;
            }
            slices[3] = new Color((int)((byte)num27), (int)((byte)num28), (int)((byte)num29), 255);
        }
Example #11
0
        private static void doColors_Mode3_Swipe(Lighting.LightingSwipeData swipeData)
        {
            try
            {
                bool flag = true;
                while (true)
                {
                    int num;
                    int num2;
                    int num3;
                    if (flag)
                    {
                        num  = 1;
                        num2 = swipeData.innerLoop1Start;
                        num3 = swipeData.innerLoop1End;
                    }
                    else
                    {
                        num  = -1;
                        num2 = swipeData.innerLoop2Start;
                        num3 = swipeData.innerLoop2End;
                    }
                    int outerLoopStart = swipeData.outerLoopStart;
                    int outerLoopEnd   = swipeData.outerLoopEnd;
                    for (int i = outerLoopStart; i < outerLoopEnd; i++)
                    {
                        Lighting.LightingState[] array = swipeData.jaggedArray[i];
                        float num4 = 0f;
                        float num5 = 0f;
                        float num6 = 0f;
                        int   num7 = num2;
                        while (num7 != num3)
                        {
                            Lighting.LightingState lightingState = array[num7];
                            bool flag3;
                            bool flag2 = flag3 = false;
                            if (lightingState.r2 > num4)
                            {
                                num4 = lightingState.r2;
                            }
                            else if (num4 <= 0f)
                            {
                                flag3 = true;
                            }
                            else
                            {
                                lightingState.r2 = num4;
                            }
                            if (!flag3)
                            {
                                if (lightingState.stopLight)
                                {
                                    num4 -= Lighting.negLight2;
                                }
                                else if (lightingState.wetLight)
                                {
                                    num4 -= Lighting.wetLightR;
                                }
                                else
                                {
                                    num4 -= Lighting.negLight;
                                }
                            }
                            if (lightingState.g2 > num5)
                            {
                                num5 = lightingState.g2;
                            }
                            else if (num5 <= 0f)
                            {
                                flag2 = true;
                            }
                            else
                            {
                                lightingState.g2 = num5;
                            }
                            if (!flag2)
                            {
                                if (lightingState.stopLight)
                                {
                                    num5 -= Lighting.negLight2;
                                }
                                else if (lightingState.wetLight)
                                {
                                    num5 -= Lighting.wetLightG;
                                }
                                else
                                {
                                    num5 -= Lighting.negLight;
                                }
                            }
                            if (lightingState.b2 > num6)
                            {
                                num6 = lightingState.b2;
                                goto IL_167;
                            }
                            if (num6 > 0f)
                            {
                                lightingState.b2 = num6;
                                goto IL_167;
                            }
IL_186:
                            num7 += num;
                            continue;
IL_167:
                            if (lightingState.stopLight)
                            {
                                num6 -= Lighting.negLight2;
                                goto IL_186;
                            }
                            num6 -= Lighting.negLight;
                            goto IL_186;
                        }
                    }
                    if (!flag)
                    {
                        break;
                    }
                    flag = false;
                }
            }
            catch
            {
            }
        }
Example #12
0
        private static void doColors_Mode2_Swipe(Lighting.LightingSwipeData swipeData)
        {
            try
            {
                bool flag = true;
                while (true)
                {
                    int num;
                    int num2;
                    int num3;
                    if (flag)
                    {
                        num  = 1;
                        num2 = swipeData.innerLoop1Start;
                        num3 = swipeData.innerLoop1End;
                    }
                    else
                    {
                        num  = -1;
                        num2 = swipeData.innerLoop2Start;
                        num3 = swipeData.innerLoop2End;
                    }
                    int outerLoopStart = swipeData.outerLoopStart;
                    int outerLoopEnd   = swipeData.outerLoopEnd;
                    for (int i = outerLoopStart; i < outerLoopEnd; i++)
                    {
                        Lighting.LightingState[] array = swipeData.jaggedArray[i];
                        float num4 = 0f;
                        int   num5 = num2;
                        while (num5 != num3)
                        {
                            Lighting.LightingState lightingState = array[num5];
                            if (lightingState.r2 > num4)
                            {
                                num4 = lightingState.r2;
                                goto IL_86;
                            }
                            if (num4 > 0f)
                            {
                                lightingState.r2 = num4;
                                goto IL_86;
                            }
IL_BA:
                            num5 += num;
                            continue;
IL_86:
                            if (lightingState.stopLight)
                            {
                                num4 -= Lighting.negLight2;
                                goto IL_BA;
                            }
                            if (lightingState.wetLight)
                            {
                                num4 -= Lighting.wetLightR;
                                goto IL_BA;
                            }
                            num4 -= Lighting.negLight;
                            goto IL_BA;
                        }
                    }
                    if (!flag)
                    {
                        break;
                    }
                    flag = false;
                }
            }
            catch
            {
            }
        }
Example #13
0
        private static void doColors_Mode1_Swipe(Lighting.LightingSwipeData swipeData)
        {
            try
            {
                bool flag = true;
                while (true)
                {
                    int num;
                    int num2;
                    int num3;
                    if (flag)
                    {
                        num  = 1;
                        num2 = swipeData.innerLoop1Start;
                        num3 = swipeData.innerLoop1End;
                    }
                    else
                    {
                        num  = -1;
                        num2 = swipeData.innerLoop2Start;
                        num3 = swipeData.innerLoop2End;
                    }
                    int outerLoopStart = swipeData.outerLoopStart;
                    int outerLoopEnd   = swipeData.outerLoopEnd;
                    for (int i = outerLoopStart; i < outerLoopEnd; i++)
                    {
                        Lighting.LightingState[] array = swipeData.jaggedArray[i];
                        float num4 = 0f;
                        int   num5 = num2;
                        while (num5 != num3)
                        {
                            Lighting.LightingState lightingState = array[num5];
                            if (lightingState.r2 > num4)
                            {
                                num4 = lightingState.r2;
                                goto IL_9C;
                            }
                            if ((double)num4 > 0.0185)
                            {
                                if (lightingState.r2 < num4)
                                {
                                    lightingState.r2 = num4;
                                    goto IL_9C;
                                }
                                goto IL_9C;
                            }
IL_123:
                            num5 += num;
                            continue;
IL_9C:
                            if (array[num5 + num].r2 > num4)
                            {
                                goto IL_123;
                            }
                            if (lightingState.stopLight)
                            {
                                num4 *= Lighting.negLight2;
                                goto IL_123;
                            }
                            if (!lightingState.wetLight)
                            {
                                num4 *= Lighting.negLight;
                                goto IL_123;
                            }
                            if (lightingState.honeyLight)
                            {
                                num4 *= Lighting.honeyLightR * (float)swipeData.rand.Next(98, 100) * 0.01f;
                                goto IL_123;
                            }
                            num4 *= Lighting.wetLightR * (float)swipeData.rand.Next(98, 100) * 0.01f;
                            goto IL_123;
                        }
                    }
                    if (!flag)
                    {
                        break;
                    }
                    flag = false;
                }
            }
            catch
            {
            }
        }
Example #14
0
        private static void doColors_Mode0_Swipe(Lighting.LightingSwipeData swipeData)
        {
            try
            {
                bool flag = true;
                while (true)
                {
                    int num;
                    int num2;
                    int num3;
                    if (flag)
                    {
                        num  = 1;
                        num2 = swipeData.innerLoop1Start;
                        num3 = swipeData.innerLoop1End;
                    }
                    else
                    {
                        num  = -1;
                        num2 = swipeData.innerLoop2Start;
                        num3 = swipeData.innerLoop2End;
                    }
                    int outerLoopStart = swipeData.outerLoopStart;
                    int outerLoopEnd   = swipeData.outerLoopEnd;
                    for (int i = outerLoopStart; i < outerLoopEnd; i++)
                    {
                        Lighting.LightingState[] array = swipeData.jaggedArray[i];
                        float num4 = 0f;
                        float num5 = 0f;
                        float num6 = 0f;
                        int   num7 = num2;
                        while (num7 != num3)
                        {
                            Lighting.LightingState lightingState  = array[num7];
                            Lighting.LightingState lightingState2 = array[num7 + num];
                            bool flag3;
                            bool flag2 = flag3 = false;
                            if (lightingState.r2 > num4)
                            {
                                num4 = lightingState.r2;
                            }
                            else if ((double)num4 <= 0.0185)
                            {
                                flag3 = true;
                            }
                            else if (lightingState.r2 < num4)
                            {
                                lightingState.r2 = num4;
                            }
                            if (!flag3 && lightingState2.r2 <= num4)
                            {
                                if (lightingState.stopLight)
                                {
                                    num4 *= Lighting.negLight2;
                                }
                                else if (lightingState.wetLight)
                                {
                                    if (lightingState.honeyLight)
                                    {
                                        num4 *= Lighting.honeyLightR * (float)swipeData.rand.Next(98, 100) * 0.01f;
                                    }
                                    else
                                    {
                                        num4 *= Lighting.wetLightR * (float)swipeData.rand.Next(98, 100) * 0.01f;
                                    }
                                }
                                else
                                {
                                    num4 *= Lighting.negLight;
                                }
                            }
                            if (lightingState.g2 > num5)
                            {
                                num5 = lightingState.g2;
                            }
                            else if ((double)num5 <= 0.0185)
                            {
                                flag2 = true;
                            }
                            else
                            {
                                lightingState.g2 = num5;
                            }
                            if (!flag2 && lightingState2.g2 <= num5)
                            {
                                if (lightingState.stopLight)
                                {
                                    num5 *= Lighting.negLight2;
                                }
                                else if (lightingState.wetLight)
                                {
                                    if (lightingState.honeyLight)
                                    {
                                        num5 *= Lighting.honeyLightG * (float)swipeData.rand.Next(97, 100) * 0.01f;
                                    }
                                    else
                                    {
                                        num5 *= Lighting.wetLightG * (float)swipeData.rand.Next(97, 100) * 0.01f;
                                    }
                                }
                                else
                                {
                                    num5 *= Lighting.negLight;
                                }
                            }
                            if (lightingState.b2 > num6)
                            {
                                num6 = lightingState.b2;
                                goto IL_22F;
                            }
                            if ((double)num6 > 0.0185)
                            {
                                lightingState.b2 = num6;
                                goto IL_22F;
                            }
IL_2B1:
                            num7 += num;
                            continue;
IL_22F:
                            if (lightingState2.b2 >= num6)
                            {
                                goto IL_2B1;
                            }
                            if (lightingState.stopLight)
                            {
                                num6 *= Lighting.negLight2;
                                goto IL_2B1;
                            }
                            if (!lightingState.wetLight)
                            {
                                num6 *= Lighting.negLight;
                                goto IL_2B1;
                            }
                            if (lightingState.honeyLight)
                            {
                                num6 *= Lighting.honeyLightB * (float)swipeData.rand.Next(97, 100) * 0.01f;
                                goto IL_2B1;
                            }
                            num6 *= Lighting.wetLightB * (float)swipeData.rand.Next(97, 100) * 0.01f;
                            goto IL_2B1;
                        }
                    }
                    if (!flag)
                    {
                        break;
                    }
                    flag = false;
                }
            }
            catch
            {
            }
        }