From 79217f527e3648bd620a8ebcdd54be1e242ad224 Mon Sep 17 00:00:00 2001 From: Reece Mackie <20544390+Rover656@users.noreply.github.com> Date: Mon, 30 Sep 2024 17:01:21 +0100 Subject: [PATCH] chore: Many renames and additions --- .../java/com/enderio/regilite/Regilite.java | 48 +++++++++---------- ...ilder.java => BlockEntityTypeBuilder.java} | 15 +++--- .../DeferredBlockEntityType.java | 24 ++++++++++ ...ies.java => RegiliteBlockEntityTypes.java} | 22 ++++----- ...va => RegiliteClientBlockEntityTypes.java} | 12 ++--- .../enderio/regilite/blocks/BlockBuilder.java | 10 ++-- ...ityBuilder.java => EntityTypeBuilder.java} | 15 +++--- ...es.java => RegiliteClientEntityTypes.java} | 12 ++--- ...Entities.java => RegiliteEntityTypes.java} | 20 ++++---- ...TypeHolder.java => DeferredFluidType.java} | 8 ++-- .../regilite/fluids/FluidTypeBuilder.java | 6 +-- .../regilite/fluids/RegiliteFluidTypes.java | 2 +- .../enderio/regilite/items/ItemBuilder.java | 2 +- ...{MenuBuilder.java => MenuTypeBuilder.java} | 6 +-- ...enus.java => RegiliteClientMenuTypes.java} | 12 ++--- ...iliteMenus.java => RegiliteMenuTypes.java} | 25 ++++++---- .../regilite/examplemod/BlockEntities.java | 2 +- .../enderio/regilite/examplemod/Blocks.java | 4 +- .../enderio/regilite/examplemod/Fluids.java | 4 +- .../enderio/regilite/examplemod/Menus.java | 2 +- 20 files changed, 139 insertions(+), 112 deletions(-) rename src/main/java/com/enderio/regilite/blockentities/{BlockEntityBuilder.java => BlockEntityTypeBuilder.java} (70%) create mode 100644 src/main/java/com/enderio/regilite/blockentities/DeferredBlockEntityType.java rename src/main/java/com/enderio/regilite/blockentities/{RegiliteBlockEntities.java => RegiliteBlockEntityTypes.java} (63%) rename src/main/java/com/enderio/regilite/blockentities/{RegiliteClientBlockEntities.java => RegiliteClientBlockEntityTypes.java} (60%) rename src/main/java/com/enderio/regilite/entities/{EntityBuilder.java => EntityTypeBuilder.java} (72%) rename src/main/java/com/enderio/regilite/entities/{RegiliteClientEntities.java => RegiliteClientEntityTypes.java} (62%) rename src/main/java/com/enderio/regilite/entities/{RegiliteEntities.java => RegiliteEntityTypes.java} (66%) rename src/main/java/com/enderio/regilite/fluids/{FluidTypeHolder.java => DeferredFluidType.java} (89%) rename src/main/java/com/enderio/regilite/menus/{MenuBuilder.java => MenuTypeBuilder.java} (59%) rename src/main/java/com/enderio/regilite/menus/{RegiliteClientMenus.java => RegiliteClientMenuTypes.java} (63%) rename src/main/java/com/enderio/regilite/menus/{RegiliteMenus.java => RegiliteMenuTypes.java} (56%) diff --git a/src/main/java/com/enderio/regilite/Regilite.java b/src/main/java/com/enderio/regilite/Regilite.java index 43986e1..9c69318 100644 --- a/src/main/java/com/enderio/regilite/Regilite.java +++ b/src/main/java/com/enderio/regilite/Regilite.java @@ -5,14 +5,14 @@ package com.enderio.regilite; -import com.enderio.regilite.blockentities.RegiliteBlockEntities; +import com.enderio.regilite.blockentities.RegiliteBlockEntityTypes; import com.enderio.regilite.blocks.RegiliteBlocks; -import com.enderio.regilite.entities.RegiliteEntities; +import com.enderio.regilite.entities.RegiliteEntityTypes; import com.enderio.regilite.fluids.RegiliteFluidTypes; import com.enderio.regilite.items.RegiliteItems; import com.enderio.regilite.lang.RegiliteLang; import com.enderio.regilite.loot.RegiliteLootTables; -import com.enderio.regilite.menus.RegiliteMenus; +import com.enderio.regilite.menus.RegiliteMenuTypes; import com.enderio.regilite.tags.RegiliteTags; import net.neoforged.bus.api.IEventBus; import net.neoforged.neoforge.registries.DeferredRegister; @@ -24,12 +24,12 @@ public class Regilite extends AbstractRegilite { private final RegiliteLootTables lootTablesModule; - private final RegiliteItems itemsModule; - private final RegiliteBlocks blocksRegistry; - private final RegiliteBlockEntities blockEntityRegistry; - private final RegiliteFluidTypes fluidTypesModule; - private final RegiliteEntities entitiesModule; - private final RegiliteMenus regiliteMenus; + private final RegiliteItems items; + private final RegiliteBlocks blocks; + private final RegiliteBlockEntityTypes blockEntityTypes; + private final RegiliteFluidTypes fluidTypes; + private final RegiliteEntityTypes entityTypes; + private final RegiliteMenuTypes menuTypes; private final DeferredRegister.DataComponents dataComponentsRegistry; @@ -40,12 +40,12 @@ public Regilite(String modId) { this.tagsModule = registerModule(new RegiliteTags(modId)); this.lootTablesModule = registerModule(new RegiliteLootTables()); - this.itemsModule = registerModule(RegiliteItems.create(this)); - this.blocksRegistry = registerModule(RegiliteBlocks.create(this)); - this.blockEntityRegistry = registerModule(RegiliteBlockEntities.create(this)); - this.fluidTypesModule = registerModule(RegiliteFluidTypes.create(this)); - this.entitiesModule = registerModule(RegiliteEntities.create(this)); - this.regiliteMenus = registerModule(RegiliteMenus.create(this)); + this.items = registerModule(RegiliteItems.create(this)); + this.blocks = registerModule(RegiliteBlocks.create(this)); + this.blockEntityTypes = registerModule(RegiliteBlockEntityTypes.create(this)); + this.fluidTypes = registerModule(RegiliteFluidTypes.create(this)); + this.entityTypes = registerModule(RegiliteEntityTypes.create(this)); + this.menuTypes = registerModule(RegiliteMenuTypes.create(this)); dataComponentsRegistry = DeferredRegister.createDataComponents(modId); } @@ -59,27 +59,27 @@ public RegiliteTags tags() { } public RegiliteItems items() { - return itemsModule; + return items; } public RegiliteBlocks blocks() { - return blocksRegistry; + return blocks; } - public RegiliteBlockEntities blockEntities() { - return blockEntityRegistry; + public RegiliteBlockEntityTypes blockEntityTypes() { + return blockEntityTypes; } public RegiliteFluidTypes fluidTypes() { - return fluidTypesModule; + return fluidTypes; } - public RegiliteEntities entities() { - return entitiesModule; + public RegiliteEntityTypes entityTypes() { + return entityTypes; } - public RegiliteMenus menus() { - return regiliteMenus; + public RegiliteMenuTypes menuTypes() { + return menuTypes; } public DeferredRegister.DataComponents dataComponents() { diff --git a/src/main/java/com/enderio/regilite/blockentities/BlockEntityBuilder.java b/src/main/java/com/enderio/regilite/blockentities/BlockEntityTypeBuilder.java similarity index 70% rename from src/main/java/com/enderio/regilite/blockentities/BlockEntityBuilder.java rename to src/main/java/com/enderio/regilite/blockentities/BlockEntityTypeBuilder.java index 3ea883d..81e8839 100644 --- a/src/main/java/com/enderio/regilite/blockentities/BlockEntityBuilder.java +++ b/src/main/java/com/enderio/regilite/blockentities/BlockEntityTypeBuilder.java @@ -10,15 +10,14 @@ import net.neoforged.neoforge.capabilities.BlockCapability; import net.neoforged.neoforge.capabilities.ICapabilityProvider; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; -import net.neoforged.neoforge.registries.DeferredHolder; import java.util.ArrayList; import java.util.List; import java.util.function.Function; import java.util.function.Supplier; -public class BlockEntityBuilder - extends RegiliteBuilder, BlockEntityType, BlockEntityType, DeferredHolder, BlockEntityType>> { +public class BlockEntityTypeBuilder + extends RegiliteBuilder, BlockEntityType, BlockEntityType, DeferredBlockEntityType> { private final RegiliteTags tagsModule; @@ -26,28 +25,28 @@ public class BlockEntityBuilder private final List> attachedCapabilityList = new ArrayList<>(); - protected BlockEntityBuilder(DeferredHolder, BlockEntityType> holder, RegiliteTags tagsModule) { + protected BlockEntityTypeBuilder(DeferredBlockEntityType holder, RegiliteTags tagsModule) { super(holder); this.tagsModule = tagsModule; } - public BlockEntityBuilder tag(TagKey> tag) { + public BlockEntityTypeBuilder tag(TagKey> tag) { tagsModule.blockEntityTypes().tag(tag).add(this::get); return this; } @SafeVarargs - public final BlockEntityBuilder tags(TagKey>... tags) { + public final BlockEntityTypeBuilder tags(TagKey>... tags) { tagsModule.blockEntityTypes().addToTags(this::get, tags); return this; } - public BlockEntityBuilder renderer(Supplier>> rendererFactory) { + public BlockEntityTypeBuilder renderer(Supplier>> rendererFactory) { this.rendererFactory = rendererFactory; return this; } - public BlockEntityBuilder capability(BlockCapability capability, ICapabilityProvider provider) { + public BlockEntityTypeBuilder capability(BlockCapability capability, ICapabilityProvider provider) { attachedCapabilityList.add(new AttachedCapability<>(capability, provider)); return this; } diff --git a/src/main/java/com/enderio/regilite/blockentities/DeferredBlockEntityType.java b/src/main/java/com/enderio/regilite/blockentities/DeferredBlockEntityType.java new file mode 100644 index 0000000..5379873 --- /dev/null +++ b/src/main/java/com/enderio/regilite/blockentities/DeferredBlockEntityType.java @@ -0,0 +1,24 @@ +package com.enderio.regilite.blockentities; + +import com.enderio.regilite.fluids.DeferredFluidType; +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.fluids.FluidType; +import net.neoforged.neoforge.registries.DeferredHolder; + +public class DeferredBlockEntityType extends DeferredHolder, BlockEntityType> { + private DeferredBlockEntityType(ResourceKey> key) { + super(key); + } + + public static DeferredBlockEntityType from(DeferredHolder, BlockEntityType> blockEntityTypeHolder) { + return new DeferredBlockEntityType<>(blockEntityTypeHolder.getKey()); + } + + public T create(BlockPos pos, BlockState state) { + return value().create(pos, state); + } +} diff --git a/src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntities.java b/src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntityTypes.java similarity index 63% rename from src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntities.java rename to src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntityTypes.java index e85ae0e..d49032c 100644 --- a/src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntities.java +++ b/src/main/java/com/enderio/regilite/blockentities/RegiliteBlockEntityTypes.java @@ -21,34 +21,34 @@ import java.util.Arrays; import java.util.function.Supplier; -public class RegiliteBlockEntities implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { +public class RegiliteBlockEntityTypes implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { private final RegiliteTags tagsModule; private final DeferredRegister> deferredRegister; - final ObjectList> blockEntities = new ObjectArrayList<>(); + final ObjectList> blockEntities = new ObjectArrayList<>(); - protected RegiliteBlockEntities(RegiliteTags tagsModule, DeferredRegister> deferredRegister) { + protected RegiliteBlockEntityTypes(RegiliteTags tagsModule, DeferredRegister> deferredRegister) { this.tagsModule = tagsModule; this.deferredRegister = deferredRegister; } @ApiStatus.Internal - public static RegiliteBlockEntities create(Regilite regilite) { - return new RegiliteBlockEntities(regilite.tags(), DeferredRegister.create(Registries.BLOCK_ENTITY_TYPE, regilite.modId())); + public static RegiliteBlockEntityTypes create(Regilite regilite) { + return new RegiliteBlockEntityTypes(regilite.tags(), DeferredRegister.create(Registries.BLOCK_ENTITY_TYPE, regilite.modId())); } @SafeVarargs - public final BlockEntityBuilder create(String name, BlockEntityType.BlockEntitySupplier factory, Supplier... blocks) { + public final BlockEntityTypeBuilder create(String name, BlockEntityType.BlockEntitySupplier factory, Supplier... blocks) { return create(name, () -> { var blocksArray = Arrays.stream(blocks).map(Supplier::get).toList().toArray(new Block[]{}); return BlockEntityType.Builder.of(factory, blocksArray).build(null); }); } - public BlockEntityBuilder create(String name, Supplier> supplier) { - var holder = deferredRegister.register(name, supplier); - var builder = new BlockEntityBuilder<>(holder, tagsModule); + public BlockEntityTypeBuilder create(String name, Supplier> supplier) { + var holder = DeferredBlockEntityType.from(deferredRegister.register(name, supplier)); + var builder = new BlockEntityTypeBuilder<>(holder, tagsModule); blockEntities.add(builder); return builder; } @@ -59,12 +59,12 @@ public void register(IEventBus modEventBus) { modEventBus.addListener(this::onRegisterCapabilities); if (FMLEnvironment.dist.isClient()) { - modEventBus.register(new RegiliteClientBlockEntities(this)); + modEventBus.register(new RegiliteClientBlockEntityTypes(this)); } } private void onRegisterCapabilities(RegisterCapabilitiesEvent event) { - blockEntities.forEach(blockEntityBuilder -> blockEntityBuilder.attachCapabilities(event)); + blockEntities.forEach(blockEntityTypeBuilder -> blockEntityTypeBuilder.attachCapabilities(event)); } @Override diff --git a/src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntities.java b/src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntityTypes.java similarity index 60% rename from src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntities.java rename to src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntityTypes.java index e19d151..9919ca2 100644 --- a/src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntities.java +++ b/src/main/java/com/enderio/regilite/blockentities/RegiliteClientBlockEntityTypes.java @@ -4,21 +4,21 @@ import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.neoforge.client.event.EntityRenderersEvent; -class RegiliteClientBlockEntities { - private final RegiliteBlockEntities regiliteBlockEntities; +class RegiliteClientBlockEntityTypes { + private final RegiliteBlockEntityTypes regiliteBlockEntityTypes; - public RegiliteClientBlockEntities(RegiliteBlockEntities regiliteBlockEntities) { - this.regiliteBlockEntities = regiliteBlockEntities; + public RegiliteClientBlockEntityTypes(RegiliteBlockEntityTypes regiliteBlockEntityTypes) { + this.regiliteBlockEntityTypes = regiliteBlockEntityTypes; } @SubscribeEvent public void registerRenderers(EntityRenderersEvent.RegisterRenderers event) { - for (var blockEntity : regiliteBlockEntities.blockEntities) { + for (var blockEntity : regiliteBlockEntityTypes.blockEntities) { registerRenderer(event, blockEntity); } } - private void registerRenderer(EntityRenderersEvent.RegisterRenderers event, BlockEntityBuilder builder) { + private void registerRenderer(EntityRenderersEvent.RegisterRenderers event, BlockEntityTypeBuilder builder) { if (builder.rendererFactory != null) { event.registerBlockEntityRenderer(builder.get(), ctx -> builder.rendererFactory.get().apply(ctx)); } diff --git a/src/main/java/com/enderio/regilite/blocks/BlockBuilder.java b/src/main/java/com/enderio/regilite/blocks/BlockBuilder.java index 332cf18..df6bb52 100644 --- a/src/main/java/com/enderio/regilite/blocks/BlockBuilder.java +++ b/src/main/java/com/enderio/regilite/blocks/BlockBuilder.java @@ -75,18 +75,18 @@ public final BlockBuilder tags(TagKey... tags) { // TODO: more permutations, based on those available in RegiliteItems. public BlockBuilder createSimpleBlockItem() { - return withBlockItem(b -> new BlockItem(b, new Item.Properties()), i -> {}); + return createBlockItem(b -> new BlockItem(b, new Item.Properties()), i -> {}); } public BlockBuilder createSimpleBlockItem(Consumer> itemConfigure) { - return withBlockItem(b -> new BlockItem(b, new Item.Properties()), itemConfigure); + return createBlockItem(b -> new BlockItem(b, new Item.Properties()), itemConfigure); } public BlockBuilder createSimpleBlockItem(Item.Properties properties, Consumer> itemConfigure) { - return withBlockItem(b -> new BlockItem(b, properties), itemConfigure); + return createBlockItem(b -> new BlockItem(b, properties), itemConfigure); } - public BlockBuilder withBlockItem(Function function, Consumer> itemConfigure) { + public BlockBuilder createBlockItem(Function function, Consumer> itemConfigure) { var item = itemsModule.create(getId().getPath(), () -> function.apply(this.get())); itemConfigure.accept(item.removeTranslation()); return this; @@ -97,7 +97,7 @@ public BlockBuilder lootTable(BiConsumer lootTa return this; } - public BlockBuilder blockStateProvider(BiConsumer> blockStateProvider) { + public BlockBuilder blockState(BiConsumer> blockStateProvider) { this.blockStateProvider = blockStateProvider; return this; } diff --git a/src/main/java/com/enderio/regilite/entities/EntityBuilder.java b/src/main/java/com/enderio/regilite/entities/EntityTypeBuilder.java similarity index 72% rename from src/main/java/com/enderio/regilite/entities/EntityBuilder.java rename to src/main/java/com/enderio/regilite/entities/EntityTypeBuilder.java index 1eec889..d688f08 100644 --- a/src/main/java/com/enderio/regilite/entities/EntityBuilder.java +++ b/src/main/java/com/enderio/regilite/entities/EntityTypeBuilder.java @@ -1,7 +1,6 @@ package com.enderio.regilite.entities; import com.enderio.regilite.RegiliteBuilder; -import com.enderio.regilite.fluids.FluidTypeBuilder; import com.enderio.regilite.lang.RegiliteLang; import com.enderio.regilite.tags.RegiliteTags; import net.minecraft.client.renderer.entity.EntityRenderer; @@ -19,7 +18,7 @@ import java.util.function.Function; import java.util.function.Supplier; -public class EntityBuilder extends RegiliteBuilder, EntityType, EntityType, DeferredHolder, EntityType>> { +public class EntityTypeBuilder extends RegiliteBuilder, EntityType, EntityType, DeferredHolder, EntityType>> { private final RegiliteLang langModule; private final RegiliteTags tagsModule; @@ -28,34 +27,34 @@ public class EntityBuilder extends RegiliteBuilder> attachedCapabilityList = new ArrayList<>(); - protected EntityBuilder(DeferredHolder, EntityType> holder, RegiliteLang langModule, RegiliteTags tagsModule) { + protected EntityTypeBuilder(DeferredHolder, EntityType> holder, RegiliteLang langModule, RegiliteTags tagsModule) { super(holder); this.langModule = langModule; this.tagsModule = tagsModule; } - public EntityBuilder tag(TagKey> tag) { + public EntityTypeBuilder tag(TagKey> tag) { tagsModule.entityTypes().tag(tag).add(this::get); return this; } @SafeVarargs - public final EntityBuilder tags(TagKey>... tags) { + public final EntityTypeBuilder tags(TagKey>... tags) { tagsModule.entityTypes().addToTags(this::get, tags); return this; } - public EntityBuilder translation(String translation) { + public EntityTypeBuilder translation(String translation) { langModule.addEntity(this::get, translation); return this; } - public EntityBuilder renderer(Supplier>> rendererFactory) { + public EntityTypeBuilder renderer(Supplier>> rendererFactory) { this.rendererFactory = rendererFactory; return this; } - public EntityBuilder capability(EntityCapability capability, ICapabilityProvider provider) { + public EntityTypeBuilder capability(EntityCapability capability, ICapabilityProvider provider) { attachedCapabilityList.add(new AttachedCapability<>(capability, provider)); return this; } diff --git a/src/main/java/com/enderio/regilite/entities/RegiliteClientEntities.java b/src/main/java/com/enderio/regilite/entities/RegiliteClientEntityTypes.java similarity index 62% rename from src/main/java/com/enderio/regilite/entities/RegiliteClientEntities.java rename to src/main/java/com/enderio/regilite/entities/RegiliteClientEntityTypes.java index e3f90e2..07013d6 100644 --- a/src/main/java/com/enderio/regilite/entities/RegiliteClientEntities.java +++ b/src/main/java/com/enderio/regilite/entities/RegiliteClientEntityTypes.java @@ -4,21 +4,21 @@ import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.neoforge.client.event.EntityRenderersEvent; -class RegiliteClientEntities { - private final RegiliteEntities regiliteEntities; +class RegiliteClientEntityTypes { + private final RegiliteEntityTypes regiliteEntityTypes; - public RegiliteClientEntities(RegiliteEntities regiliteEntities) { - this.regiliteEntities = regiliteEntities; + public RegiliteClientEntityTypes(RegiliteEntityTypes regiliteEntityTypes) { + this.regiliteEntityTypes = regiliteEntityTypes; } @SubscribeEvent public void registerRenderers(EntityRenderersEvent.RegisterRenderers event) { - for (var entity : regiliteEntities.entities) { + for (var entity : regiliteEntityTypes.entities) { registerRenderer(event, entity); } } - private void registerRenderer(EntityRenderersEvent.RegisterRenderers event, EntityBuilder builder) { + private void registerRenderer(EntityRenderersEvent.RegisterRenderers event, EntityTypeBuilder builder) { if (builder.rendererFactory != null) { event.registerEntityRenderer(builder.get(), ctx -> builder.rendererFactory.get().apply(ctx)); } diff --git a/src/main/java/com/enderio/regilite/entities/RegiliteEntities.java b/src/main/java/com/enderio/regilite/entities/RegiliteEntityTypes.java similarity index 66% rename from src/main/java/com/enderio/regilite/entities/RegiliteEntities.java rename to src/main/java/com/enderio/regilite/entities/RegiliteEntityTypes.java index 61fb508..6e0c38c 100644 --- a/src/main/java/com/enderio/regilite/entities/RegiliteEntities.java +++ b/src/main/java/com/enderio/regilite/entities/RegiliteEntityTypes.java @@ -21,32 +21,32 @@ import java.util.function.Supplier; -public class RegiliteEntities implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { +public class RegiliteEntityTypes implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { private final RegiliteLang langModule; private final RegiliteTags tagsModule; private final DeferredRegister> deferredRegister; - final ObjectList> entities = new ObjectArrayList<>(); + final ObjectList> entities = new ObjectArrayList<>(); - protected RegiliteEntities(RegiliteLang langModule, RegiliteTags tagsModule, DeferredRegister> deferredRegister) { + protected RegiliteEntityTypes(RegiliteLang langModule, RegiliteTags tagsModule, DeferredRegister> deferredRegister) { this.langModule = langModule; this.tagsModule = tagsModule; this.deferredRegister = deferredRegister; } @ApiStatus.Internal - public static RegiliteEntities create(Regilite regilite) { - return new RegiliteEntities(regilite.lang(), regilite.tags(), DeferredRegister.create(Registries.ENTITY_TYPE, regilite.modId())); + public static RegiliteEntityTypes create(Regilite regilite) { + return new RegiliteEntityTypes(regilite.lang(), regilite.tags(), DeferredRegister.create(Registries.ENTITY_TYPE, regilite.modId())); } - public EntityBuilder create(String name, EntityType.EntityFactory factory, MobCategory category) { + public EntityTypeBuilder create(String name, EntityType.EntityFactory factory, MobCategory category) { return create(name, () -> EntityType.Builder.of(factory, category).build(name)); } - public EntityBuilder create(String name, Supplier> supplier) { + public EntityTypeBuilder create(String name, Supplier> supplier) { var holder = deferredRegister.register(name, supplier); - var builder = new EntityBuilder<>(holder, langModule, tagsModule); + var builder = new EntityTypeBuilder<>(holder, langModule, tagsModule); entities.add(builder); return builder; } @@ -57,12 +57,12 @@ public void register(IEventBus modEventBus) { modEventBus.addListener(this::onRegisterCapabilities); if (FMLEnvironment.dist.isClient()) { - modEventBus.register(new RegiliteClientEntities(this)); + modEventBus.register(new RegiliteClientEntityTypes(this)); } } private void onRegisterCapabilities(RegisterCapabilitiesEvent event) { - entities.forEach(entityBuilder -> entityBuilder.attachCapabilities(event)); + entities.forEach(entityTypeBuilder -> entityTypeBuilder.attachCapabilities(event)); } @Override diff --git a/src/main/java/com/enderio/regilite/fluids/FluidTypeHolder.java b/src/main/java/com/enderio/regilite/fluids/DeferredFluidType.java similarity index 89% rename from src/main/java/com/enderio/regilite/fluids/FluidTypeHolder.java rename to src/main/java/com/enderio/regilite/fluids/DeferredFluidType.java index e5611be..8534495 100644 --- a/src/main/java/com/enderio/regilite/fluids/FluidTypeHolder.java +++ b/src/main/java/com/enderio/regilite/fluids/DeferredFluidType.java @@ -16,7 +16,7 @@ import net.neoforged.neoforge.registries.DeferredItem; import org.jetbrains.annotations.Nullable; -public class FluidTypeHolder extends DeferredHolder { +public class DeferredFluidType extends DeferredHolder { @Nullable private DeferredHolder flowingFluidHolder; @Nullable @@ -27,12 +27,12 @@ public class FluidTypeHolder extends DeferredHolder bucketHolder; - protected FluidTypeHolder(ResourceKey key) { + protected DeferredFluidType(ResourceKey key) { super(key); } - public static FluidTypeHolder from(DeferredHolder fluidTypeHolder) { - return new FluidTypeHolder<>(fluidTypeHolder.getKey()); + static DeferredFluidType from(DeferredHolder fluidTypeHolder) { + return new DeferredFluidType<>(fluidTypeHolder.getKey()); } public DeferredHolder flowingFluidHolder() { diff --git a/src/main/java/com/enderio/regilite/fluids/FluidTypeBuilder.java b/src/main/java/com/enderio/regilite/fluids/FluidTypeBuilder.java index 845680a..7466cb3 100644 --- a/src/main/java/com/enderio/regilite/fluids/FluidTypeBuilder.java +++ b/src/main/java/com/enderio/regilite/fluids/FluidTypeBuilder.java @@ -29,7 +29,7 @@ import java.util.function.Supplier; import java.util.function.UnaryOperator; -public class FluidTypeBuilder extends RegiliteBuilder, FluidType, T, FluidTypeHolder> { +public class FluidTypeBuilder extends RegiliteBuilder, FluidType, T, DeferredFluidType> { private final RegiliteLang langModule; private final RegiliteTags tagsModule; @@ -40,7 +40,7 @@ public class FluidTypeBuilder extends RegiliteBuilder> renderTypeSupplier = () -> null; - protected FluidTypeBuilder(FluidTypeHolder holder, DeferredRegister fluidRegister, RegiliteLang langModule, RegiliteTags tagsModule, RegiliteItems itemsModule, RegiliteBlocks blocksModule) { + protected FluidTypeBuilder(DeferredFluidType holder, DeferredRegister fluidRegister, RegiliteLang langModule, RegiliteTags tagsModule, RegiliteItems itemsModule, RegiliteBlocks blocksModule) { super(holder); this.langModule = langModule; this.tagsModule = tagsModule; @@ -95,7 +95,7 @@ public FluidTypeBuilder customBucket(Function FluidTypeBuilder customBucket(Function, I> supplier, Consumer> itemConfigure) { var bucket = itemsModule.create(getId().getPath() + "_bucket", () -> supplier.apply(holder::sourceFluid)); - bucket.modelProvider((prov, ctx) -> prov.bucketItem(ctx.get())); + bucket.model((prov, ctx) -> prov.bucketItem(ctx.get())); itemConfigure.accept(bucket); holder.bucketHolder(bucket.finish()); return this; diff --git a/src/main/java/com/enderio/regilite/fluids/RegiliteFluidTypes.java b/src/main/java/com/enderio/regilite/fluids/RegiliteFluidTypes.java index d005df8..d224403 100644 --- a/src/main/java/com/enderio/regilite/fluids/RegiliteFluidTypes.java +++ b/src/main/java/com/enderio/regilite/fluids/RegiliteFluidTypes.java @@ -51,7 +51,7 @@ public static RegiliteFluidTypes create(Regilite regilite) { public FluidTypeBuilder create(String name, FluidType.Properties properties) { var holder = fluidTypeRegister.register(name, () -> new FluidType(properties)); - var customHolder = FluidTypeHolder.from(holder); + var customHolder = DeferredFluidType.from(holder); var builder = new FluidTypeBuilder<>(customHolder, fluidRegister, langModule, tagsModule, itemsModule, blocksModule); fluids.add(builder); return builder; diff --git a/src/main/java/com/enderio/regilite/items/ItemBuilder.java b/src/main/java/com/enderio/regilite/items/ItemBuilder.java index 663c559..f5de1ab 100644 --- a/src/main/java/com/enderio/regilite/items/ItemBuilder.java +++ b/src/main/java/com/enderio/regilite/items/ItemBuilder.java @@ -89,7 +89,7 @@ public final ItemBuilder tab(ResourceKey tab, Consumer modelProvider(BiConsumer> modelProvider) { + public ItemBuilder model(BiConsumer> modelProvider) { this.modelProvider = modelProvider; return this; } diff --git a/src/main/java/com/enderio/regilite/menus/MenuBuilder.java b/src/main/java/com/enderio/regilite/menus/MenuTypeBuilder.java similarity index 59% rename from src/main/java/com/enderio/regilite/menus/MenuBuilder.java rename to src/main/java/com/enderio/regilite/menus/MenuTypeBuilder.java index 3dd3ff6..db5c1a6 100644 --- a/src/main/java/com/enderio/regilite/menus/MenuBuilder.java +++ b/src/main/java/com/enderio/regilite/menus/MenuTypeBuilder.java @@ -8,15 +8,15 @@ import java.util.function.Supplier; -public class MenuBuilder extends RegiliteBuilder, MenuType, MenuType, DeferredHolder, MenuType>> { +public class MenuTypeBuilder extends RegiliteBuilder, MenuType, MenuType, DeferredHolder, MenuType>> { protected Supplier>> screenConstructor; - protected MenuBuilder(DeferredHolder, MenuType> holder) { + protected MenuTypeBuilder(DeferredHolder, MenuType> holder) { super(holder); } - public MenuBuilder screen(Supplier>> screenConstructor) { + public MenuTypeBuilder screen(Supplier>> screenConstructor) { this.screenConstructor = screenConstructor; return this; } diff --git a/src/main/java/com/enderio/regilite/menus/RegiliteClientMenus.java b/src/main/java/com/enderio/regilite/menus/RegiliteClientMenuTypes.java similarity index 63% rename from src/main/java/com/enderio/regilite/menus/RegiliteClientMenus.java rename to src/main/java/com/enderio/regilite/menus/RegiliteClientMenuTypes.java index a896253..8993296 100644 --- a/src/main/java/com/enderio/regilite/menus/RegiliteClientMenus.java +++ b/src/main/java/com/enderio/regilite/menus/RegiliteClientMenuTypes.java @@ -4,21 +4,21 @@ import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.neoforge.client.event.RegisterMenuScreensEvent; -public class RegiliteClientMenus { - private final RegiliteMenus regiliteMenus; +public class RegiliteClientMenuTypes { + private final RegiliteMenuTypes regiliteMenuTypes; - public RegiliteClientMenus(RegiliteMenus regiliteMenus) { - this.regiliteMenus = regiliteMenus; + public RegiliteClientMenuTypes(RegiliteMenuTypes regiliteMenuTypes) { + this.regiliteMenuTypes = regiliteMenuTypes; } @SubscribeEvent public void registerScreens(RegisterMenuScreensEvent event) { - for (var menu : regiliteMenus.menus) { + for (var menu : regiliteMenuTypes.menus) { registerScreen(event, menu); } } - private void registerScreen(RegisterMenuScreensEvent event, MenuBuilder builder) { + private void registerScreen(RegisterMenuScreensEvent event, MenuTypeBuilder builder) { if (builder.screenConstructor != null) { event.register(builder.get(), builder.screenConstructor.get()::create); } diff --git a/src/main/java/com/enderio/regilite/menus/RegiliteMenus.java b/src/main/java/com/enderio/regilite/menus/RegiliteMenuTypes.java similarity index 56% rename from src/main/java/com/enderio/regilite/menus/RegiliteMenus.java rename to src/main/java/com/enderio/regilite/menus/RegiliteMenuTypes.java index a6078c0..d4d9995 100644 --- a/src/main/java/com/enderio/regilite/menus/RegiliteMenus.java +++ b/src/main/java/com/enderio/regilite/menus/RegiliteMenuTypes.java @@ -15,46 +15,51 @@ import net.neoforged.bus.api.IEventBus; import net.neoforged.fml.loading.FMLEnvironment; import net.neoforged.neoforge.network.IContainerFactory; +import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; import org.jetbrains.annotations.ApiStatus; import java.util.function.Supplier; -public class RegiliteMenus implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { +public class RegiliteMenuTypes implements RegiliteRegistryModule, DeferredRegister>>, RegiliteModuleEvents { private final DeferredRegister> deferredRegister; - final ObjectList> menus = new ObjectArrayList<>(); + final ObjectList> menus = new ObjectArrayList<>(); - protected RegiliteMenus(DeferredRegister> deferredRegister) { + protected RegiliteMenuTypes(DeferredRegister> deferredRegister) { this.deferredRegister = deferredRegister; } @ApiStatus.Internal - public static RegiliteMenus create(Regilite regilite) { - return new RegiliteMenus(DeferredRegister.create(Registries.MENU, regilite.modId())); + public static RegiliteMenuTypes create(Regilite regilite) { + return new RegiliteMenuTypes(DeferredRegister.create(Registries.MENU, regilite.modId())); } - public MenuBuilder create(String name, Supplier> menuSupplier) { + public MenuTypeBuilder create(String name, Supplier> menuSupplier) { var holder = deferredRegister.register(name, menuSupplier); - var builder = new MenuBuilder<>(holder); + var builder = new MenuTypeBuilder<>(holder); menus.add(builder); return builder; } - public MenuBuilder create(String name, IContainerFactory factory) { + public MenuTypeBuilder create(String name, IContainerFactory factory) { return create(name, () -> new MenuType<>(factory, FeatureFlags.DEFAULT_FLAGS)); } - public MenuBuilder create(String name, IContainerFactory factory, Supplier>> screenFactory) { + public MenuTypeBuilder create(String name, IContainerFactory factory, Supplier>> screenFactory) { return create(name, factory).screen(screenFactory); } + public DeferredHolder, MenuType> createOnly(String name, IContainerFactory factory, Supplier>> screenFactory) { + return create(name, factory, screenFactory).finish(); + } + public void register(IEventBus modEventBus) { deferredRegister.register(modEventBus); if (FMLEnvironment.dist.isClient()) { - modEventBus.register(new RegiliteClientMenus(this)); + modEventBus.register(new RegiliteClientMenuTypes(this)); } } diff --git a/src/test/java/com/enderio/regilite/examplemod/BlockEntities.java b/src/test/java/com/enderio/regilite/examplemod/BlockEntities.java index 452682d..7cebb4d 100644 --- a/src/test/java/com/enderio/regilite/examplemod/BlockEntities.java +++ b/src/test/java/com/enderio/regilite/examplemod/BlockEntities.java @@ -10,7 +10,7 @@ import net.neoforged.neoforge.registries.DeferredHolder; public class BlockEntities { - public static DeferredHolder, BlockEntityType> EXAMPLE_BLOCKENTITY = ExampleMod.REGILITE.blockEntities() + public static DeferredHolder, BlockEntityType> EXAMPLE_BLOCKENTITY = ExampleMod.REGILITE.blockEntityTypes() .create("example", ExampleBlockentity::new, Blocks.EXAMPLE_BLOCK) .finish(); diff --git a/src/test/java/com/enderio/regilite/examplemod/Blocks.java b/src/test/java/com/enderio/regilite/examplemod/Blocks.java index bf80f5c..adb2f47 100644 --- a/src/test/java/com/enderio/regilite/examplemod/Blocks.java +++ b/src/test/java/com/enderio/regilite/examplemod/Blocks.java @@ -21,11 +21,11 @@ public class Blocks { .tags(BlockTags.MUSHROOM_GROW_BLOCK, BlockTags.LOGS) .translation("Test Example Block") .blockColor(() -> () -> ExampleColors.BLOCK) - .blockStateProvider((prov, ctx) -> prov.simpleBlock(ctx.get())) + .blockState((prov, ctx) -> prov.simpleBlock(ctx.get())) .lootTable(RegiliteBlockLootProvider::dropSelf) .createSimpleBlockItem(item -> item .tags(ItemTags.PLANKS) - .modelProvider((prov, ctx) -> prov.basicItem(ctx.get())) + .model((prov, ctx) -> prov.basicItem(ctx.get())) .tab(CreativeModeTabs.BUILDING_BLOCKS) .tab(CreativeTabs.EXAMPLE_TAB.getKey()) ) diff --git a/src/test/java/com/enderio/regilite/examplemod/Fluids.java b/src/test/java/com/enderio/regilite/examplemod/Fluids.java index ba49dcf..05c8cbd 100644 --- a/src/test/java/com/enderio/regilite/examplemod/Fluids.java +++ b/src/test/java/com/enderio/regilite/examplemod/Fluids.java @@ -5,14 +5,14 @@ package com.enderio.regilite.examplemod; -import com.enderio.regilite.fluids.FluidTypeHolder; +import com.enderio.regilite.fluids.DeferredFluidType; import net.minecraft.client.renderer.RenderType; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockBehaviour; import net.neoforged.neoforge.fluids.FluidType; public class Fluids { - public static final FluidTypeHolder EXAMPLE_FLUID = ExampleMod.REGILITE.fluidTypes() + public static final DeferredFluidType EXAMPLE_FLUID = ExampleMod.REGILITE.fluidTypes() .create("example_fluid", FluidType.Properties.create()) .block(BlockBehaviour.Properties.ofFullCopy(Blocks.WATER)) .bucket() diff --git a/src/test/java/com/enderio/regilite/examplemod/Menus.java b/src/test/java/com/enderio/regilite/examplemod/Menus.java index 7776f8a..6c10337 100644 --- a/src/test/java/com/enderio/regilite/examplemod/Menus.java +++ b/src/test/java/com/enderio/regilite/examplemod/Menus.java @@ -12,7 +12,7 @@ public class Menus { - public static final DeferredHolder, MenuType> EXAMPLE_MENU = ExampleMod.REGILITE.menus() + public static final DeferredHolder, MenuType> EXAMPLE_MENU = ExampleMod.REGILITE.menuTypes() .create("example", ExampleMenu::new, () -> ExampleScreen::new).finish(); public static void register() {