Class RegistryWrapper

  • All Implemented Interfaces:

    
    public class RegistryWrapper
    
                        

    A wrapper for many registries, providing quick functions to register things to them. Basically a tiny registrate but cooler (totally).

    "Mom, can we get registrate?" "No, we have registrate at home." Registrate at home:

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Set<DeferredRegister<?>> getRegistries()
      final List<DeferredHolder<Item, out Item>> getAllItems()
      final Map<DeferredHolder<EntityType<?>, EntityType<out Entity>>, Function0<AttributeSupplier>> getEntityAttributes()
      final Map<DeferredHolder<EntityType<?>, EntityType<out Entity>>, SpawnConditions> getSpawnConditions()
      final DeferredRegister<BaseEvent> getEvents()
      final DeferredRegister<ChatResponse> getChatResponses()
      final DeferredRegister<MenuType<?>> getMenuTypes()
      final DeferredRegister<AttachmentType<?>> getDataAttachments()
      final DeferredRegister<SoundEvent> getSoundEvents()
      final DeferredRegister<JukeboxSong> getJukeboxSongs()
      final DeferredRegister<Block> getBlocks()
      final DeferredRegister<BlockEntityType<?>> getBlockEntities()
      final DeferredRegister<Item> getItems()
      final DeferredRegister<CreativeModeTab> getCreativeTabs()
      final DeferredRegister<EntityType<?>> getEntityTypes()
      final DeferredRegister<MobEffect> getMobEffects()
      final DeferredRegister<ParticleType<?>> getParticleTypes()
      final DeferredRegister<EntityDataSerializer<?>> getEntityDataSerializers()
      final List<DeferredHolder<Item, out Item>> getAllItemHolders()
      final String getModId()
      final Unit setModId(String modId)
      final <T extends Any> DeferredRegister<T> deferred(Registry<T> registry)
      final <T extends Any> DeferredRegister<T> deferred(ResourceKey<Registry<T>> key)
      final ResourceLocation modLoc(String id)
      final <T extends BaseEvent> DeferredHolder<BaseEvent, T> event(String id, Function0<T> ctor) Register an event.
      final <T extends ChatResponse> DeferredHolder<ChatResponse, T> chatResponse(String id, Function0<T> ctor) Register a chat response.
      final <T extends AbstractContainerMenu> DeferredHolder<MenuType<?>, MenuType<T>> menu(String id, Function2<Integer, Inventory, T> ctor) Register a menu.
      final <T extends AbstractContainerMenu> DeferredHolder<MenuType<?>, MenuType<T>> menu(String id, Function3<Integer, Inventory, FriendlyByteBuf, T> ctor) Register a menu that requires extra data.
      final <S extends Tag, T extends INBTSerializable<S>> DeferredHolder<AttachmentType<?>, AttachmentType<T>> livingAttachment(String id, Function0<T> ctor) Register a data attachment for a living entity.
      final DeferredHolder<SoundEvent, SoundEvent> sound(String id) Register a variable range sound event.
      final DeferredHolder<JukeboxSong, JukeboxSong> song(String id, DeferredHolder<SoundEvent, SoundEvent> sound, Float lengthSecs) Register a jukebox song.
      final <T extends Block> DeferredHolder<Block, T> block(String id, Function0<T> ctor) Register a block.
      final <T extends BlockEntity> DeferredHolder<BlockEntityType<?>, BlockEntityType<T>> blockEntity(String name, DeferredHolder<Block, out Block> block, BlockEntityType.BlockEntitySupplier<T> supplier) Register a block entity.
      final <T extends Item> DeferredHolder<Item, T> item(String id, Function0<T> ctor) Register an item.
      final DeferredHolder<Item, Item> item(String id, Item.Properties props) Register a basic item with custom properties.
      final DeferredHolder<Item, BlockItem> blockItem(DeferredHolder<Block, out Block> block) Register an item for a block.
      final DeferredHolder<Item, DoubleHighBlockItem> doubleBlockItem(DeferredHolder<Block, out Block> block) Register an item for a block that's double high (like a slab).
      final DeferredHolder<CreativeModeTab, CreativeModeTab> creativeTab(String id, Function0<CreativeModeTab> tab) Register a creative tab.
      final PreConfiguredCreativeTabBuilder tab(String id) Register a pre-configured creative tab for all your items.
      final <T extends Entity> DeferredHolder<EntityType<?>, EntityType<T>> manualEntity(String id, EntityType.Builder<T> entityTypeBuilder) Manually register an entity type.
      final <T extends Entity> EntityBuilder<T> entity(String id, EntityType.EntityFactory<T> factory, MobCategory category) Register an entity with configurable properties.
      final Function0<AttributeSupplier> entityAttrs(DeferredHolder<EntityType<?>, EntityType<out Entity>> holder, Function0<AttributeSupplier> attrs) Register attributes for an entity.
      final SpawnConditions entitySpawns(DeferredHolder<EntityType<?>, EntityType<out Entity>> holder, SpawnConditions conditions) Register spawn conditions for an entity.
      final <T extends MobEffect> DeferredHolder<MobEffect, MobEffect> effect(String id, Function0<T> ctor) Register a mob/potion effect.
      final DeferredHolder<ParticleType<?>, SimpleParticleType> simpleParticle(String id, Boolean overrideLimiter) Register a simple particle.
      final <T extends Any> EntityDataSerializer<T> entityDataSerializer(String id, EntityDataSerializer<T> serializer) Register an entity data serializer.
      final Unit registerEntityAttributes(EntityAttributeCreationEvent event)
      final Unit registerSpawnPlacements(RegisterSpawnPlacementsEvent event)
      final Unit setup(IEventBus bus) Hook this RegistryWrapper into the proper events on your mod's bus.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RegistryWrapper

        RegistryWrapper(String modId)
    • Method Detail

      • getEntityAttributes

         final Map<DeferredHolder<EntityType<?>, EntityType<out Entity>>, Function0<AttributeSupplier>> getEntityAttributes()
      • getMenuTypes

         final DeferredRegister<MenuType<?>> getMenuTypes()
      • getBlocks

         final DeferredRegister<Block> getBlocks()
      • getBlockEntities

         final DeferredRegister<BlockEntityType<?>> getBlockEntities()
      • getItems

         final DeferredRegister<Item> getItems()
      • getCreativeTabs

         final DeferredRegister<CreativeModeTab> getCreativeTabs()
      • getEntityTypes

         final DeferredRegister<EntityType<?>> getEntityTypes()
      • getMobEffects

         final DeferredRegister<MobEffect> getMobEffects()
      • deferred

         final <T extends Any> DeferredRegister<T> deferred(Registry<T> registry)
      • deferred

         final <T extends Any> DeferredRegister<T> deferred(ResourceKey<Registry<T>> key)
      • menu

         final <T extends AbstractContainerMenu> DeferredHolder<MenuType<?>, MenuType<T>> menu(String id, Function2<Integer, Inventory, T> ctor)

        Register a menu.

      • menu

         final <T extends AbstractContainerMenu> DeferredHolder<MenuType<?>, MenuType<T>> menu(String id, Function3<Integer, Inventory, FriendlyByteBuf, T> ctor)

        Register a menu that requires extra data.

      • livingAttachment

         final <S extends Tag, T extends INBTSerializable<S>> DeferredHolder<AttachmentType<?>, AttachmentType<T>> livingAttachment(String id, Function0<T> ctor)

        Register a data attachment for a living entity.

      • sound

         final DeferredHolder<SoundEvent, SoundEvent> sound(String id)

        Register a variable range sound event.

      • song

         final DeferredHolder<JukeboxSong, JukeboxSong> song(String id, DeferredHolder<SoundEvent, SoundEvent> sound, Float lengthSecs)

        Register a jukebox song.

      • block

         final <T extends Block> DeferredHolder<Block, T> block(String id, Function0<T> ctor)

        Register a block.

      • blockEntity

         final <T extends BlockEntity> DeferredHolder<BlockEntityType<?>, BlockEntityType<T>> blockEntity(String name, DeferredHolder<Block, out Block> block, BlockEntityType.BlockEntitySupplier<T> supplier)

        Register a block entity.

      • item

         final <T extends Item> DeferredHolder<Item, T> item(String id, Function0<T> ctor)

        Register an item.

      • item

         final DeferredHolder<Item, Item> item(String id, Item.Properties props)

        Register a basic item with custom properties.

      • blockItem

         final DeferredHolder<Item, BlockItem> blockItem(DeferredHolder<Block, out Block> block)

        Register an item for a block.

      • doubleBlockItem

         final DeferredHolder<Item, DoubleHighBlockItem> doubleBlockItem(DeferredHolder<Block, out Block> block)

        Register an item for a block that's double high (like a slab).

      • creativeTab

         final DeferredHolder<CreativeModeTab, CreativeModeTab> creativeTab(String id, Function0<CreativeModeTab> tab)

        Register a creative tab.

      • manualEntity

         final <T extends Entity> DeferredHolder<EntityType<?>, EntityType<T>> manualEntity(String id, EntityType.Builder<T> entityTypeBuilder)

        Manually register an entity type.

      • entity

         final <T extends Entity> EntityBuilder<T> entity(String id, EntityType.EntityFactory<T> factory, MobCategory category)

        Register an entity with configurable properties. This returns a builder for it.

      • entityAttrs

         final Function0<AttributeSupplier> entityAttrs(DeferredHolder<EntityType<?>, EntityType<out Entity>> holder, Function0<AttributeSupplier> attrs)

        Register attributes for an entity.

      • effect

         final <T extends MobEffect> DeferredHolder<MobEffect, MobEffect> effect(String id, Function0<T> ctor)

        Register a mob/potion effect.

      • simpleParticle

         final DeferredHolder<ParticleType<?>, SimpleParticleType> simpleParticle(String id, Boolean overrideLimiter)

        Register a simple particle.

      • entityDataSerializer

         final <T extends Any> EntityDataSerializer<T> entityDataSerializer(String id, EntityDataSerializer<T> serializer)

        Register an entity data serializer.

      • setup

         final Unit setup(IEventBus bus)

        Hook this RegistryWrapper into the proper events on your mod's bus. It won't work unless you call this.