diff --git a/stepmania/src/NetworkSyncManager.cpp b/stepmania/src/NetworkSyncManager.cpp index f35d05503e..751659edeb 100644 --- a/stepmania/src/NetworkSyncManager.cpp +++ b/stepmania/src/NetworkSyncManager.cpp @@ -668,6 +668,7 @@ void NetworkSyncManager::ReportPlayerOptions() m_packet.Write1( 11 ); FOREACH_PlayerNumber (pn) m_packet.WriteNT( GAMESTATE->m_PlayerOptions[pn].GetString() ); + NetPlayerClient->SendPack((char*)&m_packet.Data, m_packet.Position); } void NetworkSyncManager::SelectUserSong() diff --git a/stepmania/src/NetworkSyncServer.cpp b/stepmania/src/NetworkSyncServer.cpp index 73da4be7e7..3a1e42c412 100644 --- a/stepmania/src/NetworkSyncServer.cpp +++ b/stepmania/src/NetworkSyncServer.cpp @@ -14,6 +14,7 @@ LanPlayer::LanPlayer() { maxCombo = 0; Grade = 0; offset = 0; + options = ""; } StepManiaLanServer::StepManiaLanServer() { @@ -129,6 +130,10 @@ void StepManiaLanServer::ParseData(PacketFunctions &Packet, int clientNum) { case 8: SelectSong(Packet, clientNum); break; + case 11: + Client[clientNum].Player[0].options = Packet.ReadNT(); + Client[clientNum].Player[1].options = Packet.ReadNT(); + break; default: break; } @@ -253,6 +258,8 @@ void StepManiaLanServer::GameOver(PacketFunctions &Packet, int clientNum) { Reply.Write2( (uint16_t) playersPtr[x]->steps[8] ); //Tack on OK for (int x = 0; x < numPlayers; x++) Reply.Write2( (uint16_t) playersPtr[x]->maxCombo ); + for (int x = 0; x < numPlayers; x++) + Reply.WriteNT( playersPtr[x]->options ); SendToAllClients(Reply); } } diff --git a/stepmania/src/NetworkSyncServer.h b/stepmania/src/NetworkSyncServer.h index bd50ad0c07..800ad88413 100644 --- a/stepmania/src/NetworkSyncServer.h +++ b/stepmania/src/NetworkSyncServer.h @@ -31,6 +31,7 @@ class LanPlayer { int offset; int PlayerID; int diff; + string options; LanPlayer(); private: }; diff --git a/stepmania/src/ScreenNetEvaluation.cpp b/stepmania/src/ScreenNetEvaluation.cpp index 65eea20643..d5858035bb 100644 --- a/stepmania/src/ScreenNetEvaluation.cpp +++ b/stepmania/src/ScreenNetEvaluation.cpp @@ -137,5 +137,5 @@ void ScreenNetEvaluation::UpdateStats() m_textJudgeNumbers[j][m_pActivePlayer].SetText( ssprintf( "%*d", iNumDigits, NSMAN->m_EvalPlayerData[m_iCurrentPlayer].tapScores[j] ) ); } - m_textPlayerOptions[NUM_PLAYERS].SetText( NSMAN->m_EvalPlayerData[m_iCurrentPlayer].playerOptions ); + m_textPlayerOptions[m_pActivePlayer].SetText( NSMAN->m_EvalPlayerData[m_iCurrentPlayer].playerOptions ); } diff --git a/stepmania/src/ScreenNetSelectMusic.cpp b/stepmania/src/ScreenNetSelectMusic.cpp index aa361adeea..66f9010d15 100644 --- a/stepmania/src/ScreenNetSelectMusic.cpp +++ b/stepmania/src/ScreenNetSelectMusic.cpp @@ -228,6 +228,7 @@ ScreenNetSelectMusic::ScreenNetSelectMusic( const CString& sName ) : ScreenWithM m_soundChangeSel.Load( THEME->GetPathToS("ScreenNetSelectMusic change sel")); NSMAN->ReportNSSOnOff(1); + NSMAN->ReportPlayerOptions(); return; }