Please disclose if your mod was created primarily using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of StartInShop v1.0.0
BepInEx/plugins/ViViKo.StartInShop.dll
Decompiled a year agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using HarmonyLib; using Microsoft.CodeAnalysis; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: IgnoresAccessChecksTo("Assembly-CSharp")] [assembly: AssemblyCompany("ViViKo.StartInShop")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyDescription("StartInShop")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("StartInShop")] [assembly: AssemblyTitle("ViViKo.StartInShop")] [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 StartInShop { [BepInPlugin("ViViKo.StartInShop", "StartInShop", "1.0.0")] public class StartInShop : BaseUnityPlugin { private readonly Harmony harmony = new Harmony("ViViKo.StartInShop"); public static StartInShop Instance; public static ConfigEntry<int> StartingMoney; public static ConfigEntry<bool> Enabled; internal static ManualLogSource Logger { get; private set; } private void Awake() { //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown Instance = this; Logger = ((BaseUnityPlugin)this).Logger; Enabled = ((BaseUnityPlugin)this).Config.Bind<bool>("StartInShop", "Enabled", true, (ConfigDescription)null); StartingMoney = ((BaseUnityPlugin)this).Config.Bind<int>("StartingMoney", "Starting Money", 10000, new ConfigDescription("Amount of money to start with", (AcceptableValueBase)(object)new AcceptableValueRange<int>(0, 100000), Array.Empty<object>())); harmony.PatchAll(); Logger.LogInfo((object)"Plugin StartInShop v1.0.0 is loaded!"); } } public static class PluginInfo { public const string PLUGIN_GUID = "ViViKo.StartInShop"; public const string PLUGIN_NAME = "StartInShop"; public const string PLUGIN_VERSION = "1.0.0"; } } namespace StartInShop.Patches { [HarmonyPatch(typeof(RunManager))] public class RunManagerPatch { [HarmonyPatch("ChangeLevel")] [HarmonyPrefix] private static void ChangeLevelPatch(ref ChangeLevelType _changeLevelType) { if (StartInShop.Enabled.Value && RunManager.instance.loadLevel == 0 && SemiFunc.IsMasterClientOrSingleplayer() && (int)_changeLevelType == 1) { SemiFunc.StatSetRunCurrency(StartInShop.StartingMoney.Value / 1000); _changeLevelType = (ChangeLevelType)5; } } } } namespace System.Runtime.CompilerServices { [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] internal sealed class IgnoresAccessChecksToAttribute : Attribute { public IgnoresAccessChecksToAttribute(string assemblyName) { } } }