aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/range.cpp
diff options
context:
space:
mode:
authorobiwankennedy <renaud@rolisteam.org>2014-01-16 11:20:36 +0100
committerobiwankennedy <renaud@rolisteam.org>2014-01-16 11:20:36 +0100
commitc8130a4789d80fef5e4e070f3588f901c0e59fac (patch)
treee3c8350b2ba45686378297f8370498fe7a085dac /range.cpp
parentdbaad0add73fdfa2afa91a8329dc3aa58e3418cc (diff)
downloadOneRoll-c8130a4789d80fef5e4e070f3588f901c0e59fac.tar.gz
OneRoll-c8130a4789d80fef5e4e070f3588f901c0e59fac.zip
Update range.cpp
hasValid API
Diffstat (limited to 'range.cpp')
-rw-r--r--range.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/range.cpp b/range.cpp
index df70ef7..81a5ad9 100644
--- a/range.cpp
+++ b/range.cpp
@@ -11,11 +11,23 @@ void Range::setValue(qint64 s,qint64 e)
m_end=e;
}
-bool Range::isValid(Die* m) const
+qint64 Range::hasValid(Die* m,bool recursive) const
{
- if((m->getLastRolledValue()>=m_start)&&(m->getLastRolledValue()<=m_end))
+ if(recursive)
{
- return true;
+ qint64 i = 0;
+ foreach(qint64 value, m->getListValue())
+ {
+ if((value>=m_start)&&(value<=m_end))
+ {
+ ++i;
+ }
+ }
+ return i;
}
- return false;
+ else if((m->getLastRolledValue()>=m_start)&&(m->getLastRolledValue()<=m_end))
+ {
+ return 1;
+ }
+ return 0;
}