GUI

VoicesVoicesVoices

Dreams Blacker than Death
Сообщения
1 257
Лайки
960
Я наверное единственный, кого мало-помалу напрягают некоторые изъяны гуя. В следствии этого хотелось бы обратиться напрямую к разработчику клиентской части (если она таковым всё ещё является) @Latinᶏ.

Оговорюсь - я не учу вас что делать, я лишь хочу адекватный GUI.

В чём трабла:
Существует такой товарищ, по имени EV_SkillList, он обновляет внутренности окна (включая размеры) скиллов при действиях, относящихся к нему, как например: Переодевание шмоток, пух, талисманов и всего прочего, что имеет свой скилл. У некоторых людей, как например у меня, возникает микрофриз на долю секунды, при переодевании сета макросом, или удара пушкой с нюком.

Так вот о EV_SkillList - он обновляет даже закрытое окно скиллов, что по логике - бессмысленно.

Предлагаю немного увеличить конструкцию обработки эвента, добавив в него строку:
Код:
if (m_wndTop.IsShowWindow())
Код:
    else if (Event_ID == EV_SkillList)
    {
        if (m_wndTop.IsShowWindow() )
            {
                HandleSkillList(param);
                ComputeItemWndHeight();
                ComputeItemWndAnchor();
            }  
    }
Где m_wndTop - имя MagicSkillWnd.
Таким образом мы избежим обновления окна в тот момент когда оно закрыто, а при открытии этот эвент дефолтно выполнится.

Тестировал на своей сборке длительное время, фризы исчезают и не смотря на сомнения в этой теме никаких трабл с ShortCutWnd это не возникло.

В общем был бы рад рассмотрению.

Хотелось бы увидеть заглушку при последнем лсе. Т.е. что бы не выполнялась вся функция, если лс кончился. А то выходит что лсов нет, а он его вытаскивает. Либо диалог с запросом на действие.
Это ни есть что-то критичное, но для полноты - весьма адекватное решение.

При попытке раздвинуть чат, перекрывается системный чат:
screenshot_2428.png

Допускаю что может быть я чего-то не заметил, но полагаю там просто нет анкора на паренте.
Или же галку для Systemchat в ChatFilter по аналогии с таймерами - movable\transparency

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

Карта не меняет язык локализации. Не критично, но весьма легко решаемо.
Ну и в конце-концов не зря же существует l2font-*.utx на двух языках.

Мне кажется оно тут не надо. Просто релог, но с возможностью дропнуть клиент критом.
 
Последнее редактирование:

ZPower

#goodhash
Сообщения
341
Лайки
216
bred kotoriy ni na chto ne vliyaet, i kotoroiy nikto ne realizuet tut
 

Latinᶏ

Виконт
Support
Сообщения
551
Лайки
716
Я наверное единственный, кого мало-помалу напрягают некоторые изъяны гуя. В следствии этого хотелось бы обратиться напрямую к разработчику клиентской части (если она таковым всё ещё является) @Latinᶏ.
1. MagicSkillWnd
Нужно проверить и убедиться в том, что обновляемые данные в этом окне нигде больше не используются. Если это так, то добавить условие не проблема.

2. RefineryWnd
Нагромождать окно диалогами не особо хочется. Вопрос насчет удобства окончания повторной вставки тоже спорный. Если Вы нажимаете кнопку «Повторить», то Вы осознаете, что текущий ЛС в оружии вам не нужен, следовательно, и его удаление не принесет особых неудобств.
Вы купили 100 ЛСов и пытаетесь поймать нужное умение. Вставив все камни и не поймав необходимого, у Вас остается ненужный ЛС в оружии. Вы покупаете еще 100 камней, однако продолжить аугментацию в это оружие Вы не сможете пока не снимете предыдущую аугментацию. То есть, Вам нужно будет открывать окно снятия ЛСов, удалять камень с пушки, и только после этого продолжать поимку ЛСов. Не очень удобно, как по мне.

3. ChatWnd \ SystemChatWnd
С этим полностью согласна. В данный момент окно системного чата значительно переработано, добавлена возможность дефолтной привязки системного чата к основному чату, а также улучшен механизм открепления и перемещения окна:

e5ae843b308dcd6725c0f72b7323.jpg
330730a6a16897027e28097b7bb4.jpg

4. Вставка аттрибута
Окошко остается открытым на тот случай, если Вы захотите вставить выбранный камешек атрибута в несколько предметов экипировки. Вставили предельное значение атрибута в одно оружие, тут же можете выбрать другое и начать процесс вставки в него.

