Please disclose if any significant portion of your mod was created 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 RichestPlayerMoneyMirrored v1.0.0
RoR2-RichestPlayerMoneyMirrored.dll
Decompiled 2 years 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.Bootstrap; using BepInEx.Configuration; using Microsoft.CodeAnalysis; using RiskOfOptions; using RiskOfOptions.Options; using RoR2; using UnityEngine.Networking; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("RoR2-RichestPlayerMoneyMirrored")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyDescription("Mod for Risk of Rain 2")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+409e129f182c78bf377b21f9655eb1dd1a838033")] [assembly: AssemblyProduct("RoR2-RichestPlayerMoneyMirrored")] [assembly: AssemblyTitle("RoR2-RichestPlayerMoneyMirrored")] [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 System.Diagnostics.CodeAnalysis { [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, Inherited = false, AllowMultiple = true)] [ExcludeFromCodeCoverage] [DebuggerNonUserCode] internal sealed class MemberNotNullAttribute : Attribute { public string[] Members { get; } public MemberNotNullAttribute(string member) { Members = new string[1] { member }; } public MemberNotNullAttribute(params string[] members) { Members = members; } } [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, Inherited = false, AllowMultiple = true)] [ExcludeFromCodeCoverage] [DebuggerNonUserCode] internal sealed class MemberNotNullWhenAttribute : Attribute { public bool ReturnValue { get; } public string[] Members { get; } public MemberNotNullWhenAttribute(bool returnValue, string member) { ReturnValue = returnValue; Members = new string[1] { member }; } public MemberNotNullWhenAttribute(bool returnValue, params string[] members) { ReturnValue = returnValue; Members = members; } } } namespace RoR2_RichestPlayerMoneyMirrored { public static class ModCompat_RiskOfOptions { [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void Initialize() { //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_0023: Expected O, but got Unknown ModSettingsManager.SetModDescription("Mirrors the Richest Player's Money to everyone on stage start.", "com.DestroyedClone.RichestPlayerMoneyMirrored", "Richest Player Money Mirrored"); ModSettingsManager.AddOption((BaseOption)new CheckBoxOption(Plugin.cfgBazaarOnly)); } } [BepInPlugin("com.DestroyedClone.RichestPlayerMoneyMirrored", "Richest Player Money Mirrored", "1.0.0")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class Plugin : BaseUnityPlugin { public static ConfigEntry<bool> cfgBazaarOnly; public void Awake() { Stage.onStageStartGlobal += Stage_onStageStartGlobal; cfgBazaarOnly = ((BaseUnityPlugin)this).Config.Bind<bool>("", "Bazaar Only", false, "If true, then this mod only applies in the bazaar."); if (Chainloader.PluginInfos.ContainsKey("com.rune580.riskofoptions")) { ModCompat_RiskOfOptions.Initialize(); } } private void Stage_onStageStartGlobal(Stage stg) { if (!NetworkServer.active || (cfgBazaarOnly.Value && Stage.instance.sceneDef.cachedName != "bazaar")) { return; } uint num = 0u; foreach (PlayerCharacterMasterController instance in PlayerCharacterMasterController.instances) { if (instance.master.money > num) { num = instance.master.money; } } foreach (PlayerCharacterMasterController instance2 in PlayerCharacterMasterController.instances) { instance2.master.money = num; } } } }