ForgePatch/patches_old/minecraft/net/minecraft/world/gen/structure/template/Template.java.patch

20 lines
1.3 KiB
Diff

--- ../src-base/minecraft/net/minecraft/world/gen/structure/template/Template.java
+++ ../src-work/minecraft/net/minecraft/world/gen/structure/template/Template.java
@@ -211,6 +211,8 @@
for (Template.BlockInfo template$blockinfo : this.field_186270_a)
{
BlockPos blockpos = func_186266_a(p_189960_4_, template$blockinfo.field_186242_a).func_177971_a(p_189960_2_);
+ // Forge: skip processing blocks outside BB to prevent cascading worldgen issues
+ if (structureboundingbox != null && !structureboundingbox.func_175898_b(blockpos)) continue;
Template.BlockInfo template$blockinfo1 = p_189960_3_ != null ? p_189960_3_.func_189943_a(p_189960_1_, blockpos, template$blockinfo) : template$blockinfo;
if (template$blockinfo1 != null)
@@ -514,6 +516,7 @@
nbttaglist2.func_74742_a(NBTUtil.func_190009_a(new NBTTagCompound(), iblockstate));
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().getDataFixer().writeVersionData(p_189552_1_); //Moved up for MC updating reasons.
p_189552_1_.func_74782_a("palette", nbttaglist2);
p_189552_1_.func_74782_a("blocks", nbttaglist);
p_189552_1_.func_74782_a("entities", nbttaglist1);