From a53e0dbff85bdb022004b052a594c51e8df8fef5 Mon Sep 17 00:00:00 2001 From: TheBrokenRail Date: Sun, 26 Jul 2020 19:05:59 -0400 Subject: [PATCH] Add Recipes --- .../energonrelics/EnergonRelics.java | 6 ++--- .../block/BlockBreakerBlock.java | 4 +-- .../block/CreativeEnergySourceBlock.java | 4 +-- .../block/DefensiveLaserBlock.java | 4 +-- .../block/EnergonLightBlock.java | 4 +-- .../block/HolographicSkyBlock.java | 5 ++-- .../block/LightningRodBlock.java | 4 +-- .../energonrelics/block/SolarPanelBlock.java | 4 +-- .../energonrelics/block/SwitchBlock.java | 4 +-- .../battery/ActiveBatteryControllerBlock.java | 4 +-- .../PassiveBatteryControllerBlock.java | 4 +-- .../PassiveBatteryControllerBlockEntity.java | 4 +++ .../forcefield/ForcefieldProjectorBlock.java | 4 +-- .../block/{ => misc}/ThermalCasingBlock.java | 2 +- .../block/{ => misc}/ThermalGlassBlock.java | 2 +- .../block/{ => misc}/VeridiumBlockBlock.java | 2 +- .../block/reactor/ReactorControllerBlock.java | 4 +-- ...rgyProviderBlock.java => EnergyBlock.java} | 8 +++--- ...viderBlock.java => FacingEnergyBlock.java} | 4 +-- .../client/EnergonRelicsClient.java | 4 +-- .../core/EnergyReceiverBlockEntity.java | 2 ++ .../energy/core/util/Action.java | 8 ++++++ .../recipes/holographic_sky.json | 23 ++++++++++++++++ .../energonrelics/recipes/multimeter.json | 26 +++++++++++++++++++ 24 files changed, 101 insertions(+), 39 deletions(-) rename src/main/java/com/thebrokenrail/energonrelics/block/{ => misc}/ThermalCasingBlock.java (89%) rename src/main/java/com/thebrokenrail/energonrelics/block/{ => misc}/ThermalGlassBlock.java (96%) rename src/main/java/com/thebrokenrail/energonrelics/block/{ => misc}/VeridiumBlockBlock.java (91%) rename src/main/java/com/thebrokenrail/energonrelics/block/util/energy/{EnergyProviderBlock.java => EnergyBlock.java} (94%) rename src/main/java/com/thebrokenrail/energonrelics/block/util/energy/{FacingEnergyProviderBlock.java => FacingEnergyBlock.java} (90%) create mode 100644 src/main/resources/data/energonrelics/recipes/holographic_sky.json create mode 100644 src/main/resources/data/energonrelics/recipes/multimeter.json diff --git a/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java b/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java index 7babcf4..9570e4a 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java +++ b/src/main/java/com/thebrokenrail/energonrelics/EnergonRelics.java @@ -5,16 +5,16 @@ import com.thebrokenrail.energonrelics.block.CreativeEnergySourceBlock; import com.thebrokenrail.energonrelics.block.DefensiveLaserBlock; import com.thebrokenrail.energonrelics.block.HolographicSkyBlock; import com.thebrokenrail.energonrelics.block.LightningRodBlock; -import com.thebrokenrail.energonrelics.block.VeridiumBlockBlock; +import com.thebrokenrail.energonrelics.block.misc.VeridiumBlockBlock; import com.thebrokenrail.energonrelics.block.forcefield.ForcefieldBlock; import com.thebrokenrail.energonrelics.block.forcefield.ForcefieldProjectorBlock; import com.thebrokenrail.energonrelics.block.structure.StructureGeneratorBlock; -import com.thebrokenrail.energonrelics.block.ThermalGlassBlock; +import com.thebrokenrail.energonrelics.block.misc.ThermalGlassBlock; import com.thebrokenrail.energonrelics.block.battery.ActiveBatteryControllerBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorControllerBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorCoreBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorInputBlock; -import com.thebrokenrail.energonrelics.block.ThermalCasingBlock; +import com.thebrokenrail.energonrelics.block.misc.ThermalCasingBlock; import com.thebrokenrail.energonrelics.block.battery.PassiveBatteryControllerBlock; import com.thebrokenrail.energonrelics.block.battery.BatteryCoreBlock; import com.thebrokenrail.energonrelics.block.EnergonLightBlock; diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/BlockBreakerBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/BlockBreakerBlock.java index 80557fd..8f47d38 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/BlockBreakerBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/BlockBreakerBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.BlockBreakerBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -17,7 +17,7 @@ import net.minecraft.world.WorldAccess; import java.util.function.Function; -public class BlockBreakerBlock extends FacingEnergyProviderBlock { +public class BlockBreakerBlock extends FacingEnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public BlockBreakerBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/CreativeEnergySourceBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/CreativeEnergySourceBlock.java index 755a341..ed0c4ce 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/CreativeEnergySourceBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/CreativeEnergySourceBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.CreativeEnergySourceBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Blocks; import net.minecraft.block.entity.BlockEntity; @@ -9,7 +9,7 @@ import net.minecraft.block.entity.BlockEntityType; import java.util.function.Function; -public class CreativeEnergySourceBlock extends EnergyProviderBlock { +public class CreativeEnergySourceBlock extends EnergyBlock { public CreativeEnergySourceBlock() { super(FabricBlockSettings.copy(Blocks.BEDROCK).dropsNothing()); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/DefensiveLaserBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/DefensiveLaserBlock.java index 18d760c..77e7df7 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/DefensiveLaserBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/DefensiveLaserBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.DefensiveLaserBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import com.thebrokenrail.energonrelics.client.block.entity.render.DefensiveLaserBlockEntityRenderer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -26,7 +26,7 @@ import net.minecraft.world.BlockView; import java.util.function.Function; @SuppressWarnings("deprecation") -public class DefensiveLaserBlock extends EnergyProviderBlock { +public class DefensiveLaserBlock extends EnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public DefensiveLaserBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/EnergonLightBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/EnergonLightBlock.java index d23c6e3..c3b1476 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/EnergonLightBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/EnergonLightBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.EnergonLightBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -15,7 +15,7 @@ import net.minecraft.state.property.Properties; import java.util.function.Function; -public class EnergonLightBlock extends EnergyProviderBlock { +public class EnergonLightBlock extends EnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public EnergonLightBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/HolographicSkyBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/HolographicSkyBlock.java index 0d4e283..5e49ae6 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/HolographicSkyBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/HolographicSkyBlock.java @@ -1,8 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.HolographicSkyBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; -import com.thebrokenrail.energonrelics.client.block.entity.render.DefensiveLaserBlockEntityRenderer; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import com.thebrokenrail.energonrelics.client.block.entity.render.HolographicSkyBlockEntityRenderer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -29,7 +28,7 @@ import net.minecraft.world.BlockView; import java.util.function.Function; @SuppressWarnings("deprecation") -public class HolographicSkyBlock extends EnergyProviderBlock { +public class HolographicSkyBlock extends EnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public static final IntProperty LIGHT_LEVEL = IntProperty.of("light_level", 0, 15); diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/LightningRodBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/LightningRodBlock.java index 191d1f9..9dee31c 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/LightningRodBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/LightningRodBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.LightningRodBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; @@ -19,7 +19,7 @@ import net.minecraft.world.BlockView; import java.util.function.Function; @SuppressWarnings("deprecation") -public class LightningRodBlock extends EnergyProviderBlock { +public class LightningRodBlock extends EnergyBlock { public LightningRodBlock() { super(FabricBlockSettings.of(Material.STONE, MaterialColor.BLUE_TERRACOTTA).nonOpaque().allowsSpawning((state, world, pos, type) -> false).solidBlock((state, world, pos) -> false).suffocates((state, world, pos) -> false).emissiveLighting((state, world, pos) -> true).lightLevel(10).requiresTool().strength(1.5f, 6.0f).blockVision((state, world, pos) -> false)); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/SolarPanelBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/SolarPanelBlock.java index 02479d7..9825f23 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/SolarPanelBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/SolarPanelBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.SolarPanelBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Material; import net.minecraft.block.MaterialColor; @@ -11,7 +11,7 @@ import net.minecraft.sound.BlockSoundGroup; import java.util.function.Function; -public class SolarPanelBlock extends EnergyProviderBlock { +public class SolarPanelBlock extends EnergyBlock { public SolarPanelBlock() { super(FabricBlockSettings.of(Material.STONE, MaterialColor.BLUE_TERRACOTTA).sounds(BlockSoundGroup.GLASS).requiresTool().strength(1.5f, 6.0f)); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/SwitchBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/SwitchBlock.java index 144b58c..621edf2 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/SwitchBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/SwitchBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block; import com.thebrokenrail.energonrelics.block.entity.SwitchBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -20,7 +20,7 @@ import java.util.Random; import java.util.function.Function; @SuppressWarnings("deprecation") -public class SwitchBlock extends EnergyProviderBlock { +public class SwitchBlock extends EnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public SwitchBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/battery/ActiveBatteryControllerBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/battery/ActiveBatteryControllerBlock.java index cc101f3..d31c1a4 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/battery/ActiveBatteryControllerBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/battery/ActiveBatteryControllerBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block.battery; import com.thebrokenrail.energonrelics.block.entity.battery.ActiveBatteryControllerBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Material; import net.minecraft.block.MaterialColor; @@ -10,7 +10,7 @@ import net.minecraft.block.entity.BlockEntityType; import java.util.function.Function; -public class ActiveBatteryControllerBlock extends FacingEnergyProviderBlock { +public class ActiveBatteryControllerBlock extends FacingEnergyBlock { public ActiveBatteryControllerBlock() { super(FabricBlockSettings.of(Material.STONE, MaterialColor.ORANGE_TERRACOTTA).requiresTool().strength(1.5f, 6.0f)); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/battery/PassiveBatteryControllerBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/battery/PassiveBatteryControllerBlock.java index 9f3d2fb..cbd81ba 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/battery/PassiveBatteryControllerBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/battery/PassiveBatteryControllerBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block.battery; import com.thebrokenrail.energonrelics.block.entity.battery.PassiveBatteryControllerBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Material; import net.minecraft.block.MaterialColor; @@ -10,7 +10,7 @@ import net.minecraft.block.entity.BlockEntityType; import java.util.function.Function; -public class PassiveBatteryControllerBlock extends FacingEnergyProviderBlock { +public class PassiveBatteryControllerBlock extends FacingEnergyBlock { public PassiveBatteryControllerBlock() { super(FabricBlockSettings.of(Material.STONE, MaterialColor.RED_TERRACOTTA).requiresTool().strength(1.5f, 6.0f)); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/entity/battery/PassiveBatteryControllerBlockEntity.java b/src/main/java/com/thebrokenrail/energonrelics/block/entity/battery/PassiveBatteryControllerBlockEntity.java index 70afda0..1fe83c7 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/entity/battery/PassiveBatteryControllerBlockEntity.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/entity/battery/PassiveBatteryControllerBlockEntity.java @@ -44,6 +44,10 @@ public class PassiveBatteryControllerBlockEntity extends EnergyReceiverBlockEnti battery.setEnergy(battery.getEnergy() + amount); } } + + @Override + public void finish() { + } } @Override diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/forcefield/ForcefieldProjectorBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/forcefield/ForcefieldProjectorBlock.java index 4b45930..5bd296e 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/forcefield/ForcefieldProjectorBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/forcefield/ForcefieldProjectorBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block.forcefield; import com.thebrokenrail.energonrelics.block.entity.forcefield.ForcefieldProjectorBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -14,7 +14,7 @@ import net.minecraft.state.property.Properties; import java.util.function.Function; -public class ForcefieldProjectorBlock extends FacingEnergyProviderBlock { +public class ForcefieldProjectorBlock extends FacingEnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public ForcefieldProjectorBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/ThermalCasingBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalCasingBlock.java similarity index 89% rename from src/main/java/com/thebrokenrail/energonrelics/block/ThermalCasingBlock.java rename to src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalCasingBlock.java index acaeffc..6f0acb9 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/ThermalCasingBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalCasingBlock.java @@ -1,4 +1,4 @@ -package com.thebrokenrail.energonrelics.block; +package com.thebrokenrail.energonrelics.block.misc; import com.thebrokenrail.energonrelics.block.util.SimpleBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/ThermalGlassBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalGlassBlock.java similarity index 96% rename from src/main/java/com/thebrokenrail/energonrelics/block/ThermalGlassBlock.java rename to src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalGlassBlock.java index 57b1f7b..eec16a2 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/ThermalGlassBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/misc/ThermalGlassBlock.java @@ -1,4 +1,4 @@ -package com.thebrokenrail.energonrelics.block; +package com.thebrokenrail.energonrelics.block.misc; import com.thebrokenrail.energonrelics.block.util.SimpleBlock; import net.fabricmc.api.EnvType; diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/VeridiumBlockBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/misc/VeridiumBlockBlock.java similarity index 91% rename from src/main/java/com/thebrokenrail/energonrelics/block/VeridiumBlockBlock.java rename to src/main/java/com/thebrokenrail/energonrelics/block/misc/VeridiumBlockBlock.java index c3aa462..4aa936f 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/VeridiumBlockBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/misc/VeridiumBlockBlock.java @@ -1,4 +1,4 @@ -package com.thebrokenrail.energonrelics.block; +package com.thebrokenrail.energonrelics.block.misc; import com.thebrokenrail.energonrelics.block.util.SimpleBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/reactor/ReactorControllerBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/reactor/ReactorControllerBlock.java index 23ca580..7bb5f7e 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/reactor/ReactorControllerBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/reactor/ReactorControllerBlock.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.block.reactor; import com.thebrokenrail.energonrelics.block.entity.reactor.ReactorControllerBlockEntity; -import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.FacingEnergyBlock; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -22,7 +22,7 @@ import java.util.Random; import java.util.function.Function; @SuppressWarnings("deprecation") -public class ReactorControllerBlock extends FacingEnergyProviderBlock { +public class ReactorControllerBlock extends FacingEnergyBlock { public static final BooleanProperty POWERED = Properties.POWERED; public ReactorControllerBlock() { diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyProviderBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyBlock.java similarity index 94% rename from src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyProviderBlock.java rename to src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyBlock.java index f94be11..e147366 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyProviderBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/EnergyBlock.java @@ -25,10 +25,10 @@ import java.util.ArrayList; import java.util.List; import java.util.function.Function; -public abstract class EnergyProviderBlock extends SimpleBlockWithEntity { - private static final List blocks = new ArrayList<>(); +public abstract class EnergyBlock extends SimpleBlockWithEntity { + private static final List blocks = new ArrayList<>(); - public EnergyProviderBlock(Settings settings) { + public EnergyBlock(Settings settings) { super(settings); } @@ -40,7 +40,7 @@ public abstract class EnergyProviderBlock extends SimpleBlockWithEntity { @Environment(EnvType.CLIENT) public static void initRenderer() { - for (EnergyProviderBlock block : blocks) { + for (EnergyBlock block : blocks) { BlockEntityRendererRegistry.INSTANCE.register(block.type, block.getRenderer()); } } diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyProviderBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyBlock.java similarity index 90% rename from src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyProviderBlock.java rename to src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyBlock.java index ace3b9f..d920fb0 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyProviderBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/util/energy/FacingEnergyBlock.java @@ -11,10 +11,10 @@ import net.minecraft.util.BlockRotation; import net.minecraft.util.math.Direction; @SuppressWarnings("deprecation") -public abstract class FacingEnergyProviderBlock extends EnergyProviderBlock { +public abstract class FacingEnergyBlock extends EnergyBlock { public static final DirectionProperty FACING = Properties.FACING; - public FacingEnergyProviderBlock(Settings settings) { + public FacingEnergyBlock(Settings settings) { super(settings); setDefaultState(getDefaultState().with(FACING, Direction.NORTH)); } diff --git a/src/main/java/com/thebrokenrail/energonrelics/client/EnergonRelicsClient.java b/src/main/java/com/thebrokenrail/energonrelics/client/EnergonRelicsClient.java index a9d6601..4c0a13a 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/client/EnergonRelicsClient.java +++ b/src/main/java/com/thebrokenrail/energonrelics/client/EnergonRelicsClient.java @@ -1,7 +1,7 @@ package com.thebrokenrail.energonrelics.client; import com.thebrokenrail.energonrelics.EnergonRelics; -import com.thebrokenrail.energonrelics.block.util.energy.EnergyProviderBlock; +import com.thebrokenrail.energonrelics.block.util.energy.EnergyBlock; import com.thebrokenrail.energonrelics.client.config.UserConfig; import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; import me.sargunvohra.mcmods.autoconfig1u.ConfigData; @@ -36,7 +36,7 @@ public class EnergonRelicsClient implements ClientModInitializer { @Override public void onInitializeClient() { - EnergyProviderBlock.initRenderer(); + EnergyBlock.initRenderer(); BlockRenderLayerMap.INSTANCE.putBlock(EnergonRelics.THERMAL_GLASS_BLOCK, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(EnergonRelics.DEFENSIVE_LASER_BLOCK, RenderLayer.getCutout()); diff --git a/src/main/java/com/thebrokenrail/energonrelics/energy/core/EnergyReceiverBlockEntity.java b/src/main/java/com/thebrokenrail/energonrelics/energy/core/EnergyReceiverBlockEntity.java index 323d9f2..480199c 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/energy/core/EnergyReceiverBlockEntity.java +++ b/src/main/java/com/thebrokenrail/energonrelics/energy/core/EnergyReceiverBlockEntity.java @@ -40,6 +40,8 @@ public abstract class EnergyReceiverBlockEntity extends EnergyProviderBlockEntit } else { action.pay(0); } + + action.finish(); } protected void addAction(Action action) { diff --git a/src/main/java/com/thebrokenrail/energonrelics/energy/core/util/Action.java b/src/main/java/com/thebrokenrail/energonrelics/energy/core/util/Action.java index 723bc6a..9f0dc0c 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/energy/core/util/Action.java +++ b/src/main/java/com/thebrokenrail/energonrelics/energy/core/util/Action.java @@ -37,6 +37,7 @@ public class Action { void expandPayments(int amount); long amountOwed(); void pay(long amount); + void finish(); } public static class PropagatedActionImpl implements PropagatedAction { @@ -81,5 +82,12 @@ public class Action { } } } + + @Override + public void finish() { + if (payments < expectedPayments) { + throw new UnsupportedOperationException(); + } + } } } diff --git a/src/main/resources/data/energonrelics/recipes/holographic_sky.json b/src/main/resources/data/energonrelics/recipes/holographic_sky.json new file mode 100644 index 0000000..b4d45c1 --- /dev/null +++ b/src/main/resources/data/energonrelics/recipes/holographic_sky.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#G#", + "GBG", + "#G#" + ], + "key": { + "#": { + "item": "energonrelics:circuit_board" + }, + "G": { + "item": "minecraft:glass" + }, + "B": { + "item": "minecraft:blaze_powder" + } + }, + "result": { + "item": "energonrelics:holographic_sky", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/energonrelics/recipes/multimeter.json b/src/main/resources/data/energonrelics/recipes/multimeter.json new file mode 100644 index 0000000..fd0ef49 --- /dev/null +++ b/src/main/resources/data/energonrelics/recipes/multimeter.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "G V", + "I#I", + " I " + ], + "key": { + "#": { + "item": "energonrelics:circuit_board" + }, + "I": { + "item": "minecraft:iron_ingot" + }, + "G": { + "item": "minecraft:gold_ingot" + }, + "V": { + "item": "energonrelics:veridium_ingot" + } + }, + "result": { + "item": "energonrelics:multimeter", + "count": 1 + } +} \ No newline at end of file