Код:
--[[ описание комманды CMSG_CHAR_ENUM и обслуживающая функция ]]--
local CEnumCode, nCEnumCode = 55, 'CMSG_CHAR_ENUM'
local CEnumVers = 'Версия клиента: 3.3.5 [12340], Дата изменения: 07.07.2010'
CMSG_CHAR_ENUM = function (dBuf, lBuf, index)
AddCodeNameMem (index, CEnumCode, nCEnumCode, lBuf)
AddMem2(CEnumVers)
end
--[[ описание комманды SMSG_CHAR_ENUM и обслуживающая функция ]]--
local SEnumCode, nSEnumCode = 59, 'SMSG_CHAR_ENUM'
local SEnumVers = 'Версия клиента: 3.3.5 [12340], Дата изменения: 08.07.2010'
SMSG_CHAR_ENUM = function (dBuf, lBuf, index)
AddCodeNameMem (index, SEnumCode, nSEnumCode, lBuf)
AddMem2(SEnumVers)
AddMem2('')
local CharCount, Iter, Val = 0, 4, 0
CharCount, Iter = ReadByte(dBuf, Iter)
AddMem2('Characters count (byte) = '..CharCount..' ($'..ByteToHexStr(CharCount)..')')
local i, j = 0, 0
while i < CharCount do
AddMem2('')
AddMem2('-------------------- Char '..i..' --------------------')
Val, Iter = ReadInt64Hex(dBuf, Iter)
AddMem2('CharGUID (int64) = $'..Val)
Val, Iter = ReadString(dBuf, Iter)
AddMem2('Name (str) = '..Val)
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Race (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Class (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Gender (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Skin (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Face (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('HairStyle (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('HairColour (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('FacialHair (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Level (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('ZoneId (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('MapId (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadFloat(dBuf, Iter)
AddMem2('PosX (float) = '..Val)
Val, Iter = ReadFloat(dBuf, Iter)
AddMem2('PosY (float) = '..Val)
Val, Iter = ReadFloat(dBuf, Iter)
AddMem2('PosZ (float) = '..Val)
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('GuildId (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('EnumFlag (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('Unk_Wotlk (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2('Rested (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('PetInfoId (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('PetLevel (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2('PetFamilyId (int) = '..Val..' ($'..IntToHexStr(Val)..')')
for j = 0, 19, 1 do
AddMem2(' ============== Item '..j..' ==============')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2(' Model (int) = '..Val..' ($'..IntToHexStr(Val)..')')
Val, Iter = ReadByte(dBuf, Iter)
AddMem2(' InvType (byte) = '..Val..' ($'..ByteToHexStr(Val)..')')
Val, Iter = ReadInteger(dBuf, Iter)
AddMem2(' Unk (int) = '..Val..' ($'..IntToHexStr(Val)..')')
end
i = i + 1
end
end
--[[ регистрация функций в основной программе ]]--
Register_Code(CEnumCode, nCEnumCode)
Register_Code(SEnumCode, nSEnumCode)