Class DoBlockPlacementHandler
java.lang.Object
com.ldtteam.structurize.placement.handlers.placement.DoBlockPlacementHandler
- All Implemented Interfaces:
IPlacementHandler
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.ldtteam.structurize.placement.handlers.placement.IPlacementHandler
IPlacementHandler.ActionProcessingResult -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancanHandle(@NotNull net.minecraft.world.level.Level world, @NotNull net.minecraft.core.BlockPos pos, @NotNull net.minecraft.world.level.block.state.BlockState blockState) Check if a placement handler can handle a certain block.static booleancompareBEData(net.minecraft.util.Tuple<net.minecraft.world.level.block.entity.BlockEntity, net.minecraft.nbt.CompoundTag> blockEntityData) Check if the Block Entity data matches for DO blocks.booleandoesWorldStateMatchBlueprintState(net.minecraft.world.level.block.state.BlockState worldState, net.minecraft.world.level.block.state.BlockState blueprintState, net.minecraft.util.Tuple<net.minecraft.world.level.block.entity.BlockEntity, net.minecraft.nbt.CompoundTag> blockEntityData, @NotNull IPlacementContext structureHandler) Method used to compare blueprint state with world state to detect if changes are necessary.List<net.minecraft.world.item.ItemStack> getRequiredItems(@NotNull net.minecraft.world.level.Level world, @NotNull net.minecraft.core.BlockPos pos, @NotNull net.minecraft.world.level.block.state.BlockState blockState, @Nullable net.minecraft.nbt.CompoundTag tileEntityData, @NotNull IPlacementContext placementContext) Method used to get the required items to place a block.handle(@NotNull net.minecraft.world.level.Level world, @NotNull net.minecraft.core.BlockPos pos, @NotNull net.minecraft.world.level.block.state.BlockState blockState, @Nullable net.minecraft.nbt.CompoundTag tileEntityData, @NotNull IPlacementContext placementContext) Method used to handle the processing of a Placement of a block.voidhandleRemoval(IStructureHandler handler, net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Handles the removal of the existing block in the worldMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.ldtteam.structurize.placement.handlers.placement.IPlacementHandler
handleRemoval
-
Constructor Details
-
DoBlockPlacementHandler
public DoBlockPlacementHandler()
-
-
Method Details
-
canHandle
public boolean canHandle(@NotNull @NotNull net.minecraft.world.level.Level world, @NotNull @NotNull net.minecraft.core.BlockPos pos, @NotNull @NotNull net.minecraft.world.level.block.state.BlockState blockState) Description copied from interface:IPlacementHandlerCheck if a placement handler can handle a certain block.- Specified by:
canHandlein interfaceIPlacementHandler- Parameters:
world- the world.pos- the position.blockState- the blockState.- Returns:
- true if so.
-
handle
public IPlacementHandler.ActionProcessingResult handle(@NotNull @NotNull net.minecraft.world.level.Level world, @NotNull @NotNull net.minecraft.core.BlockPos pos, @NotNull @NotNull net.minecraft.world.level.block.state.BlockState blockState, @Nullable @Nullable net.minecraft.nbt.CompoundTag tileEntityData, @NotNull @NotNull IPlacementContext placementContext) Description copied from interface:IPlacementHandlerMethod used to handle the processing of a Placement of a block.- Specified by:
handlein interfaceIPlacementHandler- Parameters:
world- receives the world.pos- the position.blockState- the blockState.tileEntityData- the placer of the block.placementContext- extended placement context.- Returns:
- ACCEPT, DENY or IGNORE.
-
doesWorldStateMatchBlueprintState
public boolean doesWorldStateMatchBlueprintState(net.minecraft.world.level.block.state.BlockState worldState, net.minecraft.world.level.block.state.BlockState blueprintState, net.minecraft.util.Tuple<net.minecraft.world.level.block.entity.BlockEntity, net.minecraft.nbt.CompoundTag> blockEntityData, @NotNull @NotNull IPlacementContext structureHandler) Description copied from interface:IPlacementHandlerMethod used to compare blueprint state with world state to detect if changes are necessary.- Specified by:
doesWorldStateMatchBlueprintStatein interfaceIPlacementHandler- Returns:
- true if world state matches blueprint state.
-
compareBEData
public static boolean compareBEData(net.minecraft.util.Tuple<net.minecraft.world.level.block.entity.BlockEntity, net.minecraft.nbt.CompoundTag> blockEntityData) Check if the Block Entity data matches for DO blocks.- Parameters:
blockEntityData- check on the block entity textures.- Returns:
- true if so.
-
getRequiredItems
public List<net.minecraft.world.item.ItemStack> getRequiredItems(@NotNull @NotNull net.minecraft.world.level.Level world, @NotNull @NotNull net.minecraft.core.BlockPos pos, @NotNull @NotNull net.minecraft.world.level.block.state.BlockState blockState, @Nullable @Nullable net.minecraft.nbt.CompoundTag tileEntityData, @NotNull @NotNull IPlacementContext placementContext) Description copied from interface:IPlacementHandlerMethod used to get the required items to place a block.- Specified by:
getRequiredItemsin interfaceIPlacementHandler- Parameters:
world- receives the world.pos- the position.blockState- the blockState.tileEntityData- the placer of the block.placementContext- the placement context.- Returns:
- the list of items.
-
handleRemoval
public void handleRemoval(IStructureHandler handler, net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Description copied from interface:IPlacementHandlerHandles the removal of the existing block in the world- Specified by:
handleRemovalin interfaceIPlacementHandler- Parameters:
handler- the actor removing the blockworld- the world this block belongs topos- the position of the block
-