Срабатывание кода на все команды

OcelotJungle

Активный участник
Баллы
61
Имя в Minecraft
OcelotJungle
Мне нужно, чтобы мой код срабатывал не только при выполнении команды из моего плагина, но и когда выполняется ванильная команда. Как я могу это сделать?

Вообще, мне нужно отслеживать срабатывания КБ на сервере и менять в них одну команду на другую. Была идея использовать ChunkLoadEvent и циклом перебрать все блоки во всём чанке, но там свои проблемы и я решил поискать другой способ.

Например, из Кб выполняется команда /tps, срабатывает мой плагин и переписывает команду.
 
Java:
   @EventHandler
   public void onInventoryClick(PlayerCommandPreprocessEvent e)
   {
     if (e.getMessage().equalsIgnoreCase("/tps")) {
//...
 
Вот тут, в разделе command-block-overrides сказано что можно перезаписывать команды командного блока, но так как BukkitAPI "не имеет власти" над кодом Mojang'a, то результат они не гарантируют.
 
Вот тут, в разделе command-block-overrides сказано что можно перезаписывать команды командного блока, но так как BukkitAPI "не имеет власти" над кодом Mojang'a, то результат они не гарантируют.
Нет, это не то. Нужно переписать именно те команды, которые введены в КБ в игре.
 
Мне нужно, чтобы мой код срабатывал не только при выполнении команды из моего плагина, но и когда выполняется ванильная команда. Как я могу это сделать?

Вообще, мне нужно отслеживать срабатывания КБ на сервере и менять в них одну команду на другую. Была идея использовать ChunkLoadEvent и циклом перебрать все блоки во всём чанке, но там свои проблемы и я решил поискать другой способ.

Например, из Кб выполняется команда /tps, срабатывает мой плагин и переписывает команду.
Евент использования редстоуна на блоке: BlockRedstoneEvent
 
Евент использования редстоуна на блоке: BlockRedstoneEvent
Пробовал, но он не реагирует на срабатывание Цепочных КБ. Реагирует на Импульсный и первый Цепочный, остальные игнорируются.
 
ну можно попробовать ConsoleCommandEvent
ServerCommandEvent*
 
Мне нужно, чтобы мой код срабатывал не только при выполнении команды из моего плагина, но и когда выполняется ванильная команда. Как я могу это сделать?

Вообще, мне нужно отслеживать срабатывания КБ на сервере и менять в них одну команду на другую. Была идея использовать ChunkLoadEvent и циклом перебрать все блоки во всём чанке, но там свои проблемы и я решил поискать другой способ.

Например, из Кб выполняется команда /tps, срабатывает мой плагин и переписывает команду.
PacketPlayInCustomPayload
p.s protocollib
p.s.s
// 1.10
Java:
this.mc.getConnection().sendPacket(new CPacketCustomPayload("MC|AutoCmd", packetbuffer));
// 1.8.8
Java:
                this.mc.getNetHandler().addToSendQueue(new C17PacketCustomPayload("MC|AdvCdm", var2));
 
Назад
Верх