Атата, не. Если тебе на сервере работать - желательно делать все цивильно :3Зачем отсылать пакет? У тебя есть IGuiHandler, достаточно через player.openGui указать id гуи и будет тебе счастье.
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int metadata, float hitX, float hitY, float hitZ)
{
if (!player.isSneaking())
{
TileEntityHolocron tile = (TileEntityJediForge) world.getTileEntity(x, y, z);
if (tile != null)
{
if (world.isRemote)
{
Eternity.networkWrapper.sendToServer(new PacketTileAction(player, tile.xCoord, tile.yCoord, tile.zCoord, 0));
}
player.openGui(jediforge.instance, 2, world, x, y, z);
}
return true;
}
else
{
return false;
}
}
Расскажи, почему нужно выполнять открытие контейнера через пакет клиент -> сервер, если все равно этот метод вызывается на стороне сервера и можно выполнить то же самое без пакетов?отсылай пакет открытия гуи) Элементарно, ватсен.
Там проверяется клиент мир и отсылается пакет.Твой код просто напросто дважды откроет гуй.
Не знаю, у меня по тайлу, там модель просто. И нормально все работает) Кстати, док прав, на сервере, тобишь пакет все ж не обязателен)Сначала вызов на клиенте => отправка пакета на сервер => открытие гуя и после этого опять открытие гуя.
Потом вызов на сервере => открытие гуя.
Итого у меня получилось целых 3 раза если кншн пакет открывает гуи.
Дважды не откроет. По дефолту только сервер может открывать гуи-контейнер.Чот щас не понял немного. onBlockActivated вызывается и на клиенте и на сервере. Твой код просто напросто дважды откроет гуй.
Науку в зубы, мозг в руки.Может лучше поможете? Ну код для того чтобы создать gui
ссылки не рабочии
В этим темах нет кодов!Берешь названия ссылок, вбиваешь их в поиск.
Посмотреть вложение 543
Посмотреть вложение 544
Посмотреть вложение 545