diff --git a/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java b/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java index 111524c..9ecd31f 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java +++ b/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java @@ -10,6 +10,7 @@ import lombok.Getter; import lombok.Setter; import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -21,7 +22,9 @@ 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.capabilities.Capabilities; import net.neoforged.neoforge.energy.EnergyStorage; +import net.neoforged.neoforge.energy.IEnergyStorage; import org.jetbrains.annotations.Nullable; import java.util.Objects; @@ -112,12 +115,33 @@ public void tick() { fe2kw(); } else { kw2fe(); + fe_output(); } if (prevPower != power) { grid.markChanged(); } } + private void fe_output() { + if (level == null) return; + // 向每个方向输出能量 + for (Direction direction : Direction.values()) { + BlockPos adjacentPos = getBlockPos().relative(direction); + BlockEntity adjacentBlockEntity = level.getBlockEntity(adjacentPos); + if (adjacentBlockEntity == null) continue; + + IEnergyStorage energyStorage = level.getCapability(Capabilities.EnergyStorage.BLOCK, adjacentPos, direction.getOpposite()); + if (energyStorage == null) continue; + if (!energyStorage.canReceive()) continue; + + int receiveEnergy = energyStorage.receiveEnergy(feEnergy.getEnergyStored(), false); + feEnergy.extractEnergy(receiveEnergy, false); + + if (feEnergy.getEnergyStored() <= 0) break; + } + + } + private void fe2kw() { power = 0; int feConverted = powerTarget * AnvilCraft.CONFIG.powerConverter.powerConverterEfficiency; diff --git a/src/main/java/dev/anvilcraft/pigsplus/client/event/RegisterAdditionalEventListener.java b/src/main/java/dev/anvilcraft/pigsplus/client/event/RegisterAdditionalEventListener.java index a1abb41..d05611f 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/client/event/RegisterAdditionalEventListener.java +++ b/src/main/java/dev/anvilcraft/pigsplus/client/event/RegisterAdditionalEventListener.java @@ -7,7 +7,7 @@ import net.neoforged.fml.common.EventBusSubscriber; import net.neoforged.neoforge.client.event.ModelEvent; -@EventBusSubscriber(value = Dist.CLIENT, bus = EventBusSubscriber.Bus.MOD, modid = AnvilCraftPigsPlus.MOD_ID) +@EventBusSubscriber(value = Dist.CLIENT, modid = AnvilCraftPigsPlus.MOD_ID) public class RegisterAdditionalEventListener { /** * 注册模型 @@ -16,5 +16,6 @@ public class RegisterAdditionalEventListener { public static void registerModels(ModelEvent.RegisterAdditional event) { event.register(ModelResourceLocation.standalone(AnvilCraftPigsPlus.of("block/enchanted_generator_head"))); event.register(ModelResourceLocation.standalone(AnvilCraftPigsPlus.of("block/adjustable_power_converter_core"))); + event.register(ModelResourceLocation.standalone(AnvilCraftPigsPlus.of("block/adjustable_power_converter_core_out"))); } } diff --git a/src/main/java/dev/anvilcraft/pigsplus/client/renderer/blockentity/AdjustablePowerConverterRenderer.java b/src/main/java/dev/anvilcraft/pigsplus/client/renderer/blockentity/AdjustablePowerConverterRenderer.java index 6d8ff21..df93edd 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/client/renderer/blockentity/AdjustablePowerConverterRenderer.java +++ b/src/main/java/dev/anvilcraft/pigsplus/client/renderer/blockentity/AdjustablePowerConverterRenderer.java @@ -10,6 +10,9 @@ public class AdjustablePowerConverterRenderer extends PowerProducerRenderer Blocks.IRON_BLOCK) - .properties(p -> p.noOcclusion().isValidSpawn(Blocks::never)) + .properties(p -> p.lightLevel(state -> 9).noOcclusion().isValidSpawn(Blocks::never).emissiveRendering(ModBlocks::always)) .blockstate(DataGenUtil::noExtraModelOrState) .simpleItem() .tag(BlockTags.MINEABLE_WITH_PICKAXE) diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/adjustable_power_converter.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/adjustable_power_converter.md index ff5f595..aa24d1e 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/adjustable_power_converter.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/adjustable_power_converter.md @@ -1,6 +1,6 @@ --- navigation: - title: "可调式能量转换器" + title: "§a可调式能量转换器" icon: "anvilcraft_pigsplus:adjustable_power_converter" position: 105 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/auto_machine.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/auto_machine.md index 26dcead..aae482d 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/auto_machine.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/auto_machine.md @@ -1,6 +1,6 @@ --- navigation: - title: "自动加工机" + title: "§a自动加工机" icon: "anvilcraft_pigsplus:auto_royal_smithing_table" position: 102 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/block_breaker.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/block_breaker.md index deb21d3..40356ed 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/block_breaker.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/block_breaker.md @@ -1,6 +1,6 @@ --- navigation: - title: "方块破坏器" + title: "§a方块破坏器" icon: "anvilcraft_pigsplus:block_breaker" position: 101 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/budding_echo_shard.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/budding_echo_shard.md index d2312bb..afeeaba 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/budding_echo_shard.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/budding_echo_shard.md @@ -1,6 +1,6 @@ --- navigation: - title: "回响母岩" + title: "§a回响母岩" icon: "anvilcraft_pigsplus:budding_echo_shard" position: 110 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/cauldron_output.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/cauldron_output.md index 208aa42..77628ca 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/cauldron_output.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/cauldron_output.md @@ -1,6 +1,6 @@ --- navigation: - title: "炼药锅输出槽" + title: "§a炼药锅输出槽" icon: "anvilcraft_pigsplus:cauldron_output" position: 101 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chain_smithing_table.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chain_smithing_table.md index 624cf8e..31c6900 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chain_smithing_table.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chain_smithing_table.md @@ -1,6 +1,6 @@ --- navigation: - title: "连锁锻造台" + title: "§a连锁锻造台" icon: "anvilcraft_pigsplus:chain_smithing_table" position: 101 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chaotic_raw_ore.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chaotic_raw_ore.md index 184f12d..8fe5af4 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chaotic_raw_ore.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/chaotic_raw_ore.md @@ -1,6 +1,6 @@ --- navigation: - title: "混沌粗矿" + title: "§6混沌粗矿" icon: "anvilcraft_pigsplus:chaotic_raw_ore" position: 215 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/electric_enchanting_table.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/electric_enchanting_table.md index ada80a4..df43aa7 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/electric_enchanting_table.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/electric_enchanting_table.md @@ -1,6 +1,6 @@ --- navigation: - title: "电力附魔台" + title: "§d电力附魔台" icon: "anvilcraft_pigsplus:electric_enchanting_table" position: 311 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/enchanted_generator.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/enchanted_generator.md index 8391099..d77fbc9 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/enchanted_generator.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/enchanted_generator.md @@ -1,6 +1,6 @@ --- navigation: - title: "附魔发电机" + title: "§6附魔发电机" icon: "anvilcraft_pigsplus:enchanted_generator" position: 205 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/ender_component.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/ender_component.md index f6e3ad0..2ab43e5 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/ender_component.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/ender_component.md @@ -1,6 +1,6 @@ --- navigation: - title: "末影部件" + title: "§6末影部件" icon: "anvilcraft_pigsplus:ender_component" position: 210 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/karakuri_component.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/karakuri_component.md index 4585150..5392023 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/karakuri_component.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/karakuri_component.md @@ -1,6 +1,6 @@ --- navigation: - title: "机巧部件" + title: "§a机巧部件" icon: "anvilcraft_pigsplus:karakuri_component" position: 100 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/portable_wireless_charger.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/portable_wireless_charger.md index fb850fe..9c65d86 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/portable_wireless_charger.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/portable_wireless_charger.md @@ -1,6 +1,6 @@ --- navigation: - title: "便携无限充电器" + title: "§a便携无限充电器" icon: "anvilcraft_pigsplus:portable_wireless_charger" position: 105 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/resdtone_conduit.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/resdtone_conduit.md index 4ceac07..3ef34ac 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/resdtone_conduit.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/resdtone_conduit.md @@ -1,6 +1,6 @@ --- navigation: - title: "红石传导块" + title: "§a红石传导块" icon: "anvilcraft_pigsplus:redstone_conduit_block" position: 101 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/sculk_extractor.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/sculk_extractor.md index 66860b9..2db3275 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/sculk_extractor.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/sculk_extractor.md @@ -1,6 +1,6 @@ --- navigation: - title: "幽匿萃取体" + title: "§6幽匿萃取体" icon: "anvilcraft_pigsplus:sculk_extractor" position: 201 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/spiritual_component.md b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/spiritual_component.md index 07e2e1a..0e1cc5a 100644 --- a/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/spiritual_component.md +++ b/src/main/resources/assets/anvilcraft_guideme/anvilcraft_guideme/spiritual_component.md @@ -1,6 +1,6 @@ --- navigation: - title: "灵媒部件" + title: "§6灵媒部件" icon: "anvilcraft_pigsplus:spiritual_component" position: 200 parent: anvilcraft_guideme:pigsplus.md diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json index 608375b..b9631c6 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json @@ -2,6 +2,7 @@ "format_version": "1.9.0", "credit": "Made with Blockbench", "parent": "minecraft:block/cube", + "ambientocclusion": false, "render_type": "minecraft:cutout", "textures": { "0": "anvilcraft_pigsplus:block/adjustable_power_converter_frame_side", diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_core_out.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_core_out.json new file mode 100644 index 0000000..c773de3 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_core_out.json @@ -0,0 +1,23 @@ +{ + "format_version": "1.9.0", + "credit": "Made with Blockbench", + "parent": "minecraft:block/cube", + "textures": { + "1": "anvilcraft_pigsplus:block/adjustable_power_converter_core_out", + "particle": "anvilcraft_pigsplus:block/adjustable_power_converter_core_out" + }, + "elements": [ + { + "from": [-4, -4, -4], + "to": [4, 4, 4], + "faces": { + "north": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "east": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "south": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "west": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "up": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "down": {"uv": [0, 0, 8, 8], "texture": "#1"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_frame.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_frame.json index 9729169..a739e27 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_frame.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter_frame.json @@ -2,6 +2,7 @@ "format_version": "1.9.0", "credit": "Made with Blockbench", "parent": "minecraft:block/cube", + "ambientocclusion": false, "render_type": "minecraft:cutout", "textures": { "0": "anvilcraft_pigsplus:block/adjustable_power_converter_frame_side", diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core_out.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core_out.png new file mode 100644 index 0000000..9e5aa22 Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core_out.png differ diff --git a/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/ender_component.json b/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/ender_component.json new file mode 100644 index 0000000..b81fa36 --- /dev/null +++ b/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/ender_component.json @@ -0,0 +1,24 @@ +{ + "neoforge:conditions": [ + { + "type": "neoforge:mod_loaded", + "modid": "anvilcraft_alloyextension" + } + ], + "type": "anvilcraft:time_warp", + "ingredients": [ + { + "count": 6, + "items": "anvilcraft_alloyextension:ender_dust" + }, + { + "count": 18, + "items": "minecraft:end_stone" + } + ], + "results": [ + { + "id": "anvilcraft_pigsplus:ender_component" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/item_transporter.json b/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/item_transporter.json new file mode 100644 index 0000000..7c97a01 --- /dev/null +++ b/src/main/resources/data/anvilcraft_pigsplus/recipe/anvilcraft_alloyextension/item_transporter.json @@ -0,0 +1,30 @@ +{ + "neoforge:conditions": [ + { + "type": "neoforge:mod_loaded", + "modid": "anvilcraft_alloyextension" + } + ], + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "I": { + "item": "minecraft:iron_ingot" + }, + "E": { + "item": "anvilcraft_pigsplus:ender_component" + }, + "S": { + "item": "anvilcraft:magnetic_chute" + } + }, + "pattern": [ + " ", + " E ", + "ISI" + ], + "result": { + "count": 8, + "id": "anvilcraft_alloyextension:item_transporter" + } +} \ No newline at end of file