From a293b847edba21a88c3fd2513ad333fae60f659b Mon Sep 17 00:00:00 2001 From: Dev Date: Fri, 7 Jul 2023 16:46:03 +0100 Subject: [PATCH] Revert accessing public method, retrun to protected virtual function --- .../Patches/RaidFix/GetNewBotTemplatesPatch.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/project/Aki.SinglePlayer/Patches/RaidFix/GetNewBotTemplatesPatch.cs b/project/Aki.SinglePlayer/Patches/RaidFix/GetNewBotTemplatesPatch.cs index 05b24a5..e37c645 100644 --- a/project/Aki.SinglePlayer/Patches/RaidFix/GetNewBotTemplatesPatch.cs +++ b/project/Aki.SinglePlayer/Patches/RaidFix/GetNewBotTemplatesPatch.cs @@ -25,7 +25,7 @@ namespace Aki.SinglePlayer.Patches.RaidFix { var desiredType = typeof(BotsPresets); _getNewProfileMethod = desiredType - .GetMethod(nameof(BotsPresets.GetNewProfile), PatchConstants.PublicFlags); + .GetMethod(nameof(BotsPresets.GetNewProfile), BindingFlags.Instance | BindingFlags.NonPublic); // want the func with 2 params (protected) Logger.LogDebug($"{this.GetType().Name} Type: {desiredType?.Name}"); Logger.LogDebug($"{this.GetType().Name} Method: {_getNewProfileMethod?.Name}"); @@ -62,7 +62,17 @@ namespace Aki.SinglePlayer.Patches.RaidFix var taskScheduler = TaskScheduler.FromCurrentSynchronizationContext(); var taskAwaiter = (Task)null; - var profile = (Profile)_getNewProfileMethod.Invoke(__instance, new object[] { data, true }); + + try + { + _getNewProfileMethod.Invoke(__instance, new object[] { data, true }); + } + catch (Exception e) + { + Logger.LogDebug($"getnewbot failed: {e.Message} {e.InnerException}"); + throw; + } + // load from server var source = data.PrepareToLoadBackend(1).ToList();