5. Карта и смена языка
Это сделано намерено. Во-первых, большинству игроков удобнее воспринимать англоязычные названия локаций на карте. Во-вторых, движок клиента не умеет «на лету» переподгружать пакеты с текстурами, как это он делает с датниками. То есть, чтобы изменить загрузку карт с одного «.utx» пакета на другой, необходимо будет перезагружать клиент.

6. Cache clean
Насчет этого пункта не поняла. Чем Вас не устраивает текущая очистка кэша нажатием кнопки в окне сервисов?

4f121d6122599ef22fe85c311c30.jpg
 

VoicesVoicesVoices

Dreams Blacker than Death
Сообщения
1 257
Лайки
960
1. MagicSkillWnd
Нужно проверить и убедиться в том, что обновляемые данные в этом окне нигде больше не используются. Если это так, то добавить условие не проблема.

2. RefineryWnd
Нагромождать окно диалогами не особо хочется. Вопрос насчет удобства окончания повторной вставки тоже спорный. Если Вы нажимаете кнопку «Повторить», то Вы осознаете, что текущий ЛС в оружии вам не нужен, следовательно, и его удаление не принесет особых неудобств.
Вы купили 100 ЛСов и пытаетесь поймать нужное умение. Вставив все камни и не поймав необходимого, у Вас остается ненужный ЛС в оружии. Вы покупаете еще 100 камней, однако продолжить аугментацию в это оружие Вы не сможете пока не снимете предыдущую аугментацию. То есть, Вам нужно будет открывать окно снятия ЛСов, удалять камень с пушки, и только после этого продолжать поимку ЛСов. Не очень удобно, как по мне.

3. ChatWnd \ SystemChatWnd
С этим полностью согласна. В данный момент окно системного чата значительно переработано, добавлена возможность дефолтной привязки системного чата к основному чату, а также улучшен механизм открепления и перемещения окна:

e5ae843b308dcd6725c0f72b7323.jpg
330730a6a16897027e28097b7bb4.jpg

4. Вставка аттрибута
Окошко остается открытым на тот случай, если Вы захотите вставить выбранный камешек атрибута в несколько предметов экипировки. Вставили предельное значение атрибута в одно оружие, тут же можете выбрать другое и начать процесс вставки в него.

5. Карта и смена языка
Это сделано намерено. Во-первых, большинству игроков удобнее воспринимать англоязычные названия локаций на карте. Во-вторых, движок клиента не умеет «на лету» переподгружать пакеты с текстурами, как это он делает с датниками. То есть, чтобы изменить загрузку карт с одного «.utx» пакета на другой, необходимо будет перезагружать клиент.

6. Cache clean
Насчет этого пункта не поняла. Чем Вас не устраивает текущая очистка кэша нажатием кнопки в окне сервисов?

4f121d6122599ef22fe85c311c30.jpg
1) Будет очень славно. В крайнем случае, я думаю вы сможете собрать более изящное решение.
2) Я пересмотрел свои взгляды, действительно не подумал о осознанном решении о нажать кнопку, если ЛС заведомо ненужный.
3) Будет очень славно х2.
4) Понял.
5) Костылями всё можно.
6) Критическая ошибка. Вам уже писали тут о ней, ...MagicSkillWnd... и т.д., думаю поймёте. Лично я поймал её раза 3, по загрузке обратно в мир (exitworld - charselect - enterworld). После этого благополучно забыл о ней.
 

Latinᶏ

Виконт
Support
Сообщения
551
Лайки
716
Я наверное единственный, кого мало-помалу напрягают некоторые изъяны гуя.
1. MagicSkillWnd
Проверила, вроде бы данные из этого окна нигде больше не фигурируют. Запретила обновление окна в закрытом состоянии.

3. ChatWnd \ SystemChatWnd
Окно системных сообщений было полностью переработано.
43f04722d21539a97e3d02bad415.gif

Обновленная версия патча добавлена в апдейтер. Можете обновиться.
 

VoicesVoicesVoices

Dreams Blacker than Death
Сообщения
1 257
Лайки
960
1. MagicSkillWnd
Проверила, вроде бы данные из этого окна нигде больше не фигурируют. Запретила обновление окна в закрытом состоянии.
Вы восхитительны. Наконец-то можно жмякать макросы сетов нормально, спасибо.
 
Верх