Modified banterbot and numberwangbot

This commit is contained in:
Russell 2015-01-23 17:42:11 +00:00
parent 9564436d73
commit c3f75fe692
4 changed files with 46 additions and 22 deletions

View File

@ -74,8 +74,24 @@ def score_banter(channel, user, messageText):
ircsock.send("PRIVMSG " + channel + " :" + msg + "\n")
def get_new_banter(channel, user):
with open("/usr/share/dict/words", "r") as dict:
words = filter(lambda word:re.search(r"ant", word), dict.readlines())
words = filter(lambda word:re.search(r"^[^']*$", word), words)
random.shuffle(words)
word = words[0].strip("\n")
start = word.find('ant')
if(start == 0):
word = 'b' + word
else:
if('aeiou'.find(word[start]) > -1): #just append a 'b'
word = word[:start] + 'b' + word[start:]
else: #replace the letter with 'b'
word = word[:start-1] + 'b' + word[start:]
ircsock.send("PRIVMSG " + channel + " :" + user + ": Here, why don't you try '" + word + "'?\n")
def rollcall(channel):
ircsock.send("PRIVMSG "+ channel +" :U wot m8? I score all the top drawer #banter and #bantz on this channel!\n")
ircsock.send("PRIVMSG "+ channel +" :U wot m8? I score all the top drawer #banter and #bantz on this channel! Find new top-shelf banter with !newbanter\n")
def connect(server, channel, botnick):
ircsock.connect((server, 6667))
@ -118,6 +134,9 @@ def listen():
if ircmsg.find("#banter") != -1 or ircmsg.find("#bantz") != -1:
score_banter(channel, user, messageText)
if ircmsg.find(":!newbanter") != -1:
get_new_banter(channel, user)
if ircmsg.find(":!rollcall") != -1:
rollcall(channel)

View File

@ -1,12 +1,16 @@
krowbar&^%7&^%1421953955
karlen&^%11&^%1421948093
endorphant&^%14&^%1421954148
jumblesale&^%10&^%1421943491
marcus&^%10&^%1421954915
papa&^%3&^%1421936555
karlen&^%13&^%1422027689
endorphant&^%26&^%1422033378
jumblesale&^%18&^%1422027769
marcus&^%12&^%1421960027
papa&^%5&^%1422029014
epicmorphism&^%3&^%1421937744
audy&^%9&^%1421950247
kc&^%2&^%1421890581
audy&^%13&^%1422034301
kc&^%5&^%1421975132
vilmibm&^%3&^%1421887627
cmr&^%1&^%1421888980
imt&^%4&^%1421953072
cmr&^%4&^%1421989946
imt&^%12&^%1422014172
cndorphant&^%22&^%1422033254
rain&^%4&^%1422034265
sl2c&^%5&^%1422006813
leni&^%2&^%1421978450

View File

@ -2,4 +2,4 @@ krowbar&^%21&^%22
um&^%11&^%8
kc&^%0&^%22
marcus&^%3&^%1
khoi&^%1&^%0karlen&^%0&^%1karlen&^%0&^%1jumblesale&^%1&^%0karlen&^%0&^%1karlen&^%0&^%1karlen&^%0&^%1dan&^%1&^%0datagrok&^%0&^%1vilmibm&^%0&^%1papa&^%1&^%0vilmibm&^%1&^%0vilmibm&^%0&^%1jumblesale&^%1&^%0selfsame&^%1&^%0karlen&^%0&^%1jumblesale&^%0&^%1karlen&^%0&^%1
khoi&^%1&^%0karlen&^%0&^%1karlen&^%0&^%1jumblesale&^%1&^%0karlen&^%0&^%1karlen&^%0&^%1karlen&^%0&^%1dan&^%1&^%0datagrok&^%0&^%1vilmibm&^%0&^%1papa&^%1&^%0vilmibm&^%1&^%0vilmibm&^%0&^%1jumblesale&^%1&^%0selfsame&^%1&^%0karlen&^%0&^%1jumblesale&^%0&^%1karlen&^%0&^%1vilmibm&^%0&^%1vilmibm&^%0&^%1

View File

@ -30,9 +30,9 @@ parser.add_option("-n", "--nick", dest="nick", default='numberwang_bot',
(options, args) = parser.parse_args()
p = inflect.engine()
LIMIT_GUESSING = True
MIN_ROUNDS = 2
MAX_ROUNDS = 4
LIMIT_GUESSING = False
MIN_ROUNDS = 5
MAX_ROUNDS = 12
SCORE_FILE = "numberwangscores.txt"
SHOW_TOP_NUM = 5
@ -154,17 +154,18 @@ def save_scores():
scores = scorefile.readlines()
scorefile.seek(0)
scorefile.truncate()
for name in currentScores:
found = False
for line in scores:
for line in scores:
for name in currentScores:
score = line.strip("\n").split("&^%")
if(score[0] == name):
found = True
line = score[0] + "&^%" + str(int(score[1]) + currentScores[name]) + "\n"
scorefile.write(line)
if(not found):
line = name + "&^%" + str(currentScores[name]) + "\n"
scorefile.write(line)
currentScores.remove(name)
break
scorefile.write(line)
for name in currentScores: #new wangers
line = name + "&^%" + str(currentScores[name]) + "\n"
scorefile.write(line)
def show_highscores(channel):
with open(SCORE_FILE, "r") as scorefile: