mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-12-26 02:29:14 +00:00
Forceblock now properly works.
This commit is contained in:
@@ -57,11 +57,14 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
|
||||
bd = decorator.getBlockData100(biome, getRng(), realX, height, realZ, getData());
|
||||
|
||||
if(!underwater) {
|
||||
if(!canGoOn(bd, bdx) && !decorator.isForcePlace()) {
|
||||
if(!canGoOn(bd, bdx) && (!decorator.isForcePlace() && decorator.getForceBlock() == null) ) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(decorator.getForceBlock() != null)
|
||||
data.set(x, height, z, fixFaces(decorator.getForceBlock().getBlockData(getData()), x, height, z));
|
||||
|
||||
if(bd instanceof Bisected) {
|
||||
bd = bd.clone();
|
||||
((Bisected) bd).setHalf(Bisected.Half.TOP);
|
||||
@@ -74,9 +77,8 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
|
||||
((Bisected) bd).setHalf(Bisected.Half.BOTTOM);
|
||||
}
|
||||
|
||||
if(decorator.getForceBlock() != null)
|
||||
data.set(x, height, z, fixFaces(decorator.getForceBlock().getBlockData(getData()), x, height, z));
|
||||
data.set(x, height + 1, z, fixFaces(bd, x, height, z));
|
||||
data.set(x, height + 1, z, fixFaces(bd, x, height + 1, z));
|
||||
|
||||
} else {
|
||||
if(height < getDimension().getFluidHeight()) {
|
||||
max = getDimension().getFluidHeight();
|
||||
|
||||
@@ -224,7 +224,7 @@ public class IrisPostModifier extends EngineAssignedModifier<BlockData> {
|
||||
if(B.isFoliage(b) || b.getMaterial().equals(Material.DEAD_BUSH)) {
|
||||
Material onto = getPostBlock(x, h, z, currentPostX, currentPostZ, currentData).getMaterial();
|
||||
|
||||
if(!B.canPlaceOnto(b.getMaterial(), onto)) {
|
||||
if(!B.canPlaceOnto(b.getMaterial(), onto) && !B.isDecorant(b)) {
|
||||
setPostBlock(x, h + 1, z, AIR, currentPostX, currentPostZ, currentData);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user