GAMEINFOFLAG_RACE_RECORD_MESSAGE
(edited)GAMEINFOFLAG_RACE_SHOW_RECORD
is not even used&= ~Flag
should always work and -= Flag
will work if you know that the flag is set for certain &= ~FLAG
, I dont have to check for it first?pSnapChar
up so that you can merge the two ifs setting GAMEINFOFLAG_ALLOW_ZOOM
GAMEINFOFLAG_RACE_RECORD_MESSAGE
breaks the timer completely xDif(LastChangeTick != Client()->PredGameTick())
{
m_DDRaceTick += 100/Client()->GameTickSpeed();
LastChangeTick = Client()->PredGameTick();
}
This is where it gets stuck @Learath2, hud.cpp:L917m_DDRaceTick += ...
you will see itif(NewPredTick > m_PredTick[g_Config.m_ClDummy])
{
m_PredTick[g_Config.m_ClDummy] = NewPredTick;
engine/client/client.cpp:L2607if(NewPredTick > m_PredTick[g_Config.m_ClDummy])
this is also the case while spectating (edited)if(/*m_pClient->m_Snap.m_pLocalCharacter && (*/!(m_pClient->m_Snap.m_pGameInfoObj->m_GameStateFlags&GAMESTATEFLAG_GAMEOVER))
(i commented this out and it worked)m_pClient->m_Snap.m_pLocalCharacter
outRenderDDRaceEffects();
, in which this gets set: m_DDRaceTick += 100/Client()->GameTickSpeed();
RenderDDRaceEffects()
, but that function is only called if m_pClient->m_Snap.m_pLocalCharacter
exists, which isn't the case in spectator/pause.Сигнатура проблемы:
Имя события проблемы: BEX64
Имя приложения: DDNet.exe
Версия приложения: 0.0.0.0
Отметка времени приложения: 00000000
Имя модуля с ошибкой: StackHash_1dc2
Версия модуля с ошибкой: 0.0.0.0
Отметка времени модуля с ошибкой: 00000000
Смещение исключения: 0000000000000000
Код исключения: c0000005
Данные исключения: 0000000000000008
Версия ОС: 6.1.7601.2.1.0.256.1
Код языка: 1049
Дополнительные сведения 1: 1dc2
Дополнительные сведения 2: 1dc22fb1de37d348f27e54dbb5278e7d
Дополнительные сведения 3: cbc5
Дополнительные сведения 4: cbc5ec6970b2af35927ad67117ca57e2
SERVERCAPFLAG_DDNET
, but you don't ever send it, is that intentional?pGameClient
when we receive them.DDNet
variable