Closed Aynekko closed 1 year ago
Проверил на последней сборке Xash3D FWGS 0.20.1 для Windows, режим разработчика включён (developer 2) И сделал то же самое что вы говорили, курсор не исчезает
Так может оно через раз проявляется? Я вчера тестил на последнем билде, у меня курсор исчез. Причем, у меня фуллскрин был отключен
Тут вообще непонятно. Вроде бы даже от девелопера не зависит. Я тестил разные ксаши. И параною 2 в том числе. Но одном компе у меня стабильно нет курсора после этих действий (независимо от девелопера). А на другом он есть почти всегда, если девелопера нет, но иногда проскакивает что нет. С девелопером стабильно нет.
Так может оно через раз проявляется? Я вчера тестил на последнем билде, у меня курсор исчез. Причем, у меня фуллскрин был отключен
Пробовал и с фуллскрином и без, курсор ни разу не исчез
Заметил эту проблему у себя с оригинальным client.dll из Half-Life, до этого стоял из OpenAG и в нем курсор не исчезал.
Но с клиентом из OpenAG курсор исчезает когда сворачиваешь игру, и появляется после входа/выхода из консоли
Проблема здесь: https://github.com/FWGS/xash3d-fwgs/blob/947b94d29f0c87a4fd20c6ff3998ed6aea9c721a/engine/client/input.c#L223
Если у !CL_IsBackgroundMap()
убрать !
то указатель в главном меню появляется при chapterbackgrounds.txt, однако если загрузиться в игру и переключиться в меню снова этот баг вылезает где его раньше не было.
Выкрутился так:
if( ( newstate == key_menu || newstate == key_console || newstate == key_message ) && ( !cl.paused || CL_IsBackgroundDemo( )))
Это оказалось не совсем корректно так что сделал:
if( ( newstate == key_menu || newstate == key_console || newstate == key_message ) && ( !GameState->backgroundMap || CL_IsBackgroundDemo( )))
May be fixed with #470
@a1batross вроде всё ок, спасибо!
May be fixed with #470
Нет, похоже что-то сломалось. У меня на ксашмоде мышка стала вести себя неадекватно. В PrimeXT тоже. Если запустить игру без бекграунд карты, мышка все время в центре и сдвинуть нельзя. Помогает заход в консоль и обратно. Во время игры вроде бы все нормально. Играю в оконном режиме. Но нажимаю паузу, переключаюсь на другое окно и обратно в игру, и вижу как мышка крутит камеру игрока. В прайме мышка в оконном режиме ограничивает обзор, будто курсор упирается в границы окна. В общем, раньше было лучше и все было нормально.
@Aynekko попробуй какие-нибудь m_ квары потыкать, может быть в них дело
Ксашмод и PrimeXT не тестировал. С hlsdk всё ок с фоновой картой, без, не имеет значения.
Единственно есть недостаток (это поведение было и до) что при pause мышь всё равно захватывается (стоит снять паузу как видна новая позиция) и указатель не появляется.
Я посмотрел inputw32.cpp в ксашмоде и прайме, они какие-то совсем разные, по сравнению с хлсдк у вальвы и ксашевским хлсдк. https://github.com/SNMetamorph/PrimeXT/blob/master/client/inputw32.cpp Возможно, дело в этом :(
Сейчас еще проверил ксаш со стимовской версией хл. Нужно для начала сделать ui_renderworld 1 чтобы это увидеть. Игра в оконном режиме, нажимаем паузу, переключаемся на другое окно и обратно - мышь крутит камеру игрока.
Fixed in 023f6712f994dbe4f1667b974fd59cbe58ed92a2
Баг воспроизводится только если developer больше нуля. Нужно запустить любую карту. Затем прописать в консоли: disconnect;map_background karta Тем самым отключимся от сервера и запустим карту-бэкграунд. Меню и карта есть, а курсора нет. При developer 0 все нормально.