本文整理汇总了C++中Array::GetElementNumber方法的典型用法代码示例。如果您正苦于以下问题:C++ Array::GetElementNumber方法的具体用法?C++ Array::GetElementNumber怎么用?C++ Array::GetElementNumber使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Array
的用法示例。
在下文中一共展示了Array::GetElementNumber方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: LookupEnemy
//.........这里部分代码省略.........
if (player->v.renderfx == kRenderFxGlowShell && GetGameMod() == 1)
continue;
// do some blind by smoke grenade
if (IsBehindSmokeClouds (player) && m_blindRecognizeTime < engine->GetTime ())
m_blindRecognizeTime = engine->GetTime () + engine->RandomFloat (2.0, 3.0f);
if (player->v.button & (IN_ATTACK | IN_ATTACK2))
m_blindRecognizeTime = engine->GetTime () - 0.1f;
// see if bot can see the player...
if (m_blindRecognizeTime < engine->GetTime () && IsEnemyViewable (player))
{
float distance = (player->v.origin - pev->origin).GetLength ();
if (distance < nearestDistance)
{
enemies.Push (player);
if (IsEnemyProtectedByShield (player))
continue;
nearestDistance = distance;
newEnemy = player;
// aim VIP first on AS maps...
if ((g_mapType & MAP_AS) && *(INFOKEY_VALUE (GET_INFOKEYBUFFER (player), "model")) == 'v')
break;
}
}
}
// if we got no enemies with no shield, and got enemies with target them
if (enemies.GetElementNumber () != 0 && !IsValidPlayer (newEnemy))
newEnemy = enemies[0];
}
if (IsValidPlayer (newEnemy))
{
g_botsCanPause = true;
m_aimFlags |= AIM_ENEMY;
if (newEnemy == m_enemy)
{
// if enemy is still visible and in field of view, keep it keep track of when we last saw an enemy
m_seeEnemyTime = engine->GetTime ();
// zero out reaction time
m_actualReactionTime = 0.0f;
m_lastEnemy = newEnemy;
m_lastEnemyOrigin = newEnemy->v.origin;
m_GetNewEnemyTimer = engine->GetTime () + 0.8;
return true;
}
else
{
if (m_seeEnemyTime + 3.0f < engine->GetTime () && (pev->weapons & (1 << WEAPON_C4) || HasHostage () || !FNullEnt (m_targetEntity)))
RadioMessage (Radio_EnemySpotted);
m_targetEntity = null; // stop following when we see an enemy...
if (engine->RandomInt (0, 100) < m_skill)
m_enemySurpriseTime = engine->GetTime () + (m_actualReactionTime / 3);
else