Browse Source

Cleanup: Remove Hydrogen compat
Hydrogen has been archived and will never be released on 1.18+

malte0811 3 years ago
parent
commit
afbd75a622

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/blockstatecache/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.DEDUP_BLOCKSTATE_CACHE, false);
+        super(FerriteConfig.DEDUP_BLOCKSTATE_CACHE);
     }
 }

+ 2 - 25
common/src/main/java/malte0811/ferritecore/mixin/config/FerriteMixinConfig.java

@@ -6,48 +6,25 @@ import org.apache.logging.log4j.Logger;
 import org.objectweb.asm.tree.ClassNode;
 import org.spongepowered.asm.mixin.extensibility.IMixinConfigPlugin;
 import org.spongepowered.asm.mixin.extensibility.IMixinInfo;
-import org.spongepowered.asm.service.MixinService;
 
-import javax.annotation.Nullable;
-import java.io.IOException;
 import java.util.List;
 import java.util.Set;
 
 public abstract class FerriteMixinConfig implements IMixinConfigPlugin {
     protected static final Logger LOGGER = LogManager.getLogger("ferritecore-mixin");
-    protected static final boolean HAS_HYDROGEN;
     private String prefix = null;
-    @Nullable
     private final FerriteConfig.Option enableOption;
-    private final boolean disableWithHydrogen;
 
-    static {
-        boolean hasHydrogen;
-        try {
-            // This does *not* load the class!
-            MixinService.getService().getBytecodeProvider().getClassNode(
-                    "me.jellysquid.mods.hydrogen.common.HydrogenMod");
-            hasHydrogen = true;
-        } catch (ClassNotFoundException | IOException e) {
-            hasHydrogen = false;
-        }
-        HAS_HYDROGEN = hasHydrogen;
-    }
-
-    protected FerriteMixinConfig(@Nullable FerriteConfig.Option enableOption, boolean disableWithHydrogen) {
+    protected FerriteMixinConfig(FerriteConfig.Option enableOption) {
         this.enableOption = enableOption;
-        this.disableWithHydrogen = disableWithHydrogen;
     }
 
     @Override
     public boolean shouldApplyMixin(String targetClassName, String mixinClassName) {
         Preconditions.checkState(mixinClassName.startsWith(prefix), "Unexpected prefix on " + mixinClassName);
-        if (enableOption != null && !enableOption.isEnabled()) {
+        if (!enableOption.isEnabled()) {
             LOGGER.warn("Mixin " + mixinClassName + " is disabled by config");
             return false;
-        } else if (HAS_HYDROGEN && disableWithHydrogen) {
-            LOGGER.warn("Mixin " + mixinClassName + " is disabled as Hydrogen is installed");
-            return false;
         } else {
             return true;
         }

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/dedupbakedquad/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.DEDUP_QUADS, true);
+        super(FerriteConfig.DEDUP_QUADS);
     }
 }

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/dedupmultipart/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.DEDUP_MULTIPART, false);
+        super(FerriteConfig.DEDUP_MULTIPART);
     }
 }

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/fastmap/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.NEIGHBOR_LOOKUP, false);
+        super(FerriteConfig.NEIGHBOR_LOOKUP);
     }
 }

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/mrl/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.MRL_CACHE, true);
+        super(FerriteConfig.MRL_CACHE);
     }
 }

+ 1 - 1
common/src/main/java/malte0811/ferritecore/mixin/predicates/Config.java

@@ -5,6 +5,6 @@ import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
 
 public class Config extends FerriteMixinConfig {
     public Config() {
-        super(FerriteConfig.PREDICATES, false);
+        super(FerriteConfig.PREDICATES);
     }
 }

+ 0 - 23
fabric/src/main/java/malte0811/ferritecore/mixin/fabric/Config.java

@@ -1,23 +0,0 @@
-package malte0811.ferritecore.mixin.fabric;
-
-import malte0811.ferritecore.mixin.config.FerriteConfig;
-import malte0811.ferritecore.mixin.config.FerriteMixinConfig;
-
-import java.util.Collections;
-import java.util.List;
-
-public class Config extends FerriteMixinConfig {
-    public Config() {
-        super(null, false);
-    }
-
-    @Override
-    public List<String> getMixins() {
-        if (HAS_HYDROGEN && FerriteConfig.NEIGHBOR_LOOKUP.isEnabled()) {
-            LOGGER.warn("Adding Mixin to disable Hydrogen's MixinState#postCreateWithTable");
-            return Collections.singletonList("HydrogenStateholderMixin");
-        } else {
-            return super.getMixins();
-        }
-    }
-}

+ 0 - 26
fabric/src/main/java/malte0811/ferritecore/mixin/fabric/HydrogenStateholderMixin.java

@@ -1,26 +0,0 @@
-package malte0811.ferritecore.mixin.fabric;
-
-import net.minecraft.world.level.block.state.StateHolder;
-import net.minecraft.world.level.block.state.properties.Property;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-
-import java.util.Map;
-
-// This mixin is conditionally added by the Mixin config
-@SuppressWarnings("UnusedMixin")
-@Mixin(value = StateHolder.class, priority = 900)
-public class HydrogenStateholderMixin<S> {
-    /**
-     * Disable the callback injected by Hydrogen, since it relies on the neighbor table being present, which is not the
-     * case after this method is called with FASTMAP enabled.<br>
-     * This is a massive hack, but is currently probably the cleanest approach. If H gets the system for
-     * disabling Mixins already implemented in Na/Li that system should be used instead!
-     */
-    @Inject(method = "populateNeighbours", at = @At("RETURN"), cancellable = true)
-    public void postPopulateNeighbors(Map<Map<Property<?>, Comparable<?>>, S> map, CallbackInfo ci) {
-        ci.cancel();
-    }
-}

+ 0 - 1
fabric/src/main/resources/ferritecore.fabric.mixin.json

@@ -8,6 +8,5 @@
   "injectors": {
     "defaultRequire": 1
   },
-  "plugin": "malte0811.ferritecore.mixin.fabric.Config",
   "minVersion": "0.8"
 }