X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~matthewv/git?a=blobdiff_plain;ds=sidebyside;f=acrobat-chiark-0.2.py;h=63f52e3b38cf7cd7fc5f4450878cd4a4542f6a76;hb=4e83c030e95b4542a81a95290c3673cdb2327357;hp=965c96c19190c904c17befd2dc19790b73cc5c52;hpb=bdde326079d5103aee8cc331309ae5e0b3b931b3;p=irc.git diff --git a/acrobat-chiark-0.2.py b/acrobat-chiark-0.2.py index 965c96c..63f52e3 100755 --- a/acrobat-chiark-0.2.py +++ b/acrobat-chiark-0.2.py @@ -50,6 +50,8 @@ class Acrobat(SingleServerIRCBot): self.channel = channel self.owner = owner self.quotatime = time.time() + #List of known !commands we respond to + self.known =['karma','trout','info','die','quiet','list','google','say','do','reload'] #Configurable stuff - how often do we add how many fish? self.cur_fish=5 self.max_fish=5 #Maximum of 5 fish @@ -159,6 +161,10 @@ class Acrobat(SingleServerIRCBot): conn.notice(nick, "My owner is %s; I have karma on %s items." % (self.owner, len(self.karma.dict.keys()))) + # list know commands + def listq(self, cmd, nick, conn, public): + conn.notice(nick, "%s" % string.join(self.known)) + # trout someone def troutq(self, cmd, nick, conn, public): self.fish_quota() @@ -166,7 +172,7 @@ class Acrobat(SingleServerIRCBot): conn.notice(nick, "Sorry, but %s is being a spoilsport." % self.Boring_Git) return - if self.cur_fish == 0: + if self.cur_fish <= 0: conn.notice(nick, "Fish stocks exhausted.") else: self.cur_fish -=1 @@ -181,7 +187,7 @@ class Acrobat(SingleServerIRCBot): if me.lower() == target.lower(): target = nick if public == 0: - if random.random() <= 0.25: + if random.random() <= 0.1: trout_msg+= ' (at the instigation of %s)' % nick conn.action(self.channel, trout_msg % target) except IndexError: @@ -248,17 +254,17 @@ class Acrobat(SingleServerIRCBot): if public == 0: conn.notice(nick, str(gsearch)) else: # we haven't found anything. - conn.privmsg(nick, str(gsearch)) + conn.privmsg(self.channel, str(gsearch)) else: if public == 0: conn.notice(nick, "No pages found.") else: - conn.privmsg(nick, "No pages found.") + conn.privmsg(self.channel, "No pages found.") except IOError: # if the connection times out. This blocks. :( if public == 0: conn,notice(nick, "The web's broken. Waah!") else: - conn.privmsg(nick, "The web's broken. Waah!") + conn.privmsg(self.channel, "The web's broken. Waah!") # General query handler def do_command(self, nick, cmd, public=0): @@ -279,6 +285,9 @@ class Acrobat(SingleServerIRCBot): if cmd == "info": self.infoq(cmd, nick, conn, public) + # Known commands + if cmd == "list": + self.listq(cmd, nick, conn, public) # weaponry if cmd.split()[0] == "trout": self.troutq(cmd, nick, conn, public)