-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhitrolldialog.cpp
More file actions
50 lines (44 loc) · 1.13 KB
/
hitrolldialog.cpp
File metadata and controls
50 lines (44 loc) · 1.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include "hitrolldialog.h"
#include "ui_hitrolldialog.h"
HitRollDialog::HitRollDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::HitRollDialog)
{
ui->setupUi(this);
_attack = 0;
_defence = 0;
_attacker = NULL;
_defender = NULL;
}
HitRollDialog::~HitRollDialog()
{
delete ui;
}
void HitRollDialog::setParticipants(Player* attacker, Player* defender)
{
_attacker = attacker;
_defender = defender;
ui->_attacker->setText(QString("%1").arg(attacker->name()));
ui->_defender->setText(QString("%1").arg(defender->name()));
updateTarget();
}
void HitRollDialog::setAttack(int attack)
{
_attack = attack;
ui->_attack->setText(QString("%1").arg(_attack));
updateTarget();
}
void HitRollDialog::setDefence(int defence)
{
_defence = defence;
ui->_defence->setText(QString("%1").arg(_defence));
updateTarget();
}
void HitRollDialog::updateTarget()
{
if (!_attacker)
return;
if (_defender->hasShield())
ui->_shield->setText("Shield hit required\nby defender");
ui->_target->setText(QString("Less or equal\n than \n %1 with D20").arg(_attack-_defence));
}