RaDiC написал(а):Есть GUI, при нажатие на кнопку отправляю пакет на сервер с изменением одной характеристики игрока (своя). Потом нужно это синхронизировать обратно с клиентом (вроде). Пытался отправит пакет при обработки первого пакета (бред, не?) и не получается, как мне сделать?
public boolean isServerSide() {
return this.player != null && this.player.worldObj != null && !this.player.worldObj.isRemote;
}
Packets.network.sendTo(new SyncProperties(1, this.blabla), (EntityPlayerMP) this.player);
@Override
@SideOnly(Side.CLIENT)
public IMessage onMessage(SyncProperties packet,
MessageContext message) {
ExtendedPlayer props = ExtendedPlayer.get(Minecraft.getMinecraft().thePlayer);
if(packet.modifierid == 1)
{
props.setCurrentModifier("blabla", packet.modifier);
}
return null;
}
RaDiC написал(а):Хм.. ты меня немного не понял. Впрочем, я делаю так же, но из за того что обработка GUI идет на клиенте, при нажатие кнопки повышается моя характеристика, то бишь, я посылаю пакет на сервер о изменения моего значения, все работает. Но на клиенте значение старое, и мне нужно теперь сервер синхронизировать с клиентом, ибо у меня сейчас синхронизация только при входе.
В данном случае ты прав, но когда он будет делать изменение хар-ки сначала на сервере, придется синхронизировать с клиентом и мой вариант подойдет.Thunder написал(а):Зачем из клиента посылать пакет на сервер а потом с сервера опять на клиент если можно сделать все что надо на клиенте а потом отправить на сервер лишь пакет для синхронизации характеристики
Thunder написал(а):Зачем из клиента посылать пакет на сервер а потом с сервера опять на клиент если можно сделать все что надо на клиенте а потом отправить на сервер лишь пакет для синхронизации характеристики