blob: 1517532b61527b6cc06424b86c28d73151deaaf1 [file] [log] [blame] [raw]
package buildcraft.api.gates;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.ForgeDirection;
import buildcraft.api.core.IIconProvider;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public interface ITrigger {
public abstract int getId();
public int getIconIndex();
@SideOnly(Side.CLIENT)
public IIconProvider getIconProvider();
/**
* Return true if this trigger can accept parameters
*/
public boolean hasParameter();
/**
* Return the trigger description in the UI
*/
public String getDescription();
/**
* Return true if the tile given in parameter activates the trigger, given the parameters.
*/
public abstract boolean isTriggerActive(ForgeDirection side, TileEntity tile, ITriggerParameter parameter);
/**
* Create parameters for the trigger. As for now, there is only one kind of trigger parameter available so this subprogram is final.
*/
public ITriggerParameter createParameter();
}