Цитата:
Сообщение от Zubastic
Это понятно, но как быть с размером структуры?) Клиент знает один размер, а я заменяю его другим размером.
|
На сколько я помню, клиент при удалении берет размер из UNetworkPacket, так что самое простое, хук на DispatchNetworkQueue, дальше, если нужен чисто свой пакет, то через малок выделил память, правильно заполнил поля, и клиент сам его нормально удалит. Второй вариант, нужно подхачить чужой пакет, тогда вызываешь оригинал, меняешь, отдаешь клиенту. Третий вариант, самый противный, но тоже ничего сложного, это когда нужно чужой пакет расширить, например html, multisell, ну или дописать каждому, кто пишет в чат, его профу перед ником, мало ли что в голову взбредет. В этом случае вызываем оригинал, сохраняем пакет к себе куда нибудь, можно на стек, потом удаляем пакет через free, выделяем сколько нужно места malloc'ом, копируем туда пакет со стека, расширяем, как надо, и отдаем клиенту. Во всех случаях нужно не забывать фиксить размер в структуре пакета, или будет падать
Добавлено через 3 минуты
Цитата:
Сообщение от flopix
Я когда писал торгового бота для руоффа обошелся без отправки пакетов клиенту, зачем это вам?
|
Например, можно выводить менюшки динамические, с длительностью эффектов/еще чем то, писать в чатик статистику, и много других интересных вещей.