OSDN Git Service

799c51df80927c303da6f15ba8f91db701064807
[chemicraft/chemicraft.git] / common / pcc / chemicraft / container / ContainerElectrolysisTable.java
1 package pcc.chemicraft.container;
2
3 import net.minecraft.entity.player.EntityPlayer;
4 import net.minecraft.inventory.Container;
5 import net.minecraft.inventory.Slot;
6 import net.minecraft.world.World;
7 import pcc.chemicraft.inventory.InventoryElectrolysisFuel;
8 import pcc.chemicraft.inventory.InventoryElectrolysisMaterial;
9 import pcc.chemicraft.inventory.InventoryElectrolysisResult;
10 import pcc.chemicraft.slot.SlotElectrolysisMaterial;
11 import pcc.chemicraft.slot.SlotElectrolysisResult;
12 import pcc.chemicraft.tileentity.TileEntityElectrolysisTable;
13
14 public class ContainerElectrolysisTable extends Container
15 {
16
17         private World worldObj;
18
19         private int posX;
20         private int posY;
21         private int posZ;
22
23         private TileEntityElectrolysisTable tileEntity;
24
25         private InventoryElectrolysisMaterial invm;
26         private InventoryElectrolysisResult invr;
27         private InventoryElectrolysisFuel invf;
28
29         public ContainerElectrolysisTable(EntityPlayer par1EntityPlayer, TileEntityElectrolysisTable par2) {
30                 super();
31                 this.worldObj = par2.worldObj;
32                 this.posX = par2.xCoord;
33                 this.posY = par2.yCoord;
34                 this.posZ = par2.zCoord;
35                 this.invm = (InventoryElectrolysisMaterial) this.tileEntity.getInvMaterial();
36                 this.invr = (InventoryElectrolysisResult) this.tileEntity.getInvResult();
37                 this.invf = (InventoryElectrolysisFuel) this.tileEntity.getInvFuel();
38
39                 this.addSlotToContainer(new SlotElectrolysisMaterial(invm, 0, 123, 34));
40                 for (int i = 0; i < 16; i++) {
41                         this.addSlotToContainer(new SlotElectrolysisResult(invr, i, 123, 34));
42                 }
43                 this.addSlotToContainer(new SlotElectrolysisResult(invf, 0, 123, 34));
44
45                 int var3;
46                 for (var3 = 0; var3 < 3; ++var3)
47                 {
48                         for (int var4 = 0; var4 < 9; ++var4)
49                         {
50                                 this.addSlotToContainer(new Slot(par1EntityPlayer.inventory, var4 + var3 * 9 + 9, 8 + var4 * 18, 85 + var3 * 18));
51                         }
52                 }
53
54                 for (var3 = 0; var3 < 9; ++var3)
55                 {
56                         this.addSlotToContainer(new Slot(par1EntityPlayer.inventory, var3, 8 + var3 * 18, 143));
57                 }
58
59         }
60
61         @Override
62         public boolean canInteractWith(EntityPlayer par1EntityPlayer)
63         {
64                 return true;
65                 //return this.worldObj.getBlockId(this.posX, this.posY, this.posZ) != ChemiCraft.instance.electrolysisTableID ? false : par1EntityPlayer.getDistanceSq((double) this.posX + 0.5D, (double) this.posY + 0.5D, (double) this.posZ + 0.5D) <= 64.0D;
66         }
67
68 }