diff options
author | alemidev <me@alemi.dev> | 2023-02-06 01:10:18 +0100 |
---|---|---|
committer | alemidev <me@alemi.dev> | 2023-02-06 01:10:18 +0100 |
commit | 9821169333f0fcfe7a23179906270668700a382d (patch) | |
tree | cb9120c5e86ea5c1b08554511a23689b0bb2d63d /src/main/resources | |
parent | bc3eadea3bb1589ce70359ee9af854bd2a041440 (diff) |
feat: simplified impl with interface + fix loading
only load patches rather than looking into all mods manually. patch
loading is implemented using ServiceLoader, thus removing most unchecked
casts and reflection accesses to methods, and directly invoking
inject(). This is much more efficient and allows to store only loader in
the Launch Plugin and only patches in mods themselves. The modder patch
interface is still super ripe, requiring each method to be implemented
returning a raw string with the unmapped name, but helpers and utils and
build plugins can be developed later on to make this API more friendly.
Diffstat (limited to 'src/main/resources')
-rw-r--r-- | src/main/resources/META-INF/services/bscv.asm.api.IInjector | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/main/resources/META-INF/services/bscv.asm.api.IInjector b/src/main/resources/META-INF/services/bscv.asm.api.IInjector new file mode 100644 index 0000000..076ba1a --- /dev/null +++ b/src/main/resources/META-INF/services/bscv.asm.api.IInjector @@ -0,0 +1,2 @@ +bscv.asm.patches.TestPatch$FramerateFix +bscv.asm.patches.TestPatch$TickPatch |