Make it 1.8 compatible

This commit is contained in:
Lixfel
2025-04-05 18:02:48 +02:00
parent a6c46d0270
commit 812e78d277
4 changed files with 13 additions and 4 deletions
@@ -19,6 +19,7 @@
package de.steamwar.techhider;
import de.steamwar.Reflection;
import de.steamwar.core.Core;
import de.steamwar.core.VersionDependent;
import org.bukkit.Material;
@@ -28,6 +29,9 @@ import java.util.Set;
public interface BlockIds {
BlockIds impl = VersionDependent.getVersionImpl(Core.getInstance());
Reflection.Method getCombinedId = Reflection.getTypedMethod(TechHider.block, null, int.class, TechHider.iBlockData);
int getCombinedId(Object iBlockData);
int materialToId(Material material);
Set<Integer> materialToAllIds(Material material);
}
@@ -49,9 +49,8 @@ public class TechHider {
public static final Class<?> craftMagicNumbers = Reflection.getClass("org.bukkit.craftbukkit.util.CraftMagicNumbers");
private static final Reflection.Method getBlockByMaterial = Reflection.getTypedMethod(craftMagicNumbers, "getBlock", block, Material.class);
private static final Reflection.Method getCombinedIdByIBlockData = Reflection.getTypedMethod(block, null, int.class, iBlockData);
public boolean iBlockDataHidden(Object iBlockData) {
return obfuscateIds.contains(getCombinedIdByIBlockData.invoke(null, iBlockData));
return obfuscateIds.contains(BlockIds.impl.getCombinedId(iBlockData));
}
public static final Object AIR = getBlockDataByBlock.invoke(getBlockByMaterial.invoke(null, Material.AIR));