X-Git-Url: https://jfr.im/git/erebus.git/blobdiff_plain/8ad3a154ed71b051b47fc665e26175d599ba7ca3..fd07173df3e9070bac1a0cf79c729f14c781d799:/modules/trivia.py diff --git a/modules/trivia.py b/modules/trivia.py index 3eabbbc..c037990 100644 --- a/modules/trivia.py +++ b/modules/trivia.py @@ -6,8 +6,9 @@ modinfo = { 'author': 'Erebus Team', 'license': 'public domain', - 'compatible': [1], # compatible module API versions - 'depends': ['userinfo'], # other modules required to work properly? + 'compatible': [1,2], + 'depends': ['userinfo'], + 'softdeps': ['help'], } # preamble @@ -109,14 +110,6 @@ class TriviaState(object): self.nextquestiontimer.cancel() self.nextquestiontimer = None except: pass -#TODO remove if the replacement works -# if threading is not None and threading._Timer is not None: -# if isinstance(self.steptimer, threading._Timer): -# self.steptimer.cancel() -# if isinstance(self.nextquestiontimer, threading._Timer): -# self.nextquestiontimer.cancel() -# self.nextquestiontimer = None -# self.savedb() def savedb(self): #returns whether or not it was able to save if json is not None and json.dump is not None: @@ -137,7 +130,7 @@ class TriviaState(object): os.unlink(tmpfn) except OSError: # temp file is already gone pass - raise #TODO: we may be better off just swallowing exceptions? + raise # we may be better off just swallowing exceptions? return False def getchan(self): @@ -268,9 +261,9 @@ class TriviaState(object): if 'topicformat' in self.db and self.db['topicformat'] is not None: self.getbot().conn.send("TOPIC %s" % (self.db['chan'])) - if isinstance(self.steptimer, threading._Timer): + if isinstance(self.steptimer, MyTimer): self.steptimer.cancel() - if isinstance(self.nextquestiontimer, threading._Timer): + if isinstance(self.nextquestiontimer, MyTimer): self.nextquestiontimer.cancel() self.nextquestiontimer = None @@ -301,7 +294,7 @@ class TriviaState(object): nextqid = random.randrange(0, len(self.questions)) nextq = self.questions[nextqid] - if nextq[0][0] == "!": + if nextq[0].startswith("!"): nextqid = None nextq = specialQuestion(nextq) @@ -665,7 +658,7 @@ def questionpause(bot, user, chan, realtarget, *args): @lib.help("", "finds a qid given a complete question") def findq(bot, user, chan, realtarget, *args): args = list(args) - if args[0][0] == "@": + if args[0].startswith("@"): cat = args.pop(0)[1:].lower() questions = state.db['questions'][cat] else: @@ -688,7 +681,7 @@ def findq(bot, user, chan, realtarget, *args): @lib.help("[@] ", "finds a qid given a regex or partial question") def findqre(bot, user, chan, realtarget, *args): args = list(args) - if args[0][0] == "@": + if args[0].startswith("@"): cat = args.pop(0)[1:].lower() questions = state.db['questions'][cat] else: @@ -713,7 +706,7 @@ def findqre(bot, user, chan, realtarget, *args): @lib.help("[@] ", "displays the q*a for a qid", "category defaults to current") def showq(bot, user, chan, realtarget, *args): args = list(args) - if args[0][0] == "@": + if args[0].startswith("@"): cat = args.pop(0)[1:].lower() questions = state.db['questions'][cat] else: @@ -735,7 +728,7 @@ def showq(bot, user, chan, realtarget, *args): @lib.help("[@] ", "removes a question from the database") def delq(bot, user, chan, realtarget, *args): args = list(args) - if args[0][0] == "@": + if args[0].startswith("@"): cat = args.pop(0)[1:].lower() questions = state.db['questions'][cat] else: @@ -752,7 +745,7 @@ def delq(bot, user, chan, realtarget, *args): @lib.help("[@] *", "adds a question") def addq(bot, user, chan, realtarget, *args): args = list(args) - if args[0][0] == "@": + if args[0].startswith("@"): cat = args.pop(0)[1:].lower() questions = state.db['questions'][cat] else: @@ -857,8 +850,8 @@ def num_TOPIC(bot, textline): "%s (%s)" % (person(x), pts(x)) for x in range(3) if x < len(state.db['ranks']) ]), - 'top3c': ' '.join([ - "%s (%s, %s)" % (person(x), pts(x), country(x)) + 'top3c': ', '.join([ + "%s (%s) %s" % (person(x), country(x), pts(x)) for x in range(3) if x < len(state.db['ranks']) ]), 'top10': ' '.join([ @@ -889,6 +882,7 @@ def specialQuestion(oldq): randnum2 = random.randrange(0, 11) newq[0] = "What is %d + %d?" % (randnum1, randnum2) newq[1] = spellout(randnum1+randnum2) + else: pass #default to not modifying return newq def spellout(num):