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

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

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

Container.addListener介绍

暂无

代码示例

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

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

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

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

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

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

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

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

代码示例来源:origin: jabelar/ExampleMod-1.12

/**
 * Add the given Listener to the list of Listeners. Method name is for legacy.
 *
 * @param listener
 *            the listener
 */
@Override
public void addListener(IContainerListener listener)
{
  // DEBUG
  System.out.println("Adding listener to Compactor container = " + listener);
  super.addListener(listener);
  // DEBUG
  System.out.println("Sending all window properties listener");
  listener.sendAllWindowProperties(this, tileCompactor);
  // DEBUG
  System.out.println("Finished adding listener to Compactor container");
}

代码示例来源:origin: GregTechCE/GregTech

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  modularUI.guiWidgets.values().forEach(Widget::detectAndSendChanges);
}

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

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendWindowProperty(this, 0, tileComposter.composterCookTime);
  listener.sendWindowProperty(this, 1, tileComposter.composterBurnTime);
  listener.sendWindowProperty(this, 2, tileComposter.currentItemBurnTime);
}

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

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  if (listener instanceof EntityPlayerMP) {
    PacketHandler.sendTo(transportDuct.getDirectoryPacket(), (EntityPlayerMP) listener);
    cache = transportDuct.getCache();
  }
}

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

@Override
public void addListener(IContainerListener par1IContainerListener)
{
  super.addListener(par1IContainerListener);
  par1IContainerListener.sendWindowProperty(this, 0, tile.furnaceCookTime);
  par1IContainerListener.sendWindowProperty(this, 1, tile.furnaceBurnTime);
  par1IContainerListener.sendWindowProperty(this, 2, tile.currentItemBurnTime);
}

代码示例来源:origin: blay09/CookingForBlockheads

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendWindowProperty(this, 0, tileEntity.furnaceBurnTime);
  listener.sendWindowProperty(this, 1, tileEntity.currentItemBurnTime);
  for (int i = 0; i < tileEntity.slotCookTime.length; i++) {
    listener.sendWindowProperty(this, 2 + i, tileEntity.slotCookTime[i]);
  }
}

代码示例来源:origin: raoulvdberge/refinedstorage

private void openGrid(int id, EntityPlayerMP player, @Nullable ItemStack stack, @Nullable BlockPos pos) {
  Pair<IGrid, TileEntity> grid = createGrid(id, player, stack, pos);
  if (grid == null) {
    return;
  }
  // @Volatile: FMLNetworkHandler#openGui
  player.getNextWindowId();
  player.closeContainer();
  player.openContainer = new ContainerGrid(grid.getLeft(), new ResizableDisplayDummy(), grid.getRight() instanceof TileBase ? (TileBase) grid.getRight() : null, player);
  player.openContainer.windowId = player.currentWindowId;
  player.openContainer.addListener(player);
  MinecraftForge.EVENT_BUS.post(new PlayerContainerEvent.Open(player, player.openContainer));
  RS.INSTANCE.network.sendTo(new MessageGridOpen(player.currentWindowId, pos, id, stack), player);
}

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

@Override
public void addListener(IContainerListener listener) {
  super.addListener(listener);
  listener.sendWindowProperty(this, 0, tileEntity.cookTime);
  listener.sendWindowProperty(this, 1, tileEntity.burnTime);
  listener.sendWindowProperty(this, 2, TileEntityBoiler.getItemBurnTime(ItemStack.EMPTY));
  listener.sendWindowProperty(this, 3, (int) Math.floor((double) tileEntity.getPressure() * 1000));
}

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

@Override
public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException {
  if (!(sender instanceof EntityPlayerMP))
  {
    throw new CommandException("pe.command.showbag.notplayer");
  }
  if (args.length != 2)
  {
    throw new WrongUsageException("pe.command.showbag.usage");
  }
  EntityPlayerMP senderPlayer = (EntityPlayerMP) sender;
  EnumDyeColor color;
  try {
    color = EnumDyeColor.valueOf(args[0].toUpperCase(Locale.ROOT));
  } catch (IllegalArgumentException ex) {
    throw new CommandException("pe.command.showbag.nocolor", args[0]);
  }
  senderPlayer.closeScreen();
  senderPlayer.getNextWindowId();
  senderPlayer.openContainer = createContainer(server, senderPlayer, args[1], color);
  senderPlayer.openContainer.windowId = senderPlayer.currentWindowId;
  PacketHandler.sendTo(new ShowBagPKT(senderPlayer.openContainer.windowId), senderPlayer);
  senderPlayer.openContainer.addListener(senderPlayer);
}

代码示例来源: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: RS485/LogisticsPipes

public static void openGui(GuiProvider guiProvider, EntityPlayer oPlayer) {
  if (!(oPlayer instanceof EntityPlayerMP)) {
    throw new UnsupportedOperationException("Gui can only be opened on the server side");
  }
  EntityPlayerMP player = (EntityPlayerMP) oPlayer;
  Container container = guiProvider.getContainer(player);
  if (container == null) {
    if (guiProvider instanceof PopupGuiProvider) {
      OpenGUIPacket packet = PacketHandler.getPacket(OpenGUIPacket.class);
      packet.setGuiID(guiProvider.getId());
      packet.setWindowID(-2);
      packet.setGuiData(LPDataIOWrapper.collectData(guiProvider::writeData));
      MainProxy.sendPacketToPlayer(packet, player);
    }
    return;
  }
  player.getNextWindowId();
  player.closeContainer();
  int windowId = player.currentWindowId;
  OpenGUIPacket packet = PacketHandler.getPacket(OpenGUIPacket.class);
  packet.setGuiID(guiProvider.getId());
  packet.setWindowID(windowId);
  packet.setGuiData(LPDataIOWrapper.collectData(guiProvider::writeData));
  MainProxy.sendPacketToPlayer(packet, player);
  player.openContainer = container;
  player.openContainer.windowId = windowId;
  player.openContainer.addListener(player);
  net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.event.entity.player.PlayerContainerEvent.Open(player, player.openContainer));
}

相关文章