Показать сообщение отдельно
Старый 12.04.2009, 14:30   #354
Новичок
 
Регистрация: 09.03.2009
Сообщений: 2
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
T][P пока неопределено
По умолчанию

Прошу помочь разобраться, пишу скрипт (бота) он должен при первом сообщении в пм (в примере это 2356 ), сохранять ид отправителя и реагировать на команды в пм тока с этим ид.
Вот рабочий пример :
Код:
if FromServer and  (ConnectName=name)
  and (pck[1]=#$4A) and (pck[18]=#$37) and (pck[19]=#$04) and (pck[20]=#$34) and  (pck[21]=#$04) and (pck[22]=#$61) and (pck[23]=#$00) and (pck[24]=#$70) and (pck[25]=#$00) and (pck[26]=#$6F) and (pck[27]=#$00) and (pck[28]=#$32) and (pck[29]=#$04) and (pck[30]=#$00) and (pck[31]=#$00) then
   begin
idi1:=pck[2];
idi2:=pck[3];
idi3:=pck[4];
idi4:=pck[5];
end;
if FromServer and  (ConnectName=name)
  and (pck[1]=#$4A) and (pck[18]=#$31) and (pck[19]=#$00) and (pck[20]=#$00) and (pck[21]=#$00) and (pck[2]=idi1) and (pck[3]=idi2) and (pck[4]=idi3) and (pck[5]=idi4)  then
   begin
buf:=Hstr('46');
SendTOServerEx(name);
end;
Всё работало нормально для ника jeklin748 а для других не работало а дело в том что длина пакета 4А(входящего пм) зависит от ника точней его длины и букв написавшего его, как заделать так чтобы присваивание значений шло с конца пакета ? А ещё если допустим ник присвоить name:=Reads(10) как заделать так чтобы следующее присваивание было после Reads(10) то есть присваивало следующий байт.
Прошу помочь разобраться если вопрос не понять то что непонятно?

Последний раз редактировалось T][P, 13.04.2009 в 00:22.
T][P вне форума   Ответить с цитированием