本文整理汇总了C++中ActorList::erase方法的典型用法代码示例。如果您正苦于以下问题:C++ ActorList::erase方法的具体用法?C++ ActorList::erase怎么用?C++ ActorList::erase使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ActorList
的用法示例。
在下文中一共展示了ActorList::erase方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: walk
bool walk( Actor& a, Vec dir )
{
auto sgn = [](int x){return x>0? 1 : x<0? -1 : 0;};
Vec newPos = a.pos + Vec( sgn, dir );
ActorList::iterator actorHere = actor_at( newPos );
if( actorHere != actors.end() )
{
std::string message( 1, a.image );
bool killed = attack( a, *actorHere );
log( "%c %s %c", a.image, killed? "killed":"hit", actorHere->image );
if( killed )
actors.erase( actorHere );
}
else if( map.get(newPos) != '#' )
{
a.pos = newPos;
}
else
{
return false;
}
a.cooldown += 25 / a.speed;
return true;
}