You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.6 KiB
59 lines
1.6 KiB
6 months ago
|
#include "enemybig.h"
|
||
|
#include "gamewidget.h"
|
||
|
|
||
|
// enemyBig::enemyBig(Player *_player, int _HP, int _AttackPoint, qreal _Speed, int _exp)
|
||
|
// :EnemyBase(_player,_HP,_AttackPoint,_Speed,_exp)
|
||
|
// {
|
||
|
// this->setPixmap(QPixmap(":/roles/img/roles/chimera3.png"));
|
||
|
// this->setScale(0.14);
|
||
|
// mNo = 3;
|
||
|
|
||
|
// skillTimer = new QTimer(this);
|
||
|
|
||
|
// skillTimer->start(2000);
|
||
|
// connect(skillTimer,&QTimer::timeout,this,&enemyBig::startSkill);
|
||
|
|
||
|
// //设置特效音
|
||
|
// SFXplayer = new QMediaPlayer(this);
|
||
|
// audiooutput = new QAudioOutput(this);
|
||
|
// SFXplayer->setAudioOutput(audiooutput);
|
||
|
// SFXplayer->setSource(QUrl("qrc:/sfx/sounds/bigSFX.MP3"));
|
||
|
// }
|
||
|
enemyBig::enemyBig(Player *_player, int _HP, int _AttackPoint, qreal _Speed, int _exp)
|
||
|
: EnemyBase(_player, _HP, _AttackPoint, _Speed, _exp)
|
||
|
{
|
||
|
this->setPixmap(QPixmap(":/roles/img/roles/chimera3.png"));
|
||
|
this->setScale(0.14);
|
||
|
mNo = 3;
|
||
|
|
||
|
skillTimer = new QTimer(this);
|
||
|
skillTimer->start(2000);
|
||
|
connect(skillTimer, &QTimer::timeout, this, &enemyBig::startSkill);
|
||
|
|
||
|
// 设置特效音
|
||
|
SFXplayer = new QMediaPlayer(this);
|
||
|
QUrl audioUrl = QUrl::fromLocalFile("qrc:/sfx/sounds/bigSFX.MP3");
|
||
|
SFXplayer->setMedia(QMediaContent(audioUrl));
|
||
|
|
||
|
}
|
||
|
|
||
|
void enemyBig::setMirrorPixmap()
|
||
|
{
|
||
|
EnemyBase::setMirrorPixmap();
|
||
|
}
|
||
|
|
||
|
void enemyBig::startSkill()
|
||
|
{
|
||
|
if(!GameWidget::widget->isRunning) return ;
|
||
|
//qDebug() << "skill start";
|
||
|
if(scale()<0.5)
|
||
|
{
|
||
|
mSpeed *= 1.2;
|
||
|
mAttackPoint *= 1.3;
|
||
|
mHP /= 2;
|
||
|
setScale(scale() + 0.03);
|
||
|
if(mHP == 0) mHP = 1;
|
||
|
}
|
||
|
SFXplayer->play();
|
||
|
}
|