1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

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

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

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

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Как мне при клики по предмету в инвентаре перенаправить игрока на другой сервер майнкрафт в BungeeCord ?
     
  2. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    В ивенте клика вызываешь это.

    Код:
        public void changeServer(Player p, String server){
            ByteArrayOutputStream b = new ByteArrayOutputStream();
            DataOutputStream out = new DataOutputStream(b);
     
            try {
                out.writeUTF("Connect");
                out.writeUTF(server);
            } catch (IOException eee) {
            
            }
     
            p.sendPluginMessage(this, "BungeeCord", b.toByteArray());
        }
     
  3. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV

    А как мне это сделать?
     
  4. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    В чём проблема?
     
  5. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Как мне вызвать его в ивенте клика ?
     
  6. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    Эээ, ну
    changeServer(p, server);

    в InventoryClickEvent
     
  7. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Можно мне пример кода плз
     
  8. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    Код:
     @org.bukkit.event.EventHandler
        public void onInventoryClick(InventoryClickEvent e){
    
            Player p = (Player) e.getWhoClicked();
            if(e.getSlotType() != InventoryType.SlotType.OUTSIDE && e.getSlotType() == InventoryType.SlotType.CONTAINER) {
    //проверка что за предмет и что за инвентарь
             String server = //имя сервера;
              changeServer(p, server);
    
    }
    
    
       private void changeServer(Player p, String server){
           ByteArrayOutputStream b = new ByteArrayOutputStream();
           DataOutputStream out = new DataOutputStream(b);
    
           try {
               out.writeUTF("Connect");
               out.writeUTF(server);
           } catch (IOException eee) {
           
           }
    
           p.sendPluginMessage(this, "BungeeCord", b.toByteArray());
       }
    
     
  9. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Чёт не получается
     
  10. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    Чёт я не провидец, чтобы видеть твою ошибку
     
  11. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Сервер прописан в настройках Bungee?
     
  12. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Вот ошибки:
    Multiple markers at this line
    -Syntax error on taken ")" ,: expected
    -Syntax error on taken "," ,: expected
    -Syntax error on taken "(" ,: expected
    -void is an invalid type for the variable
    -Syntax error on taken "," ,: expected

    Вот код:

    if(i2.equals(e.getClickedInventory()) && e.getSlot() == 11) {
    Player p = (Player) e.getWhoClicked();
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GREEN + "You're already in this Lobby..");
    }

    if(i2.equals(e.getClickedInventory()) && e.getSlot() == 12) {
    p.sendMessage(ChatColor.BLUE + "[Server]" + ChatColor.WHITE + " - " + ChatColor.GOLD + "Conecting..");

    String server = lobby2;
    changeServer(p, server);
    }
     
  13. FrostDelta123

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

    Баллы:
    76
    Имя в Minecraft:
    FrostDelta123
    куча пропущенных скобок и т.п.
    Советую хотя бы основы выучить прежде чем лезть туда, в чём вообще не разбираешься
     
  14. Автор темы
    AguRChek_TV

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

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    А где именно
     

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