/* ======================== idSignInManagerWin::Pump ======================== */ void idSignInManagerWin::Pump() { // If we have more users than we need, then set to the lower amount // (don't remove the master user though) if( localUsers.Num() > 1 && localUsers.Num() > maxDesiredLocalUsers ) { localUsers.SetNum( maxDesiredLocalUsers ); } #ifndef ID_RETAIL // If we don't have enough, then make sure we do // NOTE - We always want at least one user on windows for now, // and this master user will always use controller 0 while( localUsers.Num() < minDesiredLocalUsers ) { RegisterLocalUser( localUsers.Num() ); } #endif // See if we need to save settings on any of the profiles for( int i = 0; i < localUsers.Num(); i++ ) { localUsers[i].Pump(); } }
/* ======================== idSignInManagerWin::CreateNewUser ======================== */ bool idSignInManagerWin::CreateNewUser( winUserState_t & state ) { //idScopedGlobalHeap everythingHereGoesInTheGlobalHeap; // users obviously persist across maps RemoveAllLocalUsers(); RegisterLocalUser( state.inputDevice ); if ( localUsers.Num() > 0 ) { if ( !localUsers[0].VerifyUserState( state ) ) { RemoveAllLocalUsers(); } } return true; }