From ca414cd4a1b916a82404ec22b7ca0fce90a42c46 Mon Sep 17 00:00:00 2001 From: "Joseph C. Sible" Date: Sat, 17 Feb 2018 15:29:52 -0500 Subject: [PATCH] Make energy bees insert their energy into the face they're adjacent to Fixes McJty/RFTools#1642. --- .../java/com/rwtema/careerbees/effects/EffectPower.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/rwtema/careerbees/effects/EffectPower.java b/src/main/java/com/rwtema/careerbees/effects/EffectPower.java index 1e92162..f9df0e3 100644 --- a/src/main/java/com/rwtema/careerbees/effects/EffectPower.java +++ b/src/main/java/com/rwtema/careerbees/effects/EffectPower.java @@ -5,6 +5,7 @@ import forestry.api.apiculture.IBeeHousing; import forestry.api.genetics.IEffectData; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; @@ -42,11 +43,14 @@ public IEffectData doEffectBase(@Nonnull IBeeGenome genome, @Nonnull IEffectData int energyleft = rfrate; + BlockPos housingPos = housing.getCoordinates(); + int x = housingPos.getX(), y = housingPos.getY(), z = housingPos.getZ(); for (BlockPos pos : getAdjacentTiles(housing)) { World world = housing.getWorldObj(); TileEntity tileEntity = world.getTileEntity(pos); if (tileEntity != null) { - IEnergyStorage energyStorage = tileEntity.getCapability(CapabilityEnergy.ENERGY, null); + EnumFacing side = EnumFacing.getFacingFromVector(x - pos.getX(), y - pos.getY(), z - pos.getZ()); + IEnergyStorage energyStorage = tileEntity.getCapability(CapabilityEnergy.ENERGY, side); if (energyStorage != null) { energyleft -= energyStorage.receiveEnergy(energyleft, false); if (energyleft <= 0) break;