[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/edu/kanagram/src
From: Joshua Keel <joshuakeel () gmail ! com>
Date: 2005-08-04 15:59:03
Message-ID: 1123171143.240628.11686.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 443002 by jkeel:
Fix the bug where the same word was asked multiple times in a row
M +11 -1 kanagramgame.cpp
M +1 -0 kanagramgame.h
--- trunk/playground/edu/kanagram/src/kanagramgame.cpp #443001:443002
@@ -75,6 +75,7 @@
KEduVocDocument *doc = new KEduVocDocument(this);
doc->open(KURL(locate("appdata", m_filename)), false);
m_docTitle = doc->getTitle();
+ m_answeredWords.clear();
}
void KanagramGame::nextVocab()
@@ -86,6 +87,7 @@
KEduVocDocument *doc = new KEduVocDocument(this);
doc->open(KURL(locate("appdata", m_filename)), false);
m_docTitle = doc->getTitle();
+ m_answeredWords.clear();
}
void KanagramGame::nextAnagram()
@@ -94,11 +96,19 @@
doc->open(KURL(locate("appdata", m_filename)), false);
int totalWords = doc->numEntries();
int wordNumber = m_random.getLong(totalWords);
- while(m_anagram == doc->getEntry(wordNumber)->getOriginal())
+ if(doc->numEntries() - 1 == m_answeredWords.size())
{
+ m_answeredWords.clear();
+ kdDebug() << "Cleared." << endl;
+ }
+ while(m_answeredWords.findIndex(doc->getEntry(wordNumber)->getOriginal()) != -1)
+ {
+ kdDebug() << "Wordnumber before: " << wordNumber << endl;
wordNumber = m_random.getLong(totalWords);
+ kdDebug() << "Wordnumber after: " << wordNumber << endl;
}
m_originalWord = doc->getEntry(wordNumber)->getOriginal();
+ m_answeredWords.append(m_originalWord);
m_anagram = createAnagram(m_originalWord);
m_hint = doc->getEntry(wordNumber)->getRemark(0);
}
--- trunk/playground/edu/kanagram/src/kanagramgame.h #443001:443002
@@ -53,6 +53,7 @@
int m_index;
QStringList m_fileList;
+ QStringList m_answeredWords;
QString m_docTitle;
QString m_filename;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic