Показать сообщение отдельно
Старый 13.08.2008, 22:39   #42
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от Shadow Посмотреть сообщение
Вобщем посмотрел в пакетах ОбджектИД продавцов, и пытался их отловить через скрипт, чтобы понять какой у них ИД, чтобы смещение вычислить. Так ничего и не получилось. Пользуюсь таргетом через явный ОИД. Чего скажешь по скрипту и предыдущему вопросу?
Иди в место где есть 1-2 NPC, там проще будет. Отследи пакеты NpcInfo и сравни NpcID в пришедших пакетах и из npcsid.ini для них же. Разница и будет kID.

Наприме Гиран-харбор, там три Npc:
delphi Код:
npcid.ini                                              NpcInfo 7878=Angelina Gatekeeper                      NpcTypeId: 1030878 7879=Felton Wharf Manager                    NpcTypeId: 1030879 8573=Monakan Fishermen's Guild Member   NpcTypeId: 1031573 kId = 1030878-7878 = 1023000
Пробуешь подсчитать разницу между тем что в NpcInfo и тем что должно быть и это будет kID. Понятно? Как определишь kID, тогда сможишь соотносить NpcID с NpcObjectId.

delphi Код:
#$16: begin         msg.Lines.Add('S>Пакет NpcInfo #$16'+inttostr(ReadD(2)));         //        OID       ID         AppendNpc(ReadD(2), ReadD(6)); //добавляем в базу данных         if (FishermanID=ReadD(6)-kID) then begin           EditFishermanOID.text:=inttostr(ReadD(2));           FishermanOID:=strtoint(EditFishermanOID.text);         end;       end;

По скрипту пока ничего не скажу, проверить работу негде.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
За это сообщение NLObP нажился спасибкой от: