27 lines
1 KiB
Java
27 lines
1 KiB
Java
package resonantinduction.old.api;
|
|
|
|
import net.minecraft.item.ItemStack;
|
|
import dark.lib.recipes.ProcessorType;
|
|
|
|
/**
|
|
* Simple interface that allows an item to control how its salvaged, processed, or refined by a
|
|
* processor. This is 100% optional as the processor by default can break down most items. The only
|
|
* reason to use this is for more complex processing or were the item was created with NBT.
|
|
*
|
|
* @author Darkgaurdsman
|
|
*/
|
|
public interface IProcessable
|
|
{
|
|
/** Can this item be Processed by the machine */
|
|
public boolean canProcess(ProcessorType type, ItemStack stack);
|
|
|
|
/**
|
|
* Gets the output array of items when this item is processed by a processor machine
|
|
*
|
|
* @param type - type of machine see ProcessorTypes enum for info
|
|
* @param stack - ItemStack of this item or block
|
|
* @return Array of all item outputed, Make sure to return less than or equal to the amount of
|
|
* items it takes to craft only one of this item
|
|
*/
|
|
public ItemStack[] getProcesserOutput(ProcessorType type, ItemStack stack);
|
|
}
|