Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

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

m1has1k

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

Пойду открою окошко...
 
Здравствуйте! Я хотел бы сделать так, чтобы когда игрок выпивал зелье невидимости и убивал кого-то, то его ник в чате не было виден. Когда игрок убивает другого игрока в чате есть сообщение "Player1 был убит Player2", мне нужно сделать, чтобы было типо такого "Player1 был убит [???]" или вообще ник не был виден.
Для 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()) );
}
 

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

Назад
Верх