Package net.minecraft.inventory

Examples of net.minecraft.inventory.Slot


    }

    @Override
    public ItemStack transferStackInSlot(EntityPlayer par1EntityPlayer, int par2) {
        ItemStack var3 = null;
        Slot var4 = (Slot) inventorySlots.get(par2);

        if (var4 != null && var4.getHasStack()) {
            ItemStack var5 = var4.getStack();

            var3 = var5.copy();

            if (par2 < 1) {
                if (!mergeItemStack(var5, 1, 37, false))
                    return null;
            } else if (!mergeItemStack(var5, 0, 1, false))
                return null;

            if (var5.stackSize == 0)
                var4.putStack(null);
            else
                var4.onSlotChanged();

            if (var5.stackSize == var3.stackSize)
                return null;

            var4.onPickupFromSlot(par1EntityPlayer, var5);
        }

        return var3;
    }
View Full Code Here


  public ContainerAnimationTablet(TileAnimationTablet tablet, InventoryPlayer playerInv) {
    super(playerInv);

    this.tablet = tablet;

    addSlotToContainer(new Slot(tablet, 0, 80, 15));

    initPlayerInv();
  }
View Full Code Here

  }

  @Override
  public ItemStack transferStackInSlot(EntityPlayer par1EntityPlayer, int par2) {
    ItemStack var3 = null;
    Slot var4 = (Slot) inventorySlots.get(par2);

    if (var4 != null && var4.getHasStack()) {
      ItemStack var5 = var4.getStack();

      var3 = var5.copy();

      if (par2 < 1) {
        if (!mergeItemStack(var5, 1, 37, false))
          return null;
      } else if (!mergeItemStack(var5, 0, 1, false))
        return null;

      if (var5.stackSize == 0)
        var4.putStack(null);
      else
        var4.onSlotChanged();

      if (var5.stackSize == var3.stackSize)
        return null;

      var4.onPickupFromSlot(par1EntityPlayer, var5);
    }

    return var3;
  }
View Full Code Here

    int ys = getInvYStart();
    int xs = getInvXStart();

    for (int x = 0; x < 3; ++x)
      for (int y = 0; y < 9; ++y)
        addSlotToContainer(new Slot(playerInv, y + x * 9 + 9, xs + y * 18, ys + x * 18));

    for (int x = 0; x < 9; ++x)
      addSlotToContainer(new Slot(playerInv, x, xs + x * 18, ys + 58));
  }
View Full Code Here

  }

  @Override
  public ItemStack transferStackInSlot(EntityPlayer par1EntityPlayer, int par2) {
    ItemStack var3 = null;
    Slot var4 = (Slot) inventorySlots.get(par2);

    if (var4 != null && var4.getHasStack()) {
      ItemStack var5 = var4.getStack();

      if (var5.getItem() instanceof ItemSoulMould) {
        var3 = var5.copy();

        if (par2 < 1) {
          if (!mergeItemStack(var5, 1, 37, false))
            return null;
        } else if (!mergeItemStack(var5, 0, 1, false))
          return null;

        if (var5.stackSize == 0)
          var4.putStack(null);
        else
          var4.onSlotChanged();

        if (var5.stackSize == var3.stackSize)
          return null;

        var4.onPickupFromSlot(par1EntityPlayer, var5);
      }
    }

    return var3;
  }
View Full Code Here

    boolean successful = false;
    int i = !r ? start : length - 1;
    int iterOrder = !r ? 1 : -1;

    Slot slot;
    ItemStack existingStack;

    if (stack.isStackable()) {
      while (stack.stackSize > 0 && (!r && i < length || r && i >= start)) {
        slot = slots.get(i);
        existingStack = slot.getStack();

        if (slot.isItemValid(stack) && existingStack != null && existingStack.getItem().equals(stack.getItem())
            && (!stack.getHasSubtypes() || stack.getItemDamage() == existingStack.getItemDamage())
            && ItemStack.areItemStackTagsEqual(stack, existingStack)) {
          int existingSize = existingStack.stackSize + stack.stackSize;
          int maxStack = Math.min(stack.getMaxStackSize(), slot.getSlotStackLimit());

          if (existingSize <= maxStack) {
            stack.stackSize = 0;
            existingStack.stackSize = existingSize;
            slot.onSlotChanged();
            successful = true;
          } else if (existingStack.stackSize < maxStack) {
            stack.stackSize -= maxStack - existingStack.stackSize;
            existingStack.stackSize = maxStack;
            slot.onSlotChanged();
            successful = true;
          }
        }

        i += iterOrder;
      }
    }

    if (stack.stackSize > 0) {
      i = !r ? start : length - 1;

      while (stack.stackSize > 0 && (!r && i < length || r && i >= start)) {
        slot = slots.get(i);
        existingStack = slot.getStack();

        if (slot.isItemValid(stack) && existingStack == null) {
          int maxStack = limit ? Math.min(stack.getMaxStackSize(), slot.getSlotStackLimit()) : slot.getSlotStackLimit();
          existingStack = stack.splitStack(Math.min(stack.stackSize, maxStack));
          slot.putStack(existingStack);
          slot.onSlotChanged();
          successful = true;
        }

        i += iterOrder;
      }
View Full Code Here

    int y = 10;   
    for (int row = 0; row < 3; row++) {
      x = 62;
      for (int col = 0; col < 4; col++) {
        final int index = (row * 4) + col;
        addSlotToContainer(new Slot(tileEntity, index, x, y) {
          @Override
          public boolean isItemValid(ItemStack itemStack) {
            return tileEntity.isItemValidForSlot(index, itemStack);
          }
        });
View Full Code Here

    this.x = x;
    this.y = y;
    this.z = z;

    this.inventorySlots.set(2, new Slot(outputSlot, 2, 134, 47) {

      public boolean isItemValid(ItemStack stack) {
        return false;
      }
View Full Code Here

   

    // add players inventory
    for (int i = 0; i < 3; ++i) {
      for (int j = 0; j < 9; ++j) {
        addSlotToContainer(new Slot(playerInv, j + i * 9 + 9, 8 + j * 18, 103 + i * 18));
      }
    }

    for (int i = 0; i < 9; ++i) {
      addSlotToContainer(new Slot(playerInv, i, 8 + i * 18, 161));
    }
  }
View Full Code Here

    super(playerInv, te);
  }

  @Override
  protected void addMachineSlots(InventoryPlayer playerInv) {
    addSlotToContainer(new Slot(tileEntity, 0, 44, 21) {
      @Override
      public boolean isItemValid(ItemStack itemStack) {
        return tileEntity.isItemValidForSlot(0, itemStack);
      }
    });
    addSlotToContainer(new Slot(tileEntity, 1, 116, 21) {
      @Override
      public boolean isItemValid(ItemStack itemStack) {
        return tileEntity.isItemValidForSlot(1, itemStack);
      }
    });
    addSlotToContainer(new Slot(tileEntity, 2, 44, 52) {
      @Override
      public boolean isItemValid(ItemStack itemStack) {
        return tileEntity.isItemValidForSlot(2, itemStack);
      }
    });
    addSlotToContainer(new Slot(tileEntity, 3, 116, 52) {
      @Override
      public boolean isItemValid(ItemStack itemStack) {
        return tileEntity.isItemValidForSlot(3, itemStack);
      }
    });
View Full Code Here

TOP

Related Classes of net.minecraft.inventory.Slot

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.