Показать сообщение отдельно
Старый 08.04.2008, 02:59   #344
Рыцарь
 
Аватар для VORON
 
Регистрация: 06.08.2007
Сообщений: 209
Сказал Спасибо: 6
Имеет 67 спасибок в 34 сообщенях
VORON пока неопределено
По умолчанию Re:

Цитата:
Сообщение от Rubec
Откуда такая формула и как ее понять?

for i:= 0 to round(length(pck)/36) do
begin
if (pck[i*36+4+8]+pck[i*36+5+8] = hstr('25 04')) then OidHPPotion0:=pck[i*36+8]+pck[i*36+1+8]+pck[i*36+2+8]+pck[i*36+3+8];
элементарно ватсон-))..
пакет который приходит от сервера с описанием ИНВЕНТОРЯ- цикличен.. его длина зависит напрямую от кол-ва предметов в инвенторе.. в начале пакета 8 байтов отводится под описание ИД ПАКЕТА+КОЛВО ПРЕДМЕТОВ+ЕЩЕ ЧЕТА.. 8 байтов- описание.. после етих 8ми байтов следует цикличное описание каждого итема в инвенторе.. каждый итем описывается 36-ю байтами.. каждый блок описываемый айтем в инвенторе начинается с ОИД предмета.. после чего идет ИТЕМ ИД предмета.. т.е. если в инвенторе всего 1 предмет то длина пакета будет 8+36 бафйтов.. с 8-го байта там будет храниться ОБЖЕКТ ИД итема.. с 12-го будет записан его ИТЕМ ИД.. потом будет указано кол-во в стопке етих предметов.. и там еще чето то.. поетому.. если у нас 2 предмета в инвенторе 1-предмет ЦП банка второй предмет ГХП банка то наш синтаксис сработает так:
Код:
for i:= 0 to round(length(pck)/36) do
       begin
       if (pck[i*36+4+8]+pck[i*36+5+8] = hstr('25 04')) then OidHPPotion0:=pck[i*36+8]+pck[i*36+1+8]+pck[i*36+2+8]+pck[i*36+3+8];
для первого итема получится:
Код:
for i:= 0 to 2 do
       begin
       if (pck[12]+pck[13] = hstr('25 04')) then OidHPPotion0:=pck[8]+pck[9]+pck[10]+pck[11];
ну а для второго:
Код:
for i:= 0 to 2 do
       begin
       if (pck[12+36]+pck[13+36] = hstr('25 04')) then OidHPPotion0:=pck[8+36]+pck[9+36]+pck[10+36]+pck[11+36];
таким образом мы запоминаем из инвенторя ГХП и ЦП банки так инвентарь имеет не 2 позиции а забит до отказа то применяем то что я дал:
Код:
for i:= 0 to round(length(pck)/36) do
       begin
       if (pck[i*36+4+8]+pck[i*36+5+8] = hstr('25 04')) then OidHPPotion0:=pck[i*36+8]+pck[i*36+1+8]+pck[i*36+2+8]+pck[i*36+3+8];
__________________
Цитата:
Сообщение от pybukon
прежде чета попросить я немнога раскажу чтоб вы понили как мне плоха
Цитата:
Сообщение от Byrger
А как сделать мой скрипт бесконечным?
Цитата:
Сообщение от XKOR
.. каждый день ионизированной ногой протирает больную)
Цитата:
Сообщение от PsyR
Вылоджите пожалуйста скрипт на рыбалку желательно что бы сам в ВХ клал адаптированый под шоки и так же скрипт на ТТ рец, тоже с диалогами
VORON вне форума   Ответить с цитированием