aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/node/listsetrollnode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'node/listsetrollnode.cpp')
-rw-r--r--node/listsetrollnode.cpp98
1 files changed, 47 insertions, 51 deletions
diff --git a/node/listsetrollnode.cpp b/node/listsetrollnode.cpp
index 8771866..ffa0f03 100644
--- a/node/listsetrollnode.cpp
+++ b/node/listsetrollnode.cpp
@@ -21,18 +21,17 @@
#include "listsetrollnode.h"
#include "die.h"
-ListSetRollNode::ListSetRollNode()
- :m_diceResult(new DiceResult()),m_stringResult(new StringResult()),m_unique(false)
+ListSetRollNode::ListSetRollNode() : m_diceResult(new DiceResult()), m_stringResult(new StringResult()), m_unique(false)
{
- m_result = m_stringResult;
+ m_result= m_stringResult;
}
ListSetRollNode::~ListSetRollNode()
{
- if(nullptr!=m_diceResult)
- {
- delete m_diceResult;
- m_diceResult =nullptr;
- }
+ if(nullptr != m_diceResult)
+ {
+ delete m_diceResult;
+ m_diceResult= nullptr;
+ }
}
QStringList ListSetRollNode::getList() const
@@ -41,49 +40,49 @@ QStringList ListSetRollNode::getList() const
}
QString ListSetRollNode::toString(bool wl) const
{
- if(wl)
- {
- return QString("%1 [label=\"ListSetRoll list:%2\"]").arg(m_id,m_values.join(","));
- }
- else
- {
- return m_id;
- }
-
+ if(wl)
+ {
+ return QString("%1 [label=\"ListSetRoll list:%2\"]").arg(m_id, m_values.join(","));
+ }
+ else
+ {
+ return m_id;
+ }
}
qint64 ListSetRollNode::getPriority() const
{
- qint64 priority=4;
+ qint64 priority= 4;
return priority;
}
void ListSetRollNode::run(ExecutionNode* previous)
{
- m_previousNode = previous;
- if(nullptr!=previous)
+ m_previousNode= previous;
+ if(nullptr != previous)
{
- Result* result=previous->getResult();
- if(nullptr!=result)
+ Result* result= previous->getResult();
+ if(nullptr != result)
{
- quint64 diceCount = result->getResult(Result::SCALAR).toReal();
+ quint64 diceCount= result->getResult(Result::SCALAR).toReal();
if(diceCount > static_cast<quint64>(m_values.size()) && m_unique)
{
- m_errors.insert(TOO_MANY_DICE,QObject::tr("More unique values asked than possible values (L operator)"));
+ m_errors.insert(
+ TOO_MANY_DICE, QObject::tr("More unique values asked than possible values (L operator)"));
}
else
{
m_result->setPrevious(result);
QStringList rollResult;
- for(quint64 i=0; i < diceCount ; ++i)
+ for(quint64 i= 0; i < diceCount; ++i)
{
- Die* die = new Die();
+ Die* die= new Die();
computeFacesNumber(die);
die->roll();
m_diceResult->insertResult(die);
- getValueFromDie(die,rollResult);
+ getValueFromDie(die, rollResult);
}
m_stringResult->setText(rollResult.join(","));
}
- if(nullptr!=m_nextNode)
+ if(nullptr != m_nextNode)
{
m_nextNode->run(this);
}
@@ -92,15 +91,15 @@ void ListSetRollNode::run(ExecutionNode* previous)
}
void ListSetRollNode::setListValue(QStringList lirs)
{
- m_values = lirs;
+ m_values= lirs;
}
void ListSetRollNode::setUnique(bool u)
{
- m_unique = u;
+ m_unique= u;
}
void ListSetRollNode::setRangeList(QList<Range>& ranges)
{
- m_rangeList = ranges;
+ m_rangeList= ranges;
}
void ListSetRollNode::computeFacesNumber(Die* die)
{
@@ -112,10 +111,10 @@ void ListSetRollNode::computeFacesNumber(Die* die)
{
Q_ASSERT(m_values.size() == m_rangeList.size());
qint64 max;
- int i=0;
- for(Range& range: m_rangeList)
+ int i= 0;
+ for(Range& range : m_rangeList)
{
- if(((i==0)||(max<range.getEnd()))&&(range.isFullyDefined()))
+ if(((i == 0) || (max < range.getEnd())) && (range.isFullyDefined()))
{
max= range.getEnd();
}
@@ -123,19 +122,18 @@ void ListSetRollNode::computeFacesNumber(Die* die)
}
die->setMaxValue(max);
}
-
}
-void ListSetRollNode::getValueFromDie(Die* die,QStringList& rollResult)
+void ListSetRollNode::getValueFromDie(Die* die, QStringList& rollResult)
{
if(m_rangeList.isEmpty())
{
- if(die->getValue()-1<m_values.size())
+ if(die->getValue() - 1 < m_values.size())
{
- auto str = m_values[die->getValue()-1];
+ auto str= m_values[die->getValue() - 1];
while(m_unique && rollResult.contains(str))
{
die->roll(false);
- str = m_values[die->getValue()-1];
+ str= m_values[die->getValue() - 1];
}
rollResult << str;
}
@@ -143,20 +141,19 @@ void ListSetRollNode::getValueFromDie(Die* die,QStringList& rollResult)
else
{
Q_ASSERT(m_values.size() == m_rangeList.size());
- bool found = false;
+ bool found= false;
while(!found)
{
- int i=0;
- for (Range& range: m_rangeList)
+ int i= 0;
+ for(Range& range : m_rangeList)
{
- auto it = std::find(m_rangeIndexResult.begin(),m_rangeIndexResult.end(),i);
- auto isValid = range.hasValid(die,false);
- if((isValid && !m_unique)||
- (isValid && it == m_rangeIndexResult.end()))
+ auto it= std::find(m_rangeIndexResult.begin(), m_rangeIndexResult.end(), i);
+ auto isValid= range.hasValid(die, false);
+ if((isValid && !m_unique) || (isValid && it == m_rangeIndexResult.end()))
{
m_rangeIndexResult.push_back(i);
rollResult << m_values[i];
- found=true;
+ found= true;
}
++i;
}
@@ -169,15 +166,14 @@ void ListSetRollNode::getValueFromDie(Die* die,QStringList& rollResult)
}
ExecutionNode* ListSetRollNode::getCopy() const
{
- ListSetRollNode* node = new ListSetRollNode();
- QList<Range> dataList = m_rangeList;
+ ListSetRollNode* node= new ListSetRollNode();
+ QList<Range> dataList= m_rangeList;
node->setRangeList(dataList);
node->setUnique(m_unique);
node->setListValue(m_values);
- if(nullptr!=m_nextNode)
+ if(nullptr != m_nextNode)
{
node->setNextNode(m_nextNode->getCopy());
}
return node;
-
}