本文整理汇总了C++中Wall::id方法的典型用法代码示例。如果您正苦于以下问题:C++ Wall::id方法的具体用法?C++ Wall::id怎么用?C++ Wall::id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Wall
的用法示例。
在下文中一共展示了Wall::id方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateWalls
void Game::updateWalls(GameState* state)
{
//Add/update curwalls, copy curwalls into the state being pushed
map<int, GameObject*>& objects = state->map().objects();
for(map<int, GameObject*>::iterator cursor = objects.begin(); cursor != objects.end(); cursor++)
{
//Is the gameobject a wall?
Wall* wall = dynamic_cast<Wall*>(cursor->second);
if(wall != 0)
{
//Did we know this wall existed?
if(m_curWalls.count(wall->id()) == 0)
{
//No - make a copy of it
m_curWalls[wall->id()] = static_cast<Wall*>(wall->clone());
}
else
{
//Yes - update our copy of it
*(m_curWalls[wall->id()]) = *wall;
}
}
}
//Now copy m_curWalls into the list of objects for the state
for(map<int, Wall*>::iterator cursor = m_curWalls.begin(); cursor != m_curWalls.end(); cursor++)
{
//Does the state being pushed already have the wall in question?
if(objects.count(cursor->first) == 0)
{
//No - Make a copy and put it in there
cursor->second->setWithinView(false);
objects[cursor->first] = cursor->second->clone();
}
}
}