diff --git a/README.MD b/README.MD new file mode 100644 index 0000000..0fac1fa --- /dev/null +++ b/README.MD @@ -0,0 +1,15 @@ +# MixinExtras + +A small companion library to [Mixin](https://github.com/SpongePowered/Mixin/), designed to help you write your Mixins in +a more expressive and compatible way. + +More information about each feature offered can be found at the [Wiki](https://github.com/LlamaLad7/MixinExtras/wiki). + +## Setup +For the time being, I recommend depending on this library via [JitPack](https://jitpack.io/). +After adding its repository to your build script, you can depend on it like so +```gradle +dependencies { + implementation("com.github.LlamaLad7:MixinExtras:0.0.1") +} +``` \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index b3a3fce..7611051 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,7 +4,7 @@ plugins { } group = "com.llamalad7" -version = "1.0-SNAPSHOT" +version = "0.0.1" repositories { mavenCentral() @@ -12,9 +12,9 @@ repositories { } dependencies { - implementation("org.spongepowered:mixin:0.8.5") - implementation("org.apache.commons:commons-lang3:3.3.2") - implementation("org.ow2.asm:asm-debug-all:5.2") + compileOnly("org.spongepowered:mixin:0.8.5") + compileOnly("org.apache.commons:commons-lang3:3.3.2") + compileOnly("org.ow2.asm:asm-debug-all:5.2") } publishing { @@ -22,7 +22,6 @@ publishing { create("maven") { groupId = "com.llamalad7" artifactId = "MixinExtras" - version = "1.0-SNAPSHOT" from(components["java"]) } diff --git a/src/main/java/com/llamalad7/mixinextras/MixinExtrasBootstrap.java b/src/main/java/com/llamalad7/mixinextras/MixinExtrasBootstrap.java index 0348287..7d5322e 100644 --- a/src/main/java/com/llamalad7/mixinextras/MixinExtrasBootstrap.java +++ b/src/main/java/com/llamalad7/mixinextras/MixinExtrasBootstrap.java @@ -5,8 +5,14 @@ import org.spongepowered.asm.mixin.injection.struct.InjectionInfo; public class MixinExtrasBootstrap { + private static boolean initialized = false; + public static void init() { - InjectionInfo.register(ModifyExpressionValueInjectionInfo.class); - InjectionInfo.register(WrapWithConditionInjectionInfo.class); + if (!initialized) { + initialized = true; + + InjectionInfo.register(ModifyExpressionValueInjectionInfo.class); + InjectionInfo.register(WrapWithConditionInjectionInfo.class); + } } }