net.minecraft.item.ItemStack.getMaxStackSize()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(8.1k)|赞(0)|评价(0)|浏览(127)

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

ItemStack.getMaxStackSize介绍

暂无

代码示例

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

@Override
public int getItemStackLimit( @Nonnull ItemStack stack )
{
  return Math.min( this.getSlotStackLimit(), stack.getMaxStackSize() );
}

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

protected int getStackLimit( int slot, @Nonnull ItemStack stack )
{
  return Math.min( this.getSlotLimit( slot ), stack.getMaxStackSize() );
}

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

protected Collection<? extends ItemStack> breakDownBigStack(ItemStack stack) {
    List<ItemStack> stacks = new ArrayList<ItemStack>();
    int additionalStacks = stack.getCount() / stack.getMaxStackSize();
    int lastStackSize = stack.getCount() % stack.getMaxStackSize();
    if(additionalStacks > 0) {
      ItemStack fullStack = stack.copy();
      fullStack.setCount(stack.getMaxStackSize());
      for (int i = 0; i < additionalStacks; i++) {
        stacks.add(fullStack.copy());
      }
    }
    ItemStack lastStack = stack.copy();
    lastStack.setCount(lastStackSize);
    stacks.add(lastStack);

    return stacks;
  }
}

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

public void doRequest(boolean fullStack) {
  if(world.isRemote)
    return;
  ICorporeaSpark spark = getSpark();
  if(spark != null && spark.getMaster() != null && requestTarget != null) {
    int count = fullStack ? requestTarget.getMaxStackSize() : 1;
    doCorporeaRequest(requestTarget, count, spark);
  }
}

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

ais.setStackSize( ais.getDefinition().getMaxStackSize() );
while( true )

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

public boolean canAcceptItem(ItemStack stack, List<ItemStack> filter, int filterType) {
  if(stack.isEmpty())
    return false;
  if(filter.isEmpty())
    return true;
  switch(filterType) {
  case 0 : { // Accept items in frames only
    boolean anyFilter = false;
    for(ItemStack filterEntry : filter) {
      if(filterEntry == null)
        continue;
      anyFilter = true;
      boolean itemEqual = stack.getItem() == filterEntry.getItem();
      boolean damageEqual = stack.getItemDamage() == filterEntry.getItemDamage();
      boolean nbtEqual = ItemStack.areItemStackTagsEqual(filterEntry, stack);
      if(itemEqual && damageEqual && nbtEqual)
        return true;
      if(!stack.getHasSubtypes() && stack.isItemStackDamageable() && stack.getMaxStackSize() == 1 && itemEqual && nbtEqual)
        return true;
      if(stack.getItem() instanceof IManaItem && itemEqual)
        return true;
    }
    return !anyFilter;
  }
  case 1 : return !canAcceptItem(stack, filter, 0); // Accept items not in frames only
  default : return true; // Accept all items
  }
}

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

@Override
public boolean onClicked( EntityPlayer player, EnumHand hand, Vec3d pos )
{
  if( Platform.isClient() )
  {
    return true;
  }
  if( !this.getProxy().isActive() )
  {
    return false;
  }
  if( !Platform.hasPermissions( this.getLocation(), player ) )
  {
    return false;
  }
  if( this.getDisplayed() != null )
  {
    this.extractItem( player, this.getDisplayed().getDefinition().getMaxStackSize() );
  }
  return true;
}

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

@SubscribeEvent
public static void buttonPressed(KeyboardInputEvent.Post event) {
  Minecraft mc = Minecraft.getMinecraft();
  if(mc.world == null || !supportedGuiFilter.test(mc.currentScreen)
      || Keyboard.getEventKey() != ClientProxy.CORPOREA_REQUEST.getKeyCode()
      || !Keyboard.getEventKeyState()
      || Keyboard.isRepeatEvent()
      || TileCorporeaIndex.InputHandler.getNearbyIndexes(mc.player).isEmpty())
    return;
  ItemStack stack = getStackUnderMouse();
  if(stack != null && !stack.isEmpty()) {
    int count = 1;
    int max = stack.getMaxStackSize();
    if(GuiScreen.isShiftKeyDown()) {
      count = max;
      if(GuiScreen.isCtrlKeyDown())
        count /= 4;
    } else if(GuiScreen.isCtrlKeyDown())
      count = max / 2;
    if(count > 0) {
      String name = CorporeaHelper.stripControlCodes(stack.getDisplayName());
      String full = count + " " + name;
      mc.ingameGUI.getChatGUI().addToSentMessages(full);
      mc.player.sendChatMessage(full);
      event.setCanceled(true);
    }
  }
}

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

public static boolean canFurnaceSmelt(TileEntityFurnace furnace){
  if(furnace.getStackInSlot(0).isEmpty())
    return false;
  else {
    ItemStack itemstack = FurnaceRecipes.instance().getSmeltingResult(furnace.getStackInSlot(0));
    if(itemstack.isEmpty())
      return false;
    if(furnace.getStackInSlot(2).isEmpty())
      return true;
    if(!furnace.getStackInSlot(2).isItemEqual(itemstack))
      return false;
    int result = furnace.getStackInSlot(2).getCount() + itemstack.getCount();
    return result <= 64 && result <= itemstack.getMaxStackSize();
  }
}

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

