SPIGOT-5293: Sponge behaviour differs from Vanilla
By: md_5 <git@md-5.net>
This commit is contained in:
@@ -5,6 +5,7 @@ import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import net.minecraft.server.BlockPosition;
|
||||
import net.minecraft.server.Fluid;
|
||||
import net.minecraft.server.IBlockData;
|
||||
import net.minecraft.server.World;
|
||||
import org.bukkit.block.BlockState;
|
||||
@@ -23,6 +24,18 @@ public class BlockStateListPopulator extends DummyGeneratorAccess {
|
||||
this.list = list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IBlockData getType(BlockPosition bp) {
|
||||
CraftBlockState state = list.get(bp);
|
||||
return (state != null) ? state.getHandle() : world.getType(bp);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Fluid getFluid(BlockPosition bp) {
|
||||
CraftBlockState state = list.get(bp);
|
||||
return (state != null) ? state.getHandle().p() : world.getFluid(bp);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean setTypeAndData(BlockPosition position, IBlockData data, int flag) {
|
||||
CraftBlockState state = CraftBlockState.getBlockState(world, position, flag);
|
||||
|
||||
Reference in New Issue
Block a user