本文整理汇总了C++中WorldObject::isDead方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldObject::isDead方法的具体用法?C++ WorldObject::isDead怎么用?C++ WorldObject::isDead使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorldObject
的用法示例。
在下文中一共展示了WorldObject::isDead方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: massiveDamage
void World::massiveDamage(const Vec2 &pos, int range, int damage)
{
// Пробегаем по всем объектам.
for ( std::list< WorldObject* >::iterator it = items.begin();
it != items.end();
++it )
{
// Нас интересуют пони.
if ( ( *it )->isTargetable() )
{
WorldObject* unit = *it;
// Интересуют только живые пони.
if ( !unit->isDead() )
{
// Находим расстояние до этого пони.
double distance = unit->getPos().distance(pos);
// Если зацепили пони.
if ( distance < range )
{
unit->hit( static_cast< int > ( damage ) );
}
}
}
}
}
示例2:
WorldObject *World::getNearestTarget(const Vec2 &pos, int range)
{
double minRange = 100000000;
WorldObject *target = nullptr;
for (std::list<WorldObject *>::iterator it = items.begin();
it != items.end();
++it)
{
WorldObject *unit = *it;
if (!unit->isTargetable())
continue;
if (unit->isDead())
continue;
double distance = pos.distance(unit->getPos());
if (distance < range)
{
if (distance < minRange)
{
minRange = distance;
target = unit;
}
}
}
return target;
}