void Game::onTaskAnswered() { bool oldFinished = isFinished(); m_tasksAnswered++; if(m_currentTask->isCorrect()) m_tasksAnsweredCorrectly++; emit tasksAnsweredChanged(m_tasksAnswered); // Adding points if (getMode()==Mode::DRAG) { setPoints(getPoints() + m_currentTask->getScore()); } else { if(m_currentTask->isCorrect()){ int receivedPoints = 50 * getMultiplier(); setPoints(getPoints() + receivedPoints); setMultiplier(getMultiplier()+1); } else { setMultiplier(1); } } bool newFinished = isFinished(); if(oldFinished != newFinished)emit finishedChanged(newFinished); }
void NoGUI::setFinished(bool finished) { if (m_finished == finished) return; m_finished = finished; emit finishedChanged(finished); }