aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/libparser/result/diceresult.cpp
diff options
context:
space:
mode:
authorRenaud Guezennec <renaud@rolisteam.org>2024-10-23 15:45:16 +0200
committerRenaud Guezennec <renaud@rolisteam.org>2024-12-29 14:46:30 +0100
commit6e297fc2666ec5994f62224b343c2707bdce7e3a (patch)
tree8a7100ca41a2fe3501d54729ece3c049153c640d /src/libparser/result/diceresult.cpp
parente695138e7ba727cb39e4b5b7dd42b41e569760d3 (diff)
downloadOneRoll-6e297fc2666ec5994f62224b343c2707bdce7e3a.tar.gz
OneRoll-6e297fc2666ec5994f62224b343c2707bdce7e3a.zip
Final changes
Diffstat (limited to 'src/libparser/result/diceresult.cpp')
-rw-r--r--src/libparser/result/diceresult.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/libparser/result/diceresult.cpp b/src/libparser/result/diceresult.cpp
index 31e316b..b7e79f9 100644
--- a/src/libparser/result/diceresult.cpp
+++ b/src/libparser/result/diceresult.cpp
@@ -47,9 +47,12 @@ void DiceResult::setHomogeneous(bool b)
void DiceResult::setResultList(QList<Die*> list)
{
- m_diceValues.erase(
+ for(auto& it : list)
+ m_diceValues.removeAll(it);
+
+ /*m_diceValues.erase(
std::remove_if(m_diceValues.begin(), m_diceValues.end(), [list](Die* die) { return list.contains(die); }),
- m_diceValues.end());
+ m_diceValues.end());*/
qDeleteAll(m_diceValues.begin(), m_diceValues.end());
m_diceValues.clear();
@@ -103,6 +106,9 @@ qreal DiceResult::getScalarResult()
int i= 0;
for(auto& tmp : m_diceValues)
{
+ if(!tmp)
+ continue;
+
if(i > 0)
{
switch(m_operator)
@@ -182,6 +188,8 @@ Result* DiceResult::getCopy() const
QList<Die*> list;
for(auto die : m_diceValues)
{
+ if(!die)
+ continue;
auto newdie= new Die(*die);
newdie->setDisplayed(false);
// die->displayed();