Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Как при клике на предмет в инвентаре перекинуть игрока на сервер с наибольшим онлайном ?

Тема в разделе "Разработка плагинов для новичков", создана пользователем AguR, 19 авг 2019.

  1. Автор темы
    AguR

    AguR Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    AguRChek_TV
    У меня есть 2 сервера под мини игры, мне нужно что бы при клике на предмет в инвентаре игрока кидало на сервер с наибольшим онлайном. так вот у меня получилась нарисовать вот это.




    @EventHandler
    public void InventoryClick1(InventoryClickEvent e) {
    Player p = (Player) e.getWhoClicked();
    if(i1.equals(e.getClickedInventory())) {
    if(e.getSlot() == 4 || e.getSlot() == 5 || e.getSlot() == 6 || e.getSlot() == 7) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GOLD + "Conecting..");

    String server = ("ChousePubgLobby");
    ChousePubgLobby(p, server, null);
    }
    if(e.getSlot() == 13 || e.getSlot() == 14 || e.getSlot() == 15 || e.getSlot() == 16) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GOLD + "Conecting..");
    }
    if(e.getSlot() == 22 || e.getSlot() == 23 || e.getSlot() == 24 || e.getSlot() == 25) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GOLD + "Conecting..");
    }
    if(e.getSlot() == 31 || e.getSlot() == 32 || e.getSlot() == 33 || e.getSlot() == 34) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GOLD + "Conecting..");
    }
    }
    e.setCancelled(true);
    }

    private void ChousePubgLobby(Player p, String ChousePubgLobby, byte[] message) {
    ByteArrayOutputStream b = new ByteArrayOutputStream();
    DataOutputStream out = new DataOutputStream(b);

    ByteArrayDataInput in = ByteStreams.newDataInput(message);

    try {
    out.writeUTF("PlayerCount");
    out.writeUTF("pubg1");
    }
    catch (IOException eee) {
    }
    p.sendPluginMessage(this, "BungeeCord", b.toByteArray());
    int playercount1 = in.readInt();

    try {
    out.writeUTF("PlayerCount");
    out.writeUTF("pubg2");
    }
    catch (IOException eee) {
    }
    p.sendPluginMessage(this, "BungeeCord", b.toByteArray());
    int playercount2 = in.readInt();

    if(playercount1 == playercount2) {
    String server = ("pubg1");
    changePubgLobby1(p, server);
    }
    if(playercount1 > playercount2) {
    String server = ("pubg1");
    changePubgLobby2(p, server);
    }
    if(playercount1 < playercount2) {
    String server = ("pubg2");
    changePubgLobby2(p, server);
    }
    if(playercount1 == 25 && playercount2 == 25) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.RED + "Lobbi is Ofline.. (Full)");
    }
    }




    Оно естественно не работает вот всю головы сломал. в гугле никой инфы не нашёл вообще представления не имею как это сделать.
     
  2. Хостинг MineCraft
    <

Поделиться этой страницей