From 5d3e508dad71f156724838db1466dccff5b6ff5a Mon Sep 17 00:00:00 2001 From: Adam Bennett Date: Wed, 3 Apr 2024 00:31:07 -0700 Subject: [PATCH 1/2] Added HasModule IPC --- BossMod/Framework/IPCProvider.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/BossMod/Framework/IPCProvider.cs b/BossMod/Framework/IPCProvider.cs index 24a51d35c3..60e34f4862 100644 --- a/BossMod/Framework/IPCProvider.cs +++ b/BossMod/Framework/IPCProvider.cs @@ -1,4 +1,6 @@ -namespace BossMod; +using Dalamud.Game.ClientState.Objects.Types; + +namespace BossMod; class IPCProvider : IDisposable { @@ -6,6 +8,7 @@ class IPCProvider : IDisposable public IPCProvider(Autorotation autorotation) { + Register("HasModule", (GameObject obj) => ModuleRegistry.FindByOID(obj.DataId) != null); Register("IsMoving", () => ActionManagerEx.Instance!.InputOverride.IsMoving()); Register("ForbiddenZonesCount", () => autorotation.Hints.ForbiddenZones.Count); Register("InitiateCombat", () => autorotation.ClassActions?.UpdateAutoAction(CommonActions.AutoActionAIFight, float.MaxValue, true)); @@ -24,6 +27,12 @@ private void Register(string name, Func func) p.RegisterFunc(func); _disposeActions.Add(p.UnregisterFunc); } + private void Register(string name, Func func) + { + var p = Service.PluginInterface.GetIpcProvider("BossMod." + name); + p.RegisterFunc(func); + _disposeActions.Add(p.UnregisterFunc); + } private void Register(string name, Action func) { From 4e752bce311eb85fda4ee0077e940f5ececd0beb Mon Sep 17 00:00:00 2001 From: Adam Bennett Date: Wed, 3 Apr 2024 00:32:14 -0700 Subject: [PATCH 2/2] fixed spacing --- BossMod/Framework/IPCProvider.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/BossMod/Framework/IPCProvider.cs b/BossMod/Framework/IPCProvider.cs index 60e34f4862..4afb2f2b2c 100644 --- a/BossMod/Framework/IPCProvider.cs +++ b/BossMod/Framework/IPCProvider.cs @@ -27,6 +27,7 @@ private void Register(string name, Func func) p.RegisterFunc(func); _disposeActions.Add(p.UnregisterFunc); } + private void Register(string name, Func func) { var p = Service.PluginInterface.GetIpcProvider("BossMod." + name);