From ba2d654cecc5954e46b99ceed5cd0e8a3a3916c7 Mon Sep 17 00:00:00 2001 From: gnembon Date: Thu, 7 Nov 2019 01:11:04 -0400 Subject: [PATCH] added generation status --- src/main/java/carpet/script/CarpetExpression.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/carpet/script/CarpetExpression.java b/src/main/java/carpet/script/CarpetExpression.java index 4f2075df..b7f7d355 100644 --- a/src/main/java/carpet/script/CarpetExpression.java +++ b/src/main/java/carpet/script/CarpetExpression.java @@ -77,6 +77,7 @@ import net.minecraft.world.LightType; import net.minecraft.world.World; import net.minecraft.world.biome.Biome; import net.minecraft.world.chunk.Chunk; +import net.minecraft.world.chunk.ChunkStatus; import net.minecraft.world.chunk.WorldChunk; import net.minecraft.world.dimension.DimensionType; import net.minecraft.world.loot.context.LootContext; @@ -804,6 +805,14 @@ public class CarpetExpression return (c_, t_) -> retval; }); + this.expr.addLazyFunction("generation_status", -1, (c, t, lv) -> + { + BlockPos pos = BlockValue.fromParams((CarpetContext)c, lv, 0).block.getPos(); + Chunk chunk = ((CarpetContext)c).s.getWorld().getChunk(pos.getX()>>4, pos.getZ()>>4, ChunkStatus.EMPTY); + Value retval = new StringValue(chunk.getStatus().getName()); + return (c_, t_) -> retval; + }); + this.expr.addLazyFunction("suffocates", -1, (c, t, lv) -> genericStateTest(c, "suffocates", lv, (s, p, w) -> new NumericValue(s.canSuffocate(w, p))));