routine的加载
// Hearthbuddy.Windows.MainWindow // Token: 0x06000245 RID: 581 RVA: 0x0008C318 File Offset: 0x0008A518 [CompilerGenerated] private void method_27() { List<IRoutine> routines = RoutineManager.Routines; this.comboBox_1.ItemsSource = routines; if (CommandLine.Arguments.Exists("routine")) { MainWindow.Class28 @class = new MainWindow.Class28(); @class.string_0 = CommandLine.Arguments.Single("routine"); IRoutine routine = routines.FirstOrDefault(new Func<IRoutine, bool>(@class.method_0)); if (routine != null) { this.comboBox_1.SelectedItem = routine; } } else if (!string.IsNullOrEmpty(MainSettings.Instance.LastRoutine)) { MainWindow.Class29 class2 = new MainWindow.Class29(); class2.string_0 = MainSettings.Instance.LastRoutine; IRoutine routine2 = routines.FirstOrDefault(new Func<IRoutine, bool>(class2.method_0)); if (routine2 != null) { this.comboBox_1.SelectedItem = routine2; } } if (this.comboBox_1.SelectedItem == null) { this.comboBox_1.SelectedItem = routines.FirstOrDefault<IRoutine>(); } this.method_14(); }
// Triton.Bot.RoutineManager // Token: 0x060011D3 RID: 4563 RVA: 0x000B7424 File Offset: 0x000B5624 public static bool Load() { try { string routinesPath = RoutineManager.RoutinesPath; if (RoutineManager.Routines != null) { RoutineManager.ilog_0.ErrorFormat("[Load] This function can only be called once.", Array.Empty<object>()); return false; } if (!Directory.Exists(routinesPath)) { Directory.CreateDirectory(routinesPath); } AssemblyLoader<IRoutine> assemblyLoader = new AssemblyLoader<IRoutine>(routinesPath, false); RoutineManager.Routines = new List<IRoutine>(); foreach (IRoutine routine in assemblyLoader.Instances.AsReadOnly()) { try { Utility.smethod_0(routine); routine.Initialize(); RoutineManager.Routines.Add(routine); } catch (Exception exception) { RoutineManager.ilog_0.Debug("[Load] Exception thrown when initializing " + routine.Name + ". Routine will not be loaded.", exception); Utility.smethod_1(routine); routine.Deinitialize(); } } return true; } catch (Exception arg) { RoutineManager.ilog_0.ErrorFormat("[Load] An exception occurred: {0}.", arg); } return false; }
作者:Chuck Lu GitHub |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2018-09-13 execute ps1 with pwsh.exe
2014-09-13 WinForm画网格并填充颜色
2014-09-13 CodeCombat最后一题GridMancer