Помогите Проблема с плагином UralClans

Статус
Закрыто для дальнейших ответов.

dead.diesel

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
DeadDiesel
В общем, проблема такая, у меня сервер держится на версии 1.9
С плагином UralClans вылезает ошибка , хотя , как ни странно, плагин старый, но на версию 1.9 подходит, я заметил в консоли ошибку связанную с этим плагином при проверке DeathMessages
Как бы версия новая, я положил в раздатчик стрелы с эффектами [Момент. урон и тд] и начал себя убивать, с каждым выстрелом , даже обычным выстрелом от скелета или тупо от стрелы ошибка засоряет консоль. Сам я не от мира сего, Java не владею, декомпилить плагины и залезать в исходник тоже, так, только в конфигах лажу и настраиваю под сервер. Помогите исправить ошибку, заранее сяб!
JavaScript:
[21:55:22 ERROR]: Could not pass event EntityDamageByEntityEvent to UralClans v1
.0
org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:310) ~[Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
a:62) ~[Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j
ava:502) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
ava:487) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.craftbukkit.v1_9_R1.event.CraftEventFactory.callEvent(Craf
tEventFactory.java:89) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.craftbukkit.v1_9_R1.event.CraftEventFactory.callEntityDama
geEvent(CraftEventFactory.java:570) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.craftbukkit.v1_9_R1.event.CraftEventFactory.handleEntityDa
mageEvent(CraftEventFactory.java:479) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at org.bukkit.craftbukkit.v1_9_R1.event.CraftEventFactory.handleLivingEn
tityDamageEvent(CraftEventFactory.java:602) [Spigot.jar:git-Spigot-944aa20-11e8c
6d]
        at net.minecraft.server.v1_9_R1.EntityLiving.damageEntity0(EntityLiving.
java:1211) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityHuman.damageEntity0(EntityHuman.ja
va:839) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityLiving.damageEntity(EntityLiving.j
ava:824) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityHuman.damageEntity(EntityHuman.jav
a:763) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityPlayer.damageEntity(EntityPlayer.j
ava:497) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityArrow.a(EntityArrow.java:268) [Spi
got.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityArrow.m(EntityArrow.java:188) [Spi
got.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.EntityTippedArrow.m(EntityTippedArrow.ja
va:68) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.World.entityJoinedWorld(World.java:1612)
[Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.World.g(World.java:1587) [Spigot.jar:git
-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.World.tickEntities(World.java:1421) [Spi
got.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.WorldServer.tickEntities(WorldServer.jav
a:629) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.MinecraftServer.D(MinecraftServer.java:7
92) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:4
00) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:6
60) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java
:559) [Spigot.jar:git-Spigot-944aa20-11e8c6d]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_101]
Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Arrow.getShooter()Lorg
/bukkit/entity/LivingEntity;
        at ru.jampire.bukkit.uralclans.EventListener.EntityDamageByEntityEvent(E
ventListener.java:53) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0
_101]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0
_101]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1
.8.0_101]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_101]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:306) ~[Spigot.jar:git-Spigot-944aa20-11e8c6d]
        ... 24 more

Вот сам исходник:
 

Вложения

Ну там же написано: в пути src/ru/jampire/bukkit/uralclans/EventListener.java на строке 53 ошибка
 
Ну там же написано: в пути src/ru/jampire/bukkit/uralclans/EventListener.java на строке 53 ошибка
Это мне ничего не сказало, я же писал выше , что не мастак в исходниках и джаве
Или слеп или ничего не вижу , просто помогите исправить , исходник кинул
 
