forked from SteamWar/SteamWar
resolve last compile issue in techhider
This commit is contained in:
@@ -21,11 +21,15 @@ package de.steamwar.techhider;
|
||||
|
||||
import de.steamwar.Reflection;
|
||||
import net.minecraft.core.IdMapper;
|
||||
import net.minecraft.core.registries.BuiltInRegistries;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import net.minecraft.world.level.material.Fluids;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Registry;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
import org.bukkit.block.data.Waterlogged;
|
||||
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
|
||||
|
||||
import java.util.HashSet;
|
||||
@@ -39,18 +43,20 @@ public class BlockIds {
|
||||
}
|
||||
|
||||
private static final FluidState water = Fluids.WATER.getSource(false);
|
||||
private static final Iterable<BlockState> registryBlockId = (Iterable<BlockState>) Reflection.getField(TechHider.block, IdMapper.class, 0).get(null);
|
||||
|
||||
public Set<Integer> materialToAllIds(Material material) {
|
||||
Set<Integer> ids = new HashSet<>();
|
||||
|
||||
for (BlockState data : getBlock(material).getStateDefinition().getPossibleStates()) {
|
||||
ids.add(getCombinedId(data));
|
||||
}
|
||||
|
||||
if (material == Material.WATER) {
|
||||
for (BlockState data : registryBlockId) {
|
||||
if (data.getFluidState() == water) {
|
||||
ids.add(getCombinedId(data));
|
||||
for (Block block : BuiltInRegistries.BLOCK) {
|
||||
for (BlockState data : block.getStateDefinition().getPossibleStates()) {
|
||||
if (data.getFluidState() == water) {
|
||||
ids.add(getCombinedId(data));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user