home · contact · privacy
Add indexed !quote calls.
authorChristian Heller <c.heller@plomlompom.de>
Fri, 22 Jan 2016 02:08:22 +0000 (03:08 +0100)
committerChristian Heller <c.heller@plomlompom.de>
Fri, 22 Jan 2016 02:08:22 +0000 (03:08 +0100)
plomlombot.py

index 4befc396de3539871b95c1442bcbfd77b9e259b4..b45c67a7aa12feeee10695c218f6a05dfe1d1912 100755 (executable)
@@ -145,6 +145,10 @@ def lineparser_loop(io, nickname):
                 quotesfile.close()
                 notice("ADDED QUOTE #" + str(len(lines) - 1))
             elif tokens[0] == "quote":
+                if len(tokens) > 2 or \
+                    (len(tokens) == 2 and not tokens[1].isdigit()):
+                    notice("SYNTAX: !quote [int]")
+                    return
                 if not os.access(quotesfile_name, os.F_OK):
                     notice("NO QUOTES AVAILABLE")
                     return
@@ -152,7 +156,14 @@ def lineparser_loop(io, nickname):
                 lines = quotesfile.readlines()
                 quotesfile.close()
                 lines = lines[1:]
-                i = random.randrange(len(lines))
+                if len(tokens) == 2:
+                    i = int(tokens[1])
+                    if i == 0 or i > len(lines):
+                        notice("THERE'S NO QUOTE OF THAT INDEX")
+                        return
+                    i = i - 1
+                else:
+                    i = random.randrange(len(lines))
                 notice("QUOTE #" + str(i + 1) + ": " + lines[i])
 
         sender = ""