All pastes #836175 Raw Edit

Miscellany

public text v1 · immutable
#836175 ·published 2007-12-29 07:42 UTC
rendered paste body
#ifndef _SERVERPACKETS_
	#include "ServerPackets.h"
#endif

void CharSelectInfo(CSocket *pSocket, BYTE pPacketHeader, va_list vPacket)
{
	pPacketHeader = va_arg(vPacket, BYTE);
	DWORD dwCharCount = va_arg(vPacket, Int32);
	DWORD dwBufferSize = va_arg(vPacket, Int32);

	Char *pBuffer = va_arg(vPacket, Char *);
	CPacketDisassembler pCSIBuffer(pBuffer);

	CPacketAssembler pCSIPacket;

	pCSIPacket.WriteC(pPacketHeader);
	pCSIPacket.WriteD(dwCharCount);

	pCSIPacket.WriteD(dwBufferSize + (dwCharCount * 16));

	for (DWORD i = 0; i < dwCharCount; i++)
	{
		pCSIPacket.WriteS(pCSIBuffer.ReadS()); //0
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //1
		pCSIPacket.WriteS(pCSIBuffer.ReadS()); //2
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //3
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //4
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //5
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //6
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //7
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //8
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //9
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //10
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //11
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //12
		pCSIPacket.WriteF(pCSIBuffer.ReadF()); //13
		pCSIPacket.WriteF(pCSIBuffer.ReadF()); //14
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //15
		pCSIPacket.WriteQ(pCSIBuffer.ReadD()); //16
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //17
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //18
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //19
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //20
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //21
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //22
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //23
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //24
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //25
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //26
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //27
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //28
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //29
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //30
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //31
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //32
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //33
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //34
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //35
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //36
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //37
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //38
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //39
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //40
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //41
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //42
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //43
		pCSIPacket.WriteD(0); //44 - mask objid
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //45
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //46
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //47
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //48
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //49
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //50
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //51
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //52
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //53
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //54
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //55
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //56
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //57
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //58
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //59
		pCSIPacket.WriteD(pCSIBuffer.ReadD());
		pCSIPacket.WriteD(0); //60 - mask itemid
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //61
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //62
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //63
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //64
		pCSIPacket.WriteF(pCSIBuffer.ReadF()); //65
		pCSIPacket.WriteF(pCSIBuffer.ReadF()); //66
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //67
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //68
		pCSIPacket.WriteD(pCSIBuffer.ReadD()); //69
		pCSIPacket.WriteC(pCSIBuffer.ReadC()); //70
		pCSIPacket.WriteD(0);
	}

	pSocket->Send("b", pCSIPacket.GetSize(), pCSIPacket.GetPacket());
}