public abstract class Contraption
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Contraption.ContraptionInvWrapper |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.List<org.apache.commons.lang3.tuple.MutablePair<net.minecraft.world.gen.feature.template.Template.BlockInfo,MovementContext>> |
actors |
net.minecraft.util.math.BlockPos |
anchor |
protected java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.world.gen.feature.template.Template.BlockInfo> |
blocks |
net.minecraft.util.math.AxisAlignedBB |
bounds |
AbstractContraptionEntity |
entity |
CombinedTankWrapper |
fluidInventory |
protected java.util.Map<net.minecraft.util.math.BlockPos,MountedFluidStorage> |
fluidStorage |
boolean |
hasUniversalCreativeCrate |
Contraption.ContraptionInvWrapper |
inventory |
java.util.List<net.minecraft.tileentity.TileEntity> |
maybeInstancedTileEntities |
java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.tileentity.TileEntity> |
presentTileEntities |
protected java.util.Map<java.util.UUID,java.lang.Integer> |
seatMapping |
protected java.util.List<net.minecraft.util.math.BlockPos> |
seats |
java.util.Optional<java.util.List<net.minecraft.util.math.AxisAlignedBB>> |
simplifiedEntityColliders |
java.util.List<net.minecraft.tileentity.TileEntity> |
specialRenderedTileEntities |
protected java.util.Map<java.util.UUID,BlockFace> |
stabilizedSubContraptions |
boolean |
stalled |
protected java.util.Map<net.minecraft.util.math.BlockPos,MountedStorage> |
storage |
protected java.util.Set<org.apache.commons.lang3.tuple.Pair<net.minecraft.util.math.BlockPos,net.minecraft.util.Direction>> |
superglue |
protected ContraptionWorld |
world |
| Constructor and Description |
|---|
Contraption() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addBlock(net.minecraft.util.math.BlockPos pos,
org.apache.commons.lang3.tuple.Pair<net.minecraft.world.gen.feature.template.Template.BlockInfo,net.minecraft.tileentity.TileEntity> pair) |
void |
addBlocksToWorld(net.minecraft.world.World world,
StructureTransform transform) |
void |
addExtraInventories(net.minecraft.entity.Entity entity) |
protected void |
addGlue(SuperGlueEntity entity) |
void |
addPassengersToWorld(net.minecraft.world.World world,
StructureTransform transform,
java.util.List<net.minecraft.entity.Entity> seatedEntities) |
protected boolean |
addToInitialFrontier(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.util.Direction forcedDirection,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier) |
abstract boolean |
assemble(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos) |
abstract boolean |
canBeStabilized(net.minecraft.util.Direction facing,
net.minecraft.util.math.BlockPos localPos) |
protected org.apache.commons.lang3.tuple.Pair<net.minecraft.world.gen.feature.template.Template.BlockInfo,net.minecraft.tileentity.TileEntity> |
capture(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos) |
protected boolean |
customBlockPlacement(net.minecraft.world.IWorld world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state) |
protected boolean |
customBlockRemoval(net.minecraft.world.IWorld world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state) |
void |
expandBoundsAroundAxis(net.minecraft.util.Direction.Axis axis) |
void |
foreachActor(net.minecraft.world.World world,
java.util.function.BiConsumer<MovementBehaviour,MovementContext> callBack) |
static Contraption |
fromNBT(net.minecraft.world.World world,
net.minecraft.nbt.CompoundNBT nbt,
boolean spawnData) |
java.util.List<org.apache.commons.lang3.tuple.MutablePair<net.minecraft.world.gen.feature.template.Template.BlockInfo,MovementContext>> |
getActors() |
net.minecraft.util.math.BlockPos |
getBearingPosOf(java.util.UUID subContraptionEntityId) |
java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.world.gen.feature.template.Template.BlockInfo> |
getBlocks() |
ContraptionWorld |
getContraptionWorld() |
static float |
getMaxDistSqr(java.util.Set<net.minecraft.util.math.BlockPos> blocks,
ICoordinate one,
ICoordinate other) |
static float |
getRadius(java.util.Set<net.minecraft.util.math.BlockPos> blocks,
net.minecraft.util.Direction.Axis axis) |
java.util.Map<java.util.UUID,java.lang.Integer> |
getSeatMapping() |
net.minecraft.util.math.BlockPos |
getSeatOf(java.util.UUID entityId) |
java.util.List<net.minecraft.util.math.BlockPos> |
getSeats() |
protected net.minecraft.nbt.CompoundNBT |
getTileEntityNBT(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos) |
protected abstract ContraptionType |
getType() |
protected boolean |
isAnchoringBlockAt(net.minecraft.util.math.BlockPos pos) |
ContraptionLighter<?> |
makeLighter() |
protected boolean |
moveBlock(net.minecraft.world.World world,
net.minecraft.util.Direction forcedDirection,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited)
move the first block in frontier queue
|
protected void |
moveGantryPinion(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state) |
protected void |
moveGantryShaft(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state) |
protected boolean |
movementAllowed(net.minecraft.block.BlockState state,
net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos) |
protected void |
movePistonHead(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state) |
protected void |
movePistonPole(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state) |
void |
onEntityCreated(AbstractContraptionEntity entity) |
void |
onEntityInitialize(net.minecraft.world.World world,
AbstractContraptionEntity contraptionEntity) |
void |
onEntityRemoved(AbstractContraptionEntity entity) |
void |
onEntityTick(net.minecraft.world.World world) |
void |
readNBT(net.minecraft.world.World world,
net.minecraft.nbt.CompoundNBT nbt,
boolean spawnData) |
void |
removeBlocksFromWorld(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos offset) |
boolean |
searchMovedStructure(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.util.Direction forcedDirection) |
void |
setSeatMapping(java.util.Map<java.util.UUID,java.lang.Integer> seatMapping) |
protected boolean |
shouldUpdateAfterMovement(net.minecraft.world.gen.feature.template.Template.BlockInfo info) |
void |
startMoving(net.minecraft.world.World world) |
void |
stop(net.minecraft.world.World world) |
protected net.minecraft.util.math.BlockPos |
toLocalPos(net.minecraft.util.math.BlockPos globalPos) |
void |
updateContainedFluid(net.minecraft.util.math.BlockPos localPos,
net.minecraftforge.fluids.FluidStack containedFluid) |
net.minecraft.nbt.CompoundNBT |
writeNBT(boolean spawnPacket) |
public java.util.Optional<java.util.List<net.minecraft.util.math.AxisAlignedBB>> simplifiedEntityColliders
public AbstractContraptionEntity entity
public Contraption.ContraptionInvWrapper inventory
public CombinedTankWrapper fluidInventory
public net.minecraft.util.math.AxisAlignedBB bounds
public net.minecraft.util.math.BlockPos anchor
public boolean stalled
public boolean hasUniversalCreativeCrate
protected java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.world.gen.feature.template.Template.BlockInfo> blocks
protected java.util.Map<net.minecraft.util.math.BlockPos,MountedStorage> storage
protected java.util.Map<net.minecraft.util.math.BlockPos,MountedFluidStorage> fluidStorage
protected java.util.List<org.apache.commons.lang3.tuple.MutablePair<net.minecraft.world.gen.feature.template.Template.BlockInfo,MovementContext>> actors
protected java.util.Set<org.apache.commons.lang3.tuple.Pair<net.minecraft.util.math.BlockPos,net.minecraft.util.Direction>> superglue
protected java.util.List<net.minecraft.util.math.BlockPos> seats
protected java.util.Map<java.util.UUID,java.lang.Integer> seatMapping
protected java.util.Map<java.util.UUID,BlockFace> stabilizedSubContraptions
public java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.tileentity.TileEntity> presentTileEntities
public java.util.List<net.minecraft.tileentity.TileEntity> maybeInstancedTileEntities
public java.util.List<net.minecraft.tileentity.TileEntity> specialRenderedTileEntities
protected ContraptionWorld world
public ContraptionWorld getContraptionWorld()
public abstract boolean assemble(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos)
throws AssemblyException
AssemblyExceptionpublic abstract boolean canBeStabilized(net.minecraft.util.Direction facing,
net.minecraft.util.math.BlockPos localPos)
protected abstract ContraptionType getType()
protected boolean customBlockPlacement(net.minecraft.world.IWorld world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state)
protected boolean customBlockRemoval(net.minecraft.world.IWorld world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.block.BlockState state)
protected boolean addToInitialFrontier(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
net.minecraft.util.Direction forcedDirection,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier)
throws AssemblyException
AssemblyExceptionpublic static Contraption fromNBT(net.minecraft.world.World world, net.minecraft.nbt.CompoundNBT nbt, boolean spawnData)
public boolean searchMovedStructure(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
@Nullable
net.minecraft.util.Direction forcedDirection)
throws AssemblyException
AssemblyExceptionpublic void onEntityCreated(AbstractContraptionEntity entity)
public void onEntityRemoved(AbstractContraptionEntity entity)
public void onEntityInitialize(net.minecraft.world.World world,
AbstractContraptionEntity contraptionEntity)
public void onEntityTick(net.minecraft.world.World world)
protected boolean moveBlock(net.minecraft.world.World world,
@Nullable
net.minecraft.util.Direction forcedDirection,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited)
throws AssemblyException
AssemblyExceptionprotected void movePistonHead(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state)
protected void movePistonPole(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state)
protected void moveGantryPinion(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state)
protected void moveGantryShaft(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos,
java.util.Queue<net.minecraft.util.math.BlockPos> frontier,
java.util.Set<net.minecraft.util.math.BlockPos> visited,
net.minecraft.block.BlockState state)
protected org.apache.commons.lang3.tuple.Pair<net.minecraft.world.gen.feature.template.Template.BlockInfo,net.minecraft.tileentity.TileEntity> capture(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos)
protected void addBlock(net.minecraft.util.math.BlockPos pos,
org.apache.commons.lang3.tuple.Pair<net.minecraft.world.gen.feature.template.Template.BlockInfo,net.minecraft.tileentity.TileEntity> pair)
@Nullable
protected net.minecraft.nbt.CompoundNBT getTileEntityNBT(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos)
protected void addGlue(SuperGlueEntity entity)
protected net.minecraft.util.math.BlockPos toLocalPos(net.minecraft.util.math.BlockPos globalPos)
protected boolean movementAllowed(net.minecraft.block.BlockState state,
net.minecraft.world.World world,
net.minecraft.util.math.BlockPos pos)
protected boolean isAnchoringBlockAt(net.minecraft.util.math.BlockPos pos)
public void readNBT(net.minecraft.world.World world,
net.minecraft.nbt.CompoundNBT nbt,
boolean spawnData)
public net.minecraft.nbt.CompoundNBT writeNBT(boolean spawnPacket)
public void removeBlocksFromWorld(net.minecraft.world.World world,
net.minecraft.util.math.BlockPos offset)
public void addBlocksToWorld(net.minecraft.world.World world,
StructureTransform transform)
public void addPassengersToWorld(net.minecraft.world.World world,
StructureTransform transform,
java.util.List<net.minecraft.entity.Entity> seatedEntities)
public void startMoving(net.minecraft.world.World world)
public void stop(net.minecraft.world.World world)
public void foreachActor(net.minecraft.world.World world,
java.util.function.BiConsumer<MovementBehaviour,MovementContext> callBack)
protected boolean shouldUpdateAfterMovement(net.minecraft.world.gen.feature.template.Template.BlockInfo info)
public void expandBoundsAroundAxis(net.minecraft.util.Direction.Axis axis)
public void addExtraInventories(net.minecraft.entity.Entity entity)
public java.util.Map<java.util.UUID,java.lang.Integer> getSeatMapping()
public net.minecraft.util.math.BlockPos getSeatOf(java.util.UUID entityId)
public net.minecraft.util.math.BlockPos getBearingPosOf(java.util.UUID subContraptionEntityId)
public void setSeatMapping(java.util.Map<java.util.UUID,java.lang.Integer> seatMapping)
public java.util.List<net.minecraft.util.math.BlockPos> getSeats()
public java.util.Map<net.minecraft.util.math.BlockPos,net.minecraft.world.gen.feature.template.Template.BlockInfo> getBlocks()
public java.util.List<org.apache.commons.lang3.tuple.MutablePair<net.minecraft.world.gen.feature.template.Template.BlockInfo,MovementContext>> getActors()
public void updateContainedFluid(net.minecraft.util.math.BlockPos localPos,
net.minecraftforge.fluids.FluidStack containedFluid)
public ContraptionLighter<?> makeLighter()
public static float getRadius(java.util.Set<net.minecraft.util.math.BlockPos> blocks,
net.minecraft.util.Direction.Axis axis)
public static float getMaxDistSqr(java.util.Set<net.minecraft.util.math.BlockPos> blocks,
ICoordinate one,
ICoordinate other)