Skip to content

Commit 73394e5

Browse files
authored
bugfix(input): Use time-based double tap for unit group centering (TheSuperHackers#2545)
1 parent 64b5eaa commit 73394e5

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

Generals/Code/GameEngine/Source/GameClient/MessageStream/SelectionXlat.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1001,7 +1001,7 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
10011001
{
10021002
DEBUG_LOG(("META: select team %d",group));
10031003

1004-
UnsignedInt now = TheGameLogic->getFrame();
1004+
UnsignedInt now = timeGetTime();
10051005
if ( m_lastGroupSelTime == 0 )
10061006
{
10071007
m_lastGroupSelTime = now;
@@ -1010,7 +1010,7 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
10101010
Bool performSelection = TRUE;
10111011

10121012
// check for double-press to jump view
1013-
if ( now - m_lastGroupSelTime < 20 && group == m_lastGroupSelGroup )
1013+
if ( now - m_lastGroupSelTime < TheGlobalData->m_doubleClickTimeMS && group == m_lastGroupSelGroup )
10141014
{
10151015
DEBUG_LOG(("META: DOUBLETAP select team %d",group));
10161016
// TheSuperHackers @bugfix Stubbjax 26/05/2025 Perform selection on double-press
@@ -1082,15 +1082,15 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
10821082
{
10831083
DEBUG_LOG(("META: select team %d",group));
10841084

1085-
UnsignedInt now = TheGameLogic->getFrame();
1085+
UnsignedInt now = timeGetTime();
10861086
if ( m_lastGroupSelTime == 0 )
10871087
{
10881088
m_lastGroupSelTime = now;
10891089
}
10901090

10911091
// check for double-press to jump view
10921092

1093-
if ( now - m_lastGroupSelTime < 20 && group == m_lastGroupSelGroup )
1093+
if ( now - m_lastGroupSelTime < TheGlobalData->m_doubleClickTimeMS && group == m_lastGroupSelGroup )
10941094
{
10951095
DEBUG_LOG(("META: DOUBLETAP select team %d",group));
10961096
Player *player = ThePlayerList->getLocalPlayer();

GeneralsMD/Code/GameEngine/Source/GameClient/MessageStream/SelectionXlat.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1076,7 +1076,7 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
10761076
{
10771077
DEBUG_LOG(("META: select team %d",group));
10781078

1079-
UnsignedInt now = TheGameLogic->getFrame();
1079+
UnsignedInt now = timeGetTime();
10801080
if ( m_lastGroupSelTime == 0 )
10811081
{
10821082
m_lastGroupSelTime = now;
@@ -1085,7 +1085,7 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
10851085
Bool performSelection = TRUE;
10861086

10871087
// check for double-press to jump view
1088-
if ( now - m_lastGroupSelTime < 20 && group == m_lastGroupSelGroup )
1088+
if ( now - m_lastGroupSelTime < TheGlobalData->m_doubleClickTimeMS && group == m_lastGroupSelGroup )
10891089
{
10901090
DEBUG_LOG(("META: DOUBLETAP select team %d",group));
10911091
// TheSuperHackers @bugfix Stubbjax 26/05/2025 Perform selection on double-press
@@ -1157,15 +1157,15 @@ GameMessageDisposition SelectionTranslator::translateGameMessage(const GameMessa
11571157
{
11581158
DEBUG_LOG(("META: select team %d",group));
11591159

1160-
UnsignedInt now = TheGameLogic->getFrame();
1160+
UnsignedInt now = timeGetTime();
11611161
if ( m_lastGroupSelTime == 0 )
11621162
{
11631163
m_lastGroupSelTime = now;
11641164
}
11651165

11661166
// check for double-press to jump view
11671167

1168-
if ( now - m_lastGroupSelTime < 20 && group == m_lastGroupSelGroup )
1168+
if ( now - m_lastGroupSelTime < TheGlobalData->m_doubleClickTimeMS && group == m_lastGroupSelGroup )
11691169
{
11701170
DEBUG_LOG(("META: DOUBLETAP select team %d",group));
11711171
Player *player = ThePlayerList->getLocalPlayer();

0 commit comments

Comments
 (0)