ForgePatch/patches/minecraft/net/minecraft/world/gen/feature/template/StructureProcessor.java.patch

42 lines
2.0 KiB
Diff

--- a/net/minecraft/world/gen/feature/template/StructureProcessor.java
+++ b/net/minecraft/world/gen/feature/template/StructureProcessor.java
@@ -6,7 +6,37 @@
public abstract class StructureProcessor {
@Nullable
- public abstract Template.BlockInfo func_230386_a_(IWorldReader p_230386_1_, BlockPos p_230386_2_, BlockPos p_230386_3_, Template.BlockInfo p_230386_4_, Template.BlockInfo p_230386_5_, PlacementSettings p_230386_6_);
+ @Deprecated //Forge: Use process below, with the Template context
+ public Template.BlockInfo func_230386_a_(IWorldReader p_230386_1_, BlockPos p_230386_2_, BlockPos p_230386_3_, Template.BlockInfo p_230386_4_, Template.BlockInfo p_230386_5_, PlacementSettings p_230386_6_) {
+ return p_230386_5_;
+ }
protected abstract IStructureProcessorType<?> func_215192_a();
+
+ @Nullable
+ public Template.BlockInfo process(IWorldReader p_230386_1_, BlockPos p_230386_2_, BlockPos p_230386_3_, Template.BlockInfo p_230386_4_, Template.BlockInfo p_230386_5_, PlacementSettings p_230386_6_, @Nullable Template template) {
+ return func_230386_a_(p_230386_1_, p_230386_2_, p_230386_3_, p_230386_4_, p_230386_5_, p_230386_6_);
+ }
+
+ /**
+ * FORGE: Add entity processing.
+ * <p>
+ * Use this method to process entities from a structure in much the same way as
+ * blocks, parameters are analogous.
+ *
+ * @param world
+ * @param seedPos
+ * @param rawEntityInfo
+ * @param entityInfo
+ * @param placementSettings
+ * @param template
+ *
+ * @see #process(IWorldReader, BlockPos,
+ * net.minecraft.world.gen.feature.template.Template.BlockInfo,
+ * net.minecraft.world.gen.feature.template.Template.BlockInfo,
+ * PlacementSettings)
+ */
+ public Template.EntityInfo processEntity(IWorldReader world, BlockPos seedPos, Template.EntityInfo rawEntityInfo, Template.EntityInfo entityInfo, PlacementSettings placementSettings, Template template) {
+ return entityInfo;
+ }
}