@@ -500,18 +500,14 @@ namespace RTE {
500500 msg.MouseX = m->MouseX ;
501501 msg.MouseY = m->MouseY ;
502502 for (int i = 0 ; i < MAX_MOUSE_BUTTONS; i++) {
503- msg.MouseButtonPressed [i] = m->MouseButtonPressed [i];
504- msg.MouseButtonReleased [i] = m->MouseButtonReleased [i];
505- msg.MouseButtonHeld [i] = m->MouseButtonHeld [i];
503+ msg.MouseButtonState [i] = m->MouseButtonState [i];
506504 }
507505 msg.ResetActivityVote = m->ResetActivityVote ;
508506 msg.RestartActivityVote = m->RestartActivityVote ;
509507
510508 msg.MouseWheelMoved = m->MouseWheelMoved ;
511509
512- msg.InputElementPressed = m->InputElementPressed ;
513- msg.InputElementReleased = m->InputElementReleased ;
514- msg.InputElementHeld = m->InputElementHeld ;
510+ msg.InputElementState = m->InputElementState ;
515511
516512 bool skip = true ;
517513
@@ -522,23 +518,19 @@ namespace RTE {
522518 if (msg.MouseY != lastmsg.MouseY ) { skip = false ; }
523519
524520 for (int i = 0 ; i < MAX_MOUSE_BUTTONS; i++) {
525- if (msg.MouseButtonPressed [i] != lastmsg.MouseButtonPressed [i]) { skip = false ; }
526- if (msg.MouseButtonReleased [i] != lastmsg.MouseButtonReleased [i]) { skip = false ; }
527- if (msg.MouseButtonHeld [i] != lastmsg.MouseButtonHeld [i]) { skip = false ; }
521+ if (msg.MouseButtonState [i] != lastmsg.MouseButtonState [i]) { skip = false ; }
528522 }
529523 if (msg.ResetActivityVote != lastmsg.ResetActivityVote ) { skip = false ; }
530524 if (msg.RestartActivityVote != lastmsg.RestartActivityVote ) { skip = false ; }
531525
532526 if (msg.MouseWheelMoved != lastmsg.MouseWheelMoved ) { skip = false ; }
533527
534- if (msg.InputElementPressed != lastmsg.InputElementPressed ) { skip = false ; }
535- if (msg.InputElementReleased != lastmsg.InputElementReleased ) { skip = false ; }
536- if (msg.InputElementHeld != lastmsg.InputElementHeld ) { skip = false ; }
528+ if (msg.InputElementState != lastmsg.InputElementState ) { skip = false ; }
537529 } else {
538530 skip = false ;
539531 }
540532
541- if (!skip) { m_InputMessages[player].push (msg); }
533+ if (!skip) { m_InputMessages[player].push_back (msg); }
542534 }
543535 }
544536
@@ -551,19 +543,13 @@ namespace RTE {
551543 input.m_Y = msg.MouseY ;
552544 g_UInputMan.SetNetworkMouseMovement (player, input);
553545
554- g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_LEFT, msg.MouseButtonHeld [MOUSE_LEFT]);
555- g_UInputMan.SetNetworkMouseButtonPressedState (player, MOUSE_LEFT, msg.MouseButtonPressed [MOUSE_LEFT]);
556- g_UInputMan.SetNetworkMouseButtonReleasedState (player, MOUSE_LEFT, msg.MouseButtonReleased [MOUSE_LEFT]);
546+ g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_LEFT, msg.MouseButtonState [MOUSE_LEFT]);
557547
558- m_MouseState1[player] = (msg.MouseButtonPressed [MOUSE_LEFT] || msg. MouseButtonHeld [MOUSE_LEFT]) ? 1 : 0 ;
548+ m_MouseState1[player] = (msg.MouseButtonState [MOUSE_LEFT]) ? 1 : 0 ;
559549
560- g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_RIGHT, msg.MouseButtonHeld [MOUSE_RIGHT]);
561- g_UInputMan.SetNetworkMouseButtonPressedState (player, MOUSE_RIGHT, msg.MouseButtonPressed [MOUSE_RIGHT]);
562- g_UInputMan.SetNetworkMouseButtonReleasedState (player, MOUSE_RIGHT, msg.MouseButtonReleased [MOUSE_RIGHT]);
550+ g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_RIGHT, msg.MouseButtonState [MOUSE_RIGHT]);
563551
564- g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_MIDDLE, msg.MouseButtonHeld [MOUSE_MIDDLE]);
565- g_UInputMan.SetNetworkMouseButtonPressedState (player, MOUSE_MIDDLE, msg.MouseButtonPressed [MOUSE_MIDDLE]);
566- g_UInputMan.SetNetworkMouseButtonReleasedState (player, MOUSE_MIDDLE, msg.MouseButtonReleased [MOUSE_MIDDLE]);
552+ g_UInputMan.SetNetworkMouseButtonHeldState (player, MOUSE_MIDDLE, msg.MouseButtonState [MOUSE_MIDDLE]);
567553
568554 GUIInput::SetNetworkMouseButton (player, m_MouseState1[player], m_MouseState2[player], m_MouseState3[player]);
569555
@@ -573,11 +559,9 @@ namespace RTE {
573559
574560 // Store element states as bit flags
575561 for (int i = 0 ; i < INPUT_COUNT; i++) {
576- bool val = (msg.InputElementHeld & bitMask) > 0 ;
562+ bool val = (msg.InputElementState & bitMask) > 0 ;
577563
578- g_UInputMan.SetNetworkInputElementHeldState (player, i, val);
579- g_UInputMan.SetNetworkInputElementPressedState (player, i, (msg.InputElementPressed & bitMask) > 0 );
580- g_UInputMan.SetNetworkInputElementReleasedState (player, i, (msg.InputElementReleased & bitMask) > 0 );
564+ g_UInputMan.SetNetworkInputElementState (player, i, val);
581565
582566 bitMask <<= 1 ;
583567 }
@@ -596,9 +580,7 @@ namespace RTE {
596580
597581 void NetworkServer::ClearInputMessages (short player) {
598582 if (player >= 0 && player < c_MaxClients) {
599- while (!m_InputMessages[player].empty ()) {
600- m_InputMessages[player].pop ();
601- }
583+ m_InputMessages[player].clear ();
602584 }
603585 }
604586
@@ -1739,7 +1721,10 @@ namespace RTE {
17391721 double compressionRatio = (m_DataUncompressedTotal[i] > 0 ) ? static_cast <double >(m_DataSentTotal[i]) / static_cast <double >(m_DataUncompressedTotal[i]) : 0 ;
17401722 double emptyRatio = (m_EmptyBlocks[i] > 0 ) ? static_cast <double >(m_FullBlocks[i]) / static_cast <double >(m_EmptyBlocks[i]) : 0 ;
17411723
1742- std::string playerName = IsPlayerConnected (i) ? GetPlayerName (i) : " - NO PLAYER -" ;
1724+ std::string playerName = " - NO PLAYER - " ;
1725+ if (IsPlayerConnected (i)) {
1726+ playerName = GetPlayerName (i);
1727+ }
17431728
17441729 // Jesus christ
17451730 std::snprintf (buf, sizeof (buf),
@@ -1749,18 +1734,18 @@ namespace RTE {
17491734 " R : % .2f\n "
17501735 " Full Blck %lu (%.1f Kb)\n "
17511736 " Empty Blck %lu (%.1f Kb)\n "
1752- " Frame Kb : % lu\n "
1753- " Glow Kb : % lu\n "
1754- " Sound Kb : % lu\n "
1755- " Scene Kb : % lu\n "
1756- " Frames sent : % uK\n "
1757- " Frame skipped : % uK\n "
1758- " Blocks full : % uK\n "
1759- " Blocks empty : % uK\n "
1737+ " Frame Kb : %lu\n "
1738+ " Glow Kb : %lu\n "
1739+ " Sound Kb : %lu\n "
1740+ " Scene Kb : %lu\n "
1741+ " Frames sent : %uK\n "
1742+ " Frame skipped : %uK\n "
1743+ " Blocks full : %uK\n "
1744+ " Blocks empty : %uK\n "
17601745 " Blk Ratio : % .2f\n "
17611746 " Frames ms : % d\n "
17621747 " Send ms % d\n "
1763- " Total Data % lu MB" ,
1748+ " Total Data %lu MB" ,
17641749
17651750 (i == c_MaxClients) ? " - TOTALS - " : playerName.c_str (),
17661751 (i < c_MaxClients) ? m_Ping[i] : 0 ,
@@ -1825,9 +1810,10 @@ namespace RTE {
18251810 if (processInput) {
18261811 for (short player = 0 ; player < c_MaxClients; player++) {
18271812 if (!m_InputMessages[player].empty ()) {
1828- MsgInput msg = m_InputMessages[player].front ();
1829- m_InputMessages[player].pop ();
1830- ProcessInputMsg (player, msg);
1813+ for (const MsgInput &msg: m_InputMessages[player]) {
1814+ ProcessInputMsg (player, msg);
1815+ }
1816+ m_InputMessages[player].clear ();
18311817 }
18321818 }
18331819
0 commit comments