Compare commits

...

8 Commits

Author SHA1 Message Date
Brian Fopiano
7729ce3753 Merge pull request #911 from VolmitSoftware/Development
Development
2022-09-30 21:19:06 -07:00
Brian Fopiano
f6ea171669 V+ 2022-09-30 21:18:58 -07:00
tanticle
ff081ebc11 Merge remote-tracking branch 'origin/Development' into Development 2022-09-28 02:41:14 +02:00
tanticle
0818f971fe Added #816: Whitelist and blacklist for decorators. 2022-09-28 02:40:52 +02:00
tanticle
27070f44c7 Fixed block drops. 2022-09-28 02:00:34 +02:00
Brian Fopiano
8331cbe375 Merge pull request #910 from VolmitSoftware/Development
Hotfix
2022-09-25 16:43:11 -07:00
Vatuu
f533ec34b0 Hotfix 2022-09-25 16:42:36 -07:00
Vatuu
23d4fcb827 Hotfix because Brian did a bad 2022-09-26 01:09:08 +02:00
4 changed files with 19 additions and 5 deletions

View File

@@ -24,7 +24,7 @@ plugins {
id "de.undercouch.download" version "5.0.1"
}
version '2.3.2-1.19.2' // Needs to be version specific
version '2.3.3-1.19.2' // Needs to be version specific
def nmsVersion = "1.19.2" //[NMS]
def apiVersion = '1.19'
def specialSourceVersion = '1.11.0' //[NMS]

View File

@@ -633,7 +633,7 @@ public class IrisWorldManager extends EngineAssignedWorldManager {
}
});
/*KList<ItemStack> d = new KList<>();
KList<ItemStack> d = new KList<>();
IrisBiome b = getEngine().getBiome(e.getBlock().getLocation().clone().subtract(0, getEngine().getWorld().minHeight(), 0));
List<IrisBlockDrops> dropProviders = filterDrops(b.getBlockDrops(), e, getData());
@@ -652,7 +652,7 @@ public class IrisWorldManager extends EngineAssignedWorldManager {
if(d.isNotEmpty()) {
World w = e.getBlock().getWorld();
J.s(() -> d.forEach(item -> w.dropItemNaturally(e.getBlock().getLocation().clone().add(.5, .5, .5), item)));
}*/
}
}
}

View File

@@ -62,8 +62,16 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
}
}
if(decorator.getForceBlock() != null)
if(decorator.getForceBlock() != null) {
data.set(x, height, z, fixFaces(decorator.getForceBlock().getBlockData(getData()), x, height, z));
} else if(!decorator.isForcePlace()) {
if(decorator.getWhitelist() != null && decorator.getWhitelist().stream().noneMatch(d -> d.getBlockData(getData()).equals(bdx))) {
return;
}
if(decorator.getBlacklist() != null && decorator.getWhitelist().stream().anyMatch(d -> d.getBlockData(getData()).equals(bdx))) {
return;
}
}
if(bd instanceof Bisected) {
bd = bd.clone();
@@ -77,7 +85,7 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
((Bisected) bd).setHalf(Bisected.Half.BOTTOM);
}
if(!B.isAir(data.get(x, height + 1, z))) {
if(B.isAir(data.get(x, height + 1, z))) {
data.set(x, height + 1, z, fixFaces(bd, x, height + 1, z));
}
} else {

View File

@@ -55,6 +55,12 @@ public class IrisDecorator {
private boolean forcePlace = false;
@Desc("Forced the surface block of this decorant to be the specified block. Assumes forcePlace.")
private IrisBlockData forceBlock;
@ArrayType(min = 1, type = IrisBlockData.class)
@Desc("When set, the decorator can only place onto any of these blocks.")
private KList<IrisBlockData> whitelist;
@ArrayType(min = 1, type = IrisBlockData.class)
@Desc("When set, the decorator will never place onto any of these blocks.")
private KList<IrisBlockData> blacklist;
@DependsOn({"scaleStack", "stackMin", "stackMax"})
@Desc("If stackMax is set to true, use this to limit its max height for large caverns")
private int absoluteMaxStack = 30;