|
4 | 4 | import buildcraft.api.mj.IMjReceiver; |
5 | 5 | import com.google.common.collect.ImmutableMap; |
6 | 6 | import dev.aura.powermoney.PowerMoney; |
| 7 | +import dev.aura.powermoney.PowerMoneyBlocks; |
7 | 8 | import dev.aura.powermoney.common.block.BlockPowerReceiver; |
8 | 9 | import dev.aura.powermoney.common.compat.PowerMoneyModules; |
9 | 10 | import dev.aura.powermoney.common.compat.buildcraft.BuildcraftCompat; |
|
17 | 18 | import lombok.RequiredArgsConstructor; |
18 | 19 | import lombok.Value; |
19 | 20 | import net.darkhax.tesla.api.ITeslaConsumer; |
| 21 | +import net.minecraft.block.state.IBlockState; |
20 | 22 | import net.minecraft.util.EnumFacing; |
21 | 23 | import net.minecraftforge.common.capabilities.Capability; |
22 | 24 | import net.minecraftforge.common.capabilities.ICapabilityProvider; |
@@ -109,12 +111,14 @@ public boolean canExtract() { |
109 | 111 |
|
110 | 112 | @Override |
111 | 113 | public boolean canReceive() { |
112 | | - return ((owner != null) && !TileEntityPowerReceiver.UUID_NOBODY.equals(owner)) |
113 | | - && PowerMoney.getInstance().getActiveMoneyInterface().canAcceptMoney() |
114 | | - && worldPos |
115 | | - .getWorld() |
116 | | - .getBlockState(worldPos.getPos()) |
117 | | - .getValue(BlockPowerReceiver.RECEIVING); |
| 114 | + if (((owner == null) || TileEntityPowerReceiver.UUID_NOBODY.equals(owner)) |
| 115 | + || !PowerMoney.getInstance().getActiveMoneyInterface().canAcceptMoney()) return false; |
| 116 | + |
| 117 | + IBlockState blockState = worldPos.getWorld().getBlockState(worldPos.getPos()); |
| 118 | + |
| 119 | + return (blockState.getBlock() == PowerMoneyBlocks.powerReceiver()) |
| 120 | + && blockState.getPropertyKeys().contains(BlockPowerReceiver.RECEIVING) |
| 121 | + && blockState.getValue(BlockPowerReceiver.RECEIVING); |
118 | 122 | } |
119 | 123 |
|
120 | 124 | private long addEnergy(long energy, boolean simulate) { |
|
0 commit comments