Показать сообщение отдельно
Непрочитано 03.08.2016, 22:01   #92
Аватар для Zubastic
ZG troll squad

Автор темы (Топик Стартер) Re: C++ перехват пакетов

Цитата:
Сообщение от f1redark Посмотреть сообщение
Создание нового пакета - это самый чистый способ, тем более игровыми средствами. В этой точке можно: анализировать пакеты, удалять не желательные, модифицировать существующие, и добавлять свои, в общем, все, что нужно для счастья)
Запилил себе создание новых пакетов:
UNetworkPacket* CreatePacket(uint8_t packetId, uint32_t size)
{
	auto new_packet = reinterpret_cast<UNetworkPacket *>(gmalloc(sizeof(UNetworkPacket)));
	new_packet->id = packetId;
	new_packet->id2 = 0xFFFF;
	new_packet->size = size;
	new_packet->data = gmalloc(size);
	return new_packet;
}
Code: C++
Однако у меня разрыв шаблона в коде:
*packet = current_packet;
Code: C++
Забираем пакет из пула.
*packet = new_packet;
Code: C++
В итоге присваиваем новый пакет указателю.
packets.push(current_packet);
Code: C++
Посылаем текущий пакет в пул..., но у него такой же опкод, в итоге не будет ли рекурсии?)
Собственно вопрос: WTF?!
__________________
Zubastic вне форума Ответить с цитированием