там все просто, ошибка возникает когда стрелу пускает не игрок (раздатчик), нужно делать дополнительную проверку, или убрать ту которая есть
Java:
Entity d = event.getDamager();
if (d instanceof Arrow) {
d = ((Arrow)d).getShooter();
ошибка здесь d = ((Arrow)d).getShooter();
что-то типа
Java:
if (d.getShooter() instanceof Player) {
с зельками та же фигня, зельку может бросить ведьма
 
там все просто, ошибка возникает когда стрелу пускает не игрок (раздатчик), нужно делать дополнительную проверку, или убрать ту которая есть
Java:
Entity d = event.getDamager();
if (d instanceof Arrow) {
d = ((Arrow)d).getShooter();
ошибка здесь d = ((Arrow)d).getShooter();
Насчет игрока не проверял, но возможно тоже будет вылезать, от скелета с луком вылезает ошибка
 
там все просто, ошибка возникает когда стрелу пускает не игрок (раздатчик), нужно делать дополнительную проверку, или убрать ту которая есть
Java:
Entity d = event.getDamager();
if (d instanceof Arrow) {
d = ((Arrow)d).getShooter();
ошибка здесь d = ((Arrow)d).getShooter();
что-то типа
Java:
if (d.getShooter() instanceof Player) {
Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Arrow.getShooter()Lorg/bukkit/entity/LivingEntity;
 
EventListener.class
JavaScript:
package ru.jampire.bukkit.uralclans;

import org.bukkit.ChatColor;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.entity.ThrownPotion;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.event.player.PlayerQuitEvent;

public class EventListener
  implements Listener
{
  @EventHandler
  public void PlayerJoinEvent(PlayerJoinEvent event)
  {
    if (Clan.hasMember(event.getPlayer().getName())) {
      event.getPlayer().sendMessage(ChatColor.GREEN + Clan.getClanByName(event.getPlayer().getName()).getWelcome());
    }
  }
 
  @EventHandler
  public void PlayerQuitEvent(PlayerQuitEvent event)
  {
    if (Request.hasRequest(event.getPlayer())) {
      Request.deny(Request.get(event.getPlayer()));
    }
  }
 
  @EventHandler
  public void PlayerKickEvent(PlayerKickEvent event)
  {
    if (Request.hasRequest(event.getPlayer())) {
      Request.deny(Request.get(event.getPlayer()));
    }
  }
 
  @EventHandler(priority=EventPriority.HIGHEST)
  public void AsyncPlayerChatEvent(AsyncPlayerChatEvent event)
  {
    if ((Clan.hasMember(event.getPlayer().getName())) && (event.getFormat().contains("!clantag!"))) {
      event.setFormat(event.getFormat().replace("!clantag!", "[" + Clan.getClanByName(event.getPlayer().getName()).getName() + "]"));
    } else {
      event.setFormat(event.getFormat().replace("!clantag!", ""));
    }
  }
 
  @EventHandler
  public void EntityDamageByEntityEvent(EntityDamageByEntityEvent event)
  {
    if ((event.getEntity() instanceof Player))
    {
      Entity d = event.getDamager();
      if ((d instanceof Arrow)) {
        d = ((Arrow)d).getShooter();
      } else if ((d instanceof ThrownPotion)) {
        d = ((ThrownPotion)d).getShooter();
      }
      if ((d instanceof Player))
      {
        Player damager = (Player)d;
        Player attacker = (Player)event.getEntity();
        if ((Clan.hasMember(damager.getName())) && (Clan.hasMember(attacker.getName())) &&
          (Clan.getClanByName(damager.getName()).hasClanMember(attacker.getName())))
        {
          damager.sendMessage(ChatColor.RED + "������ ����� ��������� � ����� �����!");
          event.setCancelled(true);
        }
      }
    }
  }
}
 
убери строки с 60 по 64 включительно
 
убери строки с 60 по 64 включительно
А чем я Вам уберу их?
Jd Gui только для просмотра кода.
На данный момент я знаю о InClassTranslator что в принципе не поможет проблеме. Он просто удаляет содержимое переменной,а не вывод её самой.
 
А чем я Вам уберу их?
Jd Gui только для просмотра кода.
На данный момент я знаю о InClassTranslator что в принципе не поможет проблеме. Он просто удаляет содержимое переменной,а не вывод её самой.
Пересобери, делов - то.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх