PrettyPipes/src/main/java/de/ellpeck/prettypipes/items/IModule.java

26 lines
995 B
Java
Raw Normal View History

2020-04-16 00:39:53 +02:00
package de.ellpeck.prettypipes.items;
2020-04-16 04:42:42 +02:00
import de.ellpeck.prettypipes.pipe.containers.AbstractPipeContainer;
import de.ellpeck.prettypipes.pipe.PipeTileEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
2020-04-16 00:39:53 +02:00
import net.minecraft.item.ItemStack;
import net.minecraftforge.items.IItemHandler;
public interface IModule {
2020-04-16 04:42:42 +02:00
void tick(ItemStack module, PipeTileEntity tile);
2020-04-16 04:42:42 +02:00
boolean canAcceptItem(ItemStack module, PipeTileEntity tile, ItemStack stack);
2020-04-16 04:42:42 +02:00
boolean isAvailableDestination(ItemStack module, PipeTileEntity tile, ItemStack stack, IItemHandler destination);
2020-04-16 04:42:42 +02:00
int getPriority(ItemStack module, PipeTileEntity tile);
2020-04-16 04:42:42 +02:00
boolean isCompatible(ItemStack module, PipeTileEntity tile, IModule other);
2020-04-16 04:42:42 +02:00
boolean hasContainer(ItemStack module, PipeTileEntity tile);
2020-04-16 04:42:42 +02:00
AbstractPipeContainer<?> getContainer(ItemStack module, PipeTileEntity tile, int windowId, PlayerInventory inv, PlayerEntity player, int moduleIndex);
2020-04-16 00:39:53 +02:00
}