using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using UnityEngine;
using UnityEngine.PostProcessing;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("PostProcessing")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("PostProcessing")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("836db46b-86d6-47dd-8cf9-39be99a17b13")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyVersion("1.0.0.0")]
public class AedenthornUtils
{
public static bool IgnoreKeyPresses(bool extra = false)
{
if (!extra)
{
int result;
if (!((Object)(object)ZNetScene.instance == (Object)null) && !((Object)(object)Player.m_localPlayer == (Object)null) && !Minimap.IsOpen() && !Console.IsVisible() && !TextInput.IsVisible() && !ZNet.instance.InPasswordDialog())
{
Chat instance = Chat.instance;
result = ((instance != null && instance.HasFocus()) ? 1 : 0);
}
else
{
result = 1;
}
return (byte)result != 0;
}
int result2;
if (!((Object)(object)ZNetScene.instance == (Object)null) && !((Object)(object)Player.m_localPlayer == (Object)null) && !Minimap.IsOpen() && !Console.IsVisible() && !TextInput.IsVisible() && !ZNet.instance.InPasswordDialog())
{
Chat instance2 = Chat.instance;
if ((instance2 == null || !instance2.HasFocus()) && !StoreGui.IsVisible() && !InventoryGui.IsVisible() && !Menu.IsVisible())
{
TextViewer instance3 = TextViewer.instance;
result2 = ((instance3 != null && instance3.IsVisible()) ? 1 : 0);
goto IL_00d2;
}
}
result2 = 1;
goto IL_00d2;
IL_00d2:
return (byte)result2 != 0;
}
public static bool CheckKeyDown(string value)
{
try
{
return Input.GetKeyDown(value.ToLower());
}
catch
{
return false;
}
}
public static bool CheckKeyUp(string value)
{
try
{
return Input.GetKeyUp(value.ToLower());
}
catch
{
return false;
}
}
public static bool CheckKeyHeld(string value, bool req = true)
{
try
{
return Input.GetKey(value.ToLower());
}
catch
{
return !req;
}
}
public static void ShuffleList<T>(List<T> list)
{
int num = list.Count;
while (num > 1)
{
num--;
int index = Random.Range(0, num);
T value = list[index];
list[index] = list[num];
list[num] = value;
}
}
public static string GetAssetPath(object obj, bool create = false)
{
return GetAssetPath(obj.GetType().Namespace, create);
}
public static string GetAssetPath(string name, bool create = false)
{
string text = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), name);
if (create && !Directory.Exists(text))
{
Directory.CreateDirectory(text);
}
return text;
}
public static string GetTransformPath(Transform t)
{
if (!Object.op_Implicit((Object)(object)t.parent))
{
return ((Object)t).name;
}
return GetTransformPath(t.parent) + "/" + ((Object)t).name;
}
public static byte[] EncodeToPNG(Texture2D texture)
{
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0040: Expected O, but got Unknown
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_0087: Unknown result type (might be due to invalid IL or missing references)
//IL_008d: Expected O, but got Unknown
RenderTexture temporary = RenderTexture.GetTemporary(((Texture)texture).width, ((Texture)texture).height, 0, (RenderTextureFormat)7, (RenderTextureReadWrite)0);
Graphics.Blit((Texture)(object)texture, temporary);
RenderTexture active = RenderTexture.active;
RenderTexture.active = temporary;
Texture2D val = new Texture2D(((Texture)texture).width, ((Texture)texture).height, (TextureFormat)4, true, false);
val.ReadPixels(new Rect(0f, 0f, (float)((Texture)temporary).width, (float)((Texture)temporary).height), 0, 0);
val.Apply();
RenderTexture.active = active;
RenderTexture.ReleaseTemporary(temporary);
Texture2D val2 = new Texture2D(((Texture)texture).width, ((Texture)texture).height);
val2.SetPixels(val.GetPixels());
val2.Apply();
return ImageConversion.EncodeToPNG(val2);
}
}
namespace PostProcessing;
[BepInPlugin("aedenthorn.PostProcessing", "Post Processing", "0.1.2")]
public class BepInExPlugin : BaseUnityPlugin
{
[HarmonyPatch(typeof(PostProcessingBehaviour), "OnEnable")]
private static class PostProcessingBehaviour_OnEnable_Patch
{
private static void Prefix(PostProcessingBehaviour __instance)
{
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0032: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_005c: Unknown result type (might be due to invalid IL or missing references)
//IL_006c: Unknown result type (might be due to invalid IL or missing references)
//IL_0071: Unknown result type (might be due to invalid IL or missing references)
//IL_0096: Unknown result type (might be due to invalid IL or missing references)
//IL_009b: Unknown result type (might be due to invalid IL or missing references)
//IL_00ab: Unknown result type (might be due to invalid IL or missing references)
//IL_00b0: Unknown result type (might be due to invalid IL or missing references)
//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
//IL_00c5: Unknown result type (might be due to invalid IL or missing references)
//IL_00d5: Unknown result type (might be due to invalid IL or missing references)
//IL_00da: Unknown result type (might be due to invalid IL or missing references)
//IL_00ea: Unknown result type (might be due to invalid IL or missing references)
//IL_00ef: Unknown result type (might be due to invalid IL or missing references)
//IL_00ff: Unknown result type (might be due to invalid IL or missing references)
//IL_0104: Unknown result type (might be due to invalid IL or missing references)
if ((Object)(object)__instance.profile != (Object)null && !defaultPostProcessingSet)
{
defaultVignetteSettings = __instance.profile.vignette.settings;
defaultVignetteEnabled = ((PostProcessingModel)__instance.profile.vignette).enabled;
defaultBloomSettings = __instance.profile.bloom.settings;
defaultEyeAdaptSettings = __instance.profile.eyeAdaptation.settings;
defaultEyeAdaptEnabled = ((PostProcessingModel)__instance.profile.eyeAdaptation).enabled;
defaultMotionBlurSettings = __instance.profile.motionBlur.settings;
defaultDepthOfFieldSettings = __instance.profile.depthOfField.settings;
defaultColorGradingSettings = __instance.profile.colorGrading.settings;
defaultAOSettings = __instance.profile.ambientOcclusion.settings;
defaultCASettings = __instance.profile.chromaticAberration.settings;
defaultSSRSettings = __instance.profile.screenSpaceReflection.settings;
defaultSSREnabled = ((PostProcessingModel)__instance.profile.screenSpaceReflection).enabled;
defaultPostProcessingSet = true;
}
}
}
[HarmonyPatch(typeof(PostProcessingBehaviour), "OnPreCull")]
private static class PostProcessingBehaviour_OnPreCull_Patch
{
private static void Postfix(ref VignetteComponent ___m_Vignette, ref BloomComponent ___m_Bloom, ref EyeAdaptationComponent ___m_EyeAdaptation, ref DepthOfFieldComponent ___m_DepthOfField, ref MotionBlurComponent ___m_MotionBlur, ref ColorGradingComponent ___m_ColorGrading, ref TaaComponent ___m_Taa, ref FxaaComponent ___m_Fxaa, ref AmbientOcclusionComponent ___m_AmbientOcclusion, ref ChromaticAberrationComponent ___m_ChromaticAberration, ref ScreenSpaceReflectionComponent ___m_ScreenSpaceReflection)
{
//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
//IL_0024: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_005b: Unknown result type (might be due to invalid IL or missing references)
//IL_0060: Unknown result type (might be due to invalid IL or missing references)
//IL_006c: Unknown result type (might be due to invalid IL or missing references)
//IL_0071: Unknown result type (might be due to invalid IL or missing references)
//IL_00a9: Unknown result type (might be due to invalid IL or missing references)
//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
//IL_00b2: Unknown result type (might be due to invalid IL or missing references)
//IL_01c7: Unknown result type (might be due to invalid IL or missing references)
//IL_0113: Unknown result type (might be due to invalid IL or missing references)
//IL_016e: Unknown result type (might be due to invalid IL or missing references)
//IL_0170: Unknown result type (might be due to invalid IL or missing references)
//IL_0174: Unknown result type (might be due to invalid IL or missing references)
//IL_018b: Unknown result type (might be due to invalid IL or missing references)
//IL_018d: Unknown result type (might be due to invalid IL or missing references)
//IL_0191: Unknown result type (might be due to invalid IL or missing references)
//IL_0199: Unknown result type (might be due to invalid IL or missing references)
//IL_019b: Unknown result type (might be due to invalid IL or missing references)
//IL_01a2: Unknown result type (might be due to invalid IL or missing references)
//IL_01a4: Unknown result type (might be due to invalid IL or missing references)
//IL_01a9: Unknown result type (might be due to invalid IL or missing references)
//IL_01ab: Unknown result type (might be due to invalid IL or missing references)
//IL_01b4: Unknown result type (might be due to invalid IL or missing references)
//IL_02e5: Unknown result type (might be due to invalid IL or missing references)
//IL_01f8: Unknown result type (might be due to invalid IL or missing references)
//IL_026b: Unknown result type (might be due to invalid IL or missing references)
//IL_0270: Unknown result type (might be due to invalid IL or missing references)
//IL_02b9: Unknown result type (might be due to invalid IL or missing references)
//IL_02bb: Unknown result type (might be due to invalid IL or missing references)
//IL_02c4: Unknown result type (might be due to invalid IL or missing references)
//IL_037e: Unknown result type (might be due to invalid IL or missing references)
//IL_0325: Unknown result type (might be due to invalid IL or missing references)
//IL_035e: Unknown result type (might be due to invalid IL or missing references)
//IL_0360: Unknown result type (might be due to invalid IL or missing references)
//IL_036a: Unknown result type (might be due to invalid IL or missing references)
//IL_0436: Unknown result type (might be due to invalid IL or missing references)
//IL_03af: Unknown result type (might be due to invalid IL or missing references)
//IL_0400: Unknown result type (might be due to invalid IL or missing references)
//IL_0405: Unknown result type (might be due to invalid IL or missing references)
//IL_040a: Unknown result type (might be due to invalid IL or missing references)
//IL_040c: Unknown result type (might be due to invalid IL or missing references)
//IL_0415: Unknown result type (might be due to invalid IL or missing references)
//IL_061d: Unknown result type (might be due to invalid IL or missing references)
//IL_0475: Unknown result type (might be due to invalid IL or missing references)
//IL_0482: Unknown result type (might be due to invalid IL or missing references)
//IL_0487: Unknown result type (might be due to invalid IL or missing references)
//IL_04f2: Unknown result type (might be due to invalid IL or missing references)
//IL_04f4: Unknown result type (might be due to invalid IL or missing references)
//IL_04f8: Unknown result type (might be due to invalid IL or missing references)
//IL_0564: Unknown result type (might be due to invalid IL or missing references)
//IL_0566: Unknown result type (might be due to invalid IL or missing references)
//IL_056a: Unknown result type (might be due to invalid IL or missing references)
//IL_0577: Unknown result type (might be due to invalid IL or missing references)
//IL_057c: Unknown result type (might be due to invalid IL or missing references)
//IL_0588: Unknown result type (might be due to invalid IL or missing references)
//IL_058d: Unknown result type (might be due to invalid IL or missing references)
//IL_0599: Unknown result type (might be due to invalid IL or missing references)
//IL_059e: Unknown result type (might be due to invalid IL or missing references)
//IL_05b4: Unknown result type (might be due to invalid IL or missing references)
//IL_05b6: Unknown result type (might be due to invalid IL or missing references)
//IL_05ba: Unknown result type (might be due to invalid IL or missing references)
//IL_05c2: Unknown result type (might be due to invalid IL or missing references)
//IL_05c4: Unknown result type (might be due to invalid IL or missing references)
//IL_05cb: Unknown result type (might be due to invalid IL or missing references)
//IL_05cd: Unknown result type (might be due to invalid IL or missing references)
//IL_05d4: Unknown result type (might be due to invalid IL or missing references)
//IL_05d6: Unknown result type (might be due to invalid IL or missing references)
//IL_05e2: Unknown result type (might be due to invalid IL or missing references)
//IL_05e7: Unknown result type (might be due to invalid IL or missing references)
//IL_05f3: Unknown result type (might be due to invalid IL or missing references)
//IL_05f8: Unknown result type (might be due to invalid IL or missing references)
//IL_05fd: Unknown result type (might be due to invalid IL or missing references)
//IL_05ff: Unknown result type (might be due to invalid IL or missing references)
//IL_0609: Unknown result type (might be due to invalid IL or missing references)
//IL_070d: Unknown result type (might be due to invalid IL or missing references)
//IL_064e: Unknown result type (might be due to invalid IL or missing references)
//IL_069f: Unknown result type (might be due to invalid IL or missing references)
//IL_06a4: Unknown result type (might be due to invalid IL or missing references)
//IL_06ed: Unknown result type (might be due to invalid IL or missing references)
//IL_06ef: Unknown result type (might be due to invalid IL or missing references)
//IL_06f9: Unknown result type (might be due to invalid IL or missing references)
//IL_0730: Unknown result type (might be due to invalid IL or missing references)
//IL_0735: Unknown result type (might be due to invalid IL or missing references)
//IL_0742: Unknown result type (might be due to invalid IL or missing references)
//IL_0747: Unknown result type (might be due to invalid IL or missing references)
//IL_086d: Unknown result type (might be due to invalid IL or missing references)
//IL_0880: Unknown result type (might be due to invalid IL or missing references)
//IL_0778: Unknown result type (might be due to invalid IL or missing references)
//IL_0785: Unknown result type (might be due to invalid IL or missing references)
//IL_078a: Unknown result type (might be due to invalid IL or missing references)
//IL_078f: Unknown result type (might be due to invalid IL or missing references)
//IL_0791: Unknown result type (might be due to invalid IL or missing references)
//IL_0795: Unknown result type (might be due to invalid IL or missing references)
//IL_07df: Unknown result type (might be due to invalid IL or missing references)
//IL_07e1: Unknown result type (might be due to invalid IL or missing references)
//IL_07e5: Unknown result type (might be due to invalid IL or missing references)
//IL_07f2: Unknown result type (might be due to invalid IL or missing references)
//IL_07f7: Unknown result type (might be due to invalid IL or missing references)
//IL_07fe: Unknown result type (might be due to invalid IL or missing references)
//IL_0800: Unknown result type (might be due to invalid IL or missing references)
//IL_0807: Unknown result type (might be due to invalid IL or missing references)
//IL_0809: Unknown result type (might be due to invalid IL or missing references)
//IL_080e: Unknown result type (might be due to invalid IL or missing references)
//IL_0810: Unknown result type (might be due to invalid IL or missing references)
//IL_0814: Unknown result type (might be due to invalid IL or missing references)
//IL_0821: Unknown result type (might be due to invalid IL or missing references)
//IL_0826: Unknown result type (might be due to invalid IL or missing references)
//IL_082d: Unknown result type (might be due to invalid IL or missing references)
//IL_082f: Unknown result type (might be due to invalid IL or missing references)
//IL_0836: Unknown result type (might be due to invalid IL or missing references)
//IL_0838: Unknown result type (might be due to invalid IL or missing references)
//IL_083d: Unknown result type (might be due to invalid IL or missing references)
//IL_083f: Unknown result type (might be due to invalid IL or missing references)
//IL_0849: Unknown result type (might be due to invalid IL or missing references)
//IL_0859: Unknown result type (might be due to invalid IL or missing references)
//IL_08e5: Unknown result type (might be due to invalid IL or missing references)
//IL_08ae: Unknown result type (might be due to invalid IL or missing references)
//IL_08c5: Unknown result type (might be due to invalid IL or missing references)
//IL_08c7: Unknown result type (might be due to invalid IL or missing references)
//IL_08d1: Unknown result type (might be due to invalid IL or missing references)
//IL_0a57: Unknown result type (might be due to invalid IL or missing references)
//IL_091e: Unknown result type (might be due to invalid IL or missing references)
//IL_0928: Unknown result type (might be due to invalid IL or missing references)
//IL_0935: Unknown result type (might be due to invalid IL or missing references)
//IL_093a: Unknown result type (might be due to invalid IL or missing references)
//IL_0946: Unknown result type (might be due to invalid IL or missing references)
//IL_094b: Unknown result type (might be due to invalid IL or missing references)
//IL_09b6: Unknown result type (might be due to invalid IL or missing references)
//IL_09b8: Unknown result type (might be due to invalid IL or missing references)
//IL_09c1: Unknown result type (might be due to invalid IL or missing references)
//IL_0a0b: Unknown result type (might be due to invalid IL or missing references)
//IL_0a0d: Unknown result type (might be due to invalid IL or missing references)
//IL_0a16: Unknown result type (might be due to invalid IL or missing references)
//IL_0a2d: Unknown result type (might be due to invalid IL or missing references)
//IL_0a2f: Unknown result type (might be due to invalid IL or missing references)
//IL_0a34: Unknown result type (might be due to invalid IL or missing references)
if (modEnabled.Value && customVignette.Value)
{
Settings val = default(Settings);
val.mode = (Mode)0;
val.opacity = vignetteOpacity.Value;
val.intensity = vignetteIntensity.Value;
val.color = vignetteColor.Value;
val.center = vignetteCenter.Value;
val.smoothness = vignetteSmoothness.Value;
val.roundness = vignetteRoundness.Value;
val.rounded = vignetteRounded.Value;
Settings settings = val;
((PostProcessingComponent<VignetteModel>)(object)___m_Vignette).model.settings = settings;
((PostProcessingModel)((PostProcessingComponent<VignetteModel>)(object)___m_Vignette).model).enabled = true;
}
else
{
((PostProcessingComponent<VignetteModel>)(object)___m_Vignette).model.settings = defaultVignetteSettings;
((PostProcessingModel)((PostProcessingComponent<VignetteModel>)(object)___m_Vignette).model).enabled = defaultVignetteEnabled;
}
if (modEnabled.Value && customBloom.Value)
{
BloomSettings val2 = default(BloomSettings);
val2.intensity = bloomIntensity.Value;
val2.threshold = bloomThreshold.Value;
val2.softKnee = bloomSoftKnee.Value;
val2.radius = bloomRadius.Value;
val2.antiFlicker = bloomAntiFlicker.Value;
BloomSettings bloom = val2;
LensDirtSettings val3 = default(LensDirtSettings);
val3.intensity = bloomLensDirtIntensity.Value;
LensDirtSettings lensDirt = val3;
Settings val4 = default(Settings);
val4.bloom = bloom;
val4.lensDirt = lensDirt;
Settings settings2 = val4;
((PostProcessingComponent<BloomModel>)(object)___m_Bloom).model.settings = settings2;
}
else
{
((PostProcessingComponent<BloomModel>)(object)___m_Bloom).model.settings = defaultBloomSettings;
}
if (modEnabled.Value && customEyeAdapt.Value)
{
Settings val5 = default(Settings);
val5.lowPercent = eyeAdaptLowPercent.Value;
val5.highPercent = eyeAdaptHighPercent.Value;
val5.minLuminance = eyeAdaptMinLuminance.Value;
val5.maxLuminance = eyeAdaptMaxLuminance.Value;
val5.keyValue = eyeAdaptKeyValue.Value;
val5.dynamicKeyValue = eyeAdaptDynamicKeyValue.Value;
val5.adaptationType = eyeAdaptAdaptationType.Value;
val5.speedUp = eyeAdaptSpeedUp.Value;
val5.speedDown = eyeAdaptSpeedDown.Value;
val5.logMin = eyeAdaptLogMin.Value;
val5.logMax = eyeAdaptLogMax.Value;
Settings settings3 = val5;
((PostProcessingComponent<EyeAdaptationModel>)(object)___m_EyeAdaptation).model.settings = settings3;
((PostProcessingModel)((PostProcessingComponent<EyeAdaptationModel>)(object)___m_EyeAdaptation).model).enabled = true;
}
else
{
((PostProcessingComponent<EyeAdaptationModel>)(object)___m_EyeAdaptation).model.settings = defaultEyeAdaptSettings;
((PostProcessingModel)((PostProcessingComponent<EyeAdaptationModel>)(object)___m_EyeAdaptation).model).enabled = defaultEyeAdaptEnabled;
}
if (modEnabled.Value && customMotionBlur.Value)
{
Settings val6 = default(Settings);
val6.shutterAngle = motionBlurShutterAngle.Value;
val6.sampleCount = motionBlurSampleCount.Value;
val6.frameBlending = motionBlurFrameBlending.Value;
Settings settings4 = val6;
((PostProcessingComponent<MotionBlurModel>)(object)___m_MotionBlur).model.settings = settings4;
}
else
{
((PostProcessingComponent<MotionBlurModel>)(object)___m_MotionBlur).model.settings = defaultMotionBlurSettings;
}
if (modEnabled.Value && customDepthOfField.Value)
{
Settings val7 = default(Settings);
val7.focusDistance = depthOfFieldFocusDistance.Value;
val7.aperture = depthOfFieldAperture.Value;
val7.focalLength = depthOfFieldFocalLength.Value;
val7.useCameraFov = depthOfFieldUseCameraFov.Value;
val7.kernelSize = depthOfFieldKernelSize.Value;
Settings settings5 = val7;
((PostProcessingComponent<DepthOfFieldModel>)(object)___m_DepthOfField).model.settings = settings5;
((PostProcessingModel)((PostProcessingComponent<DepthOfFieldModel>)(object)___m_DepthOfField).model).enabled = true;
}
else
{
((PostProcessingComponent<DepthOfFieldModel>)(object)___m_DepthOfField).model.settings = defaultDepthOfFieldSettings;
((PostProcessingModel)((PostProcessingComponent<DepthOfFieldModel>)(object)___m_DepthOfField).model).enabled = false;
}
if (modEnabled.Value && customColorGrading.Value)
{
TonemappingSettings val8 = default(TonemappingSettings);
val8.tonemapper = colorGradingTonemapper.Value;
val8.neutralBlackIn = colorGradingNeutralBlackIn.Value;
val8.neutralWhiteIn = colorGradingNeutralWhiteIn.Value;
val8.neutralBlackOut = colorGradingNeutralBlackOut.Value;
val8.neutralWhiteOut = colorGradingNeutralWhiteOut.Value;
val8.neutralWhiteLevel = colorGradingNeutralWhiteLevel.Value;
val8.neutralWhiteClip = colorGradingNeutralWhiteClip.Value;
TonemappingSettings tonemapping = val8;
BasicSettings val9 = default(BasicSettings);
val9.postExposure = colorGradingPostExposure.Value;
val9.temperature = colorGradingTemperature.Value;
val9.tint = colorGradingTint.Value;
val9.hueShift = colorGradingHueShift.Value;
val9.saturation = colorGradingSaturation.Value;
val9.contrast = colorGradingContrast.Value;
BasicSettings basic = val9;
ChannelMixerSettings val10 = default(ChannelMixerSettings);
val10.red = colorGradingChannelMixerRed.Value;
val10.green = colorGradingChannelMixerGreen.Value;
val10.blue = colorGradingChannelMixerBlue.Value;
val10.currentEditingChannel = colorGradingChannelMixerCurrentEditingChannel.Value;
ChannelMixerSettings channelMixer = val10;
Settings val11 = default(Settings);
val11.tonemapping = tonemapping;
val11.basic = basic;
val11.channelMixer = channelMixer;
val11.colorWheels = defaultColorGradingSettings.colorWheels;
val11.curves = defaultColorGradingSettings.curves;
Settings settings6 = val11;
((PostProcessingComponent<ColorGradingModel>)(object)___m_ColorGrading).model.settings = settings6;
}
else
{
((PostProcessingComponent<ColorGradingModel>)(object)___m_ColorGrading).model.settings = defaultColorGradingSettings;
}
if (modEnabled.Value && customAO.Value)
{
Settings val12 = default(Settings);
val12.intensity = AOIntensity.Value;
val12.intensityFar = AOIntensityFar.Value;
val12.farDistance = AOFarDistance.Value;
val12.radius = AORadius.Value;
val12.sampleCount = AOSampleCount.Value;
val12.downsampling = AODownsampling.Value;
val12.forceForwardCompatibility = AOForceForwardCompatibility.Value;
val12.ambientOnly = AOAmbientOnly.Value;
val12.highPrecision = AOHighPrecision.Value;
Settings settings7 = val12;
((PostProcessingComponent<AmbientOcclusionModel>)(object)___m_AmbientOcclusion).model.settings = settings7;
}
else
{
((PostProcessingComponent<AmbientOcclusionModel>)(object)___m_AmbientOcclusion).model.settings = defaultAOSettings;
}
if (!defaultAASet)
{
defaultAATaaSettings = ((PostProcessingComponent<AntialiasingModel>)(object)___m_Taa).model.settings;
defaultAAFxaaSettings = ((PostProcessingComponent<AntialiasingModel>)(object)___m_Fxaa).model.settings;
defaultAASet = true;
}
if (modEnabled.Value && customAA.Value)
{
FxaaSettings val13 = default(FxaaSettings);
val13.preset = AAFxaaPreset.Value;
FxaaSettings fxaaSettings = val13;
TaaSettings val14 = default(TaaSettings);
val14.jitterSpread = AAJitterSpread.Value;
val14.sharpen = AASharpen.Value;
val14.stationaryBlending = AAStationaryBlending.Value;
val14.motionBlending = AAMotionBlending.Value;
TaaSettings taaSettings = val14;
Settings val15 = default(Settings);
val15.method = AAMethod.Value;
val15.fxaaSettings = fxaaSettings;
val15.taaSettings = taaSettings;
Settings settings8 = val15;
val15 = default(Settings);
val15.method = AAMethod.Value;
val15.fxaaSettings = fxaaSettings;
val15.taaSettings = taaSettings;
Settings settings9 = val15;
((PostProcessingComponent<AntialiasingModel>)(object)___m_Taa).model.settings = settings8;
((PostProcessingComponent<AntialiasingModel>)(object)___m_Fxaa).model.settings = settings9;
}
else
{
((PostProcessingComponent<AntialiasingModel>)(object)___m_Taa).model.settings = defaultAATaaSettings;
((PostProcessingComponent<AntialiasingModel>)(object)___m_Fxaa).model.settings = defaultAAFxaaSettings;
}
if (modEnabled.Value && customCA.Value)
{
Settings val16 = default(Settings);
val16.intensity = CAIntensity.Value;
Settings settings10 = val16;
((PostProcessingComponent<ChromaticAberrationModel>)(object)___m_ChromaticAberration).model.settings = settings10;
}
else
{
((PostProcessingComponent<ChromaticAberrationModel>)(object)___m_ChromaticAberration).model.settings = defaultCASettings;
}
if (modEnabled.Value && customSSR.Value)
{
((PostProcessingComponent<ScreenSpaceReflectionModel>)(object)___m_ScreenSpaceReflection).model.settings = new Settings
{
reflection = new ReflectionSettings
{
blendType = SSRBlendType.Value,
reflectionQuality = SSRReflectionQuality.Value,
maxDistance = SSRMaxDistance.Value,
iterationCount = SSRIteractionCount.Value,
stepSize = SSRStepSize.Value,
widthModifier = SSRWidthModifier.Value,
reflectionBlur = SSRReflectionBlur.Value,
reflectBackfaces = SSRReflectBackFaces.Value
},
intensity = new IntensitySettings
{
reflectionMultiplier = SSRReflectionMultiplier.Value,
fadeDistance = SSRFadeDistance.Value,
fresnelFade = SSRFresnelFade.Value,
fresnelFadePower = SSRFresnelFadePower.Value
},
screenEdgeMask = new ScreenEdgeMask
{
intensity = SSRMaskIntensity.Value
}
};
((PostProcessingModel)((PostProcessingComponent<ScreenSpaceReflectionModel>)(object)___m_ScreenSpaceReflection).model).enabled = true;
}
else
{
((PostProcessingComponent<ScreenSpaceReflectionModel>)(object)___m_ScreenSpaceReflection).model.settings = defaultSSRSettings;
((PostProcessingModel)((PostProcessingComponent<ScreenSpaceReflectionModel>)(object)___m_ScreenSpaceReflection).model).enabled = defaultSSREnabled;
}
}
}
private static bool defaultPostProcessingSet = false;
private static Settings defaultVignetteSettings;
private static bool defaultVignetteEnabled;
private static Settings defaultBloomSettings;
private static Settings defaultEyeAdaptSettings;
private static bool defaultEyeAdaptEnabled;
private static Settings defaultMotionBlurSettings;
private static Settings defaultDepthOfFieldSettings;
private static Settings defaultColorGradingSettings;
private static Settings defaultAOSettings;
private static Settings defaultCASettings;
private static Settings defaultSSRSettings;
private static bool defaultSSREnabled;
private static bool defaultAASet = false;
private static Settings defaultAATaaSettings;
private static Settings defaultAAFxaaSettings;
private static readonly bool isDebug = true;
private static BepInExPlugin context;
public static ConfigEntry<bool> modEnabled;
public static ConfigEntry<int> nexusID;
public static ConfigEntry<string> hotKey;
public static ConfigEntry<bool> customVignette;
public static ConfigEntry<bool> customBloom;
public static ConfigEntry<bool> customEyeAdapt;
public static ConfigEntry<bool> customMotionBlur;
public static ConfigEntry<bool> customColorGrading;
public static ConfigEntry<bool> customDepthOfField;
public static ConfigEntry<bool> customAA;
public static ConfigEntry<bool> customAO;
public static ConfigEntry<bool> customCA;
public static ConfigEntry<bool> customSSR;
public static ConfigEntry<Color> vignetteColor;
public static ConfigEntry<float> vignetteOpacity;
public static ConfigEntry<float> vignetteIntensity;
public static ConfigEntry<Vector2> vignetteCenter;
public static ConfigEntry<float> vignetteSmoothness;
public static ConfigEntry<float> vignetteRoundness;
public static ConfigEntry<bool> vignetteRounded;
public static ConfigEntry<float> bloomIntensity;
public static ConfigEntry<float> bloomThreshold;
public static ConfigEntry<float> bloomSoftKnee;
public static ConfigEntry<float> bloomRadius;
public static ConfigEntry<bool> bloomAntiFlicker;
public static ConfigEntry<float> bloomLensDirtIntensity;
public static ConfigEntry<float> eyeAdaptLowPercent;
public static ConfigEntry<float> eyeAdaptHighPercent;
public static ConfigEntry<float> eyeAdaptMinLuminance;
public static ConfigEntry<float> eyeAdaptMaxLuminance;
public static ConfigEntry<float> eyeAdaptKeyValue;
public static ConfigEntry<bool> eyeAdaptDynamicKeyValue;
public static ConfigEntry<EyeAdaptationType> eyeAdaptAdaptationType;
public static ConfigEntry<float> eyeAdaptSpeedUp;
public static ConfigEntry<float> eyeAdaptSpeedDown;
public static ConfigEntry<int> eyeAdaptLogMin;
public static ConfigEntry<int> eyeAdaptLogMax;
public static ConfigEntry<float> motionBlurShutterAngle;
public static ConfigEntry<int> motionBlurSampleCount;
public static ConfigEntry<float> motionBlurFrameBlending;
public static ConfigEntry<float> depthOfFieldFocusDistance;
public static ConfigEntry<float> depthOfFieldAperture;
public static ConfigEntry<float> depthOfFieldFocalLength;
public static ConfigEntry<bool> depthOfFieldUseCameraFov;
public static ConfigEntry<KernelSize> depthOfFieldKernelSize;
public static ConfigEntry<Tonemapper> colorGradingTonemapper;
public static ConfigEntry<Vector3> colorGradingChannelMixerRed;
public static ConfigEntry<Vector3> colorGradingChannelMixerGreen;
public static ConfigEntry<Vector3> colorGradingChannelMixerBlue;
public static ConfigEntry<int> colorGradingChannelMixerCurrentEditingChannel;
public static ConfigEntry<float> colorGradingNeutralBlackIn;
public static ConfigEntry<float> colorGradingNeutralWhiteIn;
public static ConfigEntry<float> colorGradingNeutralBlackOut;
public static ConfigEntry<float> colorGradingNeutralWhiteOut;
public static ConfigEntry<float> colorGradingNeutralWhiteLevel;
public static ConfigEntry<float> colorGradingNeutralWhiteClip;
public static ConfigEntry<float> colorGradingPostExposure;
public static ConfigEntry<float> colorGradingTemperature;
public static ConfigEntry<float> colorGradingTint;
public static ConfigEntry<float> colorGradingHueShift;
public static ConfigEntry<float> colorGradingSaturation;
public static ConfigEntry<float> colorGradingContrast;
public static ConfigEntry<Method> AAMethod;
public static ConfigEntry<FxaaPreset> AAFxaaPreset;
public static ConfigEntry<float> AAJitterSpread;
public static ConfigEntry<float> AASharpen;
public static ConfigEntry<float> AAStationaryBlending;
public static ConfigEntry<float> AAMotionBlending;
public static ConfigEntry<float> AOIntensity;
public static ConfigEntry<float> AOIntensityFar;
public static ConfigEntry<float> AOFarDistance;
public static ConfigEntry<float> AORadius;
public static ConfigEntry<SampleCount> AOSampleCount;
public static ConfigEntry<bool> AODownsampling;
public static ConfigEntry<bool> AOForceForwardCompatibility;
public static ConfigEntry<bool> AOAmbientOnly;
public static ConfigEntry<bool> AOHighPrecision;
public static ConfigEntry<float> CAIntensity;
public static ConfigEntry<SSRReflectionBlendType> SSRBlendType;
public static ConfigEntry<SSRResolution> SSRReflectionQuality;
public static ConfigEntry<float> SSRMaxDistance;
public static ConfigEntry<int> SSRIteractionCount;
public static ConfigEntry<int> SSRStepSize;
public static ConfigEntry<float> SSRWidthModifier;
public static ConfigEntry<float> SSRReflectionBlur;
public static ConfigEntry<bool> SSRReflectBackFaces;
public static ConfigEntry<float> SSRReflectionMultiplier;
public static ConfigEntry<float> SSRFadeDistance;
public static ConfigEntry<float> SSRFresnelFade;
public static ConfigEntry<float> SSRFresnelFadePower;
public static ConfigEntry<float> SSRMaskIntensity;
public static void Dbgl(string str = "", bool pref = true)
{
if (isDebug)
{
Debug.Log((object)((pref ? (typeof(BepInExPlugin).Namespace + " ") : "") + str));
}
}
private void Awake()
{
//IL_01d3: Unknown result type (might be due to invalid IL or missing references)
//IL_0249: Unknown result type (might be due to invalid IL or missing references)
//IL_066a: Unknown result type (might be due to invalid IL or missing references)
//IL_069d: Unknown result type (might be due to invalid IL or missing references)
//IL_06d0: Unknown result type (might be due to invalid IL or missing references)
context = this;
modEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("_General", "Enabled", true, "Enable this mod");
hotKey = ((BaseUnityPlugin)this).Config.Bind<string>("_Options", "HotKey", "[0]", "Key to toggle mod");
nexusID = ((BaseUnityPlugin)this).Config.Bind<int>("General", "NexusID", 1587, "Nexus mod ID for updates");
customVignette = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customVignette", false, "customVignette");
customBloom = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customBloom", false, "customBloom");
customEyeAdapt = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customEyeAdapt", false, "customEyeAdapt");
customMotionBlur = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customMotionBlur", false, "customMotionBlur");
customColorGrading = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customColorGrading", false, "customColorGrading");
customDepthOfField = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customDepthOfField", false, "customDepthOfField");
customAA = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customAA", false, "customAA");
customAO = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customAO", false, "customAO");
customCA = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customCA", false, "customCA");
customSSR = ((BaseUnityPlugin)this).Config.Bind<bool>("_Settings", "customSSR", false, "customSSR");
vignetteColor = ((BaseUnityPlugin)this).Config.Bind<Color>("VignetteSettings", "vignetteColor", new Color(0f, 0f, 0f, 1f), "vignetteColor");
vignetteOpacity = ((BaseUnityPlugin)this).Config.Bind<float>("VignetteSettings", "vignetteOpacity", 1f, "vignetteOpacity");
vignetteIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("VignetteSettings", "vignetteIntensity", 0.45f, "vignetteIntensity");
vignetteCenter = ((BaseUnityPlugin)this).Config.Bind<Vector2>("VignetteSettings", "vignetteCenter", new Vector2(0.5f, 0.5f), "vignetteCenter");
vignetteSmoothness = ((BaseUnityPlugin)this).Config.Bind<float>("VignetteSettings", "vignetteSmoothness", 0.2f, "vignetteSmoothness");
vignetteRoundness = ((BaseUnityPlugin)this).Config.Bind<float>("VignetteSettings", "vignetteRoundness", 1f, "vignetteRoundness");
vignetteRounded = ((BaseUnityPlugin)this).Config.Bind<bool>("VignetteSettings", "vignetteRounded", false, "vignetteRounded");
bloomIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("BloomSettings", "bloomIntensity", 0.3f, "bloomIntensity");
bloomThreshold = ((BaseUnityPlugin)this).Config.Bind<float>("BloomSettings", "bloomThreshold", 0.7f, "bloomThreshold");
bloomSoftKnee = ((BaseUnityPlugin)this).Config.Bind<float>("BloomSettings", "bloomSoftKnee", 0.7f, "bloomSoftKnee");
bloomRadius = ((BaseUnityPlugin)this).Config.Bind<float>("BloomSettings", "bloomRadius", 5f, "bloomRadius");
bloomAntiFlicker = ((BaseUnityPlugin)this).Config.Bind<bool>("BloomSettings", "bloomAntiFlicker", true, "bloomAntiFlicker");
bloomLensDirtIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("BloomSettings", "bloomLensDirtIntensity", 10.4f, "bloomLensDirtIntensity");
eyeAdaptLowPercent = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptLowPercent", 12.2743f, "eyeAdaptLowPercent");
eyeAdaptHighPercent = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptHighPercent", 87.7257f, "eyeAdaptHighPercent");
eyeAdaptMinLuminance = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptMinLuminance", -4f, "eyeAdaptMinLuminance");
eyeAdaptMaxLuminance = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptMaxLuminance", -1f, "eyeAdaptMaxLuminance");
eyeAdaptKeyValue = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptKeyValue", 0.14f, "eyeAdaptKeyValue");
eyeAdaptDynamicKeyValue = ((BaseUnityPlugin)this).Config.Bind<bool>("EyeAdaptSettings", "eyeAdaptDynamicKeyValue", false, "eyeAdaptDynamicKeyValue");
eyeAdaptAdaptationType = ((BaseUnityPlugin)this).Config.Bind<EyeAdaptationType>("EyeAdaptSettings", "eyeAdaptAdaptationType", (EyeAdaptationType)1, "eyeAdaptAdaptationType");
eyeAdaptSpeedUp = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptSpeedUp", 4f, "eyeAdaptSpeedUp");
eyeAdaptSpeedDown = ((BaseUnityPlugin)this).Config.Bind<float>("EyeAdaptSettings", "eyeAdaptSpeedDown", 4f, "eyeAdaptSpeedDown");
eyeAdaptLogMin = ((BaseUnityPlugin)this).Config.Bind<int>("EyeAdaptSettings", "eyeAdaptLogMin", -8, "eyeAdaptLogMin");
eyeAdaptLogMax = ((BaseUnityPlugin)this).Config.Bind<int>("EyeAdaptSettings", "eyeAdaptLogMax", 4, "eyeAdaptLogMax");
motionBlurShutterAngle = ((BaseUnityPlugin)this).Config.Bind<float>("MotionBlurSettings", "motionBlurShutterAngle", 150f, "motionBlurShutterAngle");
motionBlurSampleCount = ((BaseUnityPlugin)this).Config.Bind<int>("MotionBlurSettings", "motionBlurSampleCount", 10, "motionBlurSampleCount");
motionBlurFrameBlending = ((BaseUnityPlugin)this).Config.Bind<float>("MotionBlurSettings", "motionBlurFrameBlending", 0f, "motionBlurFrameBlending");
depthOfFieldFocusDistance = ((BaseUnityPlugin)this).Config.Bind<float>("DOFSettings", "depthOfFieldFocusDistance", 35.96f, "depthOfFieldFocusDistance");
depthOfFieldAperture = ((BaseUnityPlugin)this).Config.Bind<float>("DOFSettings", "depthOfFieldAperture", 1f, "depthOfFieldAperture");
depthOfFieldFocalLength = ((BaseUnityPlugin)this).Config.Bind<float>("DOFSettings", "depthOfFieldFocalLength", 70f, "depthOfFieldFocalLength");
depthOfFieldUseCameraFov = ((BaseUnityPlugin)this).Config.Bind<bool>("DOFSettings", "depthOfFieldUseCameraFov", false, "depthOfFieldUseCameraFov");
depthOfFieldKernelSize = ((BaseUnityPlugin)this).Config.Bind<KernelSize>("DOFSettings", "depthOfFieldKernelSize", (KernelSize)1, "depthOfFieldKernelSize");
colorGradingTonemapper = ((BaseUnityPlugin)this).Config.Bind<Tonemapper>("ColorGradingSettings", "colorGradingTonemapper", (Tonemapper)1, "colorGradingTonemapper");
colorGradingChannelMixerRed = ((BaseUnityPlugin)this).Config.Bind<Vector3>("ColorGradingSettings", "colorGradingChannelMixerRed", new Vector3(1f, 0f, 0f), "colorGradingChannelMixerRed");
colorGradingChannelMixerGreen = ((BaseUnityPlugin)this).Config.Bind<Vector3>("ColorGradingSettings", "colorGradingChannelMixerGreen", new Vector3(0f, 1f, 0f), "colorGradingChannelMixerGreen");
colorGradingChannelMixerBlue = ((BaseUnityPlugin)this).Config.Bind<Vector3>("ColorGradingSettings", "colorGradingChannelMixerBlue", new Vector3(0f, 0f, 1f), "colorGradingChannelMixerBlue");
colorGradingChannelMixerCurrentEditingChannel = ((BaseUnityPlugin)this).Config.Bind<int>("ColorGradingSettings", "colorGradingChannelMixerCurrentEditingChannel", 0, "colorGradingChannelMixerCurrentEditingChannel");
colorGradingNeutralBlackIn = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralBlackIn", 0.02f, "colorGradingNeutralBlackIn");
colorGradingNeutralWhiteIn = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralWhiteIn", 10f, "colorGradingNeutralWhiteIn");
colorGradingNeutralBlackOut = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralBlackOut", 0f, "colorGradingNeutralBlackOut");
colorGradingNeutralWhiteOut = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralWhiteOut", 10f, "colorGradingNeutralWhiteOut");
colorGradingNeutralWhiteLevel = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralWhiteLevel", 5.3f, "colorGradingNeutralWhiteLevel");
colorGradingNeutralWhiteClip = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingNeutralWhiteClip", 10f, "colorGradingNeutralWhiteClip");
colorGradingPostExposure = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingPostExposure", 1f, "colorGradingPostExposure");
colorGradingTemperature = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingTemperature", -8f, "colorGradingTemperature");
colorGradingTint = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingTint", 0f, "colorGradingTint");
colorGradingHueShift = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingHueShift", 0f, "colorGradingHueShift");
colorGradingSaturation = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingSaturation", 1f, "colorGradingSaturation");
colorGradingContrast = ((BaseUnityPlugin)this).Config.Bind<float>("ColorGradingSettings", "colorGradingContrast", 1.2f, "colorGradingContrast");
AAMethod = ((BaseUnityPlugin)this).Config.Bind<Method>("AASettings", "AAMethod", (Method)0, "AAMethod");
AAFxaaPreset = ((BaseUnityPlugin)this).Config.Bind<FxaaPreset>("AASettings", "AAFxaaPreset", (FxaaPreset)4, "AAFxaaPreset");
AAJitterSpread = ((BaseUnityPlugin)this).Config.Bind<float>("AASettings", "AAJitterSpread", 0.2f, "AAJitterSpread");
AASharpen = ((BaseUnityPlugin)this).Config.Bind<float>("AASettings", "AASharpen", 0.3f, "AASharpen");
AAStationaryBlending = ((BaseUnityPlugin)this).Config.Bind<float>("AASettings", "AAStationaryBlending", 0.95f, "AAStationaryBlending");
AAMotionBlending = ((BaseUnityPlugin)this).Config.Bind<float>("AASettings", "AAMotionBlending", 0.85f, "AAMotionBlending");
AOIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("AOSettings", "AOIntensity", 1f, "AOIntensity");
AOIntensityFar = ((BaseUnityPlugin)this).Config.Bind<float>("AOSettings", "AOIntensityFar", 1.5f, "AOIntensityFar");
AOFarDistance = ((BaseUnityPlugin)this).Config.Bind<float>("AOSettings", "AOFarDistance", 150f, "AOFarDistance");
AORadius = ((BaseUnityPlugin)this).Config.Bind<float>("AOSettings", "AORadius", 0.15f, "AORadius");
AOSampleCount = ((BaseUnityPlugin)this).Config.Bind<SampleCount>("AOSettings", "AOSampleCount", (SampleCount)10, "AOSampleCount");
AODownsampling = ((BaseUnityPlugin)this).Config.Bind<bool>("AOSettings", "AODownsampling", false, "AODownsampling");
AOForceForwardCompatibility = ((BaseUnityPlugin)this).Config.Bind<bool>("AOSettings", "AOForceForwardCompatibility", false, "AOForceForwardCompatibility");
AOAmbientOnly = ((BaseUnityPlugin)this).Config.Bind<bool>("AOSettings", "AOAmbientOnly", false, "AOAmbientOnly");
AOHighPrecision = ((BaseUnityPlugin)this).Config.Bind<bool>("AOSettings", "AOHighPrecision", false, "AOHighPrecision");
CAIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("CASettings", "CAIntensity", 0.1f, "CAIntensity");
SSRBlendType = ((BaseUnityPlugin)this).Config.Bind<SSRReflectionBlendType>("ReflectionSettings", "SSRBlendType", (SSRReflectionBlendType)0, "SSRBlendType");
SSRReflectionQuality = ((BaseUnityPlugin)this).Config.Bind<SSRResolution>("ReflectionSettings", "SSRReflectionQuality", (SSRResolution)2, "SSRReflectionQuality");
SSRMaxDistance = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRMaxDistance", 100f, "SSRMaxDistance");
SSRIteractionCount = ((BaseUnityPlugin)this).Config.Bind<int>("ReflectionSettings", "SSRIteractionCount", 256, "SSRIteractionCount");
SSRStepSize = ((BaseUnityPlugin)this).Config.Bind<int>("ReflectionSettings", "SSRStepSize", 3, "SSRStepSize");
SSRWidthModifier = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRWidthModifier", 0.5f, "SSRWidthModifier");
SSRReflectionBlur = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRReflectionBlur", 1f, "SSRReflectionBlur");
SSRReflectBackFaces = ((BaseUnityPlugin)this).Config.Bind<bool>("ReflectionSettings", "SSRReflectBackFaces", true, "SSRReflectBackFaces");
SSRReflectionMultiplier = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRReflectionMultiplier", 0.93f, "SSRReflectionMultiplier");
SSRFadeDistance = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRFadeDistance", 100f, "SSRFadeDistance");
SSRFresnelFade = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRFresnelFade", 1f, "SSRFresnelFade");
SSRFresnelFadePower = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRFresnelFadePower", 1f, "SSRFresnelFadePower");
SSRMaskIntensity = ((BaseUnityPlugin)this).Config.Bind<float>("ReflectionSettings", "SSRMaskIntensity", 0.03f, "SSRMaskIntensity");
Harmony.CreateAndPatchAll(Assembly.GetExecutingAssembly(), MetadataHelper.GetMetadata((object)this).GUID);
}
private void Update()
{
if (AedenthornUtils.CheckKeyDown(hotKey.Value))
{
modEnabled.Value = !modEnabled.Value;
}
}
}