本文整理汇总了C++中Bot::Update方法的典型用法代码示例。如果您正苦于以下问题:C++ Bot::Update方法的具体用法?C++ Bot::Update怎么用?C++ Bot::Update使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Bot
的用法示例。
在下文中一共展示了Bot::Update方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
// AI_run() is called by DEFCON during every game update cycle (every 100ms)
extern "C" bool AI_run()
{
m_bot.Update();
return true;
}
示例2: Update
void GameEngine::Update(float dt)
{
if (gameover)
return;
handleInput();
// simulate physics
m_world->Step(dt, 8, 3);
// update entity
bot.Update();
// update game scenario
elapsedTime = glutGet(GLUT_ELAPSED_TIME) - initializedTime;
long additionalBullets = elapsedTime / 2000;
if (m_bulletCount < MAX_BULLET_COUNT + additionalBullets) {
createBullet();
}
typedef std::list<b2Body*> BodyList;
BodyList::iterator end = m_bullets.end();
for (BodyList::iterator it = m_bullets.begin(); it != end; ++it) {
b2Body* bullet = *it;
const b2Vec2& pos = bullet->GetPosition();
if (pos.x < 0 || pos.x > m_stage.upperBound.x || pos.y < 0 || pos.y > m_stage.upperBound.y) {
--m_bulletCount;
m_bullets.erase(it);
continue;
}
}
if (bot.GetState() == BOT_STATE_DEAD) {
// stop the world
gameover = true;
#ifdef _WIN32
PlaySound(TEXT("scifi011.wav"), NULL, SND_ASYNC);
#endif
}
}