Тема: Send packet back
Показать сообщение отдельно
Старый 26.08.2016, 18:00   #3
Пользователь
 
Регистрация: 14.07.2016
Сообщений: 59
Сказал Спасибо: 6
Имеет 10 спасибок в 9 сообщенях
Smwr на пути к лучшему
По умолчанию

Try do it like it implemented in UNetworkHandler::RequestXXX (see your engine.dll for details)
Код:
void(__cdecl *_sendPacket)(void *self, char *format, ...) = NULL;
void *_clientSocket = NULL;

int __fastcall AddNetworkQueueHook(NetworkHandler* self, int, NetworkPacket *packet) {

	if (SendPacket == NULL) {
				__asm {
			mov		ebx, ecx
				mov     ecx, [ebx + 0x48] ; see offset in disassembler
				mov     edx, [ecx]
				mov		_clientSocket, ecx
				mov     ecx, [edx + 0x6C]; in disassembler too
				mov		_sendPacket, ecx;
		}
	}

	//do smth

	return result;
}
and use it e.g. _sendPacket(_clientSocket, "cddc", 0x39, 0xE2, 0, 0);

Последний раз редактировалось Smwr, 26.08.2016 в 18:06.
Smwr вне форума   Ответить с цитированием