Clarification and fix for two player login.

This commit is contained in:
Charles Lohr
2005-02-09 05:00:55 +00:00
parent 90e386f360
commit da14dc2f55
+4 -2
View File
@@ -80,6 +80,7 @@ void ScreenSMOnlineLogin::GoToPrevScreen()
void ScreenSMOnlineLogin::GoToNextScreen() void ScreenSMOnlineLogin::GoToNextScreen()
{ {
ExportOptions();
PREFSMAN->SaveGlobalPrefsToDisk(); PREFSMAN->SaveGlobalPrefsToDisk();
FOREACH_EnabledPlayer(pn) FOREACH_EnabledPlayer(pn)
{ {
@@ -119,8 +120,9 @@ void ScreenSMOnlineLogin::HandleScreenMessage(const ScreenMessage SM)
int Status = NSMAN->m_SMOnlinePacket.Read1(); int Status = NSMAN->m_SMOnlinePacket.Read1();
if(Status == 0) if(Status == 0)
{ {
NSMAN->isSMOLoggedIn[m_iPlayer++] = true; NSMAN->isSMOLoggedIn[m_iPlayer] = true;
if(GAMESTATE->IsPlayerEnabled((PlayerNumber) m_iPlayer)) m_iPlayer++;
if( GAMESTATE->IsPlayerEnabled((PlayerNumber) m_iPlayer) && m_iPlayer < NUM_PLAYERS )
SCREENMAN->Password(SM_PasswordDone, "You are logging on as:\n" + GAMESTATE->GetPlayerDisplayName((PlayerNumber) m_iPlayer) + "\n\nPlease enter you password.", NULL ); SCREENMAN->Password(SM_PasswordDone, "You are logging on as:\n" + GAMESTATE->GetPlayerDisplayName((PlayerNumber) m_iPlayer) + "\n\nPlease enter you password.", NULL );
else else
SCREENMAN->SetNewScreen(NEXT_SCREEN); SCREENMAN->SetNewScreen(NEXT_SCREEN);