changeset 13:55ff080455fe draft

Count wrong answers when determining competition
author Stian Ellingsen <stian@plaimi.net>
date Mon, 15 Apr 2013 17:55:15 +0200
parents ba4adaca3591
children 83ffdc13237e
files q
diffstat 1 files changed, 7 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/q
+++ b/q
@@ -107,8 +107,11 @@
         """Overrides PRIVMSG."""
         name = self.clean_nick(user)
         # Check for answers.
-        if not self.answered and str(self.answer).lower() in msg.lower():
-            self.award(name)
+        if not self.answered:
+            if self.quizzers[name] is None:
+                self.quizzers[name] = 0
+            if str(self.answer).lower() in msg.lower():
+                self.award(name)
         # Check if it's a command for the bot.
         if msg.startswith('!help'):
             try:
@@ -227,7 +230,7 @@
         quizzersByPoints = sorted(self.quizzers.iteritems(), key=itemgetter(1),
                                   reverse=True)
         for numAnswerers, (quizzer, points) in enumerate(quizzersByPoints):
-            if points < 1:
+            if points is None:
                 break
         else:
             numAnswerers += 1
@@ -314,7 +317,7 @@
     def reset(self):
         """Set all quizzers' points to 0 and change topic."""
         for i in self.quizzers:
-            self.quizzers[i] = 0
+            self.quizzers[i] = None
         self.target_score = 1 + len(self.quizzers) / 2
         self.set_topic()