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

Помогите Отправить сообщение игроку json

Тема в разделе "Разработка плагинов для новичков", создана пользователем loredmaxed3, 9 фев 2023.

Метки:
  1. Автор темы
    loredmaxed3

    loredmaxed3 Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    loredmaxed3
    Как отправить игроку сообщение с кнопкой? У меня есть код json для неё, но при отправке выводится сам код, должна быть кнопка. В sendMessage просит конвертить к формату String, но я так понимаю из-за этого у меня в чате строка кода, вместо нужного результата. Крч как это сделать? Мой старый код без json:
    TextComponent message = new TextComponent("Нажми меня");
    ClickEvent clickEvent = new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/bizmenu");
    message.setClickEvent(clickEvent);
    sender.sendMessage(Sting.valueOf(message));
     
  2. Dymeth

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

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Adventure:
    sender.sendMessage(GsonComponentSerializer.gson().deserialize(json));

    md_5:
    sender.sendMessage(ComponentSerializer.parse(json));
     
  3. Автор темы
    loredmaxed3

    loredmaxed3 Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    loredmaxed3
    Все равно выводит это:
    [17:05:14 INFO]: [TextComponent{text=[Взаимодействие], BaseComponent(color=, font=null, bold=null, italic=null, underlined=null, strikethrough=null, obfuscated=null, insertion=null, extra=null, clickEvent=ClickEvent(action=RUN_COMMAND, value=/bizmenu), hoverEvent=null)}]

    Сможешь сделать практический пример? Пожалуйста.
     
  4. Dymeth

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

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    ХЗ, что у тебя могло не получиться. Я сразу же привёл готовый код.
    Ну, попробуй прям весь метод скопировать:
    PHP:
    @EventHandler
    private void onBlockPlace(BlockPlaceEvent event) {
        
    String json "{\"text\":\"Click\",\"underlined\":true,\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/say Clicked!\"}}";
        
    CommandSender sender event.getPlayer();
        
    sender.sendMessage(ComponentSerializer.parse(json));
    }
    upload_2023-2-10_19-44-16.png
     
  5. ReloGGrc

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

    Баллы:
    46
    Имя в Minecraft:
    ALis
    А не sender.spigot().sendMessage(json) случайно?
     

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