Decompiled source of Fiddlesticks Playermodel Pack v0.3.0

Fiddlesticks Playermodel Pack.dll

Decompiled a month ago
using System;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using LethalConfig;
using LethalConfig.ConfigItems;
using LethalConfig.ConfigItems.Options;
using LethalNetworkAPI;
using Microsoft.CodeAnalysis;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: IgnoresAccessChecksTo("Assembly-CSharp")]
[assembly: AssemblyCompany("Fiddlesticks Playermodel Pack")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("Fiddlesticks Playermodel Pack")]
[assembly: AssemblyTitle("Fiddlesticks Playermodel Pack")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableAttribute : Attribute
	{
		public readonly byte[] NullableFlags;

		public NullableAttribute(byte P_0)
		{
			NullableFlags = new byte[1] { P_0 };
		}

		public NullableAttribute(byte[] P_0)
		{
			NullableFlags = P_0;
		}
	}
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableContextAttribute : Attribute
	{
		public readonly byte Flag;

		public NullableContextAttribute(byte P_0)
		{
			Flag = P_0;
		}
	}
}
namespace ModelReplacement
{
	public class FIDDLE_SUIT : BodyReplacementBase
	{
		public static LethalNetworkVariable<int> FiddleSkinValueNAPI_MODEL = new LethalNetworkVariable<int>("FiddleSkinValueNAPI_MODEL")
		{
			Value = (int)Plugin.FiddleSkin.Value
		};

