Просмотр полной версии : не реагирует
не работает ни фига уже второй день мучаюсь
Надо сделать так чтобы когда приходил пакет Дроп итем от сервера, создавался пакет который подберет этот итем... скрипт не реагирует на пакет "0С" если ставить пакет полностью, то все в порядке... версия пакетхака 33.171
begin
if (fromServer) and (connectname=name) and (pck[1]=#$0C) then
begin
buf:=#$8F;
WriteD(1079520434);
SendToServerEx(Name);
end
end.
WriteD(1079520434); что это и зачем?
Это Оид итема, ну это просто как пример, например если прийдет пакет DropItem от сервера то клиент отправит пакет на подбор итема Петом с этим Оид... Не важно что за пакет отправляется, главное то что скрипт не реагирует на то что пакет DropItem 0С пришел от сервера. . .
Добавлено через 2 часа 47 минут
ни у кого никаких предложений нет?
Добавлено через 3 часа 51 минуту
Другой пример...
begin
if FromClient and (ConnectName = Name) and
//(pck=HStr('1b 03 00 00 00'))
( pck[1] = #$1B )
then begin
buf:=(hstr('38 20 00 00 00 00 00 00 00 '));
SendToServerEx(Name);
end
end.
begin
if FromClient and (ConnectName = Name) and
(pck=HStr('1b 03 00 00 00'))
//( pck[1] = #$1B )
then begin
buf:=(hstr('38 20 00 00 00 00 00 00 00 '));
SendToServerEx(Name);
end
end.
Работает только во втором случае, в первом случае не пашет... Кто может мне объяснить в чем дело??? Где же вы кодеры???
Добавлено через 1 час 49 минут
Запустил скрипт на ранней версии все заработало. Это серьезная проблема!
Хламчег, напиши в личку с каким сервером тестировал, чтобы я нашел ошибку.
Draconik.ru l2dw.ru разные сервера, проблема не в серверах... Скорее всего в компьютере
goodvin1709
07.08.2011, 14:10
Ну
const
name='';
procedure Enabled;
begin
timer1.enabled:=true;
SENDMSG('Таймер включен...');
end;
procedure Disable;
begin
timer1.enabled:=False;
SENDMSG('Таймер выключен...');
end;
begin
if (fromClient) and (Connectname=name) and (Pck[1]=#$1B) and (ReadD(2)=2) then Enabled;
if (fromClient) and (Connectname=name) and (Pck[1]=#$1B) and (ReadD(2)=3) then Disable;
End.
Пашет
Проверил. В 171 и 172 версии поломаны скрипты! В 170 - работают.
Буду смотреть, что испортил.
При включении скрипта все время спамит в лог:
07.08.2011 21:41:02 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:02 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:02 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:02 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:02 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:03 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:03 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:03 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:03 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:03 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:04 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:05 NewScript: Операция успешно завершена; on line 19
07.08.2011 21:41:05 NewScript: Операция успешно завершена; on line 19
Добавлено через 20 часов 15 минут
Баг именно в этом куске:
(pck[1]=#$0C)
Если его не использовать, то скрипты работают.
Можно использовать аналог
if FromClient and (ConnectName = Name) then
begin
case pck[1] of
#$0C: begin
//...
end;
//...
end;
end;
Или через ReadC()
if (fromClient) and (Connectname=name) and (ReadC(1)=#$0C) then ...
NLObP, а чинить то собираешься? ))
NLObP, а чинить то собираешься? ))
Честно? Даже не знаю где её искать. В исходниках fastscript упоминания таких строк нет. В пакетхаке тоже нет. Где искать?
PS: кстати такое давно появилось. Вот 2010 (http://coderx.ru/showpost.php?p=103970&postcount=1) год.
PPS: может это зависит от того, какие настройки при компилировании проги?
Есть мысль, что это с сокетами связано.
alexteam
27.09.2011, 17:46
не с сокетами.
не с сокетами.
А с этого места поподробней :D
vBulletin® v3.6.11, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot