aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java
blob: 3bd8b0429c72459db64cab178a7e08eab76b8635 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package gregtech.api.interfaces.tileentity;

import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.ItemStack;

public interface IHasInventory extends ISidedInventory, IHasWorldObjectAndCoords {

    /**
     * if the Inventory of this TileEntity got modified this tick
     */
    public boolean hasInventoryBeenModified();

    /**
     * if this is just a Holoslot
     */
    public boolean isValidSlot(int aIndex);

    /**
     * Tries to add a Stack to the Slot.
     * It doesn't matter if the Slot is valid or invalid as described at the Function above.
     *
     * @return true if aStack == null, then false if aIndex is out of bounds, then false if aStack cannot be added, and then true if aStack has been added
     */
    public boolean addStackToSlot(int aIndex, ItemStack aStack);

    /**
     * Tries to add X Items of a Stack to the Slot.
     * It doesn't matter if the Slot is valid or invalid as described at the Function above.
     *
     * @return true if aStack == null, then false if aIndex is out of bounds, then false if aStack cannot be added, and then true if aStack has been added
     */
    public boolean addStackToSlot(int aIndex, ItemStack aStack, int aAmount);
}