public GameFunctions(SigScanner scanner) { var getUiModulePtr = scanner.ScanText("E8 ?? ?? ?? ?? 48 83 7F ?? 00 48 8B F0"); var easierProcessChatBoxPtr = scanner.ScanText("48 89 5C 24 ?? 57 48 83 EC 20 48 8B FA 48 8B D9 45 84 C9"); this.uiModulePtr = scanner.GetStaticAddressFromSig("48 8B 0D ?? ?? ?? ?? 48 8D 54 24 ?? 48 83 C1 10 E8 ?? ?? ?? ??"); this.getUiModule = Marshal.GetDelegateForFunctionPointer <GetUIModuleDelegate>(getUiModulePtr); this.easierProcessChatBox = Marshal.GetDelegateForFunctionPointer <EasierProcessChatBoxDelegate>(easierProcessChatBoxPtr); }
private void InitCommands(object sender = null, EventArgs e = null) { try { var getUIModulePtr = pluginInterface.TargetModuleScanner.ScanText("E8 ?? ?? ?? ?? 48 83 7F ?? 00 48 8B F0"); var easierProcessChatBoxPtr = pluginInterface.TargetModuleScanner.ScanText("48 89 5C 24 ?? 57 48 83 EC 20 48 8B FA 48 8B D9 45 84 C9"); uiModulePtr = pluginInterface.TargetModuleScanner.GetStaticAddressFromSig("48 8B 0D ?? ?? ?? ?? 48 8D 54 24 ?? 48 83 C1 10 E8 ?? ?? ?? ??"); GetUIModule = Marshal.GetDelegateForFunctionPointer <GetUIModuleDelegate>(getUIModulePtr); _EasierProcessChatBox = Marshal.GetDelegateForFunctionPointer <EasierProcessChatBoxDelegate>(easierProcessChatBoxPtr); } catch { var chat = pluginInterface.Framework.Gui.Chat; chat.PrintChat(new XivChatEntry { MessageBytes = Encoding.UTF8.GetBytes("[QoLBar] Error with loading signatures") }); } }