Пример #1
0
void replayDevice::paintEvent(QPaintEvent *e)
{
    QPainter painter(this);
    //»­±³¾°
    painter.drawPixmap(0,0,600,600,QPixmap(":/image/humanai_back.png"));
    //»­¼õËÙÇøÓò
    for(int i = 0;i<=gameStatus.mapInfo.slowDownAreaNumber-1;i++)
    {
        painter.drawPixmap(toProCo(gameStatus.mapInfo.slowDownArea[i]).rx()-double(DS14::RADIUS_OF_SLOWDOWNAREA)/4,toProCo(gameStatus.mapInfo.slowDownArea[i]).ry()-double(DS14::RADIUS_OF_SLOWDOWNAREA)/4,double(2*DS14::RADIUS_OF_SLOWDOWNAREA)/4,double(2*DS14::RADIUS_OF_SLOWDOWNAREA)/4,QPixmap(":/image/slow.png"));
    }
    //»­±¬Õ¨ÇøÓò
    for(int i = 0;i<=5;i++)
    {
        if(gameStatus.missileArea[i].real)
        {
            painter.drawPixmap(toProCo(gameStatus.missileArea[i].centerPosition).rx()-double(gameStatus.missileArea[i].radius)/4,toProCo(gameStatus.missileArea[i].centerPosition).ry()-double(gameStatus.missileArea[i].radius)/4,double(gameStatus.missileArea[i].radius*2)/4,double(gameStatus.missileArea[i].radius*2)/4,QPixmap(":/image/missilearea.png"));
        }
    }
    //»­»ùµØ
    painter.drawPixmap(toProCo(gameStatus.mapInfo.AIBases[0]).rx()-double(DS14::BASE_RADIUS)/4,toProCo(gameStatus.mapInfo.AIBases[0]).ry()-double(DS14::BASE_RADIUS)/4,double(DS14::BASE_RADIUS*2)/4,double(DS14::BASE_RADIUS*2)/4,QPixmap(":/image/base1.png"));
    painter.drawPixmap(toProCo(gameStatus.mapInfo.AIBases[1]).rx()-double(DS14::BASE_RADIUS)/4,toProCo(gameStatus.mapInfo.AIBases[1]).ry()-double(DS14::BASE_RADIUS)/4,double(DS14::BASE_RADIUS*2)/4,double(DS14::BASE_RADIUS*2)/4,QPixmap(":/image/base2.png"));
    //»­³öÉúµã
    for(int i = 0;i<3;i++)
    {
        painter.drawPixmap(toProCo(gameStatus.mapInfo.AIHeroBirthPlace[0][i]).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.mapInfo.AIHeroBirthPlace[0][i]).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/birthPoint1.png"));
    }
    for(int i = 0;i<3;i++)
    {
        painter.drawPixmap(toProCo(gameStatus.mapInfo.AIHeroBirthPlace[1][i]).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.mapInfo.AIHeroBirthPlace[1][i]).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/birthPoint2.png"));
    }

    //»­Â·ÕÏ
    for(int i = 0;i<=gameStatus.mapInfo.roadBlockNumber-1;i++)
    {
        painter.drawPixmap(toProCo(gameStatus.mapInfo.roadBlock[i]).rx()-double(DS14::RADIUS_OF_ROADBLOCK)/4,toProCo(gameStatus.mapInfo.roadBlock[i]).ry()-double(DS14::RADIUS_OF_ROADBLOCK)/4,double(2*DS14::RADIUS_OF_ROADBLOCK)/4,double(2*DS14::RADIUS_OF_ROADBLOCK)/4,QPixmap(":/image/stuck.png"));
    }

    //±ê¼ÇÑ¡ÔñµÄÓ¢ÐÛ
    if (humanSide == 2)
        painter.drawPixmap(toProCo(gameStatus.AI2HeroInfo[heroChoosen].heroPosition).rx()-double(DS14::HERO_RADIUS)/4-2,toProCo(gameStatus.AI2HeroInfo[heroChoosen].heroPosition).ry()-double(DS14::HERO_RADIUS)/4-2,double(2*DS14::HERO_RADIUS)/4+4,double(2*DS14::HERO_RADIUS)/4+4,QPixmap(":/image/select.png"));
    else painter.drawPixmap(toProCo(gameStatus.AI1HeroInfo[heroChoosen].heroPosition).rx()-double(DS14::HERO_RADIUS)/4-2,toProCo(gameStatus.AI1HeroInfo[heroChoosen].heroPosition).ry()-double(DS14::HERO_RADIUS)/4-2,double(2*DS14::HERO_RADIUS)/4+4,double(2*DS14::HERO_RADIUS)/4+4,QPixmap(":/image/select.png"));

    //»­µØͼÉÏÃæµÄÓ¢ÐÛ
    for(int i = 1;i<=6;i++)
    {
        if(i<=3)
        {
            if (gameStatus.AI1HeroInfo[i-1].hasSword)
                painter.drawPixmap(toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/hero1s.png"));
            else painter.drawPixmap(toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/hero1.png"));
        }
        else
        {
            if (gameStatus.AI2HeroInfo[i-4].hasSword)
                painter.drawPixmap(toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/hero2s.png"));
            else painter.drawPixmap(toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/image/hero2.png"));
        }
    }
    //»­°ü×Ó
    for(int i = 0;i<gameStatus.swordInfo.groundNumber;i++)
    {
        painter.drawPixmap(toProCo(gameStatus.swordInfo.groundSwords[i]).rx()-double(DS14::SWORD_RADIUS)/4,toProCo(gameStatus.swordInfo.groundSwords[i]).ry()-double(DS14::SWORD_RADIUS)/4,double(2*DS14::SWORD_RADIUS)/4,double(2*DS14::SWORD_RADIUS)/4,QPixmap(":/image/jian.png"));
    }
    if(!gameStatus.swordInfo.CentreSwordCD)
    {
        DS14::Coordinate center;
        center.x = 0;
        center.y = 0;
        painter.drawPixmap(toProCo(center).rx()-double(DS14::SWORD_RADIUS)/4,toProCo(center).ry()-double(DS14::SWORD_RADIUS)/4,double(DS14::SWORD_RADIUS)*2/4,double(DS14::SWORD_RADIUS*2/4),QPixmap(":/image/jian.png"));
    }

}
Пример #2
0
void replayDevice::paintEvent(QPaintEvent *e)
{
    QPainter * painter = new QPainter(this);
    //»­±³¾°
    painter->drawPixmap(0,0,600,600,QPixmap(":/images/background.png"));
    //»­¼õËÙÇøÓò
    for(int i = 0;i<=gameStatus.mapInfo.slowDownAreaNumber-1;i++)
    {
        painter->drawPixmap(toProCo(gameStatus.mapInfo.slowDownArea[i]).rx()-double(DS14::RADIUS_OF_SLOWDOWNAREA)/4,toProCo(gameStatus.mapInfo.slowDownArea[i]).ry()-double(DS14::RADIUS_OF_SLOWDOWNAREA)/4,double(2*DS14::RADIUS_OF_SLOWDOWNAREA)/4,double(2*DS14::RADIUS_OF_SLOWDOWNAREA)/4,QPixmap(":/images/slow.png"));
    }
    //»­±¬Õ¨ÇøÓò
    for(int i = 0;i<=5;i++)
    {
        if(gameStatus.missleArea[i].real)
        {
            painter->drawPixmap(toProCo(gameStatus.missleArea[i].centerPosition).rx()-double(gameStatus.missleArea[i].radius)/4,toProCo(gameStatus.missleArea[i].centerPosition).ry()-double(gameStatus.missleArea[i].radius)/4,double(gameStatus.missleArea[i].radius*2)/4,double(gameStatus.missleArea[i].radius*2)/4,QPixmap(":/images/missilearea.png"));
        }
    }
    //»­»ùµØ
    painter->drawPixmap(toProCo(gameStatus.mapInfo.AIBases[0]).rx()-double(DS14::BASE_RADIUS)/4,toProCo(gameStatus.mapInfo.AIBases[0]).ry()-double(DS14::BASE_RADIUS)/4,double(DS14::BASE_RADIUS*2)/4,double(DS14::BASE_RADIUS*2)/4,QPixmap(":/images/base1.png"));
    painter->drawPixmap(toProCo(gameStatus.mapInfo.AIBases[1]).rx()-double(DS14::BASE_RADIUS)/4,toProCo(gameStatus.mapInfo.AIBases[1]).ry()-double(DS14::BASE_RADIUS)/4,double(DS14::BASE_RADIUS*2)/4,double(DS14::BASE_RADIUS*2)/4,QPixmap(":/images/base2.png"));
    //»­³öÉúµã
    for(int i = 0;i<3;i++)
    {
        painter->drawPixmap(toProCo(gameStatus.mapInfo.AIHeroBirthPlace[0][i]).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.mapInfo.AIHeroBirthPlace[0][i]).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/birthPoint1.png"));
        painter->drawPixmap(toProCo(gameStatus.mapInfo.AIHeroBirthPlace[1][i]).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.mapInfo.AIHeroBirthPlace[1][i]).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/birthPoint2.png"));

    }

    //»­Â·ÕÏ
    for(int i = 0;i<=gameStatus.mapInfo.roadBlockNumber-1;i++)
    {
        painter->drawPixmap(toProCo(gameStatus.mapInfo.roadBlock[i]).rx()-double(DS14::RADIUS_OF_ROADBLOCK)/4,toProCo(gameStatus.mapInfo.roadBlock[i]).ry()-double(DS14::RADIUS_OF_ROADBLOCK)/4,double(2*DS14::RADIUS_OF_ROADBLOCK)/4,double(2*DS14::RADIUS_OF_ROADBLOCK)/4,QPixmap(":/images/stuck.png"));
    }

    //»­µØͼÉÏÃæµÄÓ¢ÐÛ
    for(int i = 1;i<=6;i++)
    {
        if(i<=3)
        {
            if (gameStatus.AI1HeroInfo[i-1].hasPot)
                painter->drawPixmap(toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/hero1s.png"));
            else
                painter->drawPixmap(toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI1HeroInfo[i-1].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/hero1.png"));
        }
        else
        {
            if (gameStatus.AI2HeroInfo[i-4].hasPot)
                painter->drawPixmap(toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/hero2s.png"));
            else
                painter->drawPixmap(toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).rx()-double(DS14::HERO_RADIUS)/4,toProCo(gameStatus.AI2HeroInfo[i-4].heroPosition).ry()-double(DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,double(2*DS14::HERO_RADIUS)/4,QPixmap(":/images/hero2.png"));
        }
    }

    //»­°ü×Ó
    for(int i = 0;i<gameStatus.potInfo.groundNumber;i++)
    {
        painter->drawPixmap(toProCo(gameStatus.potInfo.groundPots[i]).rx()-double(DS14::POT_RADIUS)/4,toProCo(gameStatus.potInfo.groundPots[i]).ry()-double(DS14::POT_RADIUS)/4,double(2*DS14::POT_RADIUS)/4,double(2*DS14::POT_RADIUS)/4,QPixmap(":/images/jian.png"));
    }
    if(!gameStatus.potInfo.QingFenCD)
    {
        DS14::Coordinate center;
        center.x = 0;
        center.y = 0;
        painter->drawPixmap(toProCo(center).rx()-double(DS14::POT_RADIUS)/4,toProCo(center).ry()-double(DS14::POT_RADIUS)/4,double(DS14::POT_RADIUS)*2/4,double(DS14::POT_RADIUS*2/4),QPixmap(":/images/jian.png"));
    }

}