Coder Social home page Coder Social logo

mainui_cpp's People

Contributors

a1batross avatar exl avatar fgsfdsfgs avatar glebm avatar kungfulon avatar lewa-j avatar lorsanta avatar midlou avatar mittorn avatar nekonomicon avatar nillerusr avatar numas13 avatar snmetamorph avatar solexid avatar velaron avatar vladislav4kz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mainui_cpp's Issues

UI_DrawString can get stuck until integer overflow if bounds are too small

I noticed after neglecting to set a size for a table view that the menu would take up to 10 seconds to render a single frame. After some investigation I worked out that it was UI_DrawString that was being slow. I think that because the height of the table view was less than the height of the font, the function got stuck in an infinite loop and kept "wrapping" the line/increasing the value of yy until it overflowed, thereby eventually failing the check if ( yy < (yy + h) - charH ).

Обнаружение файлов со звуками нажатия кнопок в меню.

Файлы из списка ниже в WON HL лежали в папке media, а в Steam HL их переместили в sound/common:

launch_deny1.wav
launch_deny2.wav
launch_dnmenu1.wav
launch_glow1.wav 
launch_select1.wav
launch_select2.wav
launch_upmenu1.wav

Возможно, будет лучше реализовать обнаружение этих файлов в указанных директориях и убрать их из FWGS/xash-extras.

Спасибо @Velaron за наводку.

Transitional Menu Builder?

Should this ever be implemented?
I see this something like:

CMenuTransitional::Builder builder;
builder.SetBanner(ART_BANNER_CONFIGURATION)
 .AddButton(PC_AUDIO, "Audio', "Configure Audio", UI_Audio_Menu)
 .AddButton(PC_SOMETHINGELSE,...)
 .AddButton(PC_UPDATE, "Update", "Update engine", UI_ShowUpdateDialog);
 .AddReturnButton();
CMenuTransitional *configuration = builder.Build();
configuration.Open();
delete configuration;

Срабатывание "assertion failed" при попытке подключиться к несуществующему серверу через сервер-браузер.

Было замечено, что иногда сервер-браузер может делать кнопку "Join Game" активной, хотя не выделен ни один сервер, что приводит к срабатыванию "assertion failed".
В данный момент этот баг производится так:
1)Проскроллить список серверов до самого низа.
2)Переключиться на вкладку NAT.
3)Нажать кнопку "Join Game".
image

Превью в Save/load game

Если зайти в меню загрузки/сохранения, выбрать какое либо сохранение кроме первого, вернуться назад, а потом снова зайти, то будет отображаться превью самого верхнего сохранения независимо от того, какое оно было выбрано до этого.
screenshot_2018-02-16-21-18-54
screenshot_2018-02-16-21-18-57

Optimise font render

There is a an optimise possilibty in font rendering utlities.

  1. Remove creating new glyph pages, instead of this resize current page. This will reduce unneeded texture switching.

Команда noskills

Ранее эта команда убирала боковые подсказки в меню, сейчас это не работает.

Команда так же убирала выбор сложности, желательно реализовать отдельно команду для отключения подсказок, чтоб не убирать сразу 2-е функции

Небольшие несовместимости с новым Ксашем.

Заметил, что в mainui есть некоторые настройки, которые пытаются обращаться к кварам из старого движка, которых уже нету в новом:
menus/Audio.cpp - reverseChannels.
menus/GameOptions.cpp - split, compress, maxpacket и maxpayload.

Radiobuttons

Should we have a radiogroup here, which will control all radiobuttons?

I think it should:

  1. Provide a generic onChanged event implementation, which will trigger group to uncheck previous select.
  2. Provide a common onChanged event for specific menu code.

Можно сохранить только одно пользовательское сохранение через меню

Когда ты сохранил игру выбрав пункт New saved game игра сохраняется, и если опять создать "Новое" сохранение, то оно перезапишет старое Новое.sav