		public static LethalNetworkVariable<int> BaseFiddleModeNAPI = new LethalNetworkVariable<int>("BaseFiddleModeNAPI")
		{
			Value = (int)Plugin.BaseFiddleMode.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleTongueNAPI = new LethalNetworkVariable<bool>("BaseFiddleTongueNAPI")
		{
			Value = Plugin.BaseFiddleTongue.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleTeethNAPI = new LethalNetworkVariable<bool>("BaseFiddleTeethNAPI")
		{
			Value = Plugin.BaseFiddleTeeth.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleFeathersNAPI = new LethalNetworkVariable<bool>("BaseFiddleFeathersNAPI")
		{
			Value = Plugin.BaseFiddleFeathers.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleDemonNAPI = new LethalNetworkVariable<bool>("BaseFiddleDemonNAPI")
		{
			Value = Plugin.BaseFiddleDemon.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleArmLNAPI = new LethalNetworkVariable<bool>("BaseFiddleArmLNAPI")
		{
			Value = Plugin.BaseFiddleArmL.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleArmRNAPI = new LethalNetworkVariable<bool>("BaseFiddleArmRNAPI")
		{
			Value = Plugin.BaseFiddleArmR.Value
		};

		public static LethalNetworkVariable<bool> BaseFiddleGlowNAPI = new LethalNetworkVariable<bool>("BaseFiddleGlowNAPI")
		{
			Value = Plugin.BaseFiddleGlow.Value
		};

		public static LethalNetworkVariable<int> SpectralFiddleModeNAPI = new LethalNetworkVariable<int>("SpectralFiddleModeNAPI")
		{
			Value = (int)Plugin.SpectralFiddleMode.Value
		};

		public static LethalNetworkVariable<bool> SpectralFiddleTongueNAPI = new LethalNetworkVariable<bool>("SpectralFiddleTongueNAPI")
		{
			Value = Plugin.SpectralFiddleTongue.Value
		};

		public static LethalNetworkVariable<bool> SpectralFiddleCandlesNAPI = new LethalNetworkVariable<bool>("SpectralFiddleCandlesNAPI")
		{
			Value = Plugin.SpectralFiddleCandles.Value
		};

		public static LethalNetworkVariable<int> SpectralFiddleMaidenNAPI = new LethalNetworkVariable<int>("SpectralFiddleMaidenNAPI")
		{
			Value = (int)Plugin.SpectralFiddleMaiden.Value
		};

		public static LethalNetworkVariable<bool> SpectralFiddleArmLNAPI = new LethalNetworkVariable<bool>("SpectralFiddleArmLNAPI")
		{
			Value = Plugin.SpectralFiddleArmL.Value
		};

		public static LethalNetworkVariable<bool> SpectralFiddleArmRNAPI = new LethalNetworkVariable<bool>("SpectralFiddleArmRNAPI")
		{
			Value = Plugin.SpectralFiddleArmR.Value
		};

		public static LethalNetworkVariable<bool> SpectralFiddleGlowNAPI = new LethalNetworkVariable<bool>("SpectralFiddleGlowNAPI")
		{
			Value = Plugin.SpectralFiddleGlow.Value
		};

		public static LethalNetworkVariable<int> GentFiddleModeNAPI = new LethalNetworkVariable<int>("GentFiddleModeNAPI")
		{
			Value = (int)Plugin.GentFiddleMode.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleTongueNAPI = new LethalNetworkVariable<bool>("GentFiddleTongueNAPI")
		{
			Value = Plugin.GentFiddleTongue.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleTeethNAPI = new LethalNetworkVariable<bool>("GentFiddleTeethNAPI")
		{
			Value = Plugin.GentFiddleTeeth.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleStacheNAPI = new LethalNetworkVariable<bool>("GentFiddleStacheNAPI")
		{
			Value = Plugin.GentFiddleStache.Value
		};

		public static LethalNetworkVariable<int> GentFiddleStacheColorNAPI = new LethalNetworkVariable<int>("GentFiddleStacheColorNAPI")
		{
			Value = (int)Plugin.GentFiddleStacheColor.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleGoateeNAPI = new LethalNetworkVariable<bool>("GentFiddleGoateeNAPI")
		{
			Value = Plugin.GentFiddleGoatee.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleMonocleNAPI = new LethalNetworkVariable<bool>("GentFiddleMonocleNAPI")
		{
			Value = Plugin.GentFiddleMonocle.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleArmLNAPI = new LethalNetworkVariable<bool>("GentFiddleArmLNAPI")
		{
			Value = Plugin.GentFiddleArmL.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleArmRNAPI = new LethalNetworkVariable<bool>("GentFiddleArmRNAPI")
		{
			Value = Plugin.GentFiddleArmR.Value
		};

		public static LethalNetworkVariable<bool> GentFiddleGlowNAPI = new LethalNetworkVariable<bool>("GentFiddleGlowNAPI")
		{
			Value = Plugin.GentFiddleGlow.Value
		};

		public void Update()
		{
			Plugin.FiddleSkin.SettingChanged += delegate
			{
				FiddleSkinValueNAPI_MODEL.Value = (int)Plugin.FiddleSkin.Value;
			};
			Plugin.BaseFiddleMode.SettingChanged += delegate
			{
				BaseFiddleModeNAPI.Value = (int)Plugin.BaseFiddleMode.Value;
			};
			Plugin.BaseFiddleTongue.SettingChanged += delegate
			{
				BaseFiddleTongueNAPI.Value = Plugin.BaseFiddleTongue.Value;
			};
			Plugin.BaseFiddleTeeth.SettingChanged += delegate
			{
				BaseFiddleTeethNAPI.Value = Plugin.BaseFiddleTeeth.Value;
			};
			Plugin.BaseFiddleFeathers.SettingChanged += delegate
			{
				BaseFiddleFeathersNAPI.Value = Plugin.BaseFiddleFeathers.Value;
			};
			Plugin.BaseFiddleDemon.SettingChanged += delegate
			{
				BaseFiddleDemonNAPI.Value = Plugin.BaseFiddleDemon.Value;
			};
			Plugin.BaseFiddleArmL.SettingChanged += delegate
			{
				BaseFiddleArmLNAPI.Value = Plugin.BaseFiddleArmL.Value;
			};
			Plugin.BaseFiddleArmR.SettingChanged += delegate
			{
				BaseFiddleArmRNAPI.Value = Plugin.BaseFiddleArmR.Value;
			};
			Plugin.BaseFiddleGlow.SettingChanged += delegate
			{
				BaseFiddleGlowNAPI.Value = Plugin.BaseFiddleGlow.Value;
			};
			Plugin.SpectralFiddleMode.SettingChanged += delegate
			{
				SpectralFiddleModeNAPI.Value = (int)Plugin.SpectralFiddleMode.Value;
			};
			Plugin.SpectralFiddleTongue.SettingChanged += delegate
			{
				SpectralFiddleTongueNAPI.Value = Plugin.SpectralFiddleTongue.Value;
			};
			Plugin.SpectralFiddleCandles.SettingChanged += delegate
			{
				SpectralFiddleCandlesNAPI.Value = Plugin.SpectralFiddleCandles.Value;
			};
			Plugin.SpectralFiddleMaiden.SettingChanged += delegate
			{
				SpectralFiddleMaidenNAPI.Value = (int)Plugin.SpectralFiddleMaiden.Value;
			};
			Plugin.SpectralFiddleArmL.SettingChanged += delegate
			{
				SpectralFiddleArmLNAPI.Value = Plugin.SpectralFiddleArmL.Value;
			};
			Plugin.SpectralFiddleArmR.SettingChanged += delegate
			{
				SpectralFiddleArmRNAPI.Value = Plugin.SpectralFiddleArmR.Value;
			};
			Plugin.SpectralFiddleGlow.SettingChanged += delegate
			{
				SpectralFiddleGlowNAPI.Value = Plugin.SpectralFiddleGlow.Value;
			};
			Plugin.GentFiddleMode.SettingChanged += delegate
			{
				GentFiddleModeNAPI.Value = (int)Plugin.GentFiddleMode.Value;
			};
			Plugin.GentFiddleTongue.SettingChanged += delegate
			{
				GentFiddleTongueNAPI.Value = Plugin.GentFiddleTongue.Value;
			};
			Plugin.GentFiddleTeeth.SettingChanged += delegate
			{
				GentFiddleTeethNAPI.Value = Plugin.GentFiddleTeeth.Value;
			};
			Plugin.GentFiddleStache.SettingChanged += delegate
			{
				GentFiddleStacheNAPI.Value = Plugin.GentFiddleStache.Value;
			};
			Plugin.GentFiddleStacheColor.SettingChanged += delegate
			{
				GentFiddleStacheColorNAPI.Value = (int)Plugin.GentFiddleStacheColor.Value;
			};
			Plugin.GentFiddleGoatee.SettingChanged += delegate
			{
				GentFiddleGoateeNAPI.Value = Plugin.GentFiddleGoatee.Value;
			};
			Plugin.GentFiddleArmL.SettingChanged += delegate
			{
				GentFiddleArmLNAPI.Value = Plugin.GentFiddleArmL.Value;
			};
			Plugin.GentFiddleArmR.SettingChanged += delegate
			{
				GentFiddleArmRNAPI.Value = Plugin.GentFiddleArmR.Value;
			};
			Plugin.GentFiddleGlow.SettingChanged += delegate
			{
				GentFiddleGlowNAPI.Value = Plugin.GentFiddleGlow.Value;
			};
		}

		protected override GameObject LoadAssetsAndReturnModel()
		{
			if (FiddleSkinValueNAPI_MODEL.Value == 1)
			{
				Material material = Assets.MainAssetBundle.LoadAsset<Material>("fiddle_invis");
				Material material2 = Assets.MainAssetBundle.LoadAsset<Material>("FDB_body");
				Material material3 = Assets.MainAssetBundle.LoadAsset<Material>("FDB_body_GLOW");
				Material material4 = Assets.MainAssetBundle.LoadAsset<Material>("FDB_body_TRANS");
				if (BaseFiddleModeNAPI.Value == 1)
				{
					string text = "fiddle_base";
					GameObject val = Assets.MainAssetBundle.LoadAsset<GameObject>(text);
					SkinnedMeshRenderer[] componentsInChildren = val.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren[0]).material = material2;
					((Renderer)componentsInChildren[1]).material = material3;
					((Renderer)componentsInChildren[2]).material = material3;
					((Renderer)componentsInChildren[3]).material = material3;
					((Renderer)componentsInChildren[4]).material = material2;
					((Renderer)componentsInChildren[5]).material = material3;
					if (BaseFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren[1]).material = material2;
						((Renderer)componentsInChildren[2]).material = material2;
						((Renderer)componentsInChildren[3]).material = material2;
						((Renderer)componentsInChildren[5]).material = material2;
					}
					if (BaseFiddleDemonNAPI.Value)
					{
						((Renderer)componentsInChildren[2]).material = material;
					}
					if (BaseFiddleFeathersNAPI.Value)
					{
						((Renderer)componentsInChildren[3]).material = material;
					}
					if (BaseFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren[4]).material = material;
					}
					if (BaseFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren[5]).material = material;
					}
					return val;
				}
				if (BaseFiddleModeNAPI.Value == 2)
				{
					string text2 = "fiddle_base_lantern";
					GameObject val2 = Assets.MainAssetBundle.LoadAsset<GameObject>(text2);
					SkinnedMeshRenderer[] componentsInChildren2 = val2.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren2[0]).material = material2;
					((Renderer)componentsInChildren2[1]).material = material3;
					((Renderer)componentsInChildren2[2]).material = material3;
					((Renderer)componentsInChildren2[3]).material = material3;
					((Renderer)componentsInChildren2[4]).material = material3;
					((Renderer)componentsInChildren2[5]).material = material2;
					((Renderer)componentsInChildren2[6]).material = material4;
					((Renderer)componentsInChildren2[7]).material = material3;
					((Renderer)componentsInChildren2[8]).material = material2;
					((Renderer)componentsInChildren2[9]).material = material3;
					if (BaseFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren2[1]).material = material2;
						((Renderer)componentsInChildren2[2]).material = material2;
						((Renderer)componentsInChildren2[3]).material = material2;
						((Renderer)componentsInChildren2[4]).material = material2;
						((Renderer)componentsInChildren2[6]).material = material2;
						((Renderer)componentsInChildren2[7]).material = material2;
						((Renderer)componentsInChildren2[9]).material = material2;
					}
					if (BaseFiddleDemonNAPI.Value)
					{
						((Renderer)componentsInChildren2[2]).material = material;
					}
					if (BaseFiddleFeathersNAPI.Value)
					{
						((Renderer)componentsInChildren2[4]).material = material;
					}
					if (BaseFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren2[8]).material = material;
					}
					if (BaseFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren2[9]).material = material;
					}
					return val2;
				}
				if (BaseFiddleModeNAPI.Value == 3)
				{
					string text3 = "fiddle_base_poised";
					GameObject val3 = Assets.MainAssetBundle.LoadAsset<GameObject>(text3);
					SkinnedMeshRenderer[] componentsInChildren3 = val3.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren3[0]).material = material2;
					((Renderer)componentsInChildren3[1]).material = material3;
					((Renderer)componentsInChildren3[2]).material = material3;
					((Renderer)componentsInChildren3[3]).material = material3;
					((Renderer)componentsInChildren3[4]).material = material3;
					((Renderer)componentsInChildren3[5]).material = material2;
					((Renderer)componentsInChildren3[6]).material = material3;
					if (BaseFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren3[1]).material = material2;
						((Renderer)componentsInChildren3[2]).material = material2;
						((Renderer)componentsInChildren3[3]).material = material2;
						((Renderer)componentsInChildren3[4]).material = material2;
						((Renderer)componentsInChildren3[6]).material = material2;
					}
					if (BaseFiddleDemonNAPI.Value)
					{
						((Renderer)componentsInChildren3[2]).material = material;
					}
					if (BaseFiddleFeathersNAPI.Value)
					{
						((Renderer)componentsInChildren3[4]).material = material;
					}
					if (BaseFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren3[5]).material = material;
					}
					if (BaseFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren3[6]).material = material;
					}
					return val3;
				}
				string text4 = "fiddle_base_demon";
				GameObject val4 = Assets.MainAssetBundle.LoadAsset<GameObject>(text4);
				SkinnedMeshRenderer[] componentsInChildren4 = val4.GetComponentsInChildren<SkinnedMeshRenderer>();
				((Renderer)componentsInChildren4[0]).material = material2;
				((Renderer)componentsInChildren4[1]).material = material2;
				((Renderer)componentsInChildren4[2]).material = material2;
				((Renderer)componentsInChildren4[3]).material = material3;
				((Renderer)componentsInChildren4[4]).material = material3;
				((Renderer)componentsInChildren4[5]).material = material3;
				((Renderer)componentsInChildren4[6]).material = material3;
				((Renderer)componentsInChildren4[7]).material = material2;
				((Renderer)componentsInChildren4[8]).material = material3;
				if (BaseFiddleGlowNAPI.Value)
				{
					((Renderer)componentsInChildren4[3]).material = material2;
					((Renderer)componentsInChildren4[4]).material = material2;
					((Renderer)componentsInChildren4[5]).material = material2;
					((Renderer)componentsInChildren4[6]).material = material2;
					((Renderer)componentsInChildren4[8]).material = material2;
				}
				if (BaseFiddleDemonNAPI.Value)
				{
					((Renderer)componentsInChildren4[4]).material = material;
				}
				if (BaseFiddleFeathersNAPI.Value)
				{
					((Renderer)componentsInChildren4[6]).material = material;
				}
				if (BaseFiddleTeethNAPI.Value)
				{
					((Renderer)componentsInChildren4[7]).material = material;
				}
				if (BaseFiddleTongueNAPI.Value)
				{
					((Renderer)componentsInChildren4[8]).material = material;
				}
				if (BaseFiddleArmLNAPI.Value)
				{
					((Renderer)componentsInChildren4[0]).material = material;
				}
				if (BaseFiddleArmRNAPI.Value)
				{
					((Renderer)componentsInChildren4[1]).material = material;
				}
				return val4;
			}
			if (FiddleSkinValueNAPI_MODEL.Value == 2)
			{
				Material material5 = Assets.MainAssetBundle.LoadAsset<Material>("fiddle_invis");
				Material material6 = Assets.MainAssetBundle.LoadAsset<Material>("FDSP_body");
				Material material7 = Assets.MainAssetBundle.LoadAsset<Material>("FDSP_body_GLOW");
				if (SpectralFiddleModeNAPI.Value == 1)
				{
					string text5 = "fiddle_spectral";
					GameObject val5 = Assets.MainAssetBundle.LoadAsset<GameObject>(text5);
					SkinnedMeshRenderer[] componentsInChildren5 = val5.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren5[0]).material = material6;
					((Renderer)componentsInChildren5[1]).material = material7;
					((Renderer)componentsInChildren5[2]).material = material6;
					((Renderer)componentsInChildren5[3]).material = material7;
					((Renderer)componentsInChildren5[4]).material = material6;
					((Renderer)componentsInChildren5[5]).material = material7;
					((Renderer)componentsInChildren5[6]).material = material7;
					if (SpectralFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren5[1]).material = material6;
						((Renderer)componentsInChildren5[3]).material = material6;
						((Renderer)componentsInChildren5[5]).material = material6;
						((Renderer)componentsInChildren5[6]).material = material6;
					}
					if (SpectralFiddleMaidenNAPI.Value == 2)
					{
						((Renderer)componentsInChildren5[4]).material = material5;
					}
					if (SpectralFiddleMaidenNAPI.Value == 3)
					{
						((Renderer)componentsInChildren5[4]).material = material5;
						((Renderer)componentsInChildren5[5]).material = material5;
					}
					if (SpectralFiddleCandlesNAPI.Value)
					{
						((Renderer)componentsInChildren5[2]).material = material5;
						((Renderer)componentsInChildren5[3]).material = material5;
					}
					if (SpectralFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren5[6]).material = material5;
					}
					return val5;
				}
				if (SpectralFiddleModeNAPI.Value == 2)
				{
					string text6 = "fiddle_spectral_lantern";
					GameObject val6 = Assets.MainAssetBundle.LoadAsset<GameObject>(text6);
					SkinnedMeshRenderer[] componentsInChildren6 = val6.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren6[0]).material = material6;
					((Renderer)componentsInChildren6[1]).material = material7;
					((Renderer)componentsInChildren6[2]).material = material6;
					((Renderer)componentsInChildren6[3]).material = material7;
					((Renderer)componentsInChildren6[4]).material = material7;
					((Renderer)componentsInChildren6[5]).material = material6;
					((Renderer)componentsInChildren6[6]).material = material7;
					((Renderer)componentsInChildren6[7]).material = material6;
					((Renderer)componentsInChildren6[8]).material = material7;
					((Renderer)componentsInChildren6[9]).material = material7;
					if (SpectralFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren6[1]).material = material6;
						((Renderer)componentsInChildren6[3]).material = material6;
						((Renderer)componentsInChildren6[4]).material = material6;
						((Renderer)componentsInChildren6[6]).material = material6;
						((Renderer)componentsInChildren6[8]).material = material6;
						((Renderer)componentsInChildren6[9]).material = material6;
					}
					if (SpectralFiddleMaidenNAPI.Value == 2)
					{
						((Renderer)componentsInChildren6[5]).material = material5;
					}
					if (SpectralFiddleMaidenNAPI.Value == 3)
					{
						((Renderer)componentsInChildren6[5]).material = material5;
						((Renderer)componentsInChildren6[6]).material = material5;
					}
					if (SpectralFiddleCandlesNAPI.Value)
					{
						((Renderer)componentsInChildren6[2]).material = material5;
						((Renderer)componentsInChildren6[3]).material = material5;
					}
					if (SpectralFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren6[9]).material = material5;
					}
					return val6;
				}
				if (SpectralFiddleModeNAPI.Value == 3)
				{
					string text7 = "fiddle_spectral_poised";
					GameObject val7 = Assets.MainAssetBundle.LoadAsset<GameObject>(text7);
					SkinnedMeshRenderer[] componentsInChildren7 = val7.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren7[0]).material = material6;
					((Renderer)componentsInChildren7[1]).material = material7;
					((Renderer)componentsInChildren7[2]).material = material6;
					((Renderer)componentsInChildren7[3]).material = material7;
					((Renderer)componentsInChildren7[4]).material = material7;
					((Renderer)componentsInChildren7[5]).material = material6;
					((Renderer)componentsInChildren7[6]).material = material7;
					((Renderer)componentsInChildren7[7]).material = material7;
					if (SpectralFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren7[1]).material = material6;
						((Renderer)componentsInChildren7[3]).material = material6;
						((Renderer)componentsInChildren7[4]).material = material6;
						((Renderer)componentsInChildren7[6]).material = material6;
						((Renderer)componentsInChildren7[7]).material = material6;
					}
					if (SpectralFiddleMaidenNAPI.Value == 2)
					{
						((Renderer)componentsInChildren7[5]).material = material5;
					}
					if (SpectralFiddleMaidenNAPI.Value == 3)
					{
						((Renderer)componentsInChildren7[5]).material = material5;
						((Renderer)componentsInChildren7[6]).material = material5;
					}
					if (SpectralFiddleCandlesNAPI.Value)
					{
						((Renderer)componentsInChildren7[2]).material = material5;
						((Renderer)componentsInChildren7[3]).material = material5;
					}
					if (SpectralFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren7[7]).material = material5;
					}
					return val7;
				}
				string text8 = "fiddle_spectral_demon";
				GameObject val8 = Assets.MainAssetBundle.LoadAsset<GameObject>(text8);
				SkinnedMeshRenderer[] componentsInChildren8 = val8.GetComponentsInChildren<SkinnedMeshRenderer>();
				((Renderer)componentsInChildren8[0]).material = material6;
				((Renderer)componentsInChildren8[1]).material = material6;
				((Renderer)componentsInChildren8[2]).material = material6;
				((Renderer)componentsInChildren8[3]).material = material7;
				((Renderer)componentsInChildren8[4]).material = material6;
				((Renderer)componentsInChildren8[5]).material = material7;
				((Renderer)componentsInChildren8[6]).material = material7;
				((Renderer)componentsInChildren8[7]).material = material6;
				((Renderer)componentsInChildren8[8]).material = material7;
				((Renderer)componentsInChildren8[9]).material = material7;
				if (SpectralFiddleGlowNAPI.Value)
				{
					((Renderer)componentsInChildren8[3]).material = material6;
					((Renderer)componentsInChildren8[4]).material = material6;
					((Renderer)componentsInChildren8[5]).material = material6;
					((Renderer)componentsInChildren8[8]).material = material6;
					((Renderer)componentsInChildren8[9]).material = material6;
				}
				if (SpectralFiddleMaidenNAPI.Value == 2)
				{
					((Renderer)componentsInChildren8[7]).material = material5;
				}
				if (SpectralFiddleMaidenNAPI.Value == 3)
				{
					((Renderer)componentsInChildren8[7]).material = material5;
					((Renderer)componentsInChildren8[8]).material = material5;
				}
				if (SpectralFiddleCandlesNAPI.Value)
				{
					((Renderer)componentsInChildren8[4]).material = material5;
					((Renderer)componentsInChildren8[5]).material = material5;
				}
				if (SpectralFiddleTongueNAPI.Value)
				{
					((Renderer)componentsInChildren8[9]).material = material5;
				}
				if (SpectralFiddleArmLNAPI.Value)
				{
					((Renderer)componentsInChildren8[0]).material = material5;
				}
				if (SpectralFiddleArmRNAPI.Value)
				{
					((Renderer)componentsInChildren8[1]).material = material5;
				}
				return val8;
			}
			if (FiddleSkinValueNAPI_MODEL.Value == 3)
			{
				Material material8 = Assets.MainAssetBundle.LoadAsset<Material>("fiddle_invis");
				Material material9 = Assets.MainAssetBundle.LoadAsset<Material>("FDGN_body");
				Material material10 = Assets.MainAssetBundle.LoadAsset<Material>("FDGN_body_GLOW");
				Material material11 = Assets.MainAssetBundle.LoadAsset<Material>("FDGN_body_GRAY");
				if (GentFiddleModeNAPI.Value == 1)
				{
					string text9 = "fiddle_gentleman";
					GameObject val9 = Assets.MainAssetBundle.LoadAsset<GameObject>(text9);
					SkinnedMeshRenderer[] componentsInChildren9 = val9.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren9[0]).material = material9;
					((Renderer)componentsInChildren9[1]).material = material9;
					((Renderer)componentsInChildren9[2]).material = material9;
					((Renderer)componentsInChildren9[3]).material = material9;
					((Renderer)componentsInChildren9[4]).material = material10;
					((Renderer)componentsInChildren9[5]).material = material9;
					((Renderer)componentsInChildren9[6]).material = material9;
					((Renderer)componentsInChildren9[7]).material = material9;
					((Renderer)componentsInChildren9[8]).material = material9;
					if (GentFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren9[4]).material = material9;
					}
					if (GentFiddleStacheColorNAPI.Value == 2)
					{
						((Renderer)componentsInChildren9[5]).material = material11;
						((Renderer)componentsInChildren9[2]).material = material11;
					}
					if (GentFiddleStacheNAPI.Value)
					{
						((Renderer)componentsInChildren9[5]).material = material8;
					}
					if (GentFiddleGoateeNAPI.Value)
					{
						((Renderer)componentsInChildren9[2]).material = material8;
					}
					if (GentFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren9[7]).material = material8;
					}
					if (GentFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren9[8]).material = material8;
					}
					return val9;
				}
				if (GentFiddleModeNAPI.Value == 2)
				{
					string text10 = "fiddle_gentleman_lantern";
					GameObject val10 = Assets.MainAssetBundle.LoadAsset<GameObject>(text10);
					SkinnedMeshRenderer[] componentsInChildren10 = val10.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren10[0]).material = material9;
					((Renderer)componentsInChildren10[1]).material = material9;
					((Renderer)componentsInChildren10[2]).material = material10;
					((Renderer)componentsInChildren10[3]).material = material9;
					((Renderer)componentsInChildren10[4]).material = material9;
					((Renderer)componentsInChildren10[5]).material = material10;
					((Renderer)componentsInChildren10[6]).material = material9;
					((Renderer)componentsInChildren10[7]).material = material10;
					((Renderer)componentsInChildren10[8]).material = material9;
					((Renderer)componentsInChildren10[9]).material = material9;
					((Renderer)componentsInChildren10[10]).material = material9;
					((Renderer)componentsInChildren10[11]).material = material9;
					if (GentFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren10[4]).material = material9;
						((Renderer)componentsInChildren10[5]).material = material9;
						((Renderer)componentsInChildren10[7]).material = material9;
					}
					if (GentFiddleStacheColorNAPI.Value == 2)
					{
						((Renderer)componentsInChildren10[8]).material = material11;
						((Renderer)componentsInChildren10[3]).material = material11;
					}
					if (GentFiddleStacheNAPI.Value)
					{
						((Renderer)componentsInChildren10[8]).material = material8;
					}
					if (GentFiddleGoateeNAPI.Value)
					{
						((Renderer)componentsInChildren10[3]).material = material8;
					}
					if (GentFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren10[10]).material = material8;
					}
					if (GentFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren10[11]).material = material8;
					}
					return val10;
				}
				if (GentFiddleModeNAPI.Value == 3)
				{
					string text11 = "fiddle_gentleman_poised";
					GameObject val11 = Assets.MainAssetBundle.LoadAsset<GameObject>(text11);
					SkinnedMeshRenderer[] componentsInChildren11 = val11.GetComponentsInChildren<SkinnedMeshRenderer>();
					((Renderer)componentsInChildren11[0]).material = material9;
					((Renderer)componentsInChildren11[1]).material = material9;
					((Renderer)componentsInChildren11[2]).material = material10;
					((Renderer)componentsInChildren11[3]).material = material9;
					((Renderer)componentsInChildren11[4]).material = material9;
					((Renderer)componentsInChildren11[5]).material = material10;
					((Renderer)componentsInChildren11[6]).material = material9;
					((Renderer)componentsInChildren11[7]).material = material9;
					((Renderer)componentsInChildren11[8]).material = material9;
					((Renderer)componentsInChildren11[9]).material = material9;
					if (GentFiddleGlowNAPI.Value)
					{
						((Renderer)componentsInChildren11[2]).material = material9;
						((Renderer)componentsInChildren11[5]).material = material9;
					}
					if (GentFiddleStacheColorNAPI.Value == 2)
					{
						((Renderer)componentsInChildren11[6]).material = material11;
						((Renderer)componentsInChildren11[3]).material = material11;
					}
					if (GentFiddleStacheNAPI.Value)
					{
						((Renderer)componentsInChildren11[6]).material = material8;
					}
					if (GentFiddleGoateeNAPI.Value)
					{
						((Renderer)componentsInChildren11[3]).material = material8;
					}
					if (GentFiddleTeethNAPI.Value)
					{
						((Renderer)componentsInChildren11[8]).material = material8;
					}
					if (GentFiddleTongueNAPI.Value)
					{
						((Renderer)componentsInChildren11[9]).material = material8;
					}
					return val11;
				}
				string text12 = "fiddle_gentleman_demon";
				GameObject val12 = Assets.MainAssetBundle.LoadAsset<GameObject>(text12);
				SkinnedMeshRenderer[] componentsInChildren12 = val12.GetComponentsInChildren<SkinnedMeshRenderer>();
				((Renderer)componentsInChildren12[0]).material = material9;
				((Renderer)componentsInChildren12[1]).material = material9;
				((Renderer)componentsInChildren12[2]).material = material10;
				((Renderer)componentsInChildren12[3]).material = material9;
				((Renderer)componentsInChildren12[4]).material = material9;
				((Renderer)componentsInChildren12[5]).material = material10;
				((Renderer)componentsInChildren12[6]).material = material9;
				((Renderer)componentsInChildren12[7]).material = material9;
				((Renderer)componentsInChildren12[8]).material = material9;
				((Renderer)componentsInChildren12[9]).material = material9;
				if (GentFiddleGlowNAPI.Value)
				{
					((Renderer)componentsInChildren12[2]).material = material9;
					((Renderer)componentsInChildren12[5]).material = material9;
				}
				if (GentFiddleStacheColorNAPI.Value == 2)
				{
					((Renderer)componentsInChildren12[6]).material = material11;
					((Renderer)componentsInChildren12[3]).material = material11;
				}
				if (GentFiddleStacheNAPI.Value)
				{
					((Renderer)componentsInChildren12[6]).material = material8;
				}
				if (GentFiddleGoateeNAPI.Value)
				{
					((Renderer)componentsInChildren12[3]).material = material8;
				}
				if (GentFiddleTeethNAPI.Value)
				{
					((Renderer)componentsInChildren12[8]).material = material8;
				}
				if (GentFiddleTongueNAPI.Value)
				{
					((Renderer)componentsInChildren12[9]).material = material8;
				}
				if (GentFiddleArmLNAPI.Value)
				{
					((Renderer)componentsInChildren12[0]).material = material8;
				}
				if (GentFiddleArmRNAPI.Value)
				{
					((Renderer)componentsInChildren12[1]).material = material8;
				}
				return val12;
			}
			Debug.Log((object)"FIDDLE OF FAILURE");
			string text13 = "fiddle_base";
			return Assets.MainAssetBundle.LoadAsset<GameObject>(text13);
		}
	}
	[BepInPlugin("com.theflipsider.fiddleplayermodels", "Fiddlesticks Playermodel Pack", "0.1.0")]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	public class Plugin : BaseUnityPlugin
	{
		public enum FiddleSkinList
		{
			Classic = 1,
			Spectral,
			Gentleman
		}

		public enum BaseFiddleModeEnum
		{
			Normal = 1,
			Lantern_Arm,
			Poised_Arms,
			Demon_Arms
		}

		public enum SpectralFiddleModeEnum
		{
			Normal = 1,
			Lantern_Arm,
			Poised_Arms,
			Demon_Arms
		}

		public enum SpectralFiddleMaidenEnum
		{
			Normal = 1,
			Face_Only,
			Nothing
		}

		public enum GentFiddleModeEnum
		{
			Normal = 1,
			Lantern_Arm,
			Poised_Arms,
			Demon_Arms
		}

		public enum GentFiddleStacheEnum
		{
			In_Game = 1,
			Splash_Art
		}

		public static ConfigFile config;

		public static ConfigEntry<FiddleSkinList> FiddleSkin { get; private set; }

		public static ConfigEntry<BaseFiddleModeEnum> BaseFiddleMode { get; private set; }

		public static ConfigEntry<bool> BaseFiddleTongue { get; private set; }

		public static ConfigEntry<bool> BaseFiddleTeeth { get; private set; }

		public static ConfigEntry<bool> BaseFiddleFeathers { get; private set; }

		public static ConfigEntry<bool> BaseFiddleDemon { get; private set; }

		public static ConfigEntry<bool> BaseFiddleGlow { get; private set; }

		public static ConfigEntry<bool> BaseFiddleArmL { get; private set; }

		public static ConfigEntry<bool> BaseFiddleArmR { get; private set; }

		public static ConfigEntry<SpectralFiddleModeEnum> SpectralFiddleMode { get; private set; }

		public static ConfigEntry<bool> SpectralFiddleTongue { get; private set; }

		public static ConfigEntry<bool> SpectralFiddleCandles { get; private set; }

		public static ConfigEntry<SpectralFiddleMaidenEnum> SpectralFiddleMaiden { get; private set; }

		public static ConfigEntry<bool> SpectralFiddleGlow { get; private set; }

		public static ConfigEntry<bool> SpectralFiddleArmL { get; private set; }

		public static ConfigEntry<bool> SpectralFiddleArmR { get; private set; }

		public static ConfigEntry<GentFiddleModeEnum> GentFiddleMode { get; private set; }

		public static ConfigEntry<bool> GentFiddleTongue { get; private set; }

		public static ConfigEntry<bool> GentFiddleTeeth { get; private set; }

		public static ConfigEntry<GentFiddleStacheEnum> GentFiddleStacheColor { get; private set; }

		public static ConfigEntry<bool> GentFiddleStache { get; private set; }

		public static ConfigEntry<bool> GentFiddleGoatee { get; private set; }

		public static ConfigEntry<bool> GentFiddleMonocle { get; private set; }

		public static ConfigEntry<bool> GentFiddleGlow { get; private set; }

		public static ConfigEntry<bool> GentFiddleArmL { get; private set; }

		public static ConfigEntry<bool> GentFiddleArmR { get; private set; }

		private static void InitConfig()
		{
			//IL_0346: Unknown result type (might be due to invalid IL or missing references)
			//IL_034b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0358: Expected O, but got Unknown
			//IL_0365: 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_0377: Expected O, but got Unknown
			//IL_0372: Unknown result type (might be due to invalid IL or missing references)
			//IL_0378: Expected O, but got Unknown
			//IL_0384: Unknown result type (might be due to invalid IL or missing references)
			//IL_0389: Unknown result type (might be due to invalid IL or missing references)
			//IL_0396: Expected O, but got Unknown
			//IL_03a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b5: Expected O, but got Unknown
			//IL_03b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b6: Expected O, but got Unknown
			//IL_03c2: Unknown result type (might be due to invalid IL or missing references)
			//IL_03c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_03d4: Expected O, but got Unknown
			//IL_03cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_03d6: Expected O, but got Unknown
			//IL_03e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_03e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_03f5: Expected O, but got Unknown
			//IL_03f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_03f7: Expected O, but got Unknown
			//IL_0404: Unknown result type (might be due to invalid IL or missing references)
			//IL_0409: Unknown result type (might be due to invalid IL or missing references)
			//IL_0416: Expected O, but got Unknown
			//IL_0411: Unknown result type (might be due to invalid IL or missing references)
			//IL_0418: Expected O, but got Unknown
			//IL_0425: Unknown result type (might be due to invalid IL or missing references)
			//IL_042a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0437: Expected O, but got Unknown
			//IL_0432: Unknown result type (might be due to invalid IL or missing references)
			//IL_0439: Expected O, but got Unknown
			//IL_0446: Unknown result type (might be due to invalid IL or missing references)
			//IL_044b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0458: Expected O, but got Unknown
			//IL_0453: Unknown result type (might be due to invalid IL or missing references)
			//IL_045a: Expected O, but got Unknown
			//IL_0467: Unknown result type (might be due to invalid IL or missing references)
			//IL_046c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0479: Expected O, but got Unknown
			//IL_0474: Unknown result type (might be due to invalid IL or missing references)
			//IL_047b: Expected O, but got Unknown
			//IL_0488: Unknown result type (might be due to invalid IL or missing references)
			//IL_048d: Unknown result type (might be due to invalid IL or missing references)
			//IL_049a: Expected O, but got Unknown
			//IL_04a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_04ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_04bb: Expected O, but got Unknown
			//IL_04b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_04bd: Expected O, but got Unknown
			//IL_04ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_04cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_04dc: Expected O, but got Unknown
			//IL_04d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_04de: Expected O, but got Unknown
			//IL_04eb: Unknown result type (might be due to invalid IL or missing references)
			//IL_04f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_04fd: Expected O, but got Unknown
			//IL_050c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0511: Unknown result type (might be due to invalid IL or missing references)
			//IL_051e: Expected O, but got Unknown
			//IL_0519: Unknown result type (might be due to invalid IL or missing references)
			//IL_0520: Expected O, but got Unknown
			//IL_052d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0532: Unknown result type (might be due to invalid IL or missing references)
			//IL_053f: Expected O, but got Unknown
			//IL_053a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0541: Expected O, but got Unknown
			//IL_054e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0553: Unknown result type (might be due to invalid IL or missing references)
			//IL_0560: Expected O, but got Unknown
			//IL_055b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0562: Expected O, but got Unknown
			//IL_056f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0574: Unknown result type (might be due to invalid IL or missing references)
			//IL_0581: Expected O, but got Unknown
			//IL_0590: Unknown result type (might be due to invalid IL or missing references)
			//IL_0595: Unknown result type (might be due to invalid IL or missing references)
			//IL_05a2: Expected O, but got Unknown
			//IL_059d: Unknown result type (might be due to invalid IL or missing references)
			//IL_05a4: Expected O, but got Unknown
			//IL_05b1: 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_05c3: Expected O, but got Unknown
			//IL_05be: Unknown result type (might be due to invalid IL or missing references)
			//IL_05c5: Expected O, but got Unknown
			//IL_05d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_05d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_05e4: Expected O, but got Unknown
			//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_0605: Expected O, but got Unknown
			//IL_0600: Unknown result type (might be due to invalid IL or missing references)
			//IL_0607: Expected O, but got Unknown
			//IL_0614: Unknown result type (might be due to invalid IL or missing references)
			//IL_0619: Unknown result type (might be due to invalid IL or missing references)
			//IL_0626: Expected O, but got Unknown
			//IL_0621: Unknown result type (might be due to invalid IL or missing references)
			//IL_0628: Expected O, but got Unknown
			//IL_0635: Unknown result type (might be due to invalid IL or missing references)
			//IL_063a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0647: Expected O, but got Unknown
			//IL_0642: Unknown result type (might be due to invalid IL or missing references)
			//IL_0649: Expected O, but got Unknown
			//IL_0656: Unknown result type (might be due to invalid IL or missing references)
			//IL_065b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0668: Expected O, but got Unknown
			//IL_0663: Unknown result type (might be due to invalid IL or missing references)
			//IL_066a: Expected O, but got Unknown
			//IL_0677: Unknown result type (might be due to invalid IL or missing references)
			//IL_067c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0689: Expected O, but got Unknown
			//IL_0684: Unknown result type (might be due to invalid IL or missing references)
			//IL_068b: Expected O, but got Unknown
			FiddleSkin = config.Bind<FiddleSkinList>("General", "Choose skin", FiddleSkinList.Classic, "Picks what skin Fiddlesticks uses. Reapply the suit for the effect!");
			BaseFiddleMode = config.Bind<BaseFiddleModeEnum>("Classic Fiddlesticks", "Choose Mode", BaseFiddleModeEnum.Normal, "Picks what mode base Fiddle uses. Reapply the suit for the effect!");
			BaseFiddleTongue = config.Bind<bool>("Classic Fiddlesticks", "Disable Tongue", false, "Disables the tongue of Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleTeeth = config.Bind<bool>("Classic Fiddlesticks", "Disable Teeth", false, "Disables the beartrap teeth on Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleFeathers = config.Bind<bool>("Classic Fiddlesticks", "Disable Demon Feathers", false, "Disables the feathers Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleDemon = config.Bind<bool>("Classic Fiddlesticks", "Disable Demon Core", false, "Disables the demon core of Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleArmL = config.Bind<bool>("Classic Fiddlesticks", "(Demon Mode) Disable Left Arm", false, "Disables the left arm of Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleArmR = config.Bind<bool>("Classic Fiddlesticks", "(Demon Mode) Disable Right Arm", false, "Disables the right arm of Base Fiddle. Reapply the suit for the effect!");
			BaseFiddleGlow = config.Bind<bool>("Classic Fiddlesticks", "Disable Glow", false, "Disables the glowing parts of Base Fiddle. Reapply the suit for the effect!");
			SpectralFiddleMode = config.Bind<SpectralFiddleModeEnum>("Spectral Fiddlesticks", "Choose Mode", SpectralFiddleModeEnum.Normal, "Picks what mode Spectral Fiddle uses. Reapply the suit for the effect!");
			SpectralFiddleTongue = config.Bind<bool>("Spectral Fiddlesticks", "Disable Tongue", false, "Disables the tongue of Spectral Fiddle. Reapply the suit for the effect!");
			SpectralFiddleCandles = config.Bind<bool>("Spectral Fiddlesticks", "Disable Candles Shoulder", false, "Disables the candles of Spectral Fiddle's left shoulder. Reapply the suit for the effect!");
			SpectralFiddleMaiden = config.Bind<SpectralFiddleMaidenEnum>("Spectral Fiddlesticks", "Iron Maiden Mode", SpectralFiddleMaidenEnum.Normal, "Picks how spectral fiddle's iron maiden looks. Reapply the suit for the effect!");
			SpectralFiddleArmL = config.Bind<bool>("Spectral Fiddlesticks", "(Demon Mode) Disable Left Arm", false, "Disables the left arm of Spectral Fiddle. Reapply the suit for the effect!");
			SpectralFiddleArmR = config.Bind<bool>("Spectral Fiddlesticks", "(Demon Mode) Disable Right Arm", false, "Disables the right arm of Spectral Fiddle. Reapply the suit for the effect!");
			SpectralFiddleGlow = config.Bind<bool>("Spectral Fiddlesticks", "Disable Glow", false, "Disables the glowing parts of Spectral Fiddle. Reapply the suit for the effect!");
			GentFiddleMode = config.Bind<GentFiddleModeEnum>("Gentleman Fiddlesticks", "Choose Mode", GentFiddleModeEnum.Normal, "Picks what mode Gentleman Fiddle uses. Reapply the suit for the effect!");
			GentFiddleTongue = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Tongue", false, "Disables the tongue of Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleTeeth = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Teeth", false, "Disables the beartrap teeth on Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleMonocle = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Monocle", false, "Disables the monocle on Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleStache = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Moustache", false, "Disables the dapper stache of Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleStacheColor = config.Bind<GentFiddleStacheEnum>("Gentleman Fiddlesticks", "Choose Moustache Color", GentFiddleStacheEnum.In_Game, "Picks the color for Gentleman Fiddle's moustache. Reapply the suit for the effect!");
			GentFiddleGoatee = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Goatee", false, "Disables the goatee of Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleArmL = config.Bind<bool>("Gentleman Fiddlesticks", "(Demon Mode) Disable Left Arm", false, "Disables the left arm of Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleArmR = config.Bind<bool>("Gentleman Fiddlesticks", "(Demon Mode) Disable Right Arm", false, "Disables the right arm of Gentleman Fiddle. Reapply the suit for the effect!");
			GentFiddleGlow = config.Bind<bool>("Gentleman Fiddlesticks", "Disable Glow", false, "Disables the glowing parts of Base Fiddle. Reapply the suit for the effect!");
			EnumDropDownConfigItem<FiddleSkinList> val = new EnumDropDownConfigItem<FiddleSkinList>(FiddleSkin, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val);
			BoolCheckBoxConfigItem val2 = new BoolCheckBoxConfigItem(BaseFiddleGlow, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val2);
			EnumDropDownConfigItem<BaseFiddleModeEnum> val3 = new EnumDropDownConfigItem<BaseFiddleModeEnum>(BaseFiddleMode, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val3);
			BoolCheckBoxConfigItem val4 = new BoolCheckBoxConfigItem(BaseFiddleTongue, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val4);
			BoolCheckBoxConfigItem val5 = new BoolCheckBoxConfigItem(BaseFiddleTeeth, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val5);
			BoolCheckBoxConfigItem val6 = new BoolCheckBoxConfigItem(BaseFiddleFeathers, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val6);
			BoolCheckBoxConfigItem val7 = new BoolCheckBoxConfigItem(BaseFiddleDemon, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val7);
			BoolCheckBoxConfigItem val8 = new BoolCheckBoxConfigItem(BaseFiddleArmL, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val8);
			BoolCheckBoxConfigItem val9 = new BoolCheckBoxConfigItem(BaseFiddleArmR, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val9);
			BoolCheckBoxConfigItem val10 = new BoolCheckBoxConfigItem(SpectralFiddleGlow, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val10);
			EnumDropDownConfigItem<SpectralFiddleModeEnum> val11 = new EnumDropDownConfigItem<SpectralFiddleModeEnum>(SpectralFiddleMode, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val11);
			BoolCheckBoxConfigItem val12 = new BoolCheckBoxConfigItem(SpectralFiddleTongue, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val12);
			BoolCheckBoxConfigItem val13 = new BoolCheckBoxConfigItem(SpectralFiddleCandles, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val13);
			EnumDropDownConfigItem<SpectralFiddleMaidenEnum> val14 = new EnumDropDownConfigItem<SpectralFiddleMaidenEnum>(SpectralFiddleMaiden, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val14);
			BoolCheckBoxConfigItem val15 = new BoolCheckBoxConfigItem(SpectralFiddleArmL, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val15);
			BoolCheckBoxConfigItem val16 = new BoolCheckBoxConfigItem(SpectralFiddleArmR, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val16);
			BoolCheckBoxConfigItem val17 = new BoolCheckBoxConfigItem(GentFiddleGlow, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val17);
			EnumDropDownConfigItem<GentFiddleModeEnum> val18 = new EnumDropDownConfigItem<GentFiddleModeEnum>(GentFiddleMode, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val18);
			BoolCheckBoxConfigItem val19 = new BoolCheckBoxConfigItem(GentFiddleMonocle, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val19);
			BoolCheckBoxConfigItem val20 = new BoolCheckBoxConfigItem(GentFiddleTongue, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val20);
			EnumDropDownConfigItem<GentFiddleStacheEnum> val21 = new EnumDropDownConfigItem<GentFiddleStacheEnum>(GentFiddleStacheColor, new EnumDropDownOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val21);
			BoolCheckBoxConfigItem val22 = new BoolCheckBoxConfigItem(GentFiddleStache, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val22);
			BoolCheckBoxConfigItem val23 = new BoolCheckBoxConfigItem(GentFiddleGoatee, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val23);
			BoolCheckBoxConfigItem val24 = new BoolCheckBoxConfigItem(GentFiddleTeeth, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val24);
			BoolCheckBoxConfigItem val25 = new BoolCheckBoxConfigItem(GentFiddleArmL, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val25);
			BoolCheckBoxConfigItem val26 = new BoolCheckBoxConfigItem(GentFiddleArmR, new BoolCheckBoxOptions
			{
				RequiresRestart = false
			});
			LethalConfigManager.AddConfigItem((BaseConfigItem)(object)val26);
		}

		private void Awake()
		{
			//IL_0032: Unknown result type (might be due to invalid IL or missing references)
			//IL_0038: Expected O, but got Unknown
			config = ((BaseUnityPlugin)this).Config;
			InitConfig();
			Assets.PopulateAssets();
			ModelReplacementAPI.RegisterSuitModelReplacement("Fiddlesticks (Check LethalConfig)", typeof(FIDDLE_SUIT));
			Harmony val = new Harmony("com.theflipsider.fiddleplayermodels");
			val.PatchAll();
			((BaseUnityPlugin)this).Logger.LogInfo((object)"Fiddlesticks Playermodels - IT'S IN THE HOUSE!");
		}
	}
	public static class Assets
	{
		public static string mainAssetBundleName = "FiddlePlayermodels";

		public static AssetBundle MainAssetBundle = null;

		private static string GetAssemblyName()
		{
			return Assembly.GetExecutingAssembly().GetName().Name.Replace(" ", "_");
		}

		public static void PopulateAssets()
		{
			if ((Object)(object)MainAssetBundle == (Object)null)
			{
				Console.WriteLine(GetAssemblyName() + "." + mainAssetBundleName);
				using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(GetAssemblyName() + "." + mainAssetBundleName);
				MainAssetBundle = AssetBundle.LoadFromStream(stream);
			}
		}
	}
}
namespace System.Runtime.CompilerServices
{
	[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
	internal sealed class IgnoresAccessChecksToAttribute : Attribute
	{
		public IgnoresAccessChecksToAttribute(string assemblyName)
		{
		}
	}
}