Показать сообщение отдельно
Старый 01.02.2012, 19:45   #1
Местный
 
Аватар для kpa9pt
 
Регистрация: 13.01.2010
Сообщений: 159
Сказал Спасибо: 18
Имеет 30 спасибок в 23 сообщенях
kpa9pt имеет немного плохого в прошлом
Лампочка PartySmallWindowAll ReadS

Здравствуйте.
Пишу скрипт, на проверку бафов у сопартийцев.
Решил вывести их ники на экран в lineage.

Пакет PartySmallWindowAll , там есть имена персонажей в пати. Первое имя считываю ReadS(18) а вот последующие координаты имён зависят от длинны имени.
Есть ли способ определить конец ReadS? чтоли или незнаю даже как это сказать.

Пытался сделать на подобии этого:

Код:
if (pck[j]+pck[j+1]+pck[j+2]=#$00#$00#$00)  then //три раза 00 потому что в английских именах всегда идёт на подобии XX 00 XX 00 а дальше 00 00
   begin
          k:=j+2+1+52;
   end;
//тут я догадался что l2phx определяет конец ReadS когда идёт в пакете 00 00
Но почемуто не работает правильно, и не могу определить причину...

Если же нету вариантов других то , могу прислать скрипт полностью , чтобы определить что там не так в определении следущего начала S строчки.

P.S.: Вот сам пакет...
Код:
4E B7 94 60 4B 00 00 00 00 05 00 00 00 B7 94 60 4B 4B 00 79 00 50 00 75 00 4D 00 61 00 4A 00 49 00 6F 00 00 00 50 00 00 00 50 00 00 00 CA 00 00 00 CA 00 00 00 42 00 00 00 42 00 00 00 05 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 93 2B 81 4C 50 00 6F 00 72 00 73 00 68 00 45 00 00 00 2E 0C 00 00 2E 0C 00 00 46 13 00 00 46 13 00 00 C9 05 00 00 C9 05 00 00 4B 00 00 00 75 00 00 00 01 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7D 63 50 4B 50 00 6F 00 72 00 73 00 68 00 31 00 00 00 3C 0D 00 00 3C 0D 00 00 79 14 00 00 79 14 00 00 C1 06 00 00 C1 06 00 00 4F 00 00 00 37 00 00 00 01 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 41 B8 60 4C 4D 00 75 00 72 00 62 00 65 00 6C 00 6C 00 61 00 00 00 38 08 00 00 38 08 00 00 BD 17 00 00 BD 17 00 00 37 12 00 00 37 12 00 00 53 00 00 00 62 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2A 6B 71 4B 54 00 69 00 61 00 6C 00 69 00 65 00 00 00 B8 11 00 00 B8 11 00 00 83 16 00 00 83 16 00 00 A5 10 00 00 F1 14 00 00 55 00 00 00 69 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 24 73 A1 4C E3 80 0F 00 02 00 00 00 00 00 F6 11 00 00 F6 11 00 00 DE 08 00 00 DE 08 00 00 45 00 00 00 

Имена сопартийцев по порядку:
4B 00 79 00 50 00 75 00 4D 00 61 00 4A 00 49 00 6F 00 00 00

50 00 6F 00 72 00 73 00 68 00 45 00 00 00

50 00 6F 00 72 00 73 00 68 00 31 00 00 00 3C 0D 00 00 

и так далее (5 имён + пет там я не понял что надо придумать:D)
kpa9pt вне форума   Ответить с цитированием