Java 类net.minecraft.util.io.netty.buffer.Unpooled 实例源码

项目:CraftBukkit    文件:MinecraftServer.java   
private void a(ServerPing serverping) {
    File file1 = this.d("server-icon.png");

    if (file1.isFile()) {
        ByteBuf bytebuf = Unpooled.buffer();

        try {
            BufferedImage bufferedimage = ImageIO.read(file1);

            Validate.validState(bufferedimage.getWidth() == 64, "Must be 64 pixels wide", new Object[0]);
            Validate.validState(bufferedimage.getHeight() == 64, "Must be 64 pixels high", new Object[0]);
            ImageIO.write(bufferedimage, "PNG", new ByteBufOutputStream(bytebuf));
            ByteBuf bytebuf1 = Base64.encode(bytebuf);

            serverping.setFavicon("data:image/png;base64," + bytebuf1.toString(Charsets.UTF_8));
        } catch (Exception exception) {
            i.error("Couldn\'t load server icon", exception);
        } finally {
            bytebuf.release();
        }
    }
}
项目:Tweakkit-Server    文件:MinecraftServer.java   
private void a(ServerPing serverping) {
    File file1 = this.d("server-icon.png");

    if (file1.isFile()) {
        ByteBuf bytebuf = Unpooled.buffer();

        try {
            BufferedImage bufferedimage = ImageIO.read(file1);

            Validate.validState(bufferedimage.getWidth() == 64, "Must be 64 pixels wide", new Object[0]);
            Validate.validState(bufferedimage.getHeight() == 64, "Must be 64 pixels high", new Object[0]);
            ImageIO.write(bufferedimage, "PNG", new ByteBufOutputStream(bytebuf));
            ByteBuf bytebuf1 = Base64.encode(bytebuf);

            serverping.setFavicon("data:image/png;base64," + bytebuf1.toString(Charsets.UTF_8));
        } catch (Exception exception) {
            i.error("Couldn\'t load server icon", exception);
        } finally {
            bytebuf.release();
        }
    }
}
项目:DiffUtils    文件:CraftServer_1710.java   
static CraftIconCache loadServerIcon0(BufferedImage image) throws Exception {
    ByteBuf bytebuf = Unpooled.buffer();

    Validate.isTrue(image.getWidth() == 64, "Must be 64 pixels wide");
    Validate.isTrue(image.getHeight() == 64, "Must be 64 pixels high");
    ImageIO.write(image, "PNG", new ByteBufOutputStream(bytebuf));
    ByteBuf bytebuf1 = Base64.encode(bytebuf);

    return new CraftIconCache("data:image/png;base64," + bytebuf1.toString(Charsets.UTF_8));
}
项目:CraftBukkit    文件:CraftServer.java   
static CraftIconCache loadServerIcon0(BufferedImage image) throws Exception {
    ByteBuf bytebuf = Unpooled.buffer();

    Validate.isTrue(image.getWidth() == 64, "Must be 64 pixels wide");
    Validate.isTrue(image.getHeight() == 64, "Must be 64 pixels high");
    ImageIO.write(image, "PNG", new ByteBufOutputStream(bytebuf));
    ByteBuf bytebuf1 = Base64.encode(bytebuf);

    return new CraftIconCache("data:image/png;base64," + bytebuf1.toString(Charsets.UTF_8));
}
项目:CraftBukkit    文件:EntityPlayer.java   
public void openTrade(IMerchant imerchant, String s) {
    // CraftBukkit start - Inventory open hook
    Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerMerchant(this.inventory, imerchant, this.world));
    if (container == null) {
        return;
    }
    // CraftBukkit end

    this.nextContainerCounter();
    this.activeContainer = container; // CraftBukkit - Use container we passed to event
    this.activeContainer.windowId = this.containerCounter;
    this.activeContainer.addSlotListener(this);
    InventoryMerchant inventorymerchant = ((ContainerMerchant) this.activeContainer).getMerchantInventory();

    this.playerConnection.sendPacket(new PacketPlayOutOpenWindow(this.containerCounter, 6, s == null ? "" : s, inventorymerchant.getSize(), s != null));
    MerchantRecipeList merchantrecipelist = imerchant.getOffers(this);

    if (merchantrecipelist != null) {
        PacketDataSerializer packetdataserializer = new PacketDataSerializer(Unpooled.buffer());

        try {
            packetdataserializer.writeInt(this.containerCounter);
            merchantrecipelist.a(packetdataserializer);
            this.playerConnection.sendPacket(new PacketPlayOutCustomPayload("MC|TrList", packetdataserializer));
        } catch (Exception ioexception) { // CraftBukkit - IOException -> Exception
            bL.error("Couldn\'t send trade list", ioexception);
        } finally {
            packetdataserializer.release();
        }
    }
}
项目:MerchantsAPI    文件:SMerchant.java   
void sendUpdate() {
    if (this.customers.isEmpty()) {
        return;
    }

    if (SPIGOT) {
        final Collection<EntityPlayer>[] collections = split(this.customers);

        // Copy the uses fields if needed
        if (collections[1] != null || collections[2] != null || collections[3] != null) {
            for (Object offer : this.offers) {
                ((SMerchantOffer) offer).copyUses();
            }
        }

        if (collections[0] != null) {
            this.sendUpdateWithProtocol(27, collections[0]);
        }
        if (collections[1] != null) {
            sendUpdateWithProtocol(28, collections[1]);
        }
        if (collections[2] != null) {
            sendUpdateWithProtocol(29, collections[2]);
        }
        if (collections[3] != null) {
            sendUpdateWithProtocol(47, collections[3]);
        }
    } else {
        sendUpdateWithSerializer(new PacketDataSerializer(Unpooled.buffer()),
                Collections2.transform(this.customers, new Function<Player, EntityPlayer>() {

                    @Override
                    public EntityPlayer apply(Player player) {
                        return ((CraftPlayer) player).getHandle();
                    }

                }));
    }
}
项目:MerchantsAPI    文件:SMerchant.java   
private void sendUpdateWithSerializer(PacketDataSerializer serializer, Iterable<EntityPlayer> players) {
    // Write the recipe list
    this.offers.a(serializer);

    // Send a packet to all the players
    for (EntityPlayer player0 : players) {
        // Every player has a different window id
        final PacketDataSerializer content1 = new PacketDataSerializer(Unpooled.buffer());
        content1.writeInt(player0.activeContainer.windowId);
        content1.writeBytes(serializer);

        player0.playerConnection.sendPacket(new PacketPlayOutCustomPayload("MC|TrList", content1));
    }
}
项目:Tweakkit-Server    文件:CraftServer.java   
static CraftIconCache loadServerIcon0(BufferedImage image) throws Exception {
    ByteBuf bytebuf = Unpooled.buffer();

    Validate.isTrue(image.getWidth() == 64, "Must be 64 pixels wide");
    Validate.isTrue(image.getHeight() == 64, "Must be 64 pixels high");
    ImageIO.write(image, "PNG", new ByteBufOutputStream(bytebuf));
    ByteBuf bytebuf1 = Base64.encode(bytebuf);

    return new CraftIconCache("data:image/png;base64," + bytebuf1.toString(Charsets.UTF_8));
}
项目:Tweakkit-Server    文件:EntityPlayer.java   
public void openTrade(IMerchant imerchant, String s) {
    // CraftBukkit start - Inventory open hook
    Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerMerchant(this.inventory, imerchant, this.world));
    if (container == null) {
        return;
    }
    // CraftBukkit end

    this.nextContainerCounter();
    this.activeContainer = container; // CraftBukkit - Use container we passed to event
    this.activeContainer.windowId = this.containerCounter;
    this.activeContainer.addSlotListener(this);
    InventoryMerchant inventorymerchant = ((ContainerMerchant) this.activeContainer).getMerchantInventory();

    this.playerConnection.sendPacket(new PacketPlayOutOpenWindow(this.containerCounter, 6, s == null ? "" : s, inventorymerchant.getSize(), s != null));
    MerchantRecipeList merchantrecipelist = imerchant.getOffers(this);

    if (merchantrecipelist != null) {
        PacketDataSerializer packetdataserializer = new PacketDataSerializer(Unpooled.buffer());

        try {
            packetdataserializer.writeInt(this.containerCounter);
            merchantrecipelist.a(packetdataserializer);
            this.playerConnection.sendPacket(new PacketPlayOutCustomPayload("MC|TrList", packetdataserializer));
        } catch (Exception ioexception) { // CraftBukkit - IOException -> Exception
            bL.error("Couldn\'t send trade list", ioexception);
        } finally {
            packetdataserializer.release();
        }
    }
}
项目:HoloAPI    文件:BungeeProvider.java   
private void requestPlayerCount(String serverName) {
    if (ServerUtil.getOnlinePlayers().size() == 0) {
        return; // No players online; we can't send this request yet.
    }

    ByteBuf buf = Unpooled.buffer();
    MiscUtil.writePrefixedString(buf, "PlayerCount");
    MiscUtil.writePrefixedString(buf, serverName);

    byte[] bytes = new byte[buf.readableBytes()];
    buf.readBytes(bytes);
    ServerUtil.getOnlinePlayer(0).sendPluginMessage(plugin, "BungeeCord", bytes);

    buf.release();
}
项目:HoloAPI    文件:BungeeProvider.java   
@Override
public void run() {
    if (ServerUtil.getOnlinePlayers().size() == 0) {
        return;
    }

    ByteBuf buf = Unpooled.buffer();
    MiscUtil.writePrefixedString(buf, "GetServers");

    byte[] bytes = new byte[buf.readableBytes()];
    buf.readBytes(bytes);
    ServerUtil.getOnlinePlayer(0).sendPluginMessage(plugin, "BungeeCord", bytes);

    buf.release();
}
项目:MerchantsAPI    文件:SMerchant.java   
@Override
public boolean addCustomer(Player player) {
    checkNotNull(player, "player");

    if (this.customers.add(player)) {
        final EntityPlayer player0 = ((CraftPlayer) player).getHandle();
        Container container0 = null;

        try {
            container0 = new SContainerMerchant(player0, this);
            container0 = CraftEventFactory.callInventoryOpenEvent(player0, container0);
        } catch (Exception e) {
            e.printStackTrace();
        }

        if (container0 == null) {
            this.customers.remove(player);
            return false;
        }

        final int window = player0.nextContainerCounter();

        player0.activeContainer = container0;
        player0.activeContainer.windowId = window;
        player0.activeContainer.addSlotListener(player0);

        // Open the window
        player0.playerConnection.sendPacket(new PacketPlayOutOpenWindow(window, 6, this.sendTitle, 3, true));

        // Write the recipe list
        final PacketDataSerializer content;
        // Create the proper packet serializer
        if (SPIGOT) {
            content = new PacketDataSerializer(Unpooled.buffer(), player0.playerConnection.networkManager.getVersion());
        } else {
            content = new PacketDataSerializer(Unpooled.buffer());
        }
        content.writeInt(window);
        this.offers.a(content);

        // Send the offers
        player0.playerConnection.sendPacket(new PacketPlayOutCustomPayload("MC|TrList", content));

        return true;
    }

    return false;
}
项目:MerchantsAPI    文件:SMerchant.java   
private void sendUpdateWithProtocol(int protocol, Iterable<EntityPlayer> players) {
    sendUpdateWithSerializer(new PacketDataSerializer(Unpooled.buffer(), protocol), players);
}
项目:mmbukkit    文件:MinersMoviesCapture.java   
MonitoredPlayer(Player player) throws FileNotFoundException, IOException {
            playerName = player.getPlayerListName();
            joined = new Date().getTime();
            stream = new GZIPOutputStream(new FileOutputStream("recording." + joined + "." + playerName + ".miners"));

            MinecraftServer server = MinecraftServer.getServer();

            int gamemode = player.getGameMode().getValue();
            boolean hardcore = server.isHardcore();
            int dimension = player.getWorld().getEnvironment().getId();
            Location spawn = player.getWorld().getSpawnLocation();
            int heldItem = player.getInventory().getHeldItemSlot();
            int entityId = player.getEntityId();
            int difficulty = player.getWorld().getDifficulty().getValue();

//          System.out.println(gamemode);
//          System.out.println(hardcore);
//          System.out.println(dimension);
//          System.out.println(spawn);
//          System.out.println(heldItem);
//          System.out.println(entityId);
//          System.out.println(player);

            // Sorry :-)
            String meta = "{" +
                "\"recorded\":" + (joined/1000) + "," +
                "\"player_ign\":\"" + playerName + "\"," +
                "\"source_codec\":\"1.7.2\"" + "," +
                "\"source_format\":\"bukkit\"" +
            "}";
            savePacket('M', Unpooled.wrappedBuffer(meta.getBytes()));

            String extra = "{" +
                "\"gamemode\":" + gamemode + "," +
                "\"hardcore\":" + hardcore + "," +
                "\"dimension\":" + dimension + "," +
                "\"spawn\":{\"x\":" + spawn.getX() + ",\"y\":" + spawn.getY() + ",\"z\":" + spawn.getZ() + "}," +
                "\"helditem\":" + heldItem + "," +
                "\"entity_id\":" + entityId + "," +
                "\"difficulty\":" + difficulty +
            "}";
            savePacket('E', Unpooled.wrappedBuffer(extra.getBytes()));

            System.out.println("Monitoring " + playerName);
        }
项目:AlmuraForgeBridge    文件:PacketUtil.java   
public static ByteBuf createPacketBuffer(byte discriminator) {
    final ByteBuf buf = Unpooled.buffer();
    buf.writeByte(discriminator);
    return buf;
}