本文整理汇总了C++中IPlayerProfile::GetUserId方法的典型用法代码示例。如果您正苦于以下问题:C++ IPlayerProfile::GetUserId方法的具体用法?C++ IPlayerProfile::GetUserId怎么用?C++ IPlayerProfile::GetUserId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPlayerProfile
的用法示例。
在下文中一共展示了IPlayerProfile::GetUserId方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnStep
EContextEstablishTaskResult OnStep(SContextEstablishState& state)
{
IActionMapManager *pActionMapMan = CCryAction::GetCryAction()->GetIActionMapManager();
CRY_ASSERT(pActionMapMan);
IActionMap* pDefaultActionMap = NULL;
IActionMap* pDebugActionMap = NULL;
IActionMap* pPlayerActionMap = NULL;
IActionMap* pPlayerGamemodeActionMap = NULL;
const char* disableGamemodeActionMapName = "player_mp";
const char* gamemodeActionMapName = "player_sp";
if(gEnv->bMultiplayer)
{
disableGamemodeActionMapName = "player_sp";
gamemodeActionMapName = "player_mp";
}
if (true)
{
IPlayerProfileManager* pPPMgr = CCryAction::GetCryAction()->GetIPlayerProfileManager();
if (pPPMgr)
{
int userCount = pPPMgr->GetUserCount();
IPlayerProfile* pProfile = NULL;
const char* userId = "UNKNOWN";
if (userCount == 0)
{
if (gEnv->pSystem->IsDevMode())
{
#ifndef _RELEASE
//In devmode and not release get the default user if no users are signed in e.g. autotesting, map on the command line
pProfile = pPPMgr->GetDefaultProfile();
if (pProfile)
{
userId = pProfile->GetUserId();
}
#endif // #ifndef _RELEASE
}
else
{
CryFatalError("[PlayerProfiles] CGameContext::StartGame: No users logged in");
return eCETR_Failed;
}
}
if (userCount > 0)
{
IPlayerProfileManager::SUserInfo info;
pPPMgr->GetUserInfo(0, info);
pProfile = pPPMgr->GetCurrentProfile(info.userId);
userId = info.userId;
}
if (pProfile)
{
pDefaultActionMap = pProfile->GetActionMap("default");
pDebugActionMap = pProfile->GetActionMap("debug");
pPlayerActionMap = pProfile->GetActionMap("player");
if (pDefaultActionMap == 0 && pPlayerActionMap == 0)
{
CryFatalError("[PlayerProfiles] CGameContext::StartGame: User '%s' has no actionmap 'default'!", userId);
return eCETR_Failed;
}
}
else
{
CryFatalError("[PlayerProfiles] CGameContext::StartGame: User '%s' has no active profile!", userId);
return eCETR_Failed;
}
}
else
{
CryFatalError("[PlayerProfiles] CGameContext::StartGame: No player profile manager!");
return eCETR_Failed;
}
}
if (pDefaultActionMap == 0 )
{
// use action map without any profile stuff
pActionMapMan->EnableActionMap( "default", true );
pDefaultActionMap = pActionMapMan->GetActionMap("default");
CRY_ASSERT_MESSAGE(pDefaultActionMap, "'default' action map not found!");
}
if (pDebugActionMap == 0 )
{
// use action map without any profile stuff
pActionMapMan->EnableActionMap( "debug", true );
pDebugActionMap = pActionMapMan->GetActionMap("debug");
}
if (pPlayerActionMap == 0)
{
pActionMapMan->EnableActionMap( "player", true );
pPlayerActionMap = pActionMapMan->GetActionMap("player");
}
//.........这里部分代码省略.........