Decompiled source of Custome Screenshake v1.0.0

CustomScreenshake.dll

Decompiled 3 months ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using CustomScreenshake;
using Gunfiguration;
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: AssemblyTitle("Mod")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Mod")]
[assembly: AssemblyCopyright("Copyright ©  2020")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("d6d7a494-722e-4763-959b-c2d6b6a42b01")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace CustomScreenshake
{
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInPlugin("SimplyFenton.etg.customscreenshake", "Custom Screenshake Value", "1.0.0")]
	public class Plugin : BaseUnityPlugin
	{
		public const string GUID = "SimplyFenton.etg.customscreenshake";

		public const string NAME = "Custom Screenshake Value";

		public const string VERSION = "1.0.0";

		public const string TEXT_COLOR = "#00FFFF";

		public static bool AllJammed;

		public void Start()
		{
			ETGModMainBehaviour.WaitForGameManagerStart((Action<GameManager>)GMStart);
			Init();
		}

		public static void SetScreenshakeValue(int value)
		{
			if (value != 0)
			{
				GameManager.Options.m_screenShakeMultiplier = value;
			}
		}

		public void Exit()
		{
		}

		public void Init()
		{
		}

		public void GMStart(GameManager g)
		{
			Log("Custom Screenshake Value v1.0.0 started successfully.", "#00FFFF");
			CustomScreenshakeConfig.Init();
		}

		public static void Log(string text, string color = "#FFFFFF")
		{
			ETGModConsole.Log((object)("<color=" + color + ">" + text + "</color>"), false);
		}
	}
}
namespace Gunfiguration
{
	public static class CustomScreenshakeConfig
	{
		internal static Gunfig _Gunfig;

		internal static void Init()
		{
			//IL_0006: Unknown result type (might be due to invalid IL or missing references)
			_Gunfig = Gunfig.Get(GunfigHelpers.WithColor("Custom Screenshake Value", Color.white));
			Plugin.SetScreenshakeValue(int.Parse(_Gunfig.Value("Screenshake Value") ?? "0"));
			_Gunfig.AddScrollBox("Screenshake Value", new List<string>
			{
				"1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
				"11", "12", "13", "14", "15", "16", "17", "18", "19", "20",
				"21", "22", "23", "24", "25"
			}, (string)null, (Action<string, string>)delegate(string optionKey, string optionValue)
			{
				Plugin.SetScreenshakeValue(int.Parse(optionValue));
			}, (List<string>)null, (Update)0);
		}
	}
}