private static void PostInstanciate(IPipMod mod) { if (optionsTypes.TryGetValue(mod.GetType(), out var options)) { Logger.Info("Loading options for: {0}", mod.Name); reflectMergeModOptions.MakeGenericMethod(new [] { options }).Invoke(null, new [] { mod }); } }
internal static void ModHadError(IPipMod mod, PipMod.Step step) { /* var kmod = GetKMod(mod); * if (kmod.label.distribution_platform != KMod.Label.DistributionPlatform.Dev && kmod.label.distribution_platform != KMod.Label.DistributionPlatform.Local) * { * kmod.status = KMod.Mod.Status.ReinstallPending; * } * Logger.Debug(kmod.status.ToString()); * KMod.Manager.Dialog( * title: STRINGS.UI.FRONTEND.MOD_DIALOGS.STEP_FAILURE.TITLE, * text: string.Format(STRINGS.UI.FRONTEND.MOD_DIALOGS.STEP_FAILURE.MESSAGE, step.ToString().ToUpper(), mod.Name), * confirm_text: global::STRINGS.UI.FRONTEND.MOD_DIALOGS.RESTART.OK, * on_confirm: App.instance.Restart, * cancel_text: global::STRINGS.UI.FRONTEND.MOD_DIALOGS.RESTART.CANCEL, * on_cancel: PLUtil.NOOP, * activateBlackBackground: true * ); */ }
private static void MergeModOptions <TOptions>(IPipMod mod) { MergeOptions((IHaveOptions <TOptions>)mod); SaveOptions((IHaveOptions <TOptions>)mod); }
private static Dictionary <PipMod.Step, List <MethodInfo> > GetStepHandlersFor(IPipMod mod) { return(GetStepHandlersFor(mod.GetType().Assembly)); }
private static List <MethodInfo> GetStepHandlersFor(IPipMod mod, PipMod.Step step) { return(GetStepHandlersFor(mod.GetType().Assembly, step)); }
internal static void DoStep(PipMod.Step step, IPipMod mod) { DoStep(step, mod.GetType().Assembly); }
internal static KMod.Mod GetKMod(IPipMod mod) { return(Global.Instance.modManager.mods.Find(m => m.label.id == System.IO.Path.GetFileName(PLUtil.GetAssemblyDir(mod.GetType())))); }