public interface IMultiblockControllerInternal extends IMultiblockController, INbtWritable, INbtReadable, IOwnedTile, IErrorLogicSource, IClimatised, IStreamableGui
| Modifier and Type | Method and Description |
|---|---|
void |
_onAssimilated(IMultiblockControllerInternal otherController)
Called when this machine is consumed by another controller.
|
void |
assimilate(IMultiblockControllerInternal other)
Assimilate another controller into this controller.
|
void |
attachBlock(IMultiblockComponent part)
Attach a new part to this machine.
|
void |
auditParts()
Checks all of the parts in the controller.
|
java.util.Set<IMultiblockComponent> |
checkForDisconnections()
Called when this machine may need to check for blocks that are no
longer physically connected to the reference coordinate.
|
void |
checkIfMachineIsWhole()
Check if the machine is whole or not.
|
void |
decodeDescriptionPacket(net.minecraft.nbt.NBTTagCompound data)
Called when the save delegate's tile entity receiving a description packet
|
java.util.Set<IMultiblockComponent> |
detachAllBlocks()
Detach all parts.
|
void |
detachBlock(IMultiblockComponent part,
boolean chunkUnloading)
Call to detach a block from this machine.
|
void |
formatDescriptionPacket(net.minecraft.nbt.NBTTagCompound data)
Called when the save delegate's tile entity is being asked for its description packet
|
java.lang.String |
getPartsListString() |
net.minecraft.util.math.BlockPos |
getReferenceCoord() |
java.lang.String |
getUnlocalizedType() |
net.minecraft.world.World |
getWorldObj() |
boolean |
isEmpty() |
void |
onAssimilated(IMultiblockControllerInternal assimilator)
Callback.
|
void |
recalculateMinMaxCoords()
Force this multiblock to recalculate its minimum and maximum coordinates
from the list of connected parts.
|
boolean |
shouldConsume(IMultiblockControllerInternal otherController)
Tests whether this multiblock should consume the other multiblock
and become the new multiblock master when the two multiblocks
are adjacent.
|
void |
updateMultiblockEntity()
Driver for the update loop.
|
getComponents, getLastValidationError, getLastValidationErrorPosition, isAssembled, reassemblewriteToNBTreadFromNBTgetOwnerHandlergetErrorLogicgetExactHumidity, getExactTemperature, getHumidity, getTemperaturereadGuiData, writeGuiDatavoid attachBlock(IMultiblockComponent part)
part - The part to add.void detachBlock(IMultiblockComponent part, boolean chunkUnloading)
part - The part to detach from this machine.chunkUnloading - Is this entity detaching due to the chunk unloading? If true, the multiblock will be paused instead of broken.void checkIfMachineIsWhole()
void assimilate(IMultiblockControllerInternal other)
other - The controller to merge into this one.void _onAssimilated(IMultiblockControllerInternal otherController)
otherController - The controller consuming this controller.void onAssimilated(IMultiblockControllerInternal assimilator)
assimilator - The controller which has assimilated this controller.void updateMultiblockEntity()
@Nullable net.minecraft.util.math.BlockPos getReferenceCoord()
void recalculateMinMaxCoords()
void formatDescriptionPacket(net.minecraft.nbt.NBTTagCompound data)
data - A fresh compound tag to write your multiblock data intovoid decodeDescriptionPacket(net.minecraft.nbt.NBTTagCompound data)
data - A compound tag containing multiblock data to importnet.minecraft.world.World getWorldObj()
boolean isEmpty()
boolean shouldConsume(IMultiblockControllerInternal otherController)
otherController - The other multiblock controller.java.lang.String getPartsListString()
java.lang.String getUnlocalizedType()
void auditParts()
java.util.Set<IMultiblockComponent> checkForDisconnections()
java.util.Set<IMultiblockComponent> detachAllBlocks()