В Half-Life на GoldSource можно создавать новые сохранения хоть до бесконечности, в названиях файлов сохранений пишется Half-Life с трёхзначным числом, типа Half-Life-000.sav Half-Life-001.sav и т.д.

Menu flickering when a mod is loaded

I loaded Poke646 and it loaded it......but when the introduction starts......the game flickers and crashes, same thing happened with normal Half life too.

Fallback to bitmap font?

It would be good to add runtime fallback to bitmap font until release. User can do nothing if all ttf fonts does not exist in system

Font cache

Needs to be implemented. But I don't think it will be ready for 0.19.1.

Текст вводимый в поле "Название сервера" пишется и в поле с паролем. То же самое и наоборот

Ввожу текст в название сервера, он пишется и в поле с паролем. Пишу пароль, а он также пишется в поле с названием сервера.
Когда ввожу максимальное количество игроков на сервере, цифры пишутся также и в полях с названием сервера и паролем (ну и буквы тоже когда пишешь их в поле "Макс. игроков").
https://www.youtube.com/watch?v=czrcjnE50fI

Баг появился только на последнем билде. До этого его не было.

Menu background load.order

Load order should respect mods' backgrounds.

Maybe this should be like:

  1. mod splash.bmp
  2. BackgroundLayout(they are inherited from base dir)
  3. base splash.bmp
  4. In stupid case, when BackgroundLayout don't exist, just use hardcoded names

Building on PowerPC big-endian

I am working on porting xash3d to PowerPC systems. Modern PPC CPUs can run in either endian mode. Traditionally the preferred endianness was big-endian. Most 64-bit PPC distros today are little-endian though for compatibility reasons.

With some small changes, xash3d builds fine on powerpc64le (little-endian). However, it fails to build on powerpc64 (big-endian) with the following errors:

In file included from ../mainui/miniutl/generichash.cpp:18:
../mainui/miniutl/minbase_endian.h:164:11: error: use of undeclared identifier '__loadwordbytereverse'
                        return __loadwordbytereverse( dwordIndex<<2, base );
                               ^
../mainui/miniutl/minbase_endian.h:169:4: error: use of undeclared identifier '__storewordbytereverse'
                        __storewordbytereverse( dword, dwordIndex<<2, base );
                        ^
../mainui/miniutl/minbase_endian.h:173:11: error: use of undeclared identifier '__loaddoublewordbytereverse'
                        return __loaddoublewordbytereverse( nWordIndex<<2, base );
                               ^
../mainui/miniutl/minbase_endian.h:178:4: error: use of undeclared identifier '__storedoublewordbytereverse'
                        __storedoublewordbytereverse( nWord, nWordIndex<<2, base );
                        ^

These four functions: __loadwordbytereverse, __storewordbytereverse, __loaddoublewordbytereverse, __storedoublewordbytereverse, are not defined. Can you advise if they are defined in one of your other libraries? Or are further changes required here?

В модах где заголовки сохранены в формате bmp, не читаются

В модах где заголовки сохранены в формате bmp, не читаются (head_multiplayer.bmp и т. п.)
Вместо них используются картинки из extras.pak для Half-Life которые в формате .tga.

Если их удалить, то читаются картинки которые шли с модом в формате .bmp

Изменение числовых значений в доп. настройках сервера выполняется переключателем а не строкой как в GoldSource

В дополнительных настройках сервера значения числовых переменных меняются с помощью переключателя который увеличивает или уменьшает значение на 1 единицу

Xash3D FWGS

Снимок экрана (16)

GoldSource

Снимок экрана (17)

На Xash3D FWGS есть строка с указанием моделей игрока для разделения по командам.
Но числовые значения, такие как количество фрагов или ограничение времени на карту находятся в переключателе, а не в строке как в GoldSource, из-за этого приходится увеличивать или уменьшать значение на единицу
Снимок экрана (19)

Вот как это выглядит в GoldSource
Снимок экрана (18)

Detect resize type

If window was really resized by keyboard, we should emit QM_IMRESIZED event.

For now setting focus on field and changing window size on Windows or Linux will not update scailing values.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.