Siggingway/README.md

36 lines
851 B
Markdown
Executable File

# Siggingway
Signature attribute for making working with signatures in Dalamud plugins super
braindead.
## Usage
```cs
public class Plugin : IDalamudPlugin {
[Signature("DE AD ?? EF", DetourName = nameof(MyDetour)]
private Hook<MyDelegate>? MyHook { get; init; }
[Signature("CA ?? BA BE")]
private SomeGameFunctionDelegate? _someGameFunction;
private delegate void SomeGameFunctionDelegate();
public Plugin(SigScanner scanner) {
Siggingway.Siggingway.Initialise(scanner, this);
// you still have to enable the hook
// be sure to check if it's null
this.MyHook?.Enable();
}
public void Dispose() {
this.MyHook?.Dispose();
}
private void MyDetour() {
// this is called by the hook!
this._someGameFunction?.Invoke();
}
}
```