| /** |
| * Copyright (c) SpaceToad, 2011 http://www.mod-buildcraft.com |
| * |
| * BuildCraft is distributed under the terms of the Minecraft Mod Public License |
| * 1.0, or MMPL. Please check the contents of the license located in |
| * http://www.mod-buildcraft.com/MMPL-1.0.txt |
| */ |
| package buildcraft.api.power; |
| |
| import net.minecraft.world.World; |
| import net.minecraftforge.common.ForgeDirection; |
| import buildcraft.api.power.PowerHandler.PowerReceiver; |
| |
| /** |
| * This interface should be implemented by any Tile Entity that wishes to be able to receive power. |
| * |
| * @author CovertJaguar <http://www.railcraft.info/> |
| */ |
| public interface IPowerReceptor |
| { |
| |
| /** |
| * Get the PowerReceiver for this side of the block. You can return the same PowerReceiver for |
| * all sides or one for each side. |
| * |
| * You should NOT return null to this method unless you mean to NEVER receive power from that |
| * side. Returning null, after previous returning a PowerReceiver, will most likely cause pipe |
| * connections to derp out and engines to eventually explode. |
| * |
| * @param side |
| * @return |
| */ |
| public PowerReceiver getPowerReceiver(ForgeDirection side); |
| |
| /** |
| * Call back from the PowerHandler that is called when the stored power exceeds the activation |
| * power. |
| * |
| * It can be triggered by update() calls or power modification calls. |
| * |
| * @param workProvider |
| */ |
| public void doWork(PowerHandler workProvider); |
| |
| public World getWorld(); |
| } |