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

Помогите Authme 5.2 обработка LoginEvent

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

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

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

    Баллы:
    88
    AuthMeReloaded 5.2
    Это у меня галюны или правда ивент LoginEvent не совсем корректно отрабатывает в последней версии?
    Если быть точнее, то при "залогинивании" игрока, этот ивент срабатывает как положено, нет никаких проблем, но вот если игрок регистрируется, то ивент отрабатывет 2 раза, так произойдет например с этим кодом:
    Код:
        @EventHandler
        public void onAuthLoginEvent(LoginEvent event) {
            Player player = event.getPlayer();
           this.getLogger().info("Игрок:  " + player + " залогинился"
    }
    кто нибудь сталкивался с этим?
     
  2. Хостинг MineCraft
    <
  3. alekseichik

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

    Баллы:
    76
    Имя в Minecraft:
    maxicraft2020
    используй PlayerLoginEvent , я не разу не встречал LoginEvent
     
  4. kirill2011s

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

    Баллы:
    103
    Ты вообще читал заголовок?
     
  5. Кровавый Ангел

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

    Баллы:
    76
    Имя в Minecraft:
    iReckleZ
    Как исправить?
     
  6. Derik

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

    Баллы:
    76
    Имя в Minecraft:
    Derik
    Так у меня тоже с ошибкой....

    Код:
        Logger log = getLogger();
     
        @EventHandler
        public void autoLogin(LoginEvent e){
            Logger log = getLogger();
            Player player = e.getPlayer();
            player.sendMessage("Вы зашли на сервер.");
            this.log.info("Вы зашли на сервер.");
        }
    

    исправил строчку

    Код:
    log.info("Вы зашли на сервер.");
    и все норм.
     
    Последнее редактирование: 14 июл 2016
  7. Автор темы
    Korvinius

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

    Баллы:
    88
    Я использовал "костыль", то есть создал массив, когда игрок "залогинивается", производится проверка, есть ли его ник в этом массиве, если нет, он туда добавляется и производятся все действия которые мне нужно, а если есть, то все эти действия пропускаются. Ну и соответственно, при "разлогинивании"/выходе, ник игрока удаляется из этого массива (если он там был).
     
  8. Кровавый Ангел

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

    Баллы:
    76
    Имя в Minecraft:
    iReckleZ
    Можешь скинуть этот плагин с исправленным кодом, я нечего не понимаю в этом?)[DOUBLEPOST=1468551388,1468551336][/DOUBLEPOST]
    Можешь скинуть этот плагин с исправленным кодом, я нечего не понимаю в этом?)
     
  9. Автор темы
    Korvinius

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

    Баллы:
    88
    я в этом плагине ничего не исправлял, я в своем использовал такой "костыль" как описал выше.
     
  10. Кровавый Ангел

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

    Баллы:
    76
    Имя в Minecraft:
    iReckleZ
    Накакать уже) :lol:
     
  11. Автор темы
    Korvinius

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

    Баллы:
    88
    Уважаемый, судя по вашему ответу, у меня сложилось впечатление, что вы абсолютно не поняли сути вопроса и тем более не в курсе что такое LoginEvent и с чем его едят.[DOUBLEPOST=1470340645,1470313411][/DOUBLEPOST]
    Не спорю, при залогинивании ранее зарегистрированного игрока все нормально, ничего исправлять не нужно, только при регистрации нового игрока, этот ивент отрабатывает 2 раза, хотя по сути, это уже не важно, мой "костыль" решил эту проблему.
     

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