本文整理汇总了C++中CAI_BaseNPC::GetState方法的典型用法代码示例。如果您正苦于以下问题:C++ CAI_BaseNPC::GetState方法的具体用法?C++ CAI_BaseNPC::GetState怎么用?C++ CAI_BaseNPC::GetState使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CAI_BaseNPC
的用法示例。
在下文中一共展示了CAI_BaseNPC::GetState方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ShouldDiscardMemory
bool CAI_Enemies::ShouldDiscardMemory( AI_EnemyInfo_t *pMemory )
{
CBaseEntity *pEnemy = pMemory->hEnemy;
if ( pEnemy )
{
CAI_BaseNPC *pEnemyNPC = pEnemy->MyNPCPointer();
if ( pEnemyNPC )
{
if ( pEnemyNPC->GetState() == NPC_STATE_DEAD )
return true;
// forget about the enemy if he changes faction
if ( pEnemyNPC->GetFaction() != pMemory->nFaction )
return true;
}
}
else
{
if ( !pMemory->bDangerMemory )
return true;
}
if ( !pMemory->bUnforgettable &&
gpGlobals->curtime > pMemory->timeLastSeen + m_flEnemyDiscardTime )
{
return true;
}
return false;
}
示例2: ResolveNames
void CAI_GoalEntity::ResolveNames()
{
m_actors.SetCount( 0 );
CBaseEntity *pEntity = NULL;
for (;;)
{
switch ( m_SearchType )
{
case ST_ENTNAME:
{
pEntity = gEntList.FindEntityByName( pEntity, m_iszActor, NULL );
break;
}
case ST_CLASSNAME:
{
pEntity = gEntList.FindEntityByClassname( pEntity, STRING( m_iszActor ) );
break;
}
}
if ( !pEntity )
break;
CAI_BaseNPC *pActor = pEntity->MyNPCPointer();
if ( pActor && pActor->GetState() != NPC_STATE_DEAD )
{
AIHANDLE temp;
temp = pActor;
m_actors.AddToTail( temp );
}
}
m_hGoalEntity = gEntList.FindEntityByName( NULL, m_iszGoal, NULL );
}