Decompiled source of UltraHellMode v1.0.0

Ultrahell mode.dll

Decompiled 21 hours ago
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using HarmonyLib;
using UnityEngine;
using UnityEngine.AI;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("Ultrahell mode")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("Ultrahell mode")]
[assembly: AssemblyTitle("Ultrahell mode")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace UltrakillHellMod;

[BepInPlugin("com.kirill.ultrakill.hellmode", "Ultrakill Hell Mode", "1.7.0")]
public class HellModePlugin : BaseUnityPlugin
{
	private void Awake()
	{
		//IL_0017: Unknown result type (might be due to invalid IL or missing references)
		//IL_001d: Expected O, but got Unknown
		((BaseUnityPlugin)this).Logger.LogInfo((object)"[HELL MOD] Запущено! Адский режим активирован намертво на всех уровнях.");
		Harmony val = new Harmony("com.kirill.ultrakill.hellmode");
		val.PatchAll();
	}
}
[HarmonyPatch(typeof(EnemyIdentifier), "Start")]
public class EnemyPatch
{
	[HarmonyPostfix]
	private static void Postfix(EnemyIdentifier __instance)
	{
		//IL_007f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0085: Invalid comparison between Unknown and I4
		if (!((Object)(object)__instance == (Object)null))
		{
			__instance.health *= 1.5f;
			NavMeshAgent component = ((Component)__instance).GetComponent<NavMeshAgent>();
			if ((Object)(object)component != (Object)null)
			{
				component.speed *= 1.15f;
				component.acceleration *= 1.3f;
			}
			if ((Object)(object)((Component)__instance).gameObject.GetComponent<RadAura>() == (Object)null)
			{
				((Component)__instance).gameObject.AddComponent<RadAura>();
			}
			if ((int)__instance.enemyType == 0)
			{
				((Component)__instance).gameObject.SendMessage("割", (SendMessageOptions)1);
				((Component)__instance).gameObject.SendMessage("Awaken", (SendMessageOptions)1);
			}
		}
	}
}
public class RadAura : MonoBehaviour
{
	private float t = 0f;

	private void Update()
	{
		//IL_0051: Unknown result type (might be due to invalid IL or missing references)
		//IL_005c: Unknown result type (might be due to invalid IL or missing references)
		//IL_00df: Unknown result type (might be due to invalid IL or missing references)
		t += Time.deltaTime;
		if (t < 0.15f)
		{
			return;
		}
		t = 0f;
		NewMovement instance = MonoSingleton<NewMovement>.Instance;
		if (!((Object)(object)instance == (Object)null) && !instance.dead && !(Vector3.Distance(((Component)this).transform.position, ((Component)instance).transform.position) > 7.5f))
		{
			instance.hp = Mathf.Clamp(instance.hp - 1, 1, 100);
			instance.antiHp = Mathf.Clamp(instance.antiHp + 3f, 0f, 99f);
			HudMessageReceiver instance2 = MonoSingleton<HudMessageReceiver>.Instance;
			if ((Object)(object)instance2 != (Object)null)
			{
				((Component)instance2).gameObject.SendMessage("FlashImage", (object)new Color(0.05f, 0.45f, 0f, 0.18f), (SendMessageOptions)1);
			}
		}
	}
}
[HarmonyPatch(typeof(Projectile), "Start")]
public class ProjPatch
{
	[HarmonyPostfix]
	private static void Postfix(Projectile __instance)
	{
		if (!((Object)(object)__instance == (Object)null) && __instance.damage > 0f)
		{
			__instance.damage = Mathf.RoundToInt(__instance.damage * 1.5f);
		}
	}
}