Показать сообщение отдельно
Старый 06.02.2009, 12:58   #1
Пользователь
 
Регистрация: 05.02.2009
Сообщений: 62
Сказал Спасибо: 1
Имеет 18 спасибок в 9 сообщенях
lexayar пока неопределено
Восклицание Не верно определяется ConnectName при работе с несколькими клиентами

Добрый день.
Столкнулся с такой проблемой: использую скрипт "Помощник в ПВП" (пьет банки ЦП, ХП, МП и т.д., но это не суть важно). Так вот, когда подключаюсь одним клиентом все работает нормально, когда подключаюсь двумя, то часть пакетов StatusUpdate (возможно и других, не проверял) от второго персонажа приходят с ConnectName равным имени первого персонажа, из за чего получается что параметр (см. код ниже) "MyID" изменяется - то ИД первого чара, то ИД второго.
Скрипт урезан, оставил только самое необходимо, но смысл в том, что первой строкой должны резаться все пакеты предназначенные не для основного персонажа.

Код:
  // скрипт будет работать только для указанного персонажа
  // Name - имя 1 персонажа, пакеты от остальных нам не нужны
  if (ConnectName<>Name) then
    exit;

  // обрабатываем пакет статуса.
  // 18=StatusUpdate:d(ObjectID)d(AttribCount:Loop.01.0002)d(AttrID:Get.FSup)d(AttrValue)
  if FromServer and (pck[1]=#$18) then
  begin
    MyID:=ReadD(2);
  end;
Подскажите как можно это обойти, проверял на версии l2phx.3.4.1.75, сегодня попробую на последней, но в логе изменений ни чего нет про этот баг.
lexayar вне форума