@SubscribeEvent
public void playerLoggedIn(PlayerEvent.PlayerLoggedInEvent e) {
EntityPlayer player = e.player;
NBTTagCompound entityData = player.getEntityData();
String key = "freeApple";
entityData.setBoolean(key, false);
if (!entityData.getBoolean(key)) {
entityData.setBoolean(key, true);
player.inventory.addItemStackToInventory(new ItemStack(Items.apple));
}
}
Doc написал(а):Есть только на 1.7.10, думаю поможет.
Исправить, скорее всего надо будет что-то. #НадеемсяСправишься.
Код:@SubscribeEvent public void playerLoggedIn(PlayerEvent.PlayerLoggedInEvent e) { EntityPlayer player = e.player; NBTTagCompound entityData = player.getEntityData(); String key = "freeApple"; entityData.setBoolean(key, false); if (!entityData.getBoolean(key)) { entityData.setBoolean(key, true); player.inventory.addItemStackToInventory(new ItemStack(Items.apple)); } }
В EventHadlerdenuvo написал(а):Doc написал(а):Есть только на 1.7.10, думаю поможет.
Исправить, скорее всего надо будет что-то. #НадеемсяСправишься.
Код:@SubscribeEvent public void playerLoggedIn(PlayerEvent.PlayerLoggedInEvent e) { EntityPlayer player = e.player; NBTTagCompound entityData = player.getEntityData(); String key = "freeApple"; entityData.setBoolean(key, false); if (!entityData.getBoolean(key)) { entityData.setBoolean(key, true); player.inventory.addItemStackToInventory(new ItemStack(Items.apple)); } }
В код моей гуишки пихать?
denuvo написал(а):В код моей гуишки пихать?
То, что яблоко выдаётся я понял. А вот повыше... Есть какой-нибудь пример, урок?Doc написал(а):denuvo написал(а):В код моей гуишки пихать?
Нет.
Тебе нужно сделай другой класс, вставить тот код туда, зарегать его как эвент.
И там выдается яблоко, а не открывается гуи.
Подправить 1 строчку.
Doc написал(а):
denuvo написал(а):Твой код каждый заход на сервер показывает гуи, мне же надо, чтобы это выполнялось только 1 раз, при первом заходе и больше никогда не показывалось.
Doc написал(а):denuvo написал(а):Твой код каждый заход на сервер показывает гуи, мне же надо, чтобы это выполнялось только 1 раз, при первом заходе и больше никогда не показывалось.
entityData.setBoolean(key, false);
Убери.
public void playerLoggedIn(PlayerEvent.PlayerLoggedInEvent
Doc написал(а):EntityJoinWorldEvent - ищи.
И да, проверь, что entity - не нулл и что игрок.
Doc написал(а):... Прочитай сообщение более корректно ...
И увидь, что там нужно поставить проверку на игрока.
@SubscribeEvent
public void playerLoggedIn(PlayerEvent.PlayerLoggedInEvent e) {
EntityPlayer player = e.player;
NBTTagCompound entityData = player.getEntityData();
String key = "freeApple";
if (!entityData.getBoolean(key)) {
entityData.setBoolean(key, true);
player.inventory.addItemStackToInventory(new ItemStack(Items.apple));
}
}