Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление
  2. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  3. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление
  4. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Помогите Рефлексия [Решено(Оооо дааа)]

Тема в разделе "Разработка плагинов для новичков", создана пользователем Exception_Prototype, 19 мар 2017.

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

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

    Баллы:
    46
    Да не, буду костылить. Если итеракт с одной из пушек в ноу пвп, то до упора вверх уводить камеру игрока.
     
  2. Хостинг MineCraft
    <
  3. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Ты бы лучше крутил ивенты на 1.7.10, а то так и буете дрочить на динозавре.
     
  4. Blc_Dragon

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    орнул, но +1
     
  5. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    xD, и для этого время найду)0
     
  6. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
  7. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Угадай что мне ответили.
     
  8. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    Не так уж и плохо, но ивенты будут получше.
     
  9. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
  10. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Мож он для примера... кто знает
     
  11. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    Ты о чем? О возвращаемом типе? T "подстраивается" под требуемый нам тип.[DOUBLEPOST=1489948443,1489948410][/DOUBLEPOST]
    Нет, я дал готовое решение.
     
  12. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Типо специально? Чтоб вызвать еще большее отставание сверкой строки с игроком? Ясно - понятно.
     
  13. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    Я тебя сейчас не совсем понял.
     
  14. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    В этом поле сидит следующие: http://joxi.ru/KAx9lykCMbDa7r
    Это мод.
     
  15. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    А, не заметил тип, сорян.

    https://github.com/TheQmaks/ReflectionAPI/blob/master/qmaks/Reflection.java
    Код:
    Entity owner = getField(entity.getClass(), entity, "owner");
    Profit.[DOUBLEPOST=1489948920,1489948886][/DOUBLEPOST]
    И я знаю, что это мод. Делал под него модификации разные.
     
  16. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Ок. java.lang.NoSuchFieldException: owner
    Код:
        @EventHandler
        public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
             Entity entity = event.getDamager();
             Entity attacker = getField(entity.getClass(), entity, "owner");
        }
    
    Угадайте, где выскочила ошибка выше? Понимаешь, что в Bukkit Entity нет нужного нам поля, я повторюсь ещё раз, это мод. Всё не так просто. Да и тем более, нам нужно чтобы к нам вернулось оригинальный Entity майнакрафта.
     
  17. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    Причем тут...Если мы в entity получаем EntityBullet, тогда все профит.

    Код:
        @EventHandler
        public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
           Entity entity = event.getDamager();
           if(entity instanceof EntityBullet) {
              Entity attacker = getField(entity.getClass(), entity, "owner");
           }
        }
    
    [DOUBLEPOST=1489949575,1489949457][/DOUBLEPOST]Сам бы уже давно сделал...
     
  18. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    А прикол в том, что я стрелял только пулями. Там ничего другого не могло вылезти. Он его не получил.
     
  19. Qmaks

    Qmaks Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Qmaks
    Видишь ли, если бы в баките не обрабатывались модовские ентити, то их существование на серверной стороне было бы невозможным.
     
  20. Автор темы
    Exception_Prototype

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

    Баллы:
    46
  21. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Код:
            Entity entity = event.getDamager();
            if (entity != null && entity.getType() == EntityType.PLAYER) {
                Player pl = (Player) event.getDamager();
                Bukkit.broadcastMessage(CHAT_PREFIX + "[Debug] attacker is player");
            } else {
                Bukkit.broadcastMessage(CHAT_PREFIX + "[Debug] attacker is not player");
            }
    
    [​IMG]
     

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