Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: This feature may not be available in some browsers.
Всем привет, ребята. Кто может написать плагин, который разрешить игрокам открывать вагонетки с воронкой в других регионов? Делаю гриф, кому не сложно, напишите
Ядро - Paper 1.16.5
@EventHandler (priority = EventPriority.LOWEST)
public void onInteract(EntityInteractEvent e) {
if(e.getEntity() instanceof Entity.HOPER_MINECART) {
e.setCancelled(false);
}
} // ТОЧНО НЕ ПОМНЮ ПИСАЛ ОТ РУКИ
не помоглоJava:@EventHandler (priority = EventPriority.LOWEST) public void onInteract(EntityInteractEvent e) { if(e.getEntity() instanceof Entity.HOPER_MINECART) { e.setCancelled(false); } } // ТОЧНО НЕ ПОМНЮ ПИСАЛ ОТ РУКИ
ctrl c ctrl v не поможетне
не помогло
может вк поможешь? Или может, напишешь, если не лень тебе?ctrl c ctrl v не поможет
в слове Entity.HOPER_MINECART еще 1 P должна быть написана, но вообще странно что для этого пишутся такие костылине
не помогло
@EventHandler(priority = EventPriority.MONITOR)
public void onUse(PlayerInteractEntityEvent e) {
if(e.getRightClicked().getType() == EntityType.MINECART_HOPPER){
Bukkit.getLogger().info("Hopper Clicked!");
e.setCancelled(false);
}
}
EntityInteractEvent
- взаимодействие сущности и блока.PlayerInteractEntityEvent
- взаимодействие игрока и сущности.Вот этот ивент попробуй.
Java:@EventHandler(priority = EventPriority.MONITOR) public void onUse(PlayerInteractEntityEvent e) { if(e.getRightClicked().getType() == EntityType.MINECART_HOPPER){ Bukkit.getLogger().info("Hopper Clicked!"); e.setCancelled(false); } }
EntityInteractEvent
- взаимодействие сущности и блока.
PlayerInteractEntityEvent
- взаимодействие игрока и сущности.
Вот этот ивент попробуй.
Java:@EventHandler(priority = EventPriority.MONITOR) public void onUse(PlayerInteractEntityEvent e) { if(e.getRightClicked().getType() == EntityType.MINECART_HOPPER){ Bukkit.getLogger().info("Hopper Clicked!"); e.setCancelled(false); } }
EntityInteractEvent
- взаимодействие сущности и блока.
PlayerInteractEntityEvent
- взаимодействие игрока и сущности.
// если и сравнивать то только так:
if(e.getRightClicked() instanceof HopperMinecart) {
// code
}
а EventPriority.MONITOR вроде как запускается после запуска всех эвентов.Вот этот ивент попробуй.
Java:@EventHandler(priority = EventPriority.MONITOR) public void onUse(PlayerInteractEntityEvent e) { if(e.getRightClicked().getType() == EntityType.MINECART_HOPPER){ Bukkit.getLogger().info("Hopper Clicked!"); e.setCancelled(false); } }
EntityInteractEvent
- взаимодействие сущности и блока.
PlayerInteractEntityEvent
- взаимодействие игрока и сущности.
В WorldGuardGriefFix от Overwrite, все ивенты по разрешению грифа поршнями, вагонетками и т.д. именно этот уровень и всё работает (Да и он сам вроде имеет хорошую репутацию тут).а EventPriority.MONITOR вроде как запускается после запуска всех эвентов.
Если по этой логике, то WorldGuard event запустится раньше чем твой и он отменит твое действие.
использовал метод LOWEST = отмена вообще всех эвентов wg, и поверх их накладывал свои. Новые сообщения, партиклы, тайтлы и тд.В WorldGuardGriefFix от Overwrite, все ивенты по разрешению грифа поршнями, вагонетками и т.д. именно этот уровень и всё работает (Да и он сам вроде имеет хорошую репутацию тут).
Вам необходимо зарегистрироваться для просмотра изображений-вложений
И я решил не проводить кучу тестов и проверок, а использовать уже готовый и рабочий вариант.
У меня сработало только такиспользовал метод LOWEST = отмена вообще всех эвентов wg, и поверх их накладывал свои. Новые сообщения, партиклы, тайтлы и тд.
не работаетВот этот ивент попробуй.
Java:@EventHandler(priority = EventPriority.MONITOR) public void onUse(PlayerInteractEntityEvent e) { if(e.getRightClicked().getType() == EntityType.MINECART_HOPPER){ Bukkit.getLogger().info("Hopper Clicked!"); e.setCancelled(false); } }
EntityInteractEvent
- взаимодействие сущности и блока.
PlayerInteractEntityEvent
- взаимодействие игрока и сущности.
не, ну помоги, как плагин работать то?скажи игрокам чтобы после грифа из привата вагонетки удочками доставали и смотрели лут
а новым как я буду говорить?скажи игрокам чтобы после грифа из привата вагонетки удочками доставали и смотрели лут
Мне не удалось найти оптимизированный метод, чтобы отличить инвентарь вагонетки с воронкой и инвентарь воронки.не работает
Объединено
Что-то ваще нечего не помогает
@EventHandler(priority = EventPriority.HIGH)
public void InventoryOpenEvent(InventoryOpenEvent e) {
if (e.isCancelled() && e.getInventory().getType() == InventoryType.HOPPER) {
e.setCancelled(false);
}
}
@EventHandler(priority = EventPriority.HIGH)
public void PlayerInteractAtEntityEvent(PlayerInteractAtEntityEvent e) {
if (e.isCancelled() && e.getRightClicked().getType() == EntityType.MINECART_HOPPER) {
e.setCancelled(false);
}
}
@EventHandler(priority = EventPriority.HIGH)
public void PlayerInteractEntityEvent(PlayerInteractEntityEvent e) {
if (e.isCancelled() && e.getRightClicked().getType() == EntityType.MINECART_HOPPER) {
e.setCancelled(false);
}
}
Можешь написать плагин?Мне не удалось найти оптимизированный метод, чтобы отличить инвентарь вагонетки с воронкой и инвентарь воронки.
Java:@EventHandler(priority = EventPriority.HIGH) public void InventoryOpenEvent(InventoryOpenEvent e) { if (e.isCancelled() && e.getInventory().getType() == InventoryType.HOPPER) { e.setCancelled(false); } } @EventHandler(priority = EventPriority.HIGH) public void PlayerInteractAtEntityEvent(PlayerInteractAtEntityEvent e) { if (e.isCancelled() && e.getRightClicked().getType() == EntityType.MINECART_HOPPER) { e.setCancelled(false); } } @EventHandler(priority = EventPriority.HIGH) public void PlayerInteractEntityEvent(PlayerInteractEntityEvent e) { if (e.isCancelled() && e.getRightClicked().getType() == EntityType.MINECART_HOPPER) { e.setCancelled(false); } }
Именно не код скинуть, а написать?Можешь написать плагин?
Никогда так не делай. MONITOR должен только отслеживать состояние отмены, но никак не менять это состояние. В крайнем случае используй@EventHandler(priority = EventPriority.MONITOR)
HIGHEST
Ты явно не понимаешь, как вообще работают приоритеты. Если нужно перезаписать отмену, сделанную ВГ - нужно обрабатывать как раз ПОСЛЕ ВГ. Иначе ВГ сам перепишет твоё изменение.Если по этой логике, то WorldGuard event запустится раньше чем твой и он отменит твое действие.
не знаю, lowest сработалНикогда так не делай. MONITOR должен только отслеживать состояние отмены, но никак не менять это состояние. В крайнем случае используйHIGHEST
Ты явно не понимаешь, как вообще работают приоритеты. Если нужно перезаписать отмену, сделанную ВГ - нужно обрабатывать как раз ПОСЛЕ ВГ. Иначе ВГ сам перепишет твоё изменение.
Я привык так писатьда хватит писать жирным шрифтом
Мы используем основные cookies для обеспечения работы этого сайта, а также дополнительные cookies для обеспечения максимального удобства пользователя.
Посмотрите дополнительную информацию и настройте свои предпочтения