net.minecraft.inventory.Container.onCraftMatrixChanged()方法的使用及代码示例

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

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

Container.onCraftMatrixChanged介绍

暂无

代码示例

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

@Override
public void setInventorySlotContents(int index, @Nonnull ItemStack stack) {
 backing.setInventorySlotContents(index, stack);
 this.eventHandler.onCraftMatrixChanged(this);
}

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

@Override
 public void setInventorySlotContents(int index, ItemStack stack) {
  this.tileEntity.setInventorySlotContents(index, stack);
  this.container.onCraftMatrixChanged(this);
 }
}

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

@Override
public void onCraftMatrixChanged(IInventory inv) {
  super.onCraftMatrixChanged(inv);
  if (inv == hammer) {
    updateRepairOutput();
  }
}

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

@Override
@Nonnull
public ItemStack decrStackSize(int index, int count) {
 final ItemStack result = backing.decrStackSize(index, count);
 if (!result.isEmpty()) {
  this.eventHandler.onCraftMatrixChanged(this);
 }
 return result;
}

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

p.openContainer.onCraftMatrixChanged( new WrapperInvItemHandler( this.craftInv ) );
        return request;
p.openContainer.onCraftMatrixChanged( new WrapperInvItemHandler( this.craftInv ) );

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

/**
 * Sets the given item stack to the specified slot in the inventory (can be crafting or armor sections).
 */
@Override
public void setInventorySlotContents(int idx, ItemStack stack) {
 if (idx >= this.inv.size()) {
  return;
 }
 if (stack == null) {
  stack = ItemStack.EMPTY;
 }
 inv.set(idx, stack);
 this.eventHandler.onCraftMatrixChanged(this);
}

代码示例来源:origin: CoFH/ThermalFoundation

@Override
public void onCraftMatrixChanged(IInventory inventory) {
  super.onCraftMatrixChanged(inventory);

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

/**
 * Removes from an inventory slot (first arg) up to a specified number (second arg) of items and returns them in a new stack.
 */
@Override
public ItemStack decrStackSize(int index, int count) {
 ItemStack stack = getStackInSlot(index);
 if (stack != null) {
  if (stack.getMaxStackSize() <= count) {
   setInventorySlotContents(index, ItemStack.EMPTY);
  }
  else {
   stack = stack.splitStack(count);
   if (stack.getMaxStackSize() == 0) {
    setInventorySlotContents(index, ItemStack.EMPTY);
   }
  }
 }
 this.eventHandler.onCraftMatrixChanged(this);
 return stack;
}

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

con.onCraftMatrixChanged( new WrapperInvItemHandler( craftMatrix ) );

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

/**
 * just like vanilla
 */
@Override
public ItemStack decrStackSize(int index, int count) {
 if (this.getStackInSlot(index).isEmpty()) {
  return ItemStack.EMPTY;
 }
 ItemStack stack;
 if (this.getStackInSlot(index).getCount() <= count) {
  stack = this.getStackInSlot(index);
  this.setInventorySlotContents(index, ItemStack.EMPTY);
  this.container.onCraftMatrixChanged(this);
  return stack;
 }
 else {
  stack = this.getStackInSlot(index).splitStack(count);
  if (this.getStackInSlot(index).getCount() == 0) {
   this.setInventorySlotContents(index, ItemStack.EMPTY);
  }
  this.container.onCraftMatrixChanged(this);
  return stack;
 }
}

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

/**
 * Callback for when the crafting matrix is changed.
 */
@Override
public void onCraftMatrixChanged(final IInventory inventoryIn)
{
  if (!worldObj.isRemote)
  {
    final EntityPlayerMP entityplayermp = (EntityPlayerMP) player;
    ItemStack itemstack = ItemStack.EMPTY;
    final IRecipe irecipe = CraftingManager.findMatchingRecipe(craftMatrix, worldObj);
    if (irecipe != null && (irecipe.isDynamic()
        || !worldObj.getGameRules().getBoolean("doLimitedCrafting")
        || entityplayermp.getRecipeBook().isUnlocked(irecipe)
        || entityplayermp.isCreative()))
    {
      this.craftResult.setRecipeUsed(irecipe);
      itemstack = irecipe.getCraftingResult(this.craftMatrix);
    }
    this.craftResult.setInventorySlotContents(0, itemstack);
    entityplayermp.connection.sendPacket(new SPacketSetSlot(this.windowId, 0, itemstack));
  }
  super.onCraftMatrixChanged(inventoryIn);
}

代码示例来源:origin: p455w0rd/WirelessCraftingTerminal

super.onTake(p, is);
        p.openContainer.onCraftMatrixChanged(new WrapperInvItemHandler(craftInv));
        return request;
p.openContainer.onCraftMatrixChanged(new WrapperInvItemHandler(craftInv));

代码示例来源:origin: p455w0rd/WirelessCraftingTerminal

con.onCraftMatrixChanged(new WrapperInvItemHandler(craftMatrix));

相关文章