diff options
| author | 2024-01-10 17:41:07 +0100 | |
|---|---|---|
| committer | 2024-01-10 17:41:07 +0100 | |
| commit | 000b84e87eaedb94fb87ccb11e376c51f99a1d07 (patch) | |
| tree | dd9519e7dadf613a71e01b04cac7be9c121a9f18 /src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java | |
| parent | Move out common chest logic to separate files also in client code (diff) | |
| download | mc-eris-alchemy-000b84e87eaedb94fb87ccb11e376c51f99a1d07.tar.gz mc-eris-alchemy-000b84e87eaedb94fb87ccb11e376c51f99a1d07.tar.xz mc-eris-alchemy-000b84e87eaedb94fb87ccb11e376c51f99a1d07.zip | |
Added Energy Condenser
Diffstat (limited to 'src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java')
| -rw-r--r-- | src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java b/src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java index c02a1e6..592eb5e 100644 --- a/src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java +++ b/src/main/java/lv/enes/mc/eris_alchemy/ErisAlchemyRegistry.java | |||
| @@ -1,9 +1,13 @@ | |||
| 1 | package lv.enes.mc.eris_alchemy; | 1 | package lv.enes.mc.eris_alchemy; |
| 2 | 2 | ||
| 3 | import lv.enes.mc.eris_alchemy.block.AlchemicalChestBlock; | 3 | import lv.enes.mc.eris_alchemy.block.AlchemicalChestBlock; |
| 4 | import lv.enes.mc.eris_alchemy.block.entity.AlchemicalChestBlockEntity; | 4 | import lv.enes.mc.eris_alchemy.block.EnergyCondenserBlock; |
| 5 | import lv.enes.mc.eris_alchemy.block.entity.AlchemicalChestEntity; | ||
| 6 | import lv.enes.mc.eris_alchemy.block.entity.EnergyCondenserEntity; | ||
| 5 | import lv.enes.mc.eris_alchemy.menu.AlchemicalChestMenu; | 7 | import lv.enes.mc.eris_alchemy.menu.AlchemicalChestMenu; |
| 8 | import lv.enes.mc.eris_alchemy.menu.EnergyCondenserMenu; | ||
| 6 | import lv.enes.mc.eris_alchemy.recipe.CovalenceRepair; | 9 | import lv.enes.mc.eris_alchemy.recipe.CovalenceRepair; |
| 10 | import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerType; | ||
| 7 | import net.minecraft.core.registries.BuiltInRegistries; | 11 | import net.minecraft.core.registries.BuiltInRegistries; |
| 8 | import net.minecraft.resources.ResourceLocation; | 12 | import net.minecraft.resources.ResourceLocation; |
| 9 | import net.minecraft.world.flag.FeatureFlags; | 13 | import net.minecraft.world.flag.FeatureFlags; |
| @@ -35,9 +39,15 @@ public final class ErisAlchemyRegistry { | |||
| 35 | 39 | ||
| 36 | private static final Map<ResourceLocation, BlockEntityType<?>> data = new LinkedHashMap<>(); | 40 | private static final Map<ResourceLocation, BlockEntityType<?>> data = new LinkedHashMap<>(); |
| 37 | 41 | ||
| 38 | public static final BlockEntityType<AlchemicalChestBlockEntity> ALCHEMICAL_CHEST = register( | 42 | public static final BlockEntityType<AlchemicalChestEntity> ALCHEMICAL_CHEST = register( |
| 39 | "alchemical_chest", | 43 | "alchemical_chest", |
| 40 | QuiltBlockEntityTypeBuilder.create(AlchemicalChestBlockEntity::new, Blocks.ALCHEMICAL_CHEST) | 44 | QuiltBlockEntityTypeBuilder.create(AlchemicalChestEntity::new, Blocks.ALCHEMICAL_CHEST) |
| 45 | .build() | ||
| 46 | ); | ||
| 47 | |||
| 48 | public static final BlockEntityType<EnergyCondenserEntity> ENERGY_CONDENSER = register( | ||
| 49 | "energy_condenser", | ||
| 50 | QuiltBlockEntityTypeBuilder.create(EnergyCondenserEntity::new, Blocks.ENERGY_CONDENSER) | ||
| 41 | .build() | 51 | .build() |
| 42 | ); | 52 | ); |
| 43 | 53 | ||
| @@ -61,6 +71,11 @@ public final class ErisAlchemyRegistry { | |||
| 61 | new AlchemicalChestBlock(QuiltBlockSettings.copy(ENDER_CHEST)) | 71 | new AlchemicalChestBlock(QuiltBlockSettings.copy(ENDER_CHEST)) |
| 62 | ); | 72 | ); |
| 63 | 73 | ||
| 74 | public static final EnergyCondenserBlock ENERGY_CONDENSER = register( | ||
| 75 | "energy_condenser", | ||
| 76 | new EnergyCondenserBlock(QuiltBlockSettings.copy(ENDER_CHEST)) | ||
| 77 | ); | ||
| 78 | |||
| 64 | public static void consume(BiConsumer<? super ResourceLocation, ? super Block> consumer) { | 79 | public static void consume(BiConsumer<? super ResourceLocation, ? super Block> consumer) { |
| 65 | data.forEach(consumer); | 80 | data.forEach(consumer); |
| 66 | } | 81 | } |
| @@ -78,6 +93,9 @@ public final class ErisAlchemyRegistry { | |||
| 78 | 93 | ||
| 79 | public static final Item ALCHEMICAL_CHEST = | 94 | public static final Item ALCHEMICAL_CHEST = |
| 80 | register(Blocks.ALCHEMICAL_CHEST, new QuiltItemSettings().rarity(Rarity.RARE)); | 95 | register(Blocks.ALCHEMICAL_CHEST, new QuiltItemSettings().rarity(Rarity.RARE)); |
| 96 | @SuppressWarnings("unused") | ||
| 97 | public static final Item ENERGY_CONDENSER = | ||
| 98 | register(Blocks.ENERGY_CONDENSER, new QuiltItemSettings().rarity(Rarity.EPIC)); | ||
| 81 | public static final Item LOW_COVALENCE_DUST = | 99 | public static final Item LOW_COVALENCE_DUST = |
| 82 | register("low_covalence_dust", new Item(new QuiltItemSettings().rarity(Rarity.COMMON))); | 100 | register("low_covalence_dust", new Item(new QuiltItemSettings().rarity(Rarity.COMMON))); |
| 83 | @SuppressWarnings("unused") | 101 | @SuppressWarnings("unused") |
| @@ -112,6 +130,8 @@ public final class ErisAlchemyRegistry { | |||
| 112 | 130 | ||
| 113 | public static final MenuType<AlchemicalChestMenu> ALCHEMICAL_CHEST = | 131 | public static final MenuType<AlchemicalChestMenu> ALCHEMICAL_CHEST = |
| 114 | register("alchemy_chest", AlchemicalChestMenu::new); | 132 | register("alchemy_chest", AlchemicalChestMenu::new); |
| 133 | public static final ExtendedScreenHandlerType<EnergyCondenserMenu> ENERGY_CONDENSER = | ||
| 134 | registerExt("energy_condenser", EnergyCondenserMenu::new); | ||
| 115 | 135 | ||
| 116 | public static void consume(BiConsumer<? super ResourceLocation, ? super MenuType<?>> consumer) { | 136 | public static void consume(BiConsumer<? super ResourceLocation, ? super MenuType<?>> consumer) { |
| 117 | data.forEach(consumer); | 137 | data.forEach(consumer); |
| @@ -121,12 +141,32 @@ public final class ErisAlchemyRegistry { | |||
| 121 | String id, | 141 | String id, |
| 122 | MenuType.MenuSupplier<T> supplier | 142 | MenuType.MenuSupplier<T> supplier |
| 123 | ) { | 143 | ) { |
| 124 | var menuType = new MenuType<>(supplier, FeatureFlags.VANILLA_SET); | 144 | return registerCommon(id, new MenuType<>(supplier, FeatureFlags.VANILLA_SET)); |
| 145 | } | ||
| 146 | |||
| 147 | private static <T extends AbstractContainerMenu> ExtendedScreenHandlerType<T> registerExt( | ||
| 148 | String id, | ||
| 149 | ExtendedScreenHandlerType.ExtendedFactory<T> supplier | ||
| 150 | ) { | ||
| 151 | return registerCommon(id, new ExtendedScreenHandlerType<>(supplier)); | ||
| 152 | } | ||
| 153 | |||
| 154 | private static <M extends AbstractContainerMenu, T extends MenuType<? extends M>> T registerCommon( | ||
| 155 | String id, | ||
| 156 | T menuType | ||
| 157 | ) { | ||
| 125 | data.put(new ResourceLocation(ErisAlchemy.ID, id), menuType); | 158 | data.put(new ResourceLocation(ErisAlchemy.ID, id), menuType); |
| 126 | return menuType; | 159 | return menuType; |
| 127 | } | 160 | } |
| 128 | } | 161 | } |
| 129 | 162 | ||
| 163 | public static final class NetworkingConstants { | ||
| 164 | private NetworkingConstants() {} | ||
| 165 | |||
| 166 | public static final ResourceLocation UPDATE_SYNCED_VALUE | ||
| 167 | = new ResourceLocation(ErisAlchemy.ID, "update_synced_value"); | ||
| 168 | } | ||
| 169 | |||
| 130 | public static final class RecipeSerializers { | 170 | public static final class RecipeSerializers { |
| 131 | private RecipeSerializers() {} | 171 | private RecipeSerializers() {} |
| 132 | 172 | ||