private void WarnIfHasTranspiler(PatchInfo patchInfo, string melonName) { if (patchInfo.transpilers.Length <= 0) { return; } MelonLogger.ManualWarning(melonName, $"Harmony: Method {Original.FullDescription()} will only have its Unhollowed IL available to Transpilers, " + "suggesting you either don't use any Transpilers when Patching this Method or ignore this Warning if modifying the Unhollowed IL is your goal."); }
private void WarnIfOriginalMethodIsInlined(string melonName) { int callerCount = UnhollowerSupport.GetIl2CppMethodCallerCount(Original) ?? -1; if ((callerCount > 0) || UnityMagicMethods.IsUnityMagicMethod(Original)) { return; } MelonLogger.ManualWarning(melonName, $"Harmony: Method {Original.FullDescription()} does not appear to get called directly from anywhere, " + "suggesting it may have been inlined and your patch may not be called."); }