aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/libparser/die.cpp
diff options
context:
space:
mode:
authorRenaud Guezennec <renaud@rolisteam.org>2024-12-29 14:43:33 +0100
committerRenaud Guezennec <renaud@rolisteam.org>2024-12-29 15:18:51 +0100
commit3f56b91ca67c6fa5a407bd5df39808dc742cd693 (patch)
treec621b6d558943b00b764cda3e31dcb5c1e73f745 /src/libparser/die.cpp
parent5c508b351a95f416e4a599f76902b888369de1b4 (diff)
downloadOneRoll-3f56b91ca67c6fa5a407bd5df39808dc742cd693.tar.gz
OneRoll-3f56b91ca67c6fa5a407bd5df39808dc742cd693.zip
Fix #62: endless loop with list of values
Diffstat (limited to 'src/libparser/die.cpp')
-rw-r--r--src/libparser/die.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libparser/die.cpp b/src/libparser/die.cpp
index 021ba5e..c1888b3 100644
--- a/src/libparser/die.cpp
+++ b/src/libparser/die.cpp
@@ -165,6 +165,8 @@ void Die::replaceLastValue(qint64 value)
void Die::roll(bool adding)
{
+ if(m_base > m_maxValue)
+ return;
std::uniform_int_distribution<qint64> dist(m_base, m_maxValue);
qint64 value= dist(s_rng);
if((adding) || (m_rollResult.isEmpty()))
@@ -213,7 +215,7 @@ void Die::setBase(qint64 base)
{
m_base= base;
}
-qint64 Die::getBase()
+qint64 Die::getBase() const
{
return m_base;
}