Mekanism-tilera-Edition/common/cofh/api/tileentity/IReconfigurableSides.java
2013-11-14 21:58:32 -05:00

54 lines
1.2 KiB
Java

package cofh.api.tileentity;
/**
* Implement this interface on Tile Entities which allow for reconfiguration of their sides.
*
* Coordination with the containing block is required.
*
* @author King Lemming
*
*/
public interface IReconfigurableSides {
/**
* Decrement the config for a given side.
*
* @param side
* The side to decrement.
* @return True if config was changed, false otherwise.
*/
public boolean decrSide(int side);
/**
* Increment the config for a given side.
*
* @param side
* The side to decrement.
* @return True if config was changed, false otherwise.
*/
public boolean incrSide(int side);
/**
* Set the config for a given side.
*
* @param side
* The side to set.
* @param config
* The config value to use.
* @return True of config was set, false otherwise.
*/
public boolean setSide(int side, int config);
/**
* Reset configs on all sides to their base values.
*
* @return True if reset was successful, false otherwise.
*/
public boolean resetSides();
/**
* Returns the number of possible config settings for a given side.
*/
public int getNumConfig(int side);
}