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());
}