Files
CraftingKeys/src/main/java/de/skate702/craftingkeys/manager/DispenserManager.java
T

67 lines
1.5 KiB
Java

package de.skate702.craftingkeys.manager;
import de.skate702.craftingkeys.util.Logger;
import net.minecraft.inventory.Container;
/**
* Manages a Dispenser GUI Inventory.
*/
public class DispenserManager extends ContainerManager {
private static DispenserManager instance = null;
/**
* Creates a new Dispenser Manager with the given container.
*
* @param container The container from a crafting GUI
*/
private DispenserManager(Container container) {
super(container);
}
/**
* Returns a Dispenser Manager Instance operating on the given container
*
* @param container A container from a GUI
* @return manager-singleton
*/
public static DispenserManager getInstance(Container container) {
if (instance == null) {
instance = new DispenserManager(container);
} else {
instance.container = container;
}
return instance;
}
@Override
protected int specificKeyToSlotIndex() {
return mapKeyToSlot(0, 1, 2, 3, 4, 5, 6, 7, 8);
}
@Override
protected int getInventoryStartIndex() {
return 9;
}
@Override
protected int getInteractionSlotIndex() {
return -1;
}
@Override
protected void onInteractionKeyPressed() {
Logger.info("onInteractionKeyPressed()", "Dispenser have no interaction!");
}
@Override
protected int[] getDropSlots() {
return new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8};
}
@Override
protected void interact() {
}
}