diff --git a/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java b/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java index 2462dc5..21e5f02 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java +++ b/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java @@ -68,6 +68,8 @@ public class EnergonRelics implements ModInitializer { public static final BlockBreakerBlock BLOCK_BREAKER_BLOCK = new BlockBreakerBlock(); + public static final Item VERIDIUM_POWDER_ITEM = new Item(new Item.Settings().group(ITEM_GROUP)); + @Override public void onInitialize() { NETWORK_CHIP_ITEM = Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "network_chip"), new NetworkChipItem()); @@ -97,8 +99,10 @@ public class EnergonRelics implements ModInitializer { Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "defensive_laser_core"), DEFENSIVE_LASER_CORE_ITEM); DEFENSIVE_LASER_BLOCK.register("defensive_laser"); + StructureGeneratorBlock.register(); + BLOCK_BREAKER_BLOCK.register("block_breaker"); - StructureGeneratorBlock.register(); + Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "veridium_powder"), VERIDIUM_POWDER_ITEM); } } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorControllerBlockEntity.java b/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorControllerBlockEntity.java index a93a0fb..f5efde6 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorControllerBlockEntity.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorControllerBlockEntity.java @@ -36,25 +36,27 @@ public class ReactorControllerBlockEntity extends EnergyGeneratorBlockEntity { if (getCachedState().get(ReactorControllerBlock.POWERED)) { Reactor reactor = getReactor(); if (reactor != null && !reactor.core.isReacting()) { - int fuelMultiplier = 0; + float fuelMultiplier = 0f; for (ReactorInputBlockEntity input : reactor.inputs) { - if (fuelMultiplier != 0) { + if (fuelMultiplier != 0f) { break; } for (int i = 0; i < input.size(); i++) { Item item = input.getStack(i).getItem(); if (item == EnergonRelics.VERIDIUM_INGOT_ITEM) { - fuelMultiplier = 1; + fuelMultiplier = 1f; } else if (item == EnergonRelics.VERIDIUM_BLOCK_BLOCK.asItem()) { - fuelMultiplier = 9; + fuelMultiplier = 9f; + } else if (item == EnergonRelics.VERIDIUM_POWDER_ITEM) { + fuelMultiplier = 0.25f; } - if (fuelMultiplier != 0) { + if (fuelMultiplier != 0f) { input.removeStack(i, 1); break; } } } - if (fuelMultiplier != 0) { + if (fuelMultiplier != 0f) { reactor.core.startReaction(fuelMultiplier); } } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorCoreBlockEntity.java b/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorCoreBlockEntity.java index 610c361..f92f28e 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorCoreBlockEntity.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/entity/reactor/ReactorCoreBlockEntity.java @@ -31,8 +31,8 @@ public class ReactorCoreBlockEntity extends BlockEntity implements Tickable { return reactionTime > 0; } - void startReaction(int fuelMultiplier) { - reactionTime = HardcodedConfig.REACTOR_TIME * fuelMultiplier; + void startReaction(float fuelMultiplier) { + reactionTime = (int) ((float) HardcodedConfig.REACTOR_TIME * fuelMultiplier); } @Override diff --git a/src/main/resources/assets/energonrelics/lang/en_us.json b/src/main/resources/assets/energonrelics/lang/en_us.json index decf303..8527f62 100644 --- a/src/main/resources/assets/energonrelics/lang/en_us.json +++ b/src/main/resources/assets/energonrelics/lang/en_us.json @@ -27,5 +27,6 @@ "death.attack.energonrelics.defensive_laser": "%s was evaporated by a laser", "death.attack.energonrelics.defensive_laser.player": "%s was evaporated by a laser whilst fighting %s", "block.energonrelics.research_complex_generator": "Research Complex Generator", - "block.energonrelics.block_breaker": "Block Breaker" + "block.energonrelics.block_breaker": "Block Breaker", + "item.energonrelics.veridium_powder": "Veridium Powder" } \ No newline at end of file diff --git a/src/main/resources/assets/energonrelics/models/item/veridium_powder.json b/src/main/resources/assets/energonrelics/models/item/veridium_powder.json new file mode 100644 index 0000000..dd9c596 --- /dev/null +++ b/src/main/resources/assets/energonrelics/models/item/veridium_powder.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "energonrelics:item/veridium_powder" + } +} diff --git a/src/main/resources/assets/energonrelics/textures/item/veridium_powder.png b/src/main/resources/assets/energonrelics/textures/item/veridium_powder.png new file mode 100644 index 0000000..4f4fb5e Binary files /dev/null and b/src/main/resources/assets/energonrelics/textures/item/veridium_powder.png differ diff --git a/src/main/resources/data/energonrelics/recipes/veridium_powder.json b/src/main/resources/data/energonrelics/recipes/veridium_powder.json new file mode 100644 index 0000000..794b705 --- /dev/null +++ b/src/main/resources/data/energonrelics/recipes/veridium_powder.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "item": "energonrelics:veridium_ingot" + }, + "result": "energonrelics:veridium_powder", + "count": 4 +} \ No newline at end of file