diff --git a/stepmania/src/NetworkSyncManager.cpp b/stepmania/src/NetworkSyncManager.cpp index 5109413306..58d70f7431 100644 --- a/stepmania/src/NetworkSyncManager.cpp +++ b/stepmania/src/NetworkSyncManager.cpp @@ -749,6 +749,22 @@ void NetworkSyncManager::ProcessInput() LOG->Trace( "Received SMOnline Command: %d, size:%d", command, packetSize - 1 ); SCREENMAN->SendMessageToTopScreen( SM_SMOnlinePack ); } + break; + case NSCAttack: + { + PlayerNumber iPlayerNumber = (PlayerNumber)m_packet.Read1(); + + if( GAMESTATE->IsPlayerEnabled( iPlayerNumber ) ) //Only attack if the player can be attacked. + { + Attack a; + a.fSecsRemaining = float( m_packet.Read4() ) / 1000.0f; + a.bGlobal = false; + a.sModifiers = m_packet.ReadNT(); + GAMESTATE->m_pPlayerState[iPlayerNumber]->LaunchAttack( a ); + } + m_packet.ClearPacket(); + } + break; } m_packet.ClearPacket(); } diff --git a/stepmania/src/NetworkSyncManager.h b/stepmania/src/NetworkSyncManager.h index 9bc84542d8..8ea2a08adf 100644 --- a/stepmania/src/NetworkSyncManager.h +++ b/stepmania/src/NetworkSyncManager.h @@ -28,6 +28,8 @@ enum NSCommand NSCSMS, //10 NSCUPOpts, //11 NSCSMOnline, //12 + NSCFormatted, //13 + NSCAttack, //14 NUM_NS_COMMANDS };