Парни, тут вопрос по егону появился.
Добавил туда SecondaryFire и анимацию соответственно, но при нажатии на пкм зараза жрет аммо, а анимашку не проигрывает(проигрывает, если долго жать клавишу).
Как сделать так, чтобы анимация воспроизвелась полностью?
Возможное ли плавное затухания худа или он может только резко исчезать и все?
__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Luciferchik ну вообще-то да. Нужно код отсчёта времени засунуть в CHud::Redraw или CHud::Think. Первая функция работает всегда кроме паузы, и только в игре (при открытом меню в стим версии не работает), вторая работает всегда кроме паузы. Подсмотреть уменьшение альфы можно в файле ammohistory.cpp.
Остаётся вопрос, как этим правильно управлять. Наверное придётся завести новый флаг наподобие HIDEHUD_ALL, например HUD_FADEOUT, и отправлять его с сервера. А в CHud::Think написать примерно такое условие:
C++ Source Code:
1
if (gHUD.m_iHideHUDDisplay & HUD_FADEOUT)
2
{
3
// здесь код отсчёта времени
4
5
// код выключения худа
6
if (time == 0)
7
{
8
gHUD.m_iHideHUDDisplay |= HIDEHUD_ALL;
9
gHUD.m_iHideHUDDisplay &= ~HUD_FADEOUT;
10
}
11
}
Добавлено 13-04-2017 в 13:25:
Только учти, что все элементы худа имеют собственную функцию Draw, в которой у них фиксированная альфа, либо свой собственный код её изменения. Нужно будет эти функции переписать таким образом, чтобы при наличии у класса CHud флага HUD_FADEOUT, именно у них уменьшалась альфа.
Ku2zoff:
Насчет таймера нужно смотреть твой тутор по нему
__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.
scale - это, собственно, значение альфы. rgAmmoHistory[i].DisplayTime - это gHUD.m_flTime + n, вот про это время я говорю. n - кол-во секунд, в течение которого худ будет бледнеть. Нужно, чтобы в какой-то отдельной функции класса CHud считалась эта альфа, и была публичным членом класса CHud, чтобы все элементы худа имели к ней доступ.
Ku2zoff:
Я понял о чем, ты говоришь про ammohistory и типо когда подбираешь там патроны или аптечку то в угле светиться спрайт который постепенно угасает.
__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.