public static void Prefix(FirstPersonLightSource __instance)
        {
            if (__instance.gameObject.name.Contains("KerosceneLamp"))
            {
                __instance.m_LightIndoor.range  = INDOOR_DEF_RNG * Settings.options.lamp_range;
                __instance.m_LightOutdoor.range = OUTDOOR_DEF_RNG * Settings.options.lamp_range;

                KeroseneLampTweaks.ColorLamps(__instance.gameObject);
            }
        }
        public static void Prefix(KeroseneLampIntensity __instance)
        {
            Gradient gradient = new Gradient();

            GradientColorKey[] colorKey;
            GradientAlphaKey[] alphaKey;

            colorKey          = new GradientColorKey[2];
            colorKey[0].color = KeroseneLampTweaks.GetNewColor();
            colorKey[0].time  = 0.0f;
            colorKey[1].color = KeroseneLampTweaks.GetNewColor();
            colorKey[1].time  = 1.0f;

            alphaKey          = new GradientAlphaKey[2];
            alphaKey[0].alpha = 1.0f;
            alphaKey[0].time  = 0.0f;
            alphaKey[1].alpha = 1.0f;
            alphaKey[1].time  = 1.0f;

            gradient.SetKeys(colorKey, alphaKey);

            //Set Stuff
            __instance.m_GlassColor = gradient;
            __instance.m_FlameColor = gradient;

            if (__instance.m_LitGlass)
            {
                Material glassMat = __instance.m_LitGlass.GetComponent <MeshRenderer>().material;
                glassMat.SetColor("_Emission", __instance.m_GlassColor.Evaluate(0f));
            }


            KeroseneLampItem keroseneLampItem = null;
            //var gi = Traverse.Create(__instance).Field("m_GearItem").GetValue<GearItem>();
            var gi = __instance.m_GearItem;

            if (gi)
            {
                keroseneLampItem = gi.m_KeroseneLampItem;
                KeroseneLampTweaks.ColorLamps(keroseneLampItem.gameObject);
            }
        }