using System; using System.Diagnostics; using System.Reflection; using System.Resources; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using HarmonyLib; using Il2Cpp; using Il2CppActiveRagdoll; using Il2CppDinoFracture; using Il2CppInterop.Runtime.InteropTypes.Arrays; using MelonLoader; using Microsoft.CodeAnalysis; using UnityEngine; using ViltrumiteChop; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: MelonInfo(typeof(Core), "ViltrumiteChop", "1.1.0", "MajedCT", null)] [assembly: MelonGame("Kubunautilus", "BrutalistickVR")] [assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] [assembly: AssemblyCompany("ViltrumiteChop")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("ViltrumiteChop")] [assembly: AssemblyTitle("ViltrumiteChop")] [assembly: NeutralResourcesLanguage("en-US")] [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 ViltrumiteChop { public class Core : MelonMod { [HarmonyPatch(typeof(StickHealth), "HitDetected")] internal class HitPatch { public static void Prefix(StickHealth __instance, ref ColliderBridge colBridge, ref Collision collision, ref string colType, ref string dmgSource, ContactPoint contact) { if (((Object)colBridge).name != "Neck" || !(dmgSource == "blunt")) { return; } GameObject gameObject = ((Component)__instance).gameObject; Transform val = gameObject.transform.FindChild("Body"); SliceOnInputCustom component = ((Component)((Component)val).transform.FindChild("Neck")).GetComponent(); if (((Object)((Component)component).gameObject).name == "Neck" && (((Object)collision.gameObject).name == "Physics LeftHand" || ((Object)collision.gameObject).name == "Physics RightHand")) { TransferJointsOnFractureCustom componentInParent = ((Component)component).GetComponentInParent(); componentInParent.DistanceTolerance = 0f; component.ForceFracture(); if ((Object)(object)Core.killCount != (Object)null && !__instance.isDead) { __instance.isDead = true; KillCounterScript killCount = Core.killCount; int decapitationKillsCounted = killCount.decapitationKillsCounted; killCount.decapitationKillsCounted = decapitationKillsCounted + 1; } } } } public static KillCounterScript killCount; public override void OnInitializeMelon() { ((MelonBase)this).LoggerInstance.Msg("Initialized."); } public override void OnSceneWasInitialized(int buildIndex, string sceneName) { killCount = null; if (!(sceneName != "MainMenuScene") || !(sceneName != "MainHub")) { return; } Il2CppArrayBase val = Object.FindObjectsOfType(true); foreach (KillCounterScript item in val) { if ((Object)(object)item != (Object)null) { killCount = item; break; } } } } }