PrettyPipes/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerContainer.java

42 lines
1.6 KiB
Java
Raw Normal View History

2020-10-13 18:11:40 +02:00
package de.ellpeck.prettypipes.pressurizer;
import de.ellpeck.prettypipes.Utility;
2021-12-02 12:31:04 +01:00
import net.minecraft.core.BlockPos;
2020-10-13 18:11:40 +02:00
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.inventory.container.Slot;
2021-12-02 12:31:04 +01:00
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.inventory.MenuType;
import net.minecraft.world.inventory.Slot;
import net.minecraft.world.item.ItemStack;
2020-10-13 18:11:40 +02:00
import net.minecraft.util.math.BlockPos;
import javax.annotation.Nullable;
2021-12-02 12:31:04 +01:00
public class PressurizerContainer extends AbstractContainerMenu {
public final PressurizerBlockEntity tile;
2020-10-13 18:11:40 +02:00
2021-12-02 12:31:04 +01:00
public PressurizerContainer(@Nullable MenuType<?> type, int id, Player player, BlockPos pos) {
2020-10-13 18:11:40 +02:00
super(type, id);
2021-12-02 12:31:04 +01:00
this.tile = Utility.getBlockEntity(PressurizerBlockEntity.class, player.level, pos);
2020-10-13 18:11:40 +02:00
for (int l = 0; l < 3; ++l)
for (int j1 = 0; j1 < 9; ++j1)
2021-12-02 12:31:04 +01:00
this.addSlot(new Slot(player.getInventory(), j1 + l * 9 + 9, 8 + j1 * 18, 55 + l * 18));
2020-10-13 18:11:40 +02:00
for (int i1 = 0; i1 < 9; ++i1)
2021-12-02 12:31:04 +01:00
this.addSlot(new Slot(player.getInventory(), i1, 8 + i1 * 18, 113));
2020-10-13 18:11:40 +02:00
}
@Override
public ItemStack transferStackInSlot(PlayerEntity player, int slotIndex) {
return Utility.transferStackInSlot(this, this::mergeItemStack, player, slotIndex, stack -> null);
}
@Override
public boolean canInteractWith(PlayerEntity playerIn) {
return true;
}
}