Index
A B C D E F G H I K L M N O P R S T V W
All Classes|All Packages
All Classes|All Packages
All Classes|All Packages
A
- AbstractPart - Class in alexiil.mc.lib.multipart.api
-
The base class for every part in a multipart block.
- AbstractPart(PartDefinition, MultipartHolder) - Constructor for class alexiil.mc.lib.multipart.api.AbstractPart
- AbstractPart.ItemDropTarget - Interface in alexiil.mc.lib.multipart.api
-
A target for retrieving item drops from
AbstractPart.addDrops(ItemDropTarget, LootContext)
. - addAllAttributes(AttributeList<?>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Offers every contained attribute to the given attribute list.
- addContextlessListener(Object, Class<E>, Runnable) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Adds a listener for a specified
MultipartEvent
that also implementsContextlessEvent
with aRunnable
. - addDrops(AbstractPart.ItemDropTarget, LootContext) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- addDrops(DefaultedList<ItemStack>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Deprecated.
- addExternalListener(Object, Class<E>, MultipartEventExternalListener<E>) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Adds a listener for a specified
MultipartEvent
(and all of it's subclasses), but also passes theMultipartContainer
that the event was fired from ito the event handler. - ADDITIONAL_PARTS - Static variable in class alexiil.mc.lib.multipart.api.PartLootParams
-
Any additional
AbstractPart
's that were broken because theyrequired
the main broken part. - addListener(Object, Class<E>, EventListener<E>) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Adds a listener for a specified
MultipartEvent
(and all of it's subclasses). - addNewPart(MultipartContainer.MultipartCreator) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Shorter form of
MultipartContainer.offerNewPart(MultipartCreator, boolean)
followed by adding the offer if it was allowed. - addNewPart(MultipartContainer.MultipartCreator, boolean) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Shorter form of
MultipartContainer.offerNewPart(MultipartCreator, boolean)
followed by adding the offer if it was allowed. - addRequiredPart(AbstractPart) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- addRequiredPart(AbstractPart) - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
-
Makes this
AbstractPart
depend on another part. - addRunOnceListener(Object, Class<E>, Runnable) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Adds a listener for a specified
MultipartEvent
that also implementsContextlessEvent
with aRunnable
. - afterBreak(PlayerEntity) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called instead of
Block.afterBreak(World, PlayerEntity, BlockPos, BlockState, BlockEntity, ItemStack)
, except that this shouldn't drop any items, as that's handled separately. - afterSubpartBreak(PlayerEntity, ItemStack, Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Multipart version of
Block.afterBreak(World, PlayerEntity, BlockPos, BlockState, BlockEntity, ItemStack)
. - alexiil.mc.lib.multipart.api - package alexiil.mc.lib.multipart.api
-
LibMultiPart's API.
- alexiil.mc.lib.multipart.api.event - package alexiil.mc.lib.multipart.api.event
- alexiil.mc.lib.multipart.api.misc - package alexiil.mc.lib.multipart.api.misc
- alexiil.mc.lib.multipart.api.property - package alexiil.mc.lib.multipart.api.property
- alexiil.mc.lib.multipart.api.render - package alexiil.mc.lib.multipart.api.render
- apply() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer.PartOffer
-
Adds the part to the holder, throwing an exception if anything about the container changed in the time between calling
MultipartContainer.offerNewPart(MultipartCreator, boolean)
andMultipartContainer.PartOffer.apply()
. - ATTRIBUTE - Static variable in interface alexiil.mc.lib.multipart.api.MultipartContainer
B
- BROKEN_PART - Static variable in class alexiil.mc.lib.multipart.api.PartLootParams
-
The primary
AbstractPart
that was broken - BrokenSinglePart(AbstractPart) - Constructor for class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSinglePart
- BrokenSubPart(SubdividedPart<Sub>, Sub) - Constructor for class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSubPart
C
- calcBreakingDelta(PlayerEntity, BlockState, float) - Static method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Calculates
AbstractPart.calculateBreakingDelta(PlayerEntity)
as if this part was the given block state instead, but using a custom hardness value. - calcSubpartBreakingDelta(Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Multipart version of
AbstractBlock.calcBlockBreakingDelta(BlockState, PlayerEntity, BlockView, BlockPos)
- calculateBreakingDelta(PlayerEntity) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- calculateBreakingDelta(PlayerEntity, Block) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Calculates
AbstractPart.calculateBreakingDelta(PlayerEntity)
as if this part was the given block instead. - calculateBreakingDelta(PlayerEntity, BlockState) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Calculates
AbstractPart.calculateBreakingDelta(PlayerEntity)
as if this part was the given block state instead. - CAN_BE_WATERLOGGED - Static variable in class alexiil.mc.lib.multipart.api.property.MultipartProperties
-
The return value from
AbstractBlock.emitsRedstonePower(BlockState)
- CAN_EMIT_REDSTONE - Static variable in class alexiil.mc.lib.multipart.api.property.MultipartProperties
-
The return value from
AbstractBlock.emitsRedstonePower(BlockState)
- canOverlapWith(AbstractPart) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Checks to see if this
AbstractPart
can overlap with the other part. - canPlayerInteract(PlayerEntity) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- CHUNK_UNLOAD - Static variable in class alexiil.mc.lib.multipart.api.event.PartContainerState
-
Fired in
IUnloadableBlockEntity.onChunkUnload()
- clazz - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- clearSubpart(Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
- clearValue(Object, MultipartProperty<T>) - Method in interface alexiil.mc.lib.multipart.api.property.MultipartPropertyContainer
- clearValues(Object) - Method in interface alexiil.mc.lib.multipart.api.property.MultipartPropertyContainer
-
Removes all property values set for the given key.
- combine(List<Boolean>) - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty.PreferedBooleanProperty
- combine(List<Integer>) - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty.IntegerBoundProperty
- combine(List<T>) - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- container - Variable in class alexiil.mc.lib.multipart.api.MultipartEventBus.ExternalListener
- ContextlessEvent - Interface in alexiil.mc.lib.multipart.api.event
-
Marker interface for
MultipartEvent
's that don't come with any context: for examplePartTickEvent
is a singleton, so you never care about anything about the event. - ContextlessListener(Runnable) - Constructor for class alexiil.mc.lib.multipart.api.MultipartEventBus.ContextlessListener
- create(MultipartHolder) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer.MultipartCreator
D
- defaultValue - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- definition - Variable in class alexiil.mc.lib.multipart.api.AbstractPart
- disallow() - Method in class alexiil.mc.lib.multipart.api.event.PartOfferedEvent
-
Disallows this part from being added to the container.
- drop(ItemStack) - Method in interface alexiil.mc.lib.multipart.api.AbstractPart.ItemDropTarget
-
Drops the given itemstack, using a default position and velocity.
- drop(ItemStack, Vec3d) - Method in interface alexiil.mc.lib.multipart.api.AbstractPart.ItemDropTarget
-
Drops the given
ItemStack
, using the given position and a random velocity. - drop(ItemStack, Vec3d, Vec3d) - Method in interface alexiil.mc.lib.multipart.api.AbstractPart.ItemDropTarget
-
If
dropsAsEntity()
is false then this ignores the position and velocity. - dropAll(Iterable<ItemStack>) - Method in interface alexiil.mc.lib.multipart.api.AbstractPart.ItemDropTarget
- dropsAsEntity() - Method in interface alexiil.mc.lib.multipart.api.AbstractPart.ItemDropTarget
E
- emitQuads(K, PartRenderContext) - Method in interface alexiil.mc.lib.multipart.api.render.PartModelBaker
- enqueueFirstTickTask(Runnable) - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
-
If
MultipartContainer.hasTicked()
returns true then this will just call the runnable directly, and return. - entity - Variable in class alexiil.mc.lib.multipart.api.event.PartEventEntityCollide
- equals(Object) - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- equals(Object) - Method in class alexiil.mc.lib.multipart.api.render.PartModelKey
- EVENT - Static variable in interface alexiil.mc.lib.multipart.api.render.PartDynamicModelRegisterEvent
- EVENT - Static variable in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent
- eventClass - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerAdded
- eventClass - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerRemoved
- eventListener - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerAdded
- eventListener - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerRemoved
- EventListener<E> - Interface in alexiil.mc.lib.multipart.api.event
- ExternalListener(MultipartContainer, MultipartEventExternalListener<E>) - Constructor for class alexiil.mc.lib.multipart.api.MultipartEventBus.ExternalListener
F
- fallbackConsumer() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- fireEvent(MultipartEvent) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Fires the given event on the
MultipartContainer.getEventBus()
viaMultipartEventBus.fireEvent(MultipartEvent)
. - fireEvent(MultipartEvent) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Fires the given event to all currently registered listeners.
- FloatSupplier - Interface in alexiil.mc.lib.multipart.api.misc
-
Float
version ofDoubleSupplier
.
G
- get(BlockView, BlockPos) - Static method in class alexiil.mc.lib.multipart.api.MultipartUtil
-
Checks to see if the block at the given position currently contains a full
MultipartContainer
. - get(World, BlockPos) - Static method in class alexiil.mc.lib.multipart.api.MultipartUtil
-
Checks to see if the block at the given position currently contains a full
MultipartContainer
. - getAllListeners() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- getAllParts() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getAllParts(Predicate<AbstractPart>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getAsFloat() - Method in interface alexiil.mc.lib.multipart.api.misc.FloatSupplier
- getBlockSprite(String) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- getBlockSprite(Identifier) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- getBreakContext() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- getClosestBlockState() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getCollisionShape() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getCollisionShape() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getContainer() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- getContainer() - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
- getContainer() - Method in interface alexiil.mc.lib.multipart.api.property.MultipartPropertyContainer
- getCullingShape() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getCurrentShape() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getDimension() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getDynamicShape(float) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getEmitter() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- getEventBus() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getFirstPart(Class<P>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getFirstPart(Class<P>, Predicate<P>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getFirstPart(Predicate<AbstractPart>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getHolder() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer.PartOffer
- getKey() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus.ListenerInfo
- getListener() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus.ListenerInfo
- getListenerClass() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus.ListenerInfo
- getListeners(Class<E>) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- getListenersForKey(Object) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- getMissingBlockSprite() - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- getModelKey() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called on the client for both rendering, and checking if this needs to re-render in
MultipartContainer.redrawIfChanged()
. - getMultipartBlockEntity() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getMultipartConversion(World, BlockPos, BlockState) - Method in interface alexiil.mc.lib.multipart.api.NativeMultipart
- getMultipartPos() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getMultipartWorld() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getNeighbourBlockEntity(Direction) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getOutlineShape() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getOutlineShape() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getPart() - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
- getPart() - Method in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenPart
- getPart() - Method in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSinglePart
- getPart() - Method in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSubPart
- getPart() - Method in interface alexiil.mc.lib.multipart.api.render.PartBreakContext
- getPart(long) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getParts(Class<P>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getParts(Class<P>, Predicate<P>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getPickStack() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called whenever this part is picked by the player (similar to
Block.getPickStack(BlockView, BlockPos, BlockState)
) - getProperties() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- getRealRenderContext() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- getShape() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- getSprite(SpriteIdentifier) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- getSprite(Identifier, Identifier) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- getStrongRedstonePower(Direction) - Static method in class alexiil.mc.lib.multipart.api.property.MultipartProperties
- getSubPart() - Method in interface alexiil.mc.lib.multipart.api.render.PartBreakContext
- getSubPart(SubdividedPart<Sub>) - Method in interface alexiil.mc.lib.multipart.api.render.PartBreakContext
- getSubpartDynamicShape(Vec3d, Sub, float) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Subpart equivalent to
AbstractPart.getDynamicShape(float)
. - getSubpartKeyClass() - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
- getTargetedSubpart(Vec3d) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
- getUniqueId() - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
- getValue(MultipartProperty<T>) - Method in interface alexiil.mc.lib.multipart.api.property.MultipartPropertyContainer
- getWeakRedstonePower(Direction) - Static method in class alexiil.mc.lib.multipart.api.property.MultipartProperties
H
- hasAnyListeners() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- hasAnyListenersFor(Class<? extends MultipartEvent>) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- hasAnyListenersForKey(Object) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
- hashCode() - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- hashCode() - Method in class alexiil.mc.lib.multipart.api.render.PartModelKey
- hasTicked() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- holder - Variable in class alexiil.mc.lib.multipart.api.AbstractPart
I
- ID_NET_CACHE - Static variable in class alexiil.mc.lib.multipart.api.PartDefinition
- identifier - Variable in class alexiil.mc.lib.multipart.api.PartDefinition
- INSTANCE - Static variable in class alexiil.mc.lib.multipart.api.event.PartTickEvent
- IntegerBoundProperty(String, int, int, int) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperty.IntegerBoundProperty
- INVALIDATE - Static variable in class alexiil.mc.lib.multipart.api.event.PartContainerState
-
Fired in
BlockEntity.markRemoved()
- isAllowed() - Method in class alexiil.mc.lib.multipart.api.event.PartOfferedEvent
- isBlocking(Direction) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- isClientWorld() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- isPresent() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus.ListenerInfo
- isPresent() - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
K
- key - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerAdded
- key - Variable in class alexiil.mc.lib.multipart.api.event.PartListenerRemoved
L
- LIGHT_VALUE - Static variable in class alexiil.mc.lib.multipart.api.property.MultipartProperties
-
The amount of light that a multiblock is emitting.
- listener - Variable in class alexiil.mc.lib.multipart.api.MultipartEventBus.ContextlessListener
- listener - Variable in class alexiil.mc.lib.multipart.api.MultipartEventBus.ExternalListener
- loadFromBuffer(MultipartHolder, NetByteBuf, IMsgReadCtx) - Method in class alexiil.mc.lib.multipart.api.PartDefinition
- loadFromBuffer(PartDefinition, MultipartHolder, NetByteBuf, IMsgReadCtx) - Method in interface alexiil.mc.lib.multipart.api.PartDefinition.IPartNetLoader
M
- mainPart - Variable in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSubPart
- max - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperty.IntegerBoundProperty
- meshConsumer() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- min - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperty.IntegerBoundProperty
- mirror(BlockMirror) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called whenever
BlockEntity.applyMirror(BlockMirror)
is called on the containing block. - MultipartContainer - Interface in alexiil.mc.lib.multipart.api
- MultipartContainer.MultipartCreator - Interface in alexiil.mc.lib.multipart.api
- MultipartContainer.PartOffer - Interface in alexiil.mc.lib.multipart.api
- MultipartEvent - Class in alexiil.mc.lib.multipart.api.event
-
The base class for all events that take place in a
MultipartContainer
. - MultipartEvent() - Constructor for class alexiil.mc.lib.multipart.api.event.MultipartEvent
- MultipartEventBus - Interface in alexiil.mc.lib.multipart.api
-
The event bus for
MultipartContainer
's. - MultipartEventBus.ContextlessListener<E extends MultipartEvent & ContextlessEvent> - Class in alexiil.mc.lib.multipart.api
- MultipartEventBus.ExternalListener<E extends MultipartEvent> - Class in alexiil.mc.lib.multipart.api
- MultipartEventBus.ListenerInfo<E extends MultipartEvent> - Interface in alexiil.mc.lib.multipart.api
-
Information on a single registered listener.
- MultipartEventExternalListener<E extends MultipartEvent> - Interface in alexiil.mc.lib.multipart.api.event
- MultipartHolder - Interface in alexiil.mc.lib.multipart.api
-
Wrapper interface for an
AbstractPart
in aMultipartContainer
. - MultipartProperties - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperties.RedstonePowerProperty - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperties.StrongRedstonePowerProperty - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperties.WeakRedstonePowerProperty - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperty<T> - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperty(String, Class<T>, T) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperty
- MultipartProperty.IntegerBoundProperty - Class in alexiil.mc.lib.multipart.api.property
- MultipartProperty.PreferedBooleanProperty - Class in alexiil.mc.lib.multipart.api.property
-
A property where the value will combine up to whatever is opposite to the
MultipartProperty.defaultValue
- MultipartPropertyContainer - Interface in alexiil.mc.lib.multipart.api.property
- MultipartRenderRegistry - Class in alexiil.mc.lib.multipart.api.render
-
Deprecated.Replaced by
PartDynamicModelRegisterEvent
andPartStaticModelRegisterEvent
. - MultipartUtil - Class in alexiil.mc.lib.multipart.api
-
Contains various utilities for creating, accessing, or interacting with
MultipartContainer
's in aWorld
.
N
- name - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- NativeMultipart - Interface in alexiil.mc.lib.multipart.api
-
A
Block
that can be converted (in-place) to anAbstractPart
. - NeighbourUpdateEvent - Class in alexiil.mc.lib.multipart.api.event
-
Fired when a neighbouring block was updated.
- NeighbourUpdateEvent(BlockPos) - Constructor for class alexiil.mc.lib.multipart.api.event.NeighbourUpdateEvent
- NET_ID - Static variable in class alexiil.mc.lib.multipart.api.AbstractPart
- NET_RENDER_DATA - Static variable in class alexiil.mc.lib.multipart.api.AbstractPart
- NET_SPAWN_BREAK_PARTICLES - Static variable in class alexiil.mc.lib.multipart.api.AbstractPart
- newValue - Variable in class alexiil.mc.lib.multipart.api.property.PartPropertyChangedEvent
- NOT_ADDED_UNIQUE_ID - Static variable in interface alexiil.mc.lib.multipart.api.MultipartHolder
O
- offerNewPart(MultipartContainer.MultipartCreator) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Offers a new part to this container, respecting nearby entities' bounding boxes.
- offerNewPart(MultipartContainer.MultipartCreator, boolean) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Offers a new part to this container.
- offerNewPart(World, BlockPos, MultipartContainer.MultipartCreator) - Static method in class alexiil.mc.lib.multipart.api.MultipartUtil
-
Offers the given
AbstractPart
into the block at the given position, respecting nearby entities' bounding boxes. - offerNewPart(World, BlockPos, MultipartContainer.MultipartCreator, boolean) - Static method in class alexiil.mc.lib.multipart.api.MultipartUtil
-
Offers the given
AbstractPart
into the block at the given position. - oldValue - Variable in class alexiil.mc.lib.multipart.api.property.PartPropertyChangedEvent
- onAdded(MultipartEventBus) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called whenever this part was added to the
MultipartContainer
, either inBlockEntity.cancelRemoval()
or when it is manually added by an item. - onBreak(PlayerEntity) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called instead of
Block.onBreak(World, BlockPos, BlockState, PlayerEntity)
, to play the broken sound, and spawn break particles. - onEvent(MultipartContainer, E) - Method in interface alexiil.mc.lib.multipart.api.event.MultipartEventExternalListener
- onEvent(E) - Method in interface alexiil.mc.lib.multipart.api.event.EventListener
- onEvent(E) - Method in class alexiil.mc.lib.multipart.api.MultipartEventBus.ContextlessListener
- onEvent(E) - Method in class alexiil.mc.lib.multipart.api.MultipartEventBus.ExternalListener
- onPlacedBy(PlayerEntity, Hand) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Open method, that's designed to be called from the
Item
that places this part into the world. - onRemoved() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- onSubpartBreak(PlayerEntity, Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Multipart version of
Block.onBreak(World, BlockPos, BlockState, PlayerEntity)
. - onSubpartBreakStart(PlayerEntity, Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Multipart version of
AbstractBlock.onBlockBreakStart(BlockState, World, BlockPos, PlayerEntity)
- onSubpartBroken(Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
-
Multipart version of
Block.onBroken(WorldAccess, BlockPos, BlockState)
- onUse(PlayerEntity, Hand, BlockHitResult) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called whenever this part is used via
AbstractBlock.onUse(BlockState, World, BlockPos, PlayerEntity, Hand, BlockHitResult)
.
P
- part - Variable in class alexiil.mc.lib.multipart.api.event.PartAddedEvent
- part - Variable in class alexiil.mc.lib.multipart.api.event.PartOfferedEvent
- part - Variable in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSinglePart
- PART_TYPE - Static variable in class alexiil.mc.lib.multipart.api.PartLootParams
- PartAddedEvent - Class in alexiil.mc.lib.multipart.api.event
-
Fired whenever an
AbstractPart
is added to aMultipartContainer
. - PartAddedEvent(AbstractPart) - Constructor for class alexiil.mc.lib.multipart.api.event.PartAddedEvent
- PartBreakContext - Interface in alexiil.mc.lib.multipart.api.render
- PartContainerState - Class in alexiil.mc.lib.multipart.api.event
-
Fired when the state of a container's block entity changes.
- PartContainerState.ChunkUnload - Class in alexiil.mc.lib.multipart.api.event
- PartContainerState.Invalidate - Class in alexiil.mc.lib.multipart.api.event
-
Fired in
BlockEntity.markRemoved()
- PartContainerState.Remove - Class in alexiil.mc.lib.multipart.api.event
- PartContainerState.Validate - Class in alexiil.mc.lib.multipart.api.event
-
Fired in
BlockEntity.cancelRemoval()
- PartDefinition - Class in alexiil.mc.lib.multipart.api
-
Contains the definition for an
AbstractPart
. - PartDefinition(Identifier) - Constructor for class alexiil.mc.lib.multipart.api.PartDefinition
-
Protected constructor for use by subclasses that override both
PartDefinition.readFromNbt(MultipartHolder, CompoundTag)
andPartDefinition.loadFromBuffer(MultipartHolder, NetByteBuf, IMsgReadCtx)
. - PartDefinition(Identifier, PartDefinition.IPartNbtReader, PartDefinition.IPartNetLoader) - Constructor for class alexiil.mc.lib.multipart.api.PartDefinition
- PartDefinition.IPartNbtReader - Interface in alexiil.mc.lib.multipart.api
- PartDefinition.IPartNetLoader - Interface in alexiil.mc.lib.multipart.api
- PartDynamicModelRegisterEvent - Interface in alexiil.mc.lib.multipart.api.render
- PartDynamicModelRegisterEvent.DynamicModelRenderer - Interface in alexiil.mc.lib.multipart.api.render
- PartEventEntityCollide - Class in alexiil.mc.lib.multipart.api.event
- PartEventEntityCollide(Entity) - Constructor for class alexiil.mc.lib.multipart.api.event.PartEventEntityCollide
- PartListenerAdded<E extends MultipartEvent> - Class in alexiil.mc.lib.multipart.api.event
-
Fired whenever
MultipartEventBus.addListener(Object, Class, EventListener)
is called. - PartListenerAdded(Object, Class<E>, EventListener<E>) - Constructor for class alexiil.mc.lib.multipart.api.event.PartListenerAdded
- PartListenerRemoved<E extends MultipartEvent> - Class in alexiil.mc.lib.multipart.api.event
-
Fired whenever
MultipartEventBus.removeListeners(Object)
is called. - PartListenerRemoved(Object, Class<E>, EventListener<E>) - Constructor for class alexiil.mc.lib.multipart.api.event.PartListenerRemoved
- PartLootParams - Class in alexiil.mc.lib.multipart.api
-
Stores some
LootContextParameter
s for LMP. - PartLootParams.BrokenPart - Class in alexiil.mc.lib.multipart.api
-
An
AbstractPart
that was broken. - PartLootParams.BrokenSinglePart - Class in alexiil.mc.lib.multipart.api
- PartLootParams.BrokenSubPart<Sub> - Class in alexiil.mc.lib.multipart.api
- PartModelBaker<K extends PartModelKey> - Interface in alexiil.mc.lib.multipart.api.render
- PartModelKey - Class in alexiil.mc.lib.multipart.api.render
-
Used by the static part baker to generate the quad list.
- PartModelKey() - Constructor for class alexiil.mc.lib.multipart.api.render.PartModelKey
- PartOfferedEvent - Class in alexiil.mc.lib.multipart.api.event
- PartOfferedEvent(AbstractPart) - Constructor for class alexiil.mc.lib.multipart.api.event.PartOfferedEvent
- PartPropertyChangedEvent<T> - Class in alexiil.mc.lib.multipart.api.property
- PartPropertyChangedEvent(MultipartProperty<T>, T, T) - Constructor for class alexiil.mc.lib.multipart.api.property.PartPropertyChangedEvent
- PartRemovedEvent - Class in alexiil.mc.lib.multipart.api.event
-
Fired after a part is removed from a container.
- PartRemovedEvent(AbstractPart) - Constructor for class alexiil.mc.lib.multipart.api.event.PartRemovedEvent
- PartRenderContext - Interface in alexiil.mc.lib.multipart.api.render
- PartRenderer<P extends AbstractPart> - Interface in alexiil.mc.lib.multipart.api.render
- PARTS - Static variable in class alexiil.mc.lib.multipart.api.PartDefinition
- PartStaticModelRegisterEvent - Interface in alexiil.mc.lib.multipart.api.render
- PartStaticModelRegisterEvent.StaticModelRenderer - Interface in alexiil.mc.lib.multipart.api.render
- PartTickEvent - Class in alexiil.mc.lib.multipart.api.event
-
Fired once per block entity tick.
- playBreakSound() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called by default in
AbstractPart.onBreak(PlayerEntity)
to play the breaking sound. - playBreakSound(BlockState) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- playHitSound(BlockState) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- playHitSound(PlayerEntity) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called instead of
Block.onBreak(World, BlockPos, BlockState, PlayerEntity)
, to play the broken sound, and spawn break particles. - playHitSound(PlayerEntity, Sub) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
- popTransform() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- pos - Variable in class alexiil.mc.lib.multipart.api.event.NeighbourUpdateEvent
- pos(World, Direction, Direction.Axis, double) - Static method in class alexiil.mc.lib.multipart.api.AbstractPart
- PreferedBooleanProperty(String, Boolean) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperty.PreferedBooleanProperty
- property - Variable in class alexiil.mc.lib.multipart.api.property.PartPropertyChangedEvent
- pushTransform(RenderContext.QuadTransform) - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
R
- readFromNbt(MultipartHolder, CompoundTag) - Method in class alexiil.mc.lib.multipart.api.PartDefinition
- readFromNbt(PartDefinition, MultipartHolder, CompoundTag) - Method in interface alexiil.mc.lib.multipart.api.PartDefinition.IPartNbtReader
-
Reads the pipe pluggable from NBT.
- readRenderData(NetByteBuf, IMsgReadCtx) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- recalculateShape() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Recalculates
MultipartContainer.getCurrentShape()
andMultipartContainer.getCollisionShape()
. - redrawIfChanged() - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Redraws this multipart, if any of it's parts return different
AbstractPart.getModelKey()
. - RedstonePowerProperty(String, Direction) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperties.RedstonePowerProperty
- register() - Method in class alexiil.mc.lib.multipart.api.PartDefinition
- register(Class<K>, PartModelBaker<K>) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent.StaticModelRenderer
- register(Class<P>, PartRenderer<P>) - Method in interface alexiil.mc.lib.multipart.api.render.PartDynamicModelRegisterEvent.DynamicModelRenderer
-
Registers a renderer that will render the given class, and all of it's subclasses (unless a different renderer is registered for one of the subclasses).
- register(Identifier...) - Method in class alexiil.mc.lib.multipart.api.PartDefinition
- registerModels(PartDynamicModelRegisterEvent.DynamicModelRenderer) - Method in interface alexiil.mc.lib.multipart.api.render.PartDynamicModelRegisterEvent
- registerModels(PartStaticModelRegisterEvent.StaticModelRenderer) - Method in interface alexiil.mc.lib.multipart.api.render.PartStaticModelRegisterEvent
- remove() - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus.ListenerInfo
-
Removes this listener.
- remove() - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
-
Removes this
MultipartHolder.getPart()
from the container. - REMOVE - Static variable in class alexiil.mc.lib.multipart.api.event.PartContainerState
- removed - Variable in class alexiil.mc.lib.multipart.api.event.PartRemovedEvent
- removeListeners(Object) - Method in interface alexiil.mc.lib.multipart.api.MultipartEventBus
-
Removes all listeners that were added for the given key.
- removePart(AbstractPart) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- removeRequiredPart(AbstractPart) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- removeRequiredPart(AbstractPart) - Method in interface alexiil.mc.lib.multipart.api.MultipartHolder
-
Removes the requirement this has for the given part.
- render(P, float, MatrixStack, VertexConsumerProvider, int, int) - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderer
- rotate(BlockRotation) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called whenever
BlockEntity.applyRotation(BlockRotation)
is called on the containing block.
S
- sendNetworkUpdate(T, NetIdDataK<T>, NetIdDataK.IMsgDataWriterK<T>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Sends the given
NetIdDataK
to every player currently watching this multipart, with a customNetIdDataK.IMsgDataWriterK
. - sendNetworkUpdate(T, NetIdDataK<T>, NetIdDataK.IMsgDataWriterK<T>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Sends the given
NetIdDataK
to every player currently watching thisMultipartContainer.getMultipartBlockEntity()
, with a customNetIdDataK.IMsgDataWriterK
. - sendNetworkUpdate(T, NetIdTyped<T>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Sends the given
NetIdDataK
orNetIdSignalK
to every player currently watching this multipart. - sendNetworkUpdate(T, NetIdTyped<T>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Sends the given
NetIdDataK
orNetIdSignalK
to every player currently watching thisMultipartContainer.getMultipartBlockEntity()
. - sendNetworkUpdateExcept(PlayerEntity, T, NetIdDataK<T>, NetIdDataK.IMsgDataWriterK<T>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Sends the given
NetIdDataK
to every player currently watching this multipart, with a customNetIdDataK.IMsgDataWriterK
, except for the given player. - sendNetworkUpdateExcept(PlayerEntity, T, NetIdDataK<T>, NetIdDataK.IMsgDataWriterK<T>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Sends the given
NetIdDataK
to every player currently watching thisMultipartContainer.getMultipartBlockEntity()
, with a customNetIdDataK.IMsgDataWriterK
, except for the given player. - sendNetworkUpdateExcept(PlayerEntity, T, NetIdTyped<T>) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Sends the given
NetIdDataK
orNetIdSignalK
to every player currently watching this multipart, except for the given player. - sendNetworkUpdateExcept(PlayerEntity, T, NetIdTyped<T>) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
-
Sends the given
NetIdDataK
orNetIdSignalK
to every player currently watching thisMultipartContainer.getMultipartBlockEntity()
, except for the given player. - setValue(Object, MultipartProperty<T>, T) - Method in interface alexiil.mc.lib.multipart.api.property.MultipartPropertyContainer
- shouldQuadsBeLit() - Method in interface alexiil.mc.lib.multipart.api.render.PartRenderContext
- side - Variable in class alexiil.mc.lib.multipart.api.property.MultipartProperties.RedstonePowerProperty
- spawnBreakingParticles(Direction) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Deprecated.This was renamed to
AbstractPart.spawnHitParticle(Direction)
- spawnBreakingParticles(Vec3d, Sub, Direction) - Method in interface alexiil.mc.lib.multipart.api.SubdividedPart
- spawnBreakParticles() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Called on the client to spawn break particles.
- spawnBreakParticles(BlockState) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnBreakParticles(BlockState, Sprite) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnBreakParticles(BlockState, Identifier) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnHitParticle(Direction) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Spawns a single partial-break (hit) particle.
- spawnHitParticle(Direction, BlockState) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnHitParticle(Direction, BlockState, Sprite) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnHitParticle(Direction, BlockState, Identifier) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- spawnHitParticle(Direction, Box, BlockState, Sprite) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- StrongRedstonePowerProperty(Direction) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperties.StrongRedstonePowerProperty
- SubdividedPart<Sub> - Interface in alexiil.mc.lib.multipart.api
-
Optional interface for
AbstractPart
implementations which can have sub-parts targeted and broken instead of the whole thing. - subPart - Variable in class alexiil.mc.lib.multipart.api.PartLootParams.BrokenSubPart
T
- testNewPart(MultipartContainer.MultipartCreator) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- testNewPart(MultipartContainer.MultipartCreator, boolean) - Method in interface alexiil.mc.lib.multipart.api.MultipartContainer
- toString() - Method in class alexiil.mc.lib.multipart.api.MultipartEventBus.ContextlessListener
- toString() - Method in class alexiil.mc.lib.multipart.api.MultipartEventBus.ExternalListener
- toString() - Method in class alexiil.mc.lib.multipart.api.property.MultipartProperty
- toTag() - Method in class alexiil.mc.lib.multipart.api.AbstractPart
- turnIntoMultipart(World, BlockPos) - Static method in class alexiil.mc.lib.multipart.api.MultipartUtil
V
- VALIDATE - Static variable in class alexiil.mc.lib.multipart.api.event.PartContainerState
-
Fired in
BlockEntity.cancelRemoval()
W
- WeakRedstonePowerProperty(Direction) - Constructor for class alexiil.mc.lib.multipart.api.property.MultipartProperties.WeakRedstonePowerProperty
- writeCreationData(NetByteBuf, IMsgWriteCtx) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
-
Writes the payload that will be passed into
PartDefinition.loadFromBuffer(MultipartHolder, NetByteBuf, IMsgReadCtx)
on the client. - writeRenderData(NetByteBuf, IMsgWriteCtx) - Method in class alexiil.mc.lib.multipart.api.AbstractPart
All Classes|All Packages