Class RegisterCapabilitiesEvent
java.lang.Object
net.neoforged.bus.api.Event
net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent
- All Implemented Interfaces:
net.neoforged.fml.event.IModBusEvent
public class RegisterCapabilitiesEvent
extends net.neoforged.bus.api.Event
implements net.neoforged.fml.event.IModBusEvent
Fired to register capability providers at an appropriate time.
-
Nested Class Summary
Nested classes/interfaces inherited from class net.neoforged.bus.api.Event
net.neoforged.bus.api.Event.HasResult, net.neoforged.bus.api.Event.Result
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
isBlockRegistered
(BlockCapability<?, ?> capability, Block block) Returntrue
if a provider is registered for the given block and capability.boolean
isEntityRegistered
(EntityCapability<?, ?> capability, EntityType<?> entityType) Returntrue
if a provider is registered for the given entity type and capability.boolean
isItemRegistered
(ItemCapability<?, ?> capability, Item item) Returntrue
if a provider is registered for the given item and capability.<T,
C> void registerBlock
(BlockCapability<T, C> capability, IBlockCapabilityProvider<T, C> provider, Block... blocks) Register a capability provider for some blocks.<T,
C, BE extends BlockEntity>
voidregisterBlockEntity
(BlockCapability<T, C> capability, BlockEntityType<BE> blockEntityType, ICapabilityProvider<? super BE, C, T> provider) Register a capability provider for a block entity type.<T,
C, E extends Entity>
voidregisterEntity
(EntityCapability<T, C> capability, EntityType<E> entityType, ICapabilityProvider<? super E, C, T> provider) Register a capability provider for some entity type.<T,
C> void registerItem
(ItemCapability<T, C> capability, ICapabilityProvider<ItemStack, C, T> provider, ItemLike... items) Register a capability provider for some items.Methods inherited from class net.neoforged.bus.api.Event
getResult, hasResult, setResult
-
Constructor Details
-
RegisterCapabilitiesEvent
RegisterCapabilitiesEvent()
-
-
Method Details
-
registerBlock
public <T,C> void registerBlock(BlockCapability<T, C> capability, IBlockCapabilityProvider<T, C> provider, Block... blocks) Register a capability provider for some blocks.If a previously returned capability is not valid anymore, or if a new capability is available,
ILevelExtension.invalidateCapabilities(BlockPos)
MUST be called to notify the caches. SeeIBlockCapabilityProvider
for details. -
registerBlockEntity
public <T,C, void registerBlockEntityBE extends BlockEntity> (BlockCapability<T, C> capability, BlockEntityType<BE> blockEntityType, ICapabilityProvider<? super BE, C, T> provider) Register a capability provider for a block entity type.If a previously returned capability is not valid anymore, or if a new capability is available,
ILevelExtension.invalidateCapabilities(BlockPos)
MUST be called to notify the caches. SeeIBlockCapabilityProvider
for details. -
isBlockRegistered
Returntrue
if a provider is registered for the given block and capability. -
registerEntity
public <T,C, void registerEntityE extends Entity> (EntityCapability<T, C> capability, EntityType<E> entityType, ICapabilityProvider<? super E, C, T> provider) Register a capability provider for some entity type. -
isEntityRegistered
Returntrue
if a provider is registered for the given entity type and capability. -
registerItem
public <T,C> void registerItem(ItemCapability<T, C> capability, ICapabilityProvider<ItemStack, C, T> provider, ItemLike... items) Register a capability provider for some items. -
isItemRegistered
Returntrue
if a provider is registered for the given item and capability.
-