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

Помогите Essentials API. Проверить, что игрок впервые зашел на сервер

Discussion in 'Разработка плагинов для новичков' started by Lisenochek, Jan 3, 2017.

Thread Status:
Not open for further replies.
  1. Автор темы
    Lisenochek

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

    Trophy Points:
    76
    Имя в Minecraft:
    Lisenochek
    Народ. Я не особо силен в EssAPI, помогите мне, как узнать, что игрок впервые зашел на сервер?
     
  2. Хостинг MineCraft
    <
  3. slavik123123123

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

    Trophy Points:
    143
    Имя в Minecraft:
    Leymooooooooooo
    p.hasPlayedBefore
     
  4. Автор темы
    Lisenochek

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

    Trophy Points:
    76
    Имя в Minecraft:
    Lisenochek
    Чет не работает. Перезапускаю сервер, игроку снова выдается плюшка.
     
  5. slavik123123123

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

    Trophy Points:
    143
    Имя в Minecraft:
    Leymooooooooooo
    Должно работать.
    if (p.hasPlayedBefore()) {
    //игрок уже был на сервере
    } else {
    // игрок первый раз зашёл
    }
     
  6. Sonicxd2

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

    Trophy Points:
    76
    p.hasPlayedBefore - баккитовская. По логике она должна работать.
     
  7. Автор темы
    Lisenochek

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

    Trophy Points:
    76
    Имя в Minecraft:
    Lisenochek
    Тогда я не знаю. Я перезагрузил сервер, предварительно не удаляя данные о игрока в мире и в Ess, но он выдает плюшку...

    Может быть я не соображаю:
    Code:
        @EventHandler
        public void giveFreeCrate(PlayerJoinEvent e) {
    
            Player p = e.getPlayer();
    
            if (p.hasPlayedBefore()) return;
            p.getInventory().addItem(getItem(p));
        }
     
  8. Kalabealu

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

    Trophy Points:
    46
    Имя в Minecraft:
    GoldFox
    Кстати можно реализовать автоматическую выполнение команды типа /pex reload.В виде плагина с настройкой?
     
  9. Sonicxd2

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

    Trophy Points:
    76
    У меня работает.
    Code:
        @EventHandler
        public void onJoin2(PlayerJoinEvent e){
            if(!e.getPlayer().hasPlayedBefore()) e.getPlayer().getInventory().addItem(new ItemBuilder(new ItemStack(Material.BOOK)).name(ChatColor.GREEN+"Привет новичкам!").toItemStack());
        }
    Да, шедулером.
     
  10. Kalabealu

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

    Trophy Points:
    46
    Имя в Minecraft:
    GoldFox
    Так мне нужно и парню в тему одному нужно.А там чувак пишет просто /pex reload.Что-ли ночью тоже писать /pex reload?
     
  11. Автор темы
    Lisenochek

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

    Trophy Points:
    76
    Имя в Minecraft:
    Lisenochek
    Писать /pex reload просто так, без причины - зло
     
  12. Dereku

    Dereku Старожил

    Trophy Points:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Да не такое уж и зло. А вот не бекапить permissions.yml - зло.
     
  13. Sonicxd2

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

    Trophy Points:
    76
  14. Kalabealu

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

    Trophy Points:
    46
    Имя в Minecraft:
    GoldFox
  15. alexandrage

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

    Trophy Points:
    173
    Skype:
    alexandr0116
    Ну да конечно, он полностью реинжектит пермы и оставляет за собой мусрор.[DOUBLEPOST=1483433693,1483433597][/DOUBLEPOST]А очиащется оно только при выходе игроков.
     
  16. Dereku

    Dereku Старожил

    Trophy Points:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    А могёшь линк на кусок кода дать? А то чет от прочитанного reloadSync все равно нифига не понял.
     
  17. alexandrage

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

    Trophy Points:
    173
    Skype:
    alexandr0116
    Давно это было. Что то вырезал, ибо серваку хреново становилось от реладов.
     
  18. Dereku

    Dereku Старожил

    Trophy Points:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Меня это "давно" не особо интересует. Хочу фактов. На свежую версию.
     
  19. alexandrage

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

    Trophy Points:
    173
    Skype:
    alexandr0116
    Сам ищи, если интересно. Мне было нужно, я пофиксил. Если придется фиксить в новой версии, тогда отпишу где точно было. Но пока не было нужны обновлять пекс.
     
  20. Dereku

    Dereku Старожил

    Trophy Points:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    "pex reload говно, пруфов не будет".
     
  21. alexandrage

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

    Trophy Points:
    173
    Skype:
    alexandr0116
    Это было год с лишнем назад. Я тебе не жесткий дикс компустера. Если тебе так приперло, поищи сам, я себе фиксил, когда проблема возникла. А по чьим то прихотям, я не стану тратить свое время на повторные поиски.
     
Thread Status:
Not open for further replies.

Share This Page