Initial commit: AetherBags + KamiToolKit for FC Gitea
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
using System.Diagnostics;
|
||||
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
||||
|
||||
namespace KamiToolKit.Classes;
|
||||
|
||||
/// WARNING: These features are potentially extremely volatile, use at your own risk.
|
||||
public unsafe class Experimental {
|
||||
private static Experimental? instance;
|
||||
public static Experimental Instance => instance ??= new Experimental();
|
||||
|
||||
public void EnableHooks() { }
|
||||
|
||||
public void DisposeHooks() {
|
||||
}
|
||||
|
||||
// WARNING: May result in undefined state or accidental network requests
|
||||
// Use at your own risk.
|
||||
[Conditional("DEBUG")]
|
||||
public static void ForceOpenAddon(AgentId agentId, int delayTicks = 0) {
|
||||
if (delayTicks is not 0) {
|
||||
DalamudInterface.Instance.Framework.RunOnTick(() => {
|
||||
AgentModule.Instance()->GetAgentByInternalId(agentId)->Show();
|
||||
}, delayTicks: delayTicks);
|
||||
}
|
||||
else {
|
||||
DalamudInterface.Instance.Framework.RunOnFrameworkThread(() => {
|
||||
AgentModule.Instance()->GetAgentByInternalId(agentId)->Show();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// WARNING: May result in undefined state or accidental network requests
|
||||
// Use at your own risk.
|
||||
[Conditional("DEBUG")]
|
||||
public static void ForceCloseAddon(AgentId agentId)
|
||||
=> DalamudInterface.Instance.Framework.RunOnFrameworkThread(() => {
|
||||
AgentModule.Instance()->GetAgentByInternalId(agentId)->Hide();
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user