Decompiled source of zman mod v1.0.3

zman-zman_mod/zman_mod.dll

Decompiled a day ago
using 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.Logging;
using Microsoft.CodeAnalysis;
using On.RoR2;
using RoR2;
using UnityEngine;
using UnityEngine.Networking;

[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: AssemblyCompany("zman_mod")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("zman_mod")]
[assembly: AssemblyTitle("zman_mod")]
[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 zman_mod
{
	internal static class Log
	{
		private static ManualLogSource _logSource;

		internal static void Init(ManualLogSource logSource)
		{
			_logSource = logSource;
		}

		internal static void Debug(object data)
		{
			_logSource.LogDebug(data);
		}

		internal static void Error(object data)
		{
			_logSource.LogError(data);
		}

		internal static void Fatal(object data)
		{
			_logSource.LogFatal(data);
		}

		internal static void Info(object data)
		{
			_logSource.LogInfo(data);
		}

		internal static void Message(object data)
		{
			_logSource.LogMessage(data);
		}

		internal static void Warning(object data)
		{
			_logSource.LogWarning(data);
		}
	}
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInPlugin("zmanbro.zman_mod", "zman_mod", "1.0.3")]
	public class zman_mod : BaseUnityPlugin
	{
		public const string PluginGUID = "zmanbro.zman_mod";

		public const string PluginAuthor = "zmanbro";

		public const string PluginName = "zman_mod";

		public const string PluginVersion = "1.0.3";

		public void Awake()
		{
			Log.Init(((BaseUnityPlugin)this).Logger);
			CharacterMaster.onStartGlobal += delegate(CharacterMaster master)
			{
				master.inventory.onInventoryChanged += delegate
				{
					//IL_0006: Unknown result type (might be due to invalid IL or missing references)
					//IL_000b: Unknown result type (might be due to invalid IL or missing references)
					//IL_0017: Unknown result type (might be due to invalid IL or missing references)
					//IL_0033: Unknown result type (might be due to invalid IL or missing references)
					//IL_0038: Unknown result type (might be due to invalid IL or missing references)
					//IL_003f: Unknown result type (might be due to invalid IL or missing references)
					//IL_0050: Unknown result type (might be due to invalid IL or missing references)
					//IL_0055: Unknown result type (might be due to invalid IL or missing references)
					//IL_005f: Unknown result type (might be due to invalid IL or missing references)
					//IL_0064: Unknown result type (might be due to invalid IL or missing references)
					//IL_0069: Unknown result type (might be due to invalid IL or missing references)
					//IL_006e: Unknown result type (might be due to invalid IL or missing references)
					//IL_006f: Unknown result type (might be due to invalid IL or missing references)
					//IL_0074: Unknown result type (might be due to invalid IL or missing references)
					//IL_0079: Unknown result type (might be due to invalid IL or missing references)
					//IL_0080: Unknown result type (might be due to invalid IL or missing references)
					//IL_01af: 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_01bc: Unknown result type (might be due to invalid IL or missing references)
					//IL_01cd: Unknown result type (might be due to invalid IL or missing references)
					//IL_01d2: Unknown result type (might be due to invalid IL or missing references)
					//IL_01d4: Unknown result type (might be due to invalid IL or missing references)
					//IL_01d9: Unknown result type (might be due to invalid IL or missing references)
					//IL_01de: Unknown result type (might be due to invalid IL or missing references)
					//IL_01df: Unknown result type (might be due to invalid IL or missing references)
					//IL_01e4: Unknown result type (might be due to invalid IL or missing references)
					//IL_01e9: Unknown result type (might be due to invalid IL or missing references)
					//IL_01f0: Unknown result type (might be due to invalid IL or missing references)
					//IL_0257: Unknown result type (might be due to invalid IL or missing references)
					//IL_025c: Unknown result type (might be due to invalid IL or missing references)
					//IL_026c: Expected O, but got Unknown
					//IL_0279: Unknown result type (might be due to invalid IL or missing references)
					//IL_028c: Unknown result type (might be due to invalid IL or missing references)
					ItemIndex val = ItemCatalog.FindItemIndex("FlatHealth");
					if (master.inventory.GetItemCount(val) > 0)
					{
						GameObject masterPrefab = MasterCatalog.FindMasterPrefab("BrotherMaster");
						CharacterMaster val2 = new MasterSummon
						{
							masterPrefab = masterPrefab,
							position = master.GetBody().transform.position + Vector3.up * 10f,
							rotation = Quaternion.identity,
							summonerBodyObject = null,
							teamIndexOverride = (TeamIndex)2
						}.Perform();
						if (Object.op_Implicit((Object)(object)val2) && Object.op_Implicit((Object)(object)val2.inventory))
						{
							val2.inventory.GiveItem(Items.CritGlasses, 10);
							MonoBehaviour.print((object)"Gave mithrix  10 Crit Glasses");
							val2.inventory.GiveItem(Items.Knurl, 10);
							MonoBehaviour.print((object)"Gave mithrix  10 Knurls");
							val2.inventory.GiveItem(Items.BleedOnHitAndExplode, 1);
							MonoBehaviour.print((object)"Gave mithrix  1 Shatter Spleen");
							val2.inventory.GiveItem(Items.CritDamage, 3);
							MonoBehaviour.print((object)"Gave mithrix  3 Laser Scopes");
							val2.inventory.GiveItem(Items.ExplodeOnDeath, 100);
							MonoBehaviour.print((object)"Gave mithrix 100 wisps");
							val2.inventory.GiveItem(Items.SprintOutOfCombat, 1);
							MonoBehaviour.print((object)"Gave mithrix a whip");
							val2.GetBody().RecalculateStats();
						}
						GameObject masterPrefab2 = MasterCatalog.FindMasterPrefab("GupMaster");
						Vector3 val3 = default(Vector3);
						for (int i = 0; i < 30; i++)
						{
							((Vector3)(ref val3))..ctor(Random.Range(-100f, 100f), 100f, Random.Range(-100f, 100f));
							CharacterMaster val4 = new MasterSummon
							{
								masterPrefab = masterPrefab2,
								position = master.GetBody().transform.position + val3,
								rotation = Quaternion.identity,
								summonerBodyObject = null,
								teamIndexOverride = (TeamIndex)2
							}.Perform();
							if (Object.op_Implicit((Object)(object)val4) && Object.op_Implicit((Object)(object)val4.inventory))
							{
								val4.inventory.GiveItem(Items.LightningStrikeOnHit, 1);
								MonoBehaviour.print((object)"Made Gup zeus");
							}
						}
						Chat.SendBroadcastChat((ChatMessageBase)new SimpleChatMessage
						{
							baseToken = "<color=#ff0000> YOU WILL PAY FOR YOUR SINS</color>"
						});
						master.inventory.RemoveItemPermanent(val, 1);
						master.inventory.RemoveItemTemp(val, 1f);
					}
				};
			};
		}

		private void CharacterBody_OnInventoryChanged(orig_OnInventoryChanged orig, CharacterBody self)
		{
			if (NetworkServer.active)
			{
			}
			orig.Invoke(self);
		}

		private void Update()
		{
		}
	}
}