aliens have damage!

This commit is contained in:
2010-08-31 15:38:24 +04:00
parent 86e24ec276
commit 63a8de6c35
9 changed files with 127 additions and 48 deletions

View File

@@ -51,7 +51,8 @@ void AD_Graphics::drawBackground(QPainter * p, const QRectF & )
brush.setColor(Qt::white);
brush.setStyle(Qt::SolidPattern);
int cel = data->map->cells().at(i).at(j);
if (cel == Map::Wall) {
if (cel == Map::Wall)
{
pen.setColor(Qt::black);
brush.setColor(Qt::black);
}
@@ -63,35 +64,39 @@ void AD_Graphics::drawBackground(QPainter * p, const QRectF & )
// pen.setColor(Qt::yellow);
// brush.setColor(Qt::yellow);
// }
if (cel >= Map::Player) {
pen.setColor(QColor(cel%255,(cel*100)%255,(cel+100)%255,50));
brush.setColor(QColor(cel%255,(cel*100)%255,(cel+100)%255,50));
if (cel >= Map::Player || (cel <= Map::PlayerTower && cel !=Map::Wall))
{
pen.setColor(QColor(qAbs(cel)%255,(qAbs(cel)*100)%255,(qAbs(cel)+100)%255,50));
brush.setColor(QColor(qAbs(cel)%255,(qAbs(cel)*100)%255,(qAbs(cel)+100)%255,50));
}
p->setPen(pen);
p->setBrush(brush);
p->drawRect(i*cellSize,j*cellSize,cellSize,cellSize);
}
}
qDebug() << "t:" << data->curTowers.size();
for (QHash<QPoint, TowerType>::iterator i = data->curTowers.begin(); i != data->curTowers.end(); ++i) {
//qDebug() << "t:" << data->curTowers.size();
for (QHash<QPoint, TowerType>::iterator i = data->curTowers.begin(); i != data->curTowers.end(); ++i)
{
//qDebug() << "draw alien";
//p->rotate(-90);
//p->scale(cellSize, cellSize);
//p->translate(rec.width()/2, rec.height()/2);
//p->rotate(-90);
//p->translate(-rec.height()/2, -rec.width()/2);
QBrush brush;
brush.setColor(Qt::darkRed);
brush.setStyle(Qt::DiagCrossPattern);
p->translate((*i).pos * cellSize+QPointF(10,10));
//QBrush brush;
//brush.setColor(Qt::darkRed);
//brush.setStyle(Qt::DiagCrossPattern);
p->translate((*i).pos * cellSize+QPointF(20,20));
p->rotate((*i).angle);
p->setPen(QColor(0,0,0,0));
p->setBrush(brush);
p->drawRect(QRect(-10,-10,20,20));
//p->setPen(QColor(0,0,0,0));
//p->setBrush(brush);
//p->drawRect(QRect(-10,-10,20,20));
p->drawImage(QRect(-20,-20,40,40), images[itTowers][0]->at(0));
p->resetTransform();
}
qDebug() << "a:" << data->curAliens.size();
for (QHash<int, AlienType>::iterator i = data->curAliens.begin(); i != data->curAliens.end(); ++i) {
//qDebug() << "a:" << data->curAliens.size();
for (QHash<int, AlienType>::iterator i = data->curAliens.begin(); i != data->curAliens.end(); ++i)
{
//qDebug() << "draw alien";
//p->rotate(-90);
//p->scale(cellSize, cellSize);
@@ -103,22 +108,24 @@ void AD_Graphics::drawBackground(QPainter * p, const QRectF & )
p->drawImage(QRect(-20,-20,40,40), images[itAliens][0]->at(0));
p->resetTransform();
}
qDebug() << "s:" << data->curSplashes.size();
for (QHash<int, SplashType>::iterator i = data->curSplashes.begin(); i != data->curSplashes.end(); ++i) {
//qDebug() << "s:" << data->curSplashes.size();
for (QHash<int, SplashType>::iterator i = data->curSplashes.begin(); i != data->curSplashes.end(); ++i)
{
//qDebug() << "draw alien";
//p->rotate(-90);
//p->scale(cellSize, cellSize);
//p->translate(rec.width()/2, rec.height()/2);
//p->rotate(-90);
//p->translate(-rec.height()/2, -rec.width()/2);
QBrush brush;
brush.setColor(Qt::red);
brush.setStyle(Qt::SolidPattern);
//QBrush brush;
//brush.setColor(Qt::red);
//brush.setStyle(Qt::SolidPattern);
p->translate((*i).pos * cellSize+QPointF(10,10));
p->rotate((*i).angle);
p->setBrush(brush);
p->setPen(QColor(0,0,0,0));
p->drawEllipse(QPoint(),5,5);
//p->setBrush(brush);
//p->setPen(QColor(0,0,0,0));
//p->drawEllipse(QPoint(),5,5);
p->drawImage(QRect(-10,-10,20,20), images[itSplashes][0]->at(0));
p->resetTransform();
}
}
@@ -138,8 +145,12 @@ void AD_Graphics::loadImages()
for (int i = 0; i < images.size(); i++) {
switch ((imagesType)i) {
case itAliens:
images[i].push_back(new Animation(":/images/images/Aliens/Al_00_"));
images[i].push_back(new Animation(":/images/images/Aliens/Al_00_0.png"));
break;
case itTowers:
images[i].push_back(new Animation(":/images/images/Towers/01_6.png"));
case itSplashes:
images[i].push_back(new Animation(":/images/images/Splashes/Rocket.png"));
default: break;
}
}