Merge branch 'master' into 1.16

# Conflicts:
#	gradle.properties
#	src/main/java/carpet/utils/PerimeterDiagnostics.java
#	src/main/java/carpet/utils/SpawnReporter.java
This commit is contained in:
gnembon committed 2020-03-10 22:57:48 -03:00
commit b9964c8da8
6 files changed
+14 -6

No files matched your search

+1 -1
View File
@@ -32,7 +32,7 @@ import static carpet.settings.RuleCategory.DISPENSER;
@SuppressWarnings("CanBeFinal")
public class CarpetSettings
{
public static final String carpetVersion = "1.3.13+v200304";
public static final String carpetVersion = "1.3.14+v200311";
public static final Logger LOG = LogManager.getLogger();
public static boolean skipGenerationChecks = false;
public static boolean impendingFillSkipUpdates = false;
@@ -1088,6 +1088,9 @@ public class CarpetExpression
this.expr.addLazyFunction("see_sky", -1, (c, t, lv) ->
genericStateTest(c, "see_sky", lv, (s, p, w) -> new NumericValue(w.isSkyVisible(p))));
this.expr.addLazyFunction("brightness", -1, (c, t, lv) ->
genericStateTest(c, "brightness", lv, (s, p, w) -> new NumericValue(w.getBrightness(p))));
this.expr.addLazyFunction("hardness", -1, (c, t, lv) ->
genericStateTest(c, "hardness", lv, (s, p, w) -> new NumericValue(s.getHardness(w, p))));
@@ -177,7 +177,7 @@ public class PerimeterDiagnostics
if (SpawnHelper.canSpawn(spt, worldServer, pos, sle.type))
{
el.refreshPositionAndAngles((float)pos.getX() + 0.5F, (float)pos.getY(), (float)pos.getZ()+0.5F, 0.0F, 0.0F);
return el.canSpawn(worldServer) &&
return el.canSpawn(worldServer) && el.canSpawn(worldServer, SpawnType.NATURAL) &&
SpawnRestriction.canSpawn(el.getType(),el.getEntityWorld(), SpawnType.NATURAL, el.getSenseCenterPos(), el.getEntityWorld().random) &&
worldServer.doesNotCollide(el); // check collision rules once they stop fiddling with them after 1.14.1
}
@@ -436,10 +436,15 @@ public class SpawnReporter
float f1 = (float)z + 0.5F;
mob.refreshPositionAndAngles((double)f, (double)y, (double)f1, worldIn.random.nextFloat() * 360.0F, 0.0F);
fits1 = worldIn.doesNotCollide(mob);
EntityType etype = mob.getType();
for (int i = 0; i < 20; ++i)
{
if (SpawnRestriction.canSpawn(mob.getType(),mob.getEntityWorld(), SpawnType.NATURAL, mob.getSenseCenterPos(), mob.getEntityWorld().random))
if (
SpawnRestriction.canSpawn(etype,worldIn, SpawnType.NATURAL, pos, worldIn.random) &&
SpawnHelper.canSpawn(SpawnRestriction.getLocation(etype), worldIn, pos, etype) &&
mob.canSpawn(worldIn, SpawnType.NATURAL) // && mob.canSpawn(worldIn) // entity collisions
)
{
will_spawn += 1;
}