maxTimesToCraft = (int) Math.floor( (double) this.getStack().getMaxStackSize() / (double) howManyPerCraft );
maxTimesToCraft = (int) Math.floor( (double) this.getStack().getMaxStackSize() / (double) howManyPerCraft );

代码示例来源:origin: SleepyTrousers/EnderIO

@Override
protected int getNumCanMerge(@Nonnull ItemStack itemStack, @Nonnull ItemStack result) {
 if (!ItemUtil.areStackMergable(itemStack, result)) {
  // next result is a different item type
  return 0;
 }
 return Math.min(itemStack.getMaxStackSize() - itemStack.getCount(), result.getCount());
}

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

text = TextFormatting.GREEN + stack.getDisplayName();
if(count >= 0) {
  int max = stack.getMaxStackSize();
  int stacks = count / max;
  int rem = count % max;

代码示例来源:origin: SleepyTrousers/EnderIO

protected int getNumCanMerge(@Nonnull ItemStack itemStack, @Nonnull ItemStack result) {
 if (!itemStack.isItemEqual(result) || !ItemStack.areItemStackTagsEqual(itemStack, result)) {
  return 0;
 }
 return Math.min(itemStack.getMaxStackSize() - itemStack.getCount(), result.getCount());
}

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

IItemHandler inv = tile.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side);
ItemStack toAdd = new ItemStack(bBlock, 1, bmeta);
int maxSize = toAdd.getMaxStackSize();
toAdd.setCount(remove(stack, maxSize));
ItemStack remainder = ItemHandlerHelper.insertItemStacked(inv, toAdd, false);

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

int maxSize = t.getMaxStackSize();
  if( maxSize > d.getSlotStackLimit() )
  int maxSize = t.getMaxStackSize();
  if( d.getSlotStackLimit() < maxSize )
int maxSize = tis.getMaxStackSize();
if( maxSize > d.getSlotStackLimit() )

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

is.setCount( Math.min( is.getMaxStackSize(), is.getCount() + 1 ) );
ItemStack myItem = ais.createItemStack();
ais.setStackSize( myItem.getMaxStackSize() );
  if( item.getCount() >= item.getMaxStackSize() )
  ais.setStackSize( ais.getDefinition().getMaxStackSize() );
  ais = Platform.poweredExtraction( this.getPowerSource(), this.getCellInventory(), ais, this.getActionSource() );
  if( ais != null )
  final long maxSize = ais.getDefinition().getMaxStackSize();
  ais.setStackSize( maxSize );
  ais = this.getCellInventory().extractItems( ais, Actionable.SIMULATE, this.getActionSource() );
is.setCount( is.getMaxStackSize() );
player.inventory.setItemStack( is );
this.updateHeld( player );
  ItemStack myItem = ais.createItemStack();
  ais.setStackSize( myItem.getMaxStackSize() );

代码示例来源:origin: ForestryMC/ForestryMC

@Override
public boolean hasResourcesMin(float percentage) {
  IInventoryAdapter inventory = getInternalInventory();
  if (inventory.getStackInSlot(InventoryCentrifuge.SLOT_RESOURCE).isEmpty()) {
    return false;
  }
  return (float) inventory.getStackInSlot(InventoryCentrifuge.SLOT_RESOURCE).getCount() / (float) inventory.getStackInSlot(InventoryCentrifuge.SLOT_RESOURCE).getMaxStackSize() > percentage;
}

代码示例来源:origin: SleepyTrousers/EnderIO

private boolean canMergeOutput() {
 ItemStack oldOutput = getInventory().getSlot(OUTPUT_SLOT).get();
 if (oldOutput.isEmpty()) {
  return true;
 }
 ItemStack output = craftingGrid.getOutput();
 if (!ItemUtil.areStackMergable(oldOutput, output)) {
  return false;
 }
 return output.getMaxStackSize() >= (oldOutput.getCount() + output.getCount());
}

代码示例来源:origin: SleepyTrousers/EnderIO

private boolean mergeOutput(@Nonnull ItemStack stack) {
 ItemStack oldOutput = getInventory().getSlot(OUTPUT_SLOT).get();
 if (oldOutput.isEmpty()) {
  getInventory().getSlot(OUTPUT_SLOT).set(stack);
  return true;
 } else if (ItemUtil.areStackMergable(oldOutput, stack)) {
  oldOutput.grow(stack.splitStack(Math.min(oldOutput.getMaxStackSize() - oldOutput.getCount(), stack.getCount())).getCount());
  getInventory().getSlot(OUTPUT_SLOT).set(oldOutput);
  return stack.isEmpty();
 }
 return false;
}

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

final Item i = is.getItem();
long maxStorage = Math.min( input.getStackSize(), is.getMaxStackSize() );
boolean worked = false;

相关文章

微信公众号

最新文章

更多

ItemStack类方法