diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/bukkit/PotionEffectTypeMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/bukkit/PotionEffectTypeMixin.java new file mode 100644 index 00000000..e6b6c05e --- /dev/null +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/bukkit/PotionEffectTypeMixin.java @@ -0,0 +1,28 @@ +package io.izzel.arclight.common.mixin.bukkit; + +import org.bukkit.potion.PotionEffectType; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.Arrays; + +@Mixin(PotionEffectType.class) +public class PotionEffectTypeMixin { + + @Shadow @Final private static PotionEffectType[] byId; + + /** + * @author IzzelAliz + * @reason + */ + @Overwrite + @NotNull + public static PotionEffectType[] values() { + int from = byId[0] == null ? 1 : 0; + int to = byId[byId.length - 1] == null ? byId.length - 1 : byId.length; + return Arrays.copyOfRange(byId, from, to); + } +} diff --git a/arclight-common/src/main/resources/mixins.arclight.bukkit.json b/arclight-common/src/main/resources/mixins.arclight.bukkit.json index 13c041df..e3ab39a0 100644 --- a/arclight-common/src/main/resources/mixins.arclight.bukkit.json +++ b/arclight-common/src/main/resources/mixins.arclight.bukkit.json @@ -26,6 +26,7 @@ "JavaPluginLoaderMixin", "JavaPluginMixin", "MaterialMixin", - "PluginClassLoaderMixin" + "PluginClassLoaderMixin", + "PotionEffectTypeMixin" ] } \ No newline at end of file