本文整理汇总了C++中CBaseTFPlayer::GetPlayerClass方法的典型用法代码示例。如果您正苦于以下问题:C++ CBaseTFPlayer::GetPlayerClass方法的具体用法?C++ CBaseTFPlayer::GetPlayerClass怎么用?C++ CBaseTFPlayer::GetPlayerClass使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CBaseTFPlayer
的用法示例。
在下文中一共展示了CBaseTFPlayer::GetPlayerClass方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PlayerDied
//-----------------------------------------------------------------------------
// Purpose: My player has just died
//-----------------------------------------------------------------------------
void CPlayerClass::PlayerDied( CBaseEntity *pAttacker )
{
if ( pAttacker )
{
CBaseTFPlayer *pAttackerPlayer = dynamic_cast< CBaseTFPlayer* >( pAttacker );
if ( pAttackerPlayer )
{
CPlayerClass *pAttackerClass = pAttackerPlayer->GetPlayerClass();
if ( pAttackerClass )
{
int iStatGroup = GetStatGroupFor( pAttackerPlayer );
g_PlayerClassStats[ iStatGroup ].m_InterClassStats[GetTFClass()].m_nKills++;
}
}
}
}
示例2: OnTakeDamage
//-----------------------------------------------------------------------------
// Purpose: The player has taken damage. Return the damage done.
//-----------------------------------------------------------------------------
float CPlayerClass::OnTakeDamage( const CTakeDamageInfo &info )
{
if ( info.GetAttacker() )
{
CBaseTFPlayer *pPlayer = dynamic_cast< CBaseTFPlayer* >( info.GetAttacker() );
if ( pPlayer && pPlayer->GetPlayerClass() )
{
int iStatGroup = GetStatGroupFor( pPlayer );
CInterClassStats *pInter = &g_PlayerClassStats[iStatGroup].m_InterClassStats[GetTFClass()];
pInter->m_flTotalDamageInflicted += info.GetDamage();
float flDistToAttacker = pPlayer->GetAbsOrigin().DistTo( GetPlayer()->GetAbsOrigin() );
pInter->m_flTotalEngagementDist += flDistToAttacker;
pInter->m_nEngagements++;
if ( gpGlobals->curtime >= m_flNormalizedEngagementNextTime )
{
pInter->m_flTotalNormalizedEngagementDist += flDistToAttacker;
pInter->m_nNormalizedEngagements++;
m_flNormalizedEngagementNextTime = gpGlobals->curtime + 3;
}
// Store detailed stats for the shot?
if ( tf_DetailedStats.GetInt() )
{
CShotInfo shotInfo;
shotInfo.m_flDistance = flDistToAttacker;
shotInfo.m_nDamage = (int)info.GetDamage();
g_ClassShotInfos[iStatGroup].AddToTail( shotInfo );
}
}
}
return info.GetDamage();
}