示例#1
0
void CAiWrapperServer::startAct(TSessionId sessionId, uint32 aiInstanceId, CPersistentDataRecord& pdr)
{
	nldebug("Start Act in session %u (aiInstance %u)", sessionId.asInt(), aiInstanceId);
	uint32 totalDataSize = pdr.totalDataSize();
	char* dest = new char[totalDataSize];
	if (!pdr.toBuffer(dest, totalDataSize))
	{
		nlwarning("can't serialise data");
		return;		
	}

	{
		CMessage msgout("R2_GOLIVE");
		bool isBase = false;
		msgout.serial(sessionId);
		msgout.serial(aiInstanceId);
		msgout.serial(isBase);
		msgout.serial(totalDataSize);
		msgout.serialBuffer (reinterpret_cast<uint8*>(dest), totalDataSize);
		CUnifiedNetwork::getInstance()->send("AIS",msgout);
	}
}