diff --git a/src/main/java/com/extendedae_plus/ExtendedAEPlus.java b/src/main/java/com/extendedae_plus/ExtendedAEPlus.java index 04ada31..452cd6a 100644 --- a/src/main/java/com/extendedae_plus/ExtendedAEPlus.java +++ b/src/main/java/com/extendedae_plus/ExtendedAEPlus.java @@ -5,6 +5,7 @@ import appeng.menu.locator.MenuLocators; import com.extendedae_plus.api.storage.InfinityBigIntegerCellHandler; import com.extendedae_plus.client.ClientRegistrar; import com.extendedae_plus.config.ModConfig; +import com.extendedae_plus.content.matrix.CrafterCorePlusBlockEntity; import com.extendedae_plus.init.*; import com.extendedae_plus.menu.locator.CuriosItemLocator; import com.extendedae_plus.util.command.InfinityDiskGiveCommand; @@ -87,6 +88,13 @@ public class ExtendedAEPlus { null, null ); + + ModBlocks.ASSEMBLER_MATRIX_CRAFTER_PLUS.get().setBlockEntity( + CrafterCorePlusBlockEntity.class, + ModBlockEntities.ASSEMBLER_MATRIX_CRAFTER_PLUS_BE.get(), + null, + null + ); }); } diff --git a/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlock.java b/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlock.java new file mode 100644 index 0000000..af146f7 --- /dev/null +++ b/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlock.java @@ -0,0 +1,17 @@ +package com.extendedae_plus.content.matrix; + +import com.extendedae_plus.init.ModItems; +import com.glodblock.github.extendedae.common.blocks.matrix.BlockAssemblerMatrixBase; +import net.minecraft.world.item.Item; + +public class CrafterCorePlusBlock extends BlockAssemblerMatrixBase { + + public CrafterCorePlusBlock() { + super(); + } + + @Override + public Item getPresentItem() { + return ModItems.ASSEMBLER_MATRIX_CRAFTER_PLUS.get(); + } +} diff --git a/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlockEntity.java b/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlockEntity.java new file mode 100644 index 0000000..a91e46d --- /dev/null +++ b/src/main/java/com/extendedae_plus/content/matrix/CrafterCorePlusBlockEntity.java @@ -0,0 +1,40 @@ +package com.extendedae_plus.content.matrix; + +import appeng.api.inventories.InternalInventory; +import appeng.api.networking.IGridNode; +import appeng.api.networking.ticking.IGridTickable; +import appeng.api.networking.ticking.TickRateModulation; +import appeng.api.networking.ticking.TickingRequest; +import appeng.util.inv.InternalInventoryHost; +import com.extendedae_plus.init.ModBlockEntities; +import com.glodblock.github.extendedae.common.me.matrix.ClusterAssemblerMatrix; +import com.glodblock.github.extendedae.common.tileentities.matrix.TileAssemblerMatrixFunction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.state.BlockState; + +public class CrafterCorePlusBlockEntity extends TileAssemblerMatrixFunction implements InternalInventoryHost, IGridTickable { + + public CrafterCorePlusBlockEntity(BlockPos pos, BlockState blockState) { + super(ModBlockEntities.ASSEMBLER_MATRIX_CRAFTER_PLUS_BE.get(),pos, blockState); + } + + @Override + public TickingRequest getTickingRequest(IGridNode iGridNode) { + return null; + } + + @Override + public TickRateModulation tickingRequest(IGridNode iGridNode, int i) { + return null; + } + + @Override + public void add(ClusterAssemblerMatrix clusterAssemblerMatrix) { + + } + + @Override + public void onChangeInventory(InternalInventory internalInventory, int i) { + + } +} diff --git a/src/main/java/com/extendedae_plus/init/ModBlockEntities.java b/src/main/java/com/extendedae_plus/init/ModBlockEntities.java index 63e1c79..5f11c62 100644 --- a/src/main/java/com/extendedae_plus/init/ModBlockEntities.java +++ b/src/main/java/com/extendedae_plus/init/ModBlockEntities.java @@ -1,6 +1,7 @@ package com.extendedae_plus.init; import com.extendedae_plus.ExtendedAEPlus; +import com.extendedae_plus.content.matrix.CrafterCorePlusBlockEntity; import com.extendedae_plus.content.matrix.SpeedCorePlusBlockEntity; import com.extendedae_plus.content.wireless.WirelessTransceiverBlockEntity; import com.extendedae_plus.content.matrix.UploadCoreBlockEntity; @@ -27,11 +28,18 @@ public final class ModBlockEntities { () -> BlockEntityType.Builder.of(NetworkPatternControllerBlockEntity::new, ModBlocks.NETWORK_PATTERN_CONTROLLER.get()).build(null)); + //超级装配矩阵速度核心 public static final RegistryObject> ASSEMBLER_MATRIX_SPEED_PLUS_BE = BLOCK_ENTITY_TYPES.register("assembler_matrix_speed_plus", ()-> BlockEntityType.Builder.of(SpeedCorePlusBlockEntity::new, ModBlocks.ASSEMBLER_MATRIX_SPEED_PLUS.get()).build(null)); + //超级装配矩阵合成核心 + public static final RegistryObject> ASSEMBLER_MATRIX_CRAFTER_PLUS_BE = + BLOCK_ENTITY_TYPES.register("assembler_matrix_crafter_plus", + ()-> BlockEntityType.Builder.of(CrafterCorePlusBlockEntity::new, + ModBlocks.ASSEMBLER_MATRIX_CRAFTER_PLUS.get()).build(null)); + // 装配矩阵上传核心 public static final RegistryObject> UPLOAD_CORE_BE = BLOCK_ENTITY_TYPES.register("assembler_matrix_upload_core", diff --git a/src/main/java/com/extendedae_plus/init/ModBlocks.java b/src/main/java/com/extendedae_plus/init/ModBlocks.java index f2f4d31..2089116 100644 --- a/src/main/java/com/extendedae_plus/init/ModBlocks.java +++ b/src/main/java/com/extendedae_plus/init/ModBlocks.java @@ -5,6 +5,7 @@ import appeng.blockentity.crafting.CraftingBlockEntity; import appeng.core.definitions.AEBlockEntities; import com.extendedae_plus.ExtendedAEPlus; import com.extendedae_plus.content.crafting.EPlusCraftingUnitType; +import com.extendedae_plus.content.matrix.CrafterCorePlusBlock; import com.extendedae_plus.content.matrix.SpeedCorePlusBlock; import com.extendedae_plus.content.matrix.UploadCoreBlock; import com.extendedae_plus.content.wireless.WirelessTransceiverBlock; @@ -57,6 +58,12 @@ public final class ModBlocks { SpeedCorePlusBlock::new ); + //超级装配矩阵合成核心 + public static final RegistryObject ASSEMBLER_MATRIX_CRAFTER_PLUS = BLOCKS.register( + "assembler_matrix_crafter_plus", + CrafterCorePlusBlock::new + ); + // Crafting Accelerators (reuse MAE2 textures/models) public static final RegistryObject CRAFTING_ACCELERATOR_4x = BLOCKS.register( "4x_crafting_accelerator", diff --git a/src/main/java/com/extendedae_plus/init/ModCreativeTabs.java b/src/main/java/com/extendedae_plus/init/ModCreativeTabs.java index 9b097de..4c6d5c3 100644 --- a/src/main/java/com/extendedae_plus/init/ModCreativeTabs.java +++ b/src/main/java/com/extendedae_plus/init/ModCreativeTabs.java @@ -22,6 +22,8 @@ public final class ModCreativeTabs { output.accept(ModItems.ASSEMBLER_MATRIX_UPLOAD_CORE.get()); //超级装配矩阵速度核心 output.accept(ModItems.ASSEMBLER_MATRIX_SPEED_PLUS.get()); + //超级装配矩阵合成核心 + output.accept(ModItems.ASSEMBLER_MATRIX_CRAFTER_PLUS.get()); //实体加速器&加速卡 output.accept(ModItems.CRAFTING_ACCELERATOR_4x.get()); diff --git a/src/main/java/com/extendedae_plus/init/ModItems.java b/src/main/java/com/extendedae_plus/init/ModItems.java index cec2134..fc830fc 100644 --- a/src/main/java/com/extendedae_plus/init/ModItems.java +++ b/src/main/java/com/extendedae_plus/init/ModItems.java @@ -37,11 +37,17 @@ public final class ModItems { () -> new BlockItem(ModBlocks.ASSEMBLER_MATRIX_UPLOAD_CORE.get(), new Item.Properties()) ); + //超级装配矩阵速度核心 public static final RegistryObject ASSEMBLER_MATRIX_SPEED_PLUS = ITEMS.register( "assembler_matrix_speed_plus", ()-> new BlockItem(ModBlocks.ASSEMBLER_MATRIX_SPEED_PLUS.get(), new Item.Properties()) ); + //超级装配矩阵合成核心 + public static final RegistryObject ASSEMBLER_MATRIX_CRAFTER_PLUS = ITEMS.register( + "assembler_matrix_crafter_plus", + ()-> new BlockItem(ModBlocks.ASSEMBLER_MATRIX_CRAFTER_PLUS.get(), new Item.Properties()) + ); // Crafting Accelerators public static final RegistryObject CRAFTING_ACCELERATOR_4x = ITEMS.register( "4x_crafting_accelerator", diff --git a/src/main/resources/assets/extendedae_plus/blockstates/assembler_matrix_crafter_plus.json b/src/main/resources/assets/extendedae_plus/blockstates/assembler_matrix_crafter_plus.json new file mode 100644 index 0000000..964aafd --- /dev/null +++ b/src/main/resources/assets/extendedae_plus/blockstates/assembler_matrix_crafter_plus.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "extendedae_plus:block/assembler_matrix_crafter_plus" } + } +} diff --git a/src/main/resources/assets/extendedae_plus/lang/en_us.json b/src/main/resources/assets/extendedae_plus/lang/en_us.json index 2fe8d63..2b8a140 100644 --- a/src/main/resources/assets/extendedae_plus/lang/en_us.json +++ b/src/main/resources/assets/extendedae_plus/lang/en_us.json @@ -68,6 +68,7 @@ "block.extendedae_plus.network_pattern_controller": "Pattern Supplier State Controller", "block.extendedae_plus.assembler_matrix_upload_core": "Assembler Matrix Upload Core", "block.extendedae_plus.assembler_matrix_speed_plus": "Assembler Matrix Speed Core Plus", + "block.extendedae_plus.assembler_matrix_crafter_plus": "Assembler Matrix Crafter Core Plus", "extendedae_plus.upload_to_matrix": "Upload to Assembly Matrix", "extendedae_plus.upload_to_matrix.success": "Pattern uploaded to the assembly matrix", diff --git a/src/main/resources/assets/extendedae_plus/lang/zh_cn.json b/src/main/resources/assets/extendedae_plus/lang/zh_cn.json index aaed226..047d020 100644 --- a/src/main/resources/assets/extendedae_plus/lang/zh_cn.json +++ b/src/main/resources/assets/extendedae_plus/lang/zh_cn.json @@ -68,6 +68,7 @@ "block.extendedae_plus.network_pattern_controller": "样板供应器状态控制器", "block.extendedae_plus.assembler_matrix_upload_core": "装配矩阵上传核心", "block.extendedae_plus.assembler_matrix_speed_plus": "超级装配矩阵速度核心", + "block.extendedae_plus.assembler_matrix_crafter_plus": "超级装配矩阵合成核心", "extendedae_plus.upload_to_matrix": "上传到装配矩阵", "extendedae_plus.upload_to_matrix.success": "样板已上传到装配矩阵", diff --git a/src/main/resources/assets/extendedae_plus/models/block/assembler_matrix_crafter_plus.json b/src/main/resources/assets/extendedae_plus/models/block/assembler_matrix_crafter_plus.json new file mode 100644 index 0000000..4c2bbca --- /dev/null +++ b/src/main/resources/assets/extendedae_plus/models/block/assembler_matrix_crafter_plus.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "extendedae_plus:block/assembler_matrix_crafter_plus" + } +} diff --git a/src/main/resources/assets/extendedae_plus/models/item/assembler_matrix_crafter_plus.json b/src/main/resources/assets/extendedae_plus/models/item/assembler_matrix_crafter_plus.json new file mode 100644 index 0000000..8ec1faf --- /dev/null +++ b/src/main/resources/assets/extendedae_plus/models/item/assembler_matrix_crafter_plus.json @@ -0,0 +1,3 @@ +{ + "parent": "extendedae_plus:block/assembler_matrix_crafter_plus" +} diff --git a/src/main/resources/assets/extendedae_plus/textures/block/assembler_matrix_crafter_plus.png b/src/main/resources/assets/extendedae_plus/textures/block/assembler_matrix_crafter_plus.png new file mode 100644 index 0000000..f2097f0 Binary files /dev/null and b/src/main/resources/assets/extendedae_plus/textures/block/assembler_matrix_crafter_plus.png differ diff --git a/src/main/resources/data/extendedae_plus/loot_tables/blocks/assembler_matrix_crafter_plus.json b/src/main/resources/data/extendedae_plus/loot_tables/blocks/assembler_matrix_crafter_plus.json new file mode 100644 index 0000000..33bb47a --- /dev/null +++ b/src/main/resources/data/extendedae_plus/loot_tables/blocks/assembler_matrix_crafter_plus.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "extendedae_plus:assembler_matrix_crafter_plus" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json index 6163e04..9989421 100644 --- a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -9,6 +9,7 @@ "extendedae_plus:16x_crafting_accelerator", "extendedae_plus:64x_crafting_accelerator", "extendedae_plus:256x_crafting_accelerator", - "extendedae_plus:1024x_crafting_accelerator" + "extendedae_plus:1024x_crafting_accelerator", + "extendedae_plus:assembler_matrix_crafter_plus" ] } diff --git a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json index cd9c46d..6ccd2f1 100644 --- a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json +++ b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json @@ -8,6 +8,7 @@ "extendedae_plus:16x_crafting_accelerator", "extendedae_plus:64x_crafting_accelerator", "extendedae_plus:256x_crafting_accelerator", - "extendedae_plus:1024x_crafting_accelerator" + "extendedae_plus:1024x_crafting_accelerator", + "extendedae_plus:assembler_matrix_crafter_plus" ] }