@MethodsReturnNonnullByDefault
public interface IPlacementHelper
| Modifier and Type | Field and Description |
|---|---|
static net.minecraft.block.BlockState |
ID
used as an identifier in SuperGlueHandler to skip blocks placed by helpers
|
| Modifier and Type | Method and Description |
|---|---|
default void |
displayGhost(PlacementOffset offset) |
java.util.function.Predicate<net.minecraft.item.ItemStack> |
getItemPredicate() |
PlacementOffset |
getOffset(net.minecraft.entity.player.PlayerEntity player,
net.minecraft.world.World world,
net.minecraft.block.BlockState state,
net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.BlockRayTraceResult ray) |
default PlacementOffset |
getOffset(net.minecraft.entity.player.PlayerEntity player,
net.minecraft.world.World world,
net.minecraft.block.BlockState state,
net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.BlockRayTraceResult ray,
net.minecraft.item.ItemStack heldItem) |
java.util.function.Predicate<net.minecraft.block.BlockState> |
getStatePredicate() |
default boolean |
matchesItem(net.minecraft.item.ItemStack item) |
default boolean |
matchesState(net.minecraft.block.BlockState state) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistance(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistance(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis first,
net.minecraft.util.Direction.Axis second) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis first,
net.minecraft.util.Direction.Axis second,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceOnlyAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis) |
static java.util.List<net.minecraft.util.Direction> |
orderedByDistanceOnlyAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection) |
static void |
renderArrow(net.minecraft.util.math.vector.Vector3d center,
net.minecraft.util.math.vector.Vector3d target,
net.minecraft.util.Direction arrowPlane) |
static void |
renderArrow(net.minecraft.util.math.vector.Vector3d center,
net.minecraft.util.math.vector.Vector3d target,
net.minecraft.util.Direction arrowPlane,
double distanceFromCenter) |
default void |
renderAt(net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state,
net.minecraft.util.math.BlockRayTraceResult ray,
PlacementOffset offset)
overwrite this method if your placement helper needs a different rendering than the default ghost state
|
static final net.minecraft.block.BlockState ID
java.util.function.Predicate<net.minecraft.item.ItemStack> getItemPredicate()
java.util.function.Predicate<net.minecraft.block.BlockState> getStatePredicate()
PlacementOffset getOffset(net.minecraft.entity.player.PlayerEntity player, net.minecraft.world.World world, net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos, net.minecraft.util.math.BlockRayTraceResult ray)
player - the player that activated the placement helperworld - the world that the placement helper got activated instate - the Blockstate of the Block that the player is looking at or clicked onpos - the position of the Block the player is looking at or clicked onray - the exact raytrace resultPlacementOffset.fail() when no new position could be found.PlacementOffset.success(Vector3i) with the new BlockPos to indicate a success
and call PlacementOffset.withTransform(Function) if the blocks default state has to be modified before it is placeddefault PlacementOffset getOffset(net.minecraft.entity.player.PlayerEntity player, net.minecraft.world.World world, net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos, net.minecraft.util.math.BlockRayTraceResult ray, net.minecraft.item.ItemStack heldItem)
default void renderAt(net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state,
net.minecraft.util.math.BlockRayTraceResult ray,
PlacementOffset offset)
pos - the position of the Block the player is looking at or clicked onstate - the Blockstate of the Block that the player is looking at or clicked onray - the exact raytrace resultoffset - the PlacementOffset returned by getOffset(PlayerEntity, World, BlockState, BlockPos, BlockRayTraceResult)static void renderArrow(net.minecraft.util.math.vector.Vector3d center,
net.minecraft.util.math.vector.Vector3d target,
net.minecraft.util.Direction arrowPlane)
static void renderArrow(net.minecraft.util.math.vector.Vector3d center,
net.minecraft.util.math.vector.Vector3d target,
net.minecraft.util.Direction arrowPlane,
double distanceFromCenter)
default void displayGhost(PlacementOffset offset)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceOnlyAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceOnlyAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis axis,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis first,
net.minecraft.util.Direction.Axis second)
static java.util.List<net.minecraft.util.Direction> orderedByDistanceExceptAxis(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
net.minecraft.util.Direction.Axis first,
net.minecraft.util.Direction.Axis second,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection)
static java.util.List<net.minecraft.util.Direction> orderedByDistance(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit)
static java.util.List<net.minecraft.util.Direction> orderedByDistance(net.minecraft.util.math.BlockPos pos,
net.minecraft.util.math.vector.Vector3d hit,
java.util.function.Predicate<net.minecraft.util.Direction> includeDirection)
default boolean matchesItem(net.minecraft.item.ItemStack item)
default boolean matchesState(net.minecraft.block.BlockState state)