net.minecraft.inventory.Container类的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(5.9k)|赞(0)|评价(0)|浏览(186)

本文整理了Java中net.minecraft.inventory.Container类的一些代码示例,展示了Container类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Container类的具体详情如下:
包路径:net.minecraft.inventory.Container
类名称:Container

Container介绍

暂无

代码示例

代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2

@Override
public void detectAndSendChanges()
{
  this.sendCustomName();
  if( Platform.isServer() )
  {
    if( this.tileEntity != null && this.tileEntity.getWorld().getTileEntity( this.tileEntity.getPos() ) != this.tileEntity )
    {
      this.setValidContainer( false );
    }
    for( final IContainerListener listener : this.listeners )
    {
      for( final SyncData sd : this.syncData.values() )
      {
        sd.tick( listener );
      }
    }
  }
  super.detectAndSendChanges();
}

代码示例来源:origin: sinkillerj/ProjectE

@Override
  public void onContainerClosed(EntityPlayer player)
  {
    super.onContainerClosed(player);
    tile.numPlayersUsing--;
  }
}

代码示例来源:origin: Ellpeck/ActuallyAdditions

@Override
public ItemStack slotClick(int slotId, int dragType, ClickType clickTypeIn, EntityPlayer player){
  if(clickTypeIn == ClickType.SWAP && dragType == this.inventory.currentItem){
    return ItemStack.EMPTY;
  }
  else{
    return super.slotClick(slotId, dragType, clickTypeIn, player);
  }
}

代码示例来源:origin: PrinceOfAmber/Cyclic

public static IInventory getOpenContainerInventory(EntityPlayer p) {
 // a workaround since player does not reference the inventory, only the
 // container
 // and Container has no get method
 return p.openContainer.getSlot(0).inventory;
}

代码示例来源:origin: Esteemed-Innovation/Esteemed-Innovation

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendWindowProperty(this, 0, hammer.cost);
}

代码示例来源:origin: ldtteam/minecolonies

@Override
protected void mouseClicked(final int mouseX, final int mouseY, final int mouseButton) throws IOException
{
  super.mouseClicked(mouseX, mouseY, mouseButton);
  if (building.canRecipeBeAdded() && doneButton.isMouseOver())
  {
    final List<ItemStack> input = new ArrayList<>();
    input.add(inventorySlots.getInventory().get(0));
    final ItemStack primaryOutput =  inventorySlots.getSlot(1).getStack().copy();
    if(!ItemStackUtils.isEmpty(primaryOutput))
    {
      MineColonies.getNetwork().sendToServer(new AddRemoveRecipeMessage(input, 1, primaryOutput, building, false));
    }
  }
}

代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2

@Override
protected Slot addSlotToContainer( final Slot newSlot )
{
  if( newSlot instanceof AppEngSlot )
  {
    final AppEngSlot s = (AppEngSlot) newSlot;
    s.setContainer( this );
    return super.addSlotToContainer( newSlot );
  }
  else
  {
    throw new IllegalArgumentException( "Invalid Slot [" + newSlot + "] for AE Container instead of AppEngSlot." );
  }
}

代码示例来源:origin: Esteemed-Innovation/Esteemed-Innovation

@Override
public void initGui() {
  super.initGui();
  Keyboard.enableRepeatEvents(true);
  int i = (width - xSize) / 2;
  int j = (height - ySize) / 2;
  textField = new GuiTextField(0, fontRenderer, i + 62, j + 24, 103, 12);
  textField.setTextColor(-1);
  textField.setDisabledTextColour(-1);
  textField.setEnableBackgroundDrawing(false);
  textField.setMaxStringLength(40);
  inventorySlots.removeListener(this);
  inventorySlots.addListener(this);
  textField.setText(hammer.itemName);
  canEdit = true;
}

代码示例来源:origin: PrinceOfAmber/Cyclic

public static boolean hasValidOpenContainer(EntityPlayer p) {
 return p != null && p.openContainer != null && p.openContainer.inventorySlots.size() > 0 &&
   p.openContainer.getSlot(0) != null &&
   p.openContainer.getSlot(0).inventory != null;
}

代码示例来源:origin: Alex-the-666/Ice_and_Fire

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendAllWindowProperties(this, this.tileFurnace);
}

代码示例来源:origin: ldtteam/minecolonies

@Override
protected final Slot addSlotToContainer(final Slot slotToAdd)
{
  return super.addSlotToContainer(slotToAdd);
}

代码示例来源:origin: Vazkii/Botania

public static void tryToSetLastRecipe(EntityPlayer player, IItemHandlerModifiable inv, List<ItemStack> lastRecipe) {
  if(lastRecipe == null || lastRecipe.isEmpty() || player.world.isRemote)
    return;
  int index = 0;
  boolean didAny = false;
  for(ItemStack stack : lastRecipe) {
    if(stack.isEmpty())
      continue;
    for(int i = 0; i < player.inventory.getSizeInventory(); i++) {
      ItemStack pstack = player.inventory.getStackInSlot(i);
      if(!pstack.isEmpty() && pstack.isItemEqual(stack) && ItemStack.areItemStackTagsEqual(stack, pstack)) {
        inv.setStackInSlot(index, pstack.splitStack(1));
        didAny = true;
        index++;
        break;
      }
    }
  }
  if(didAny) {
    player.world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.ENTITY_GENERIC_SPLASH, SoundCategory.BLOCKS, 0.1F, 10F);
    EntityPlayerMP mp = (EntityPlayerMP) player;
    mp.inventoryContainer.detectAndSendChanges();
  }
}

代码示例来源:origin: TheGreyGhost/MinecraftByExample

@Override
  public void onContainerClosed(EntityPlayer playerIn)
  {
    super.onContainerClosed(playerIn);
    this.tileEntityInventoryBasic.closeInventory(playerIn);
  }
}

代码示例来源:origin: squeek502/VeganOption

@Override
public ItemStack slotClick(int slotNum, int mouseButton, ClickType modifier, EntityPlayer player)
{
  return super.slotClick(slotNum, mouseButton, modifier, player);
}

代码示例来源:origin: mezz/JustEnoughItems

@Override
public List<Slot> getRecipeSlots(C container) {
  List<Slot> slots = new ArrayList<>();
  for (int i = recipeSlotStart; i < recipeSlotStart + recipeSlotCount; i++) {
    Slot slot = container.getSlot(i);
    slots.add(slot);
  }
  return slots;
}

代码示例来源:origin: vadis365/TheErebus

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendWindowProperty(this, 0, liquifier.operatingTime);
}

代码示例来源:origin: ldtteam/minecolonies

@Override
protected final Slot addSlotToContainer(final Slot slotToAdd)
{
  return super.addSlotToContainer(slotToAdd);
}

代码示例来源:origin: WayofTime/BloodMagic

@Override
public void detectAndSendChanges() {
  super.detectAndSendChanges();
}

代码示例来源:origin: RS485/LogisticsPipes

@Override
public void onGuiClosed() {
  super.onGuiClosed();
  inventorySlots.onContainerClosed(_player);
}

代码示例来源:origin: sinkillerj/ProjectE

@Nonnull
  @Override
  public ItemStack slotClick(int slot, int button, ClickType flag, EntityPlayer player)
  {
    if (slot == blocked || immutable)
    {
      return ItemStack.EMPTY;
    }
    
    return super.slotClick(slot, button, flag, player);
  }
}

相关文章