diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/api/Arclight_ForgeEventMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/api/Arclight_ForgeEventMixin.java deleted file mode 100644 index 733cd0d9..00000000 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/api/Arclight_ForgeEventMixin.java +++ /dev/null @@ -1,26 +0,0 @@ -package io.izzel.arclight.common.mixin.api; - -import io.izzel.arclight.api.Arclight; -import io.izzel.arclight.common.mod.util.PluginEventHandler; -import net.minecraftforge.eventbus.EventBus; -import net.minecraftforge.eventbus.api.IEventBus; -import org.bukkit.plugin.Plugin; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; - -@Mixin(value = Arclight.class, remap = false) -public class Arclight_ForgeEventMixin { - - /** - * @author IzzelAliz - * @reason - */ - @Overwrite - public static void registerForgeEvent(Plugin plugin, IEventBus bus, Object target) throws Throwable { - if (bus instanceof EventBus) { - PluginEventHandler.register(plugin, (EventBus) bus, target); - } else { - bus.register(target); - } - } -} diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mod/ArclightConnector.java b/arclight-common/src/main/java/io/izzel/arclight/common/mod/ArclightConnector.java index 2241bb25..fe28cce7 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mod/ArclightConnector.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mod/ArclightConnector.java @@ -18,7 +18,6 @@ public class ArclightConnector implements IMixinConnector { Mixins.addConfiguration("mixins.arclight.core.json"); Mixins.addConfiguration("mixins.arclight.bukkit.json"); Mixins.addConfiguration("mixins.arclight.forge.json"); - Mixins.addConfiguration("mixins.arclight.api.json"); LOGGER.info("mixin-load.core"); Mixins.addConfiguration("mixins.arclight.impl.forge.optimization.json"); if (ArclightConfig.spec().getOptimization().isRemoveStream()) { diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/ArclightServer.java b/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/ArclightServer.java index d2d00176..ce9e434a 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/ArclightServer.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/ArclightServer.java @@ -1,8 +1,10 @@ package io.izzel.arclight.common.mod.server; +import io.izzel.arclight.api.Arclight; import io.izzel.arclight.common.bridge.bukkit.CraftServerBridge; import io.izzel.arclight.common.bridge.core.server.MinecraftServerBridge; import io.izzel.arclight.common.mod.ArclightMod; +import io.izzel.arclight.common.mod.server.api.DefaultArclightServer; import net.minecraft.resources.ResourceKey; import net.minecraft.server.MinecraftServer; import net.minecraft.server.dedicated.DedicatedServer; @@ -26,6 +28,7 @@ public class ArclightServer { @SuppressWarnings("ConstantConditions") public static CraftServer createOrLoad(DedicatedServer console, PlayerList playerList) { if (server == null) { + Arclight.setServer(new DefaultArclightServer()); try { server = new CraftServer(console, playerList); ((MinecraftServerBridge) console).bridge$setServer(server); diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/api/DefaultArclightServer.java b/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/api/DefaultArclightServer.java new file mode 100644 index 00000000..3ad5daf5 --- /dev/null +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mod/server/api/DefaultArclightServer.java @@ -0,0 +1,24 @@ +package io.izzel.arclight.common.mod.server.api; + +import io.izzel.arclight.api.ArclightServer; +import io.izzel.arclight.api.Unsafe; +import io.izzel.arclight.common.mod.util.PluginEventHandler; +import net.minecraftforge.eventbus.EventBus; +import net.minecraftforge.eventbus.api.IEventBus; +import org.bukkit.plugin.Plugin; + +public class DefaultArclightServer implements ArclightServer { + + @Override + public void registerForgeEvent(Plugin plugin, IEventBus bus, Object target) { + try { + if (bus instanceof EventBus) { + PluginEventHandler.register(plugin, (EventBus) bus, target); + } else { + bus.register(target); + } + } catch (Throwable t) { + Unsafe.throwException(t); + } + } +} diff --git a/arclight-common/src/main/resources/mixins.arclight.api.json b/arclight-common/src/main/resources/mixins.arclight.api.json deleted file mode 100644 index dfe43215..00000000 --- a/arclight-common/src/main/resources/mixins.arclight.api.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "required": true, - "minVersion": "0.8", - "package": "io.izzel.arclight.common.mixin.api", - "target": "@env(DEFAULT)", - "refmap": "mixins.arclight.refmap.json", - "setSourceFile": true, - "injectors": { - "defaultRequire": 1 - }, - "compatibilityLevel": "JAVA_11", - "mixins": [ - "Arclight_ForgeEventMixin" - ] -} \ No newline at end of file diff --git a/build.gradle b/build.gradle index d7bf10bf..7de9d8f7 100644 --- a/build.gradle +++ b/build.gradle @@ -15,7 +15,7 @@ allprojects { agpVersion = '1.20' minecraftVersion = '1.17.1' forgeVersion = '37.0.44' - apiVersion = '1.0.+' + apiVersion = '1.1.+' toolsVersion = '1.3.+' gitHash = getGitHash() }