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

Идея Невидимый ник при убийстве с зельем невидимости

Тема в разделе "Запросы на разработку плагинов", создана пользователем m1has1k, 24 дек 2023.

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

    m1has1k Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    _M1has1k_
    Здравствуйте! Я хотел бы сделать так, чтобы когда игрок выпивал зелье невидимости и убивал кого-то, то его ник в чате не было виден. Когда игрок убивает другого игрока в чате есть сообщение "Player1 был убит Player2", мне нужно сделать, чтобы было типо такого "Player1 был убит [???]" или вообще ник не был виден.
     
  2. Fizer228

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

    Баллы:
    66
    Здраствуй, могу сделать плагин, но есть вопросы:
    1. изменить все сообщения смерти ("игрок lolkek погиб") или только при убийстве игрока игроком, под зелькой?
    2. нужен один текст ("вас убил неизветсный") или вариации ("вас убили", "асасин грохнул вас" и т.п.)?
    3. если вариации текста, то фиксированные или сделать файл, в котором можно редактировать тексты?
    4. я душнила? Я НЕ ДУШНИЛА!

    Пойду открою окошко...
     
  3. __Krio__

    __Krio__ Новичок

    Баллы:
    16
    Имя в Minecraft:
    __Krio__
    Для Paper и его форков:
    Код:
    @EventHandler
    public void onKill(PlayerDeathEvent e) {
        Player p = e.getPlayer();
        Player killer = p.getKiller();
        if (killer == null) return;
        e.deathMessage(MiniMessage.miniMessage().deserialize("<killer> убил <player>", Placeholder.component("player", p.displayName()), Placeholder.component("killer", killer.isInvisible() ? Component.text("[???]") : killer.displayName())));
    }
    
    Для Bukkit и его форков:
    Код:
    @EventHandler
    public void onKill(PlayerDeathEvent e) {
        Player p = e.getPlayer();
        Player killer = p.getKiller();
        if (killer == null) return;
        e.setDeathMessage( killer.isInvisible() ? "[???]" : killer.getDisplayName() + " убил " + p.getDisplayName()) );
    }
     

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