Цитата:
Сообщение от Minimajack
smsg_char_enum
|
Вот набросал парсер этого пакета для билда 14007, там правда в середине пакета какие-то мзменения ... в отличие от того кода что приводил TOM_RUS в своей теме ...
Код:
function smsg_enum_char()
count = packet.read8()
output.println("Character count : "..count)
output.println(" ")
for i = 1, count do
guid = packet.readguid()
name = packet.readstring()
race = packet.read8()
class = packet.read8()
gender = packet.read8()
skin = packet.read8()
face = packet.read8()
hair_style = packet.read8()
hair_color = packet.read8()
facial_hair = packet.read8()
level = packet.read8()
output.println("name = "..name..", guid = "..guid)
output.println(t_race[race]..", "..t_class[class]..", "..t_gender[gender + 1]..", "..level.." lvl")
output.println(" ")
zone = packet.read32()
map = packet.read32()
x = packet.readfloat()
y = packet.readfloat()
z = packet.readfloat()
guildid = packet.read32()
flags = packet.read8()
cflags = packet.read8()
unk1 = packet.read8()
first_login = packet.read8()
pet_id = packet.read32()
pet_level = packet.read32()
pet_family = packet.read32()
for j = 1, INVENTORY_SLOT_BAG_END do
item_display_id = packet.read32()
item_type = packet.read8()
item_enchant = packet.read32()
end
end
end
И небходимо в начале файла parsers.lua объявить следующие таблицы:
Код:
local INVENTORY_SLOT_BAG_END = 24
local t_gender = {"male", "female"}
local t_class = {"warrior", "paladin", "hunter", "4", "5", "6", "7", "priest", "warlock", "10"}
local t_race = {"human", "2", "dwarf", "night elf", "5", "6", "gnome", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "vorgen"}
Я их полностью не заполнял, а то только те значения которые для моих чаров нужны
Получается такой вывод:
Код:
Character count : 5
----------------------------------------------
name = Йохансон, guid = 2C863A0200000007
human, warrior, male, 85lvl
-
name = Мегагнумка, guid = EE88520200000007
gnome, warlock, female, 85lvl
-
name = Хеалбот, guid = F388520200000007
dwarf, paladin, male, 85lvl
-
name = Йоханс, guid = C8A95C0200000007
night elf, hunter, male, 78lvl
-
name = Йоханссон, guid = A2D7A20300000007
vorgen, priest, male, 7lvl