本文整理汇总了C++中Wall::getHp方法的典型用法代码示例。如果您正苦于以下问题:C++ Wall::getHp方法的具体用法?C++ Wall::getHp怎么用?C++ Wall::getHp使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Wall
的用法示例。
在下文中一共展示了Wall::getHp方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: moveBullets
void World::moveBullets()
{
for (int q = 0; q < _bulletList.size(); q++) {
if (_bulletList[q]->getKillAnimation() != 0) {
if (_bulletList[q]->getKillAnimation() == 10) {
delete _bulletList[q];
_bulletList.remove(q);
} else {
_bulletList[q]->animation();
}
} else {
QPoint pos = _bulletList[q]->getPos();
bool withTank;
void *status = testCollision(_bulletList[q]->getSpeed(), _bulletList[q], false, &withTank);
if (status == nullptr) {
switch (_bulletList[q]->getAngle()) {
case 0: {
_bulletList[q]->setPos(QPoint(pos.x(), pos.y() - _bulletList[q]->getSpeed()));
break;
}
case 1: {
_bulletList[q]->setPos(QPoint(pos.x() + _bulletList[q]->getSpeed(), pos.y()));
break;
}
case 2: {
_bulletList[q]->setPos(QPoint(pos.x(), pos.y() + _bulletList[q]->getSpeed()));
break;
}
case 3: {
_bulletList[q]->setPos(QPoint(pos.x() - _bulletList[q]->getSpeed(), pos.y()));
break;
}
}
} else {
if (withTank) {
Tank *tank = ((Tank*)status);
tank->hit();
if (tank->getHp() == 0) {
tank->setSize(0);
}
} else {
Wall *wall = ((Wall*)status);
wall->hit();
if (wall->getHp() == 0) {
for (int i = 0; i < _wallList.size(); i++) {
if (_wallList[i] == wall) {
if (_wallList[i] == _playerBase) {
_playerBase = nullptr;
}
delete _wallList[i];
_wallList.remove(i);
}
}
}
}
_bulletList[q]->animation();
}
}
}
}