aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2017-02-12 11:05:54 +0100
committerRenaud G <renaud@rolisteam.org>2017-02-12 11:05:54 +0100
commitb0ddec64a03135484a7439a65de8486974f08499 (patch)
tree5e3a845183fd78d6b07903983feeae26edf73308
parent32f164c6e807c4f3d6fab3b147d1cf98e7a949c0 (diff)
downloadOneRoll-b0ddec64a03135484a7439a65de8486974f08499.tar.gz
OneRoll-b0ddec64a03135484a7439a65de8486974f08499.zip
-Fix range management for DF dice.
-rw-r--r--die.cpp20
-rw-r--r--die.h5
2 files changed, 19 insertions, 6 deletions
diff --git a/die.cpp b/die.cpp
index 979c8c9..49b30ac 100644
--- a/die.cpp
+++ b/die.cpp
@@ -44,7 +44,7 @@ Die::Die(const Die& die)
m_selected = die.m_selected;
m_hasValue = die.m_hasValue;
m_displayStatus = die.m_displayStatus;
- m_faces = die.m_faces;
+ m_maxValue = die.m_maxValue;
m_highlighted = die.m_highlighted;
m_base = die.m_base;
m_color = die.getColor();
@@ -103,11 +103,11 @@ void Die::replaceLastValue(qint64 value)
void Die::roll(bool adding)
{
- if(m_faces!=0)
+ if(m_maxValue!=0)
{
//quint64 value=(qrand()%m_faces)+m_base;
- std::uniform_int_distribution<qint64> dist(m_base,m_faces);
+ std::uniform_int_distribution<qint64> dist(m_base,m_maxValue);
qint64 value = dist(m_rng);
if((adding)||(m_rollResult.isEmpty()))
{
@@ -122,12 +122,12 @@ void Die::roll(bool adding)
quint64 Die::getFaces() const
{
- return m_faces;
+ return abs(m_maxValue-m_base)+1;
}
void Die::setFaces(quint64 face)
{
- m_faces=face;
+ //m_maxValue=m_base+face-1;
}
qint64 Die::getLastRolledValue()
{
@@ -169,3 +169,13 @@ void Die::setColor(const QString &color)
m_color = color;
}
+quint64 Die::getMaxValue() const
+{
+ return m_maxValue;
+}
+
+void Die::setMaxValue(const quint64 &maxValue)
+{
+ m_maxValue = maxValue;
+}
+
diff --git a/die.h b/die.h
index 6f3af8c..5899bab 100644
--- a/die.h
+++ b/die.h
@@ -128,6 +128,9 @@ public:
QString getColor() const;
void setColor(const QString &color);
+ quint64 getMaxValue() const;
+ void setMaxValue(const quint64 &maxValue);
+
private:
qint64 m_value;
QList<qint64> m_rollResult;
@@ -135,7 +138,7 @@ private:
bool m_hasValue;
bool m_displayStatus;
bool m_highlighted;
- quint64 m_faces;
+ quint64 m_maxValue;
qint64 m_base;
QString m_color;