/** * 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 */ 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(); }