Первый заход

Версия Minecraft
1.7.10
212
8
29
Как узнать, то что игрок зашел первый раз?
PlayerEvent.PlayerLoggedInEvent - почему то срабатывает каждый раз при заходе, хотя написано что срабатывает когда новый игрок подключился к серверу.
 
Решение
Как то так: ?
Java:
@SubscribeEvent
    public void onPlayerEvent(PlayerEvent.PlayerLoggedInEvent event) { //Срабатывает когда новый игрок подключился к серверу.
     
        NBTTagCompound entityData = event.player.getEntityData(); //НБТ тег в котором будет храниться информация о том что игрок что-то сделал
        EntityPlayer player = event.player; //Игрок
        String key = "unlockBookRecipes"; //"Ключ"
     
        if (!player.world.isRemote) { //Проверка на сервер
            if (!entityData.getBoolean(key)) { //Проверяем на информацию того что игрок уже заходил
         
            //Тут выполняем то что нам надо
         
            }
             entityData.setBoolean(key, true); //Сохраняем информацию о том что игрок зашёл...
2,932
44
598
Как то так: ?
Java:
@SubscribeEvent
    public void onPlayerEvent(PlayerEvent.PlayerLoggedInEvent event) { //Срабатывает когда новый игрок подключился к серверу.
     
        NBTTagCompound entityData = event.player.getEntityData(); //НБТ тег в котором будет храниться информация о том что игрок что-то сделал
        EntityPlayer player = event.player; //Игрок
        String key = "unlockBookRecipes"; //"Ключ"
     
        if (!player.world.isRemote) { //Проверка на сервер
            if (!entityData.getBoolean(key)) { //Проверяем на информацию того что игрок уже заходил
         
            //Тут выполняем то что нам надо
         
            }
             entityData.setBoolean(key, true); //Сохраняем информацию о том что игрок зашёл в первый раз в мир, и что-то сделал
            }
        }
    }
~~~
Код брал с моего старого гайда для 1.12.2: Разблокировка рецептов созданных через код в книге знаний
 
Сверху