Открытие мультиссела 140 протокол

  • Автор темы Автор темы romash
  • Дата начала Дата начала

romash

Выдающийся
Местный
Сообщения
298
Розыгрыши
0
Решения
1
Репутация
0
Реакции
66
Баллы
1 390
Всем ку. Когда через альтб открываем мультисел, окно мультиселла появляется за окном альтб. Хочу переделать чтобы открывалось на передний план. Может кто-то подсказать где найти эту функцию? Думаю где-то в интерфейсе клиента, но с чего бы начать?
 
Psycho, нет конечно, я не думаю, что корейцьі в те годьі предусматривали отрьітия мультиселов таким образом, потому и не сильно парились. ) Но какого-то вьізова закрьтітия окна я, бегло взяглянув на некоторьіе протокольі, не увидел, потому костьіль должен сработать.
 
ну первый мультиселл нормально открывается да - на переднем фоне, а если его не закрывая вызвать второй то тогда да - на фоне будет.

возможно интерфейс не создает в этом случае новое окно, а просто переиспользует уже имеющееся окно мультисела, заполняя его новыми данными? потому оно и на фоне оказывается, т.к. кликом по коммунке мы ее вытаскиваем на передний план.

З.Ы. кстати если есть возможность редакта интерфейса, то в показе мультисела может просто вызывать для его окна функцию вывода поверх остальных имеющихся? 100% такое там должно быть.
 
Не знаю, теряется ли часть смысла при переводе, и поэтому я не совсем понимаю, что именно вы хотите. Но со стороны интерфейса решение проблемы с закреплением окна multisell «поверх всех» можно сделать отсюда, и в этом нет никакой сложности.
 
Thanks, need try it.
 
великие мысли преследовали их, но чел выше прав, его вариант решает проблему "на корню", дефолт в своей версии лайт патча для люцеры сделал также
 
root@localhost:~#, та оно ж не удобно, хочешь бьістро открьіть другой мультисел с кб, нажимаешь на кб, чтобьі вьітянуть его на первьій план и ничего не происходит. Думаешь, что мисклик, нажимаешь еще раз. Ничего. Плюешь в екран, цепляешь кб за рамку и начинаешь тянуть в противоположную от кб сторону - все идет хорошо, а потом закончились пиксели и тьі врезался в придельі окна. Плюешь еще раз. Закрьіваешь мультисел, открьіваешь новьій. Понимаешь, что лучше бьі он открьівался "как на той неудобной фришке" за окном кб и легко вьіделялся на первьій план.

По-моему, либо в ивенте получения пакета списка итемов сделать принудительное переоткрьітие окна, если оно открьіто, или свой пакет на закрьітие создать - все же лучше. )
 
Там заканчивается история на "плюешь, удаляешь наxyй эту помойку, и со словами админ пидорас и безрукий xyесос, идешь на другую помойку".
 
CB - это мусорная сборка из 101,102,103 - и если их не обновлять при каждом действии с CB, окно "зависает" - а точнее, код все свои задачи выполним, при нажатии на кнопку, по тому идите лесом если не обновили страницу.
На стороне сервера и пакета S_MULTI_SELL_LIST - нету возможности его закрыть, перед повторным открытием...
S_MULTI_SELL_LIST - может быть открыт и если он открыт и мы будем жать на другие кнопки отрытия, то пакет может только обновить уже существующий открытый Ui, вот когда будет возможность закрывать пакет S_MULTI_SELL_LIST, перед его последующем вызове - тогда и окно с MULTI_SELL - будет по верх окна main.html.
Так же на стороне сервера - нету возможности задействовать MultiSellWnd.Close_Button(307.5 581.0 100.0 27.0) - это та самая кнопка с Ui для закрытия мультиселла.
Фактическая отправка пакета S_MULTI_SELL_LIST только после обновления 101,102,103, только в первое открытие покажет его в положении TOP, ну а далее вы сами знаете что прячеться за main.html - когда мы на нем что то делаем.
Кто найдет как закрывать/пере открывать по новой S_MULTI_SELL_LIST - ждем в этой теме.
П.с. а решение - выше, и только при изменении клиента
 
у меня феня подобная сборка и был такой прикол для добавки сервиса саб классов открывался за КБ пока не поменял местами отправку пакетов
PS2 хз эпилог и фрея хф у меня при нажатии на новые мультик открывает новые и в переди окна закрывая старый , могу видос снять кому интересно или нужно увидеть
 
Пришли код реализации открытия, очередности пакетов.
Я писал про реализацию L2J (мобиус или чистой L2J) - там нету реализации с переоткрытием.
П.с. у тебя точно патч без кастом расширений, может там уже установили onTop вот и все.
 
Да закрыть саму КБ возможно, сам пакет Мультиселла - не закрывает (только обновляет) в реализации что по дефолту.
Давай, луто тему делай!!!
 
Bankir, так я про пакет чтобьі мультисел закрьівал. ) Чтобьі слать:
мультисел клоус - кб опен - мультисел опен. И не страдать с костьілями дополнительньіми. КТо-то шарит, сильно там опкод мультисела прьігал по хроникам после 140? ) Хотя, можно єто дело в конфиг вьітянуть, чтобьі везде работало.
 
520 prot

C++:
const C_EX_MULTI_SELL_LIST= 624;
const S_MULTI_SELL_LIST= 208;
S_MULTI_SELL_LIST = 0xD0,


struct _C_EX_MULTI_SELL_LIST
{
  var int nGroupID;
};



static function bool Encode_C_EX_MULTI_SELL_LIST (out array<byte> stream, _C_EX_MULTI_SELL_LIST packet)
{
  if (  !EncodeInt(stream,packet.nGroupID) )
  {
    return False;
  }
  return True;
}
 
Реакции: Rolo
Данный сайт использует cookie. Вы должны принять их для продолжения использования. Узнать больше…