Replaces asyncio coroutines with native async
Replaces @asyncio.coroutine decorator with async Replaces yield from with await
This commit is contained in:
+30
-38
@@ -1,4 +1,3 @@
|
||||
import asyncio
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
import numpy as np
|
||||
@@ -28,17 +27,16 @@ class Chatbot(commands.Cog):
|
||||
|
||||
#Do stuff when a message comes in:
|
||||
@self.bot.event
|
||||
@asyncio.coroutine
|
||||
def on_message(message):
|
||||
async def on_message(message):
|
||||
if message.author.bot:
|
||||
return #ignore your own messages, Stroop
|
||||
|
||||
if message.content.strip() == "" or message.content.strip()[0] != '!': #don't respond to a command
|
||||
if message.content.lower() == "nihao":
|
||||
yield from message.channel.send("kankerlauw")
|
||||
await message.channel.send("kankerlauw")
|
||||
return
|
||||
if message.content.lower() == "lol":
|
||||
yield from message.channel.send("laffing aut laut")
|
||||
await message.channel.send("laffing aut laut")
|
||||
return
|
||||
if self.bot.user.mentioned_in(message) and "@everyone" not in message.content:
|
||||
MENTIONED_RESPONSES = [
|
||||
@@ -52,32 +50,32 @@ class Chatbot(commands.Cog):
|
||||
MENTIONED_RESPONSES.append("Wat mot je, " + random.choice(self.bot.get_cog("Shitpost").insult) + "?")
|
||||
except:
|
||||
print("ERROR! - Could not import insults")
|
||||
yield from message.channel.send(random.choice(MENTIONED_RESPONSES))
|
||||
await message.channel.send(random.choice(MENTIONED_RESPONSES))
|
||||
return
|
||||
if re.match("^[0-9]+([,.]?[0-9]+)*?$", message.content.strip()) and random.randint(0,9) == 0:
|
||||
yield from message.channel.send("That's Numberwang!") # https://www.youtube.com/watch?v=0obMRztklqU
|
||||
await message.channel.send("That's Numberwang!") # https://www.youtube.com/watch?v=0obMRztklqU
|
||||
return
|
||||
if "DMChannel" in type(message.channel).__name__: #respond to messages in PM channels
|
||||
if (self.isAllowedToLearnFromPm(message)): #avoid spam-learning
|
||||
self.pmCount += 1
|
||||
self.pmLast = datetime.now()
|
||||
yield from self.learnFromMessagesInChannel(message.channel, 1)
|
||||
yield from self.respondToMessage(message)
|
||||
await self.learnFromMessagesInChannel(message.channel, 1)
|
||||
await self.respondToMessage(message)
|
||||
elif message.channel.id == self.bot.hdChannels["belangrijk"]: #don't abuse the "belangrijk" channel
|
||||
pass
|
||||
else:
|
||||
a = random.randint(0,999) # probablity
|
||||
if a < 40:
|
||||
yield from self.learnFromMessagesInChannel(message.channel, 10)
|
||||
await self.learnFromMessagesInChannel(message.channel, 10)
|
||||
if "stroop" in message.content.lower():
|
||||
a = a / 20 # significantly increase the chance of responding if somebody talks about him.
|
||||
if message.channel.id == self.bot.hdChannels["shitpost"] and a < 40: #shitpost channel
|
||||
yield from self.respondToMessage(message)
|
||||
await self.respondToMessage(message)
|
||||
elif a < 10: #all other channels
|
||||
yield from self.respondToMessage(message)
|
||||
await self.respondToMessage(message)
|
||||
|
||||
#process commands:
|
||||
yield from self.bot.process_commands(message)
|
||||
await self.bot.process_commands(message)
|
||||
|
||||
def __check(self, ctx):
|
||||
return True
|
||||
@@ -183,22 +181,20 @@ class Chatbot(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def trainmarkovchat(self, ctx, channelId=409751773595566081, nrOfMessages=50):
|
||||
async def trainmarkovchat(self, ctx, channelId=409751773595566081, nrOfMessages=50):
|
||||
"""Train that chain, jermaine
|
||||
param channelId: use this channel to train
|
||||
param nrOfMessages: use the x most recent messages
|
||||
"""
|
||||
|
||||
channel=self.bot.get_channel(channelId)
|
||||
yield from self.learnFromMessagesInChannel(channel, nrOfMessages)
|
||||
await self.learnFromMessagesInChannel(channel, nrOfMessages)
|
||||
|
||||
yield from ctx.channel.send("Ik heb weer wat nieuwe woordjes geleerd. :slight_smile:")
|
||||
await ctx.channel.send("Ik heb weer wat nieuwe woordjes geleerd. :slight_smile:")
|
||||
|
||||
|
||||
#Learns from an x number of messages from a certain channel
|
||||
@asyncio.coroutine
|
||||
def learnFromMessagesInChannel(self, channel, nrOfMessages):
|
||||
async def learnFromMessagesInChannel(self, channel, nrOfMessages):
|
||||
|
||||
#Open current chain:
|
||||
wordDict = np.load('markov_dict.npy', allow_pickle=True).item()
|
||||
@@ -207,7 +203,7 @@ class Chatbot(commands.Cog):
|
||||
messageIterator = channel.history(limit=nrOfMessages, before=None, after=None, oldest_first=False, around=None)
|
||||
allMessages = []
|
||||
for i in range(nrOfMessages):
|
||||
msg = yield from anext(messageIterator)
|
||||
msg = await anext(messageIterator)
|
||||
allMessages.append(msg)
|
||||
|
||||
i = 0
|
||||
@@ -248,18 +244,17 @@ class Chatbot(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def reageer(self, ctx):
|
||||
async def reageer(self, ctx):
|
||||
"""Laat Stroop ergens op reageren.
|
||||
Stroop leert van onze gesprekken. Hij kan zich nu voordoen als een van ons. Soort van.
|
||||
"""
|
||||
|
||||
#Get previous message to respond to
|
||||
messageIterator = ctx.channel.history(limit=3, before=None, after=None, oldest_first=False, around=None)
|
||||
messageToRespondTo = yield from anext(messageIterator) #this will be the !reageer command. skip
|
||||
messageToRespondTo = yield from anext(messageIterator)
|
||||
messageToRespondTo = await anext(messageIterator) #this will be the !reageer command. skip
|
||||
messageToRespondTo = await anext(messageIterator)
|
||||
if messageToRespondTo.content.strip()[0] == '!' or messageToRespondTo.author.bot: #another chance
|
||||
messageToRespondTo = yield from anext(messageIterator) #but it's not a huge problem if he responds to himself
|
||||
messageToRespondTo = await anext(messageIterator) #but it's not a huge problem if he responds to himself
|
||||
if messageToRespondTo.content.strip()[0] == '!':
|
||||
wordsToRespondTo = []
|
||||
else:
|
||||
@@ -268,12 +263,12 @@ class Chatbot(commands.Cog):
|
||||
|
||||
#Delete command
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
pass
|
||||
|
||||
response = self.getResponseForMessage(wordsToRespondTo)
|
||||
yield from ctx.channel.send(response)
|
||||
await ctx.channel.send(response)
|
||||
|
||||
# Calculate probabilities and pick a next word from a word pair dict:
|
||||
# https://stackoverflow.com/questions/835092/python-dictionary-are-keys-and-values-always-the-same-order
|
||||
@@ -285,12 +280,11 @@ class Chatbot(commands.Cog):
|
||||
|
||||
#Respond to a message.
|
||||
#Assumes the message isn't a command
|
||||
@asyncio.coroutine
|
||||
def respondToMessage(self, message):
|
||||
async def respondToMessage(self, message):
|
||||
wordsToRespondTo = message.content.strip().split()
|
||||
|
||||
response = self.getResponseForMessage(wordsToRespondTo)
|
||||
yield from message.channel.send(response)
|
||||
await message.channel.send(response)
|
||||
|
||||
#Gets a response
|
||||
def getResponseForMessage(self, wordsToRespondTo):
|
||||
@@ -351,7 +345,7 @@ class Chatbot(commands.Cog):
|
||||
chain[n] = "@jemoeder"
|
||||
|
||||
#print(' '.join(chain))
|
||||
#yield from ctx.channel.send(' '.join(chain))
|
||||
#await ctx.channel.send(' '.join(chain))
|
||||
return ' '.join(chain)
|
||||
|
||||
|
||||
@@ -424,22 +418,20 @@ class Chatbot(commands.Cog):
|
||||
return ' '.join(chain)
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def haiku(self, ctx):
|
||||
async def haiku(self, ctx):
|
||||
"""Stroop is een poëet. Laat hem een Haiku maken.
|
||||
"""
|
||||
|
||||
response = self.getHaiku()
|
||||
yield from ctx.channel.send(response)
|
||||
await ctx.channel.send(response)
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def uitspraak(self, ctx, numPosts=1):
|
||||
async def uitspraak(self, ctx, numPosts=1):
|
||||
"""Random uitspraak uit de hall of fame.
|
||||
Optioneel kan je een nummer meegeven voor meerdere uitspraken
|
||||
0 voor alle uitspraken."""
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
pass
|
||||
try:
|
||||
@@ -451,6 +443,6 @@ class Chatbot(commands.Cog):
|
||||
numPosts = len(uitspraken)
|
||||
for i in range(numPosts):
|
||||
message += uitspraken[i]
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
except:
|
||||
pass
|
||||
|
||||
+12
-17
@@ -1,4 +1,3 @@
|
||||
import asyncio
|
||||
import discord
|
||||
import os
|
||||
import praw
|
||||
@@ -30,18 +29,17 @@ class General(commands.Cog):
|
||||
return embed
|
||||
|
||||
@commands.command()
|
||||
@asyncio.coroutine
|
||||
def huge(self, ctx, *, arg):
|
||||
async def huge(self, ctx, *, arg):
|
||||
"""YUGE. Geeft een grote versie van de gegeven emoji terug. Werkt alleen voor custom emoji.
|
||||
Bijvoorbeeld:
|
||||
!huge :ancilla:
|
||||
"""
|
||||
em = self.get_emoji_embed(arg)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
def get_aww_post(self):
|
||||
raww = self.r.subreddit('aww+catloaf+tuckedinkitties+babyelephantgifs+babybigcatgifs+blep+holdmynip+gingerkitty+cathighfive+catsstandingup+catsareassholes+eyebleach')
|
||||
@@ -49,15 +47,14 @@ class General(commands.Cog):
|
||||
return random.choice(listing)
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def aww(self, ctx):
|
||||
async def aww(self, ctx):
|
||||
""" iets schattigs... """
|
||||
post = self.get_aww_post()
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + post.url)
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + post.url)
|
||||
|
||||
def get_kopieerpasta(self):
|
||||
rkopieerpasta = self.r.subreddit('kopieerpasta')
|
||||
@@ -71,8 +68,7 @@ class General(commands.Cog):
|
||||
return post
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def kopieerpasta(self, ctx):
|
||||
async def kopieerpasta(self, ctx):
|
||||
"""Een willekeurige shitpost"""
|
||||
post = self.get_kopieerpasta()
|
||||
print(post.url)
|
||||
@@ -83,23 +79,22 @@ class General(commands.Cog):
|
||||
print(post.url)
|
||||
a += 1
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
|
||||
if len(post.selftext + post.title) < 1990:
|
||||
yield from ctx.channel.send('**'+post.title+'**```'+post.selftext+'```')
|
||||
await ctx.channel.send('**'+post.title+'**```'+post.selftext+'```')
|
||||
else:
|
||||
yield from ctx.channel.send("Geen kopieerpasta voor jou vandaag.")
|
||||
await ctx.channel.send("Geen kopieerpasta voor jou vandaag.")
|
||||
|
||||
def get_playlist_json(self):
|
||||
return requests.get(self.muzak_url + '/stroopwafel')
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def playlist(self, ctx):
|
||||
async def playlist(self, ctx):
|
||||
"""HDcon2021 playlist"""
|
||||
data = json.loads(self.get_playlist_json().content)
|
||||
msg = 'Stemmen en nomineren kan hier: {}\n'.format(self.muzak_url)
|
||||
msg += '*Er zijn al {} nummers genomineerd*\n'.format(data['stemCount'])
|
||||
yield from ctx.channel.send(msg)
|
||||
await ctx.channel.send(msg)
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
import asyncio
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
from pprint import pprint
|
||||
@@ -25,8 +24,7 @@ class Points(commands.Cog):
|
||||
return True
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def geefpunten(self, ctx, user, points: int):
|
||||
async def geefpunten(self, ctx, user, points: int):
|
||||
"""Wees eens lief. Geef iemand wat punten.
|
||||
Bijvoorbeeld:
|
||||
!geefpunten @ikbenjp 42
|
||||
@@ -37,29 +35,29 @@ class Points(commands.Cog):
|
||||
self.reloadPointsCount()
|
||||
|
||||
if points == 0:
|
||||
yield from ctx.channel.send("0 punten? Gul hoor.")
|
||||
await ctx.channel.send("0 punten? Gul hoor.")
|
||||
return
|
||||
if points < 0:
|
||||
yield from self.sendErrorDm(ctx, "Daar hebben we de !neempunten functie voor. Voor meer info typ: ```!help neempunten```")
|
||||
await self.sendErrorDm(ctx, "Daar hebben we de !neempunten functie voor. Voor meer info typ: ```!help neempunten```")
|
||||
return
|
||||
|
||||
if user[0:2] != "<@":
|
||||
yield from self.sendErrorDm(ctx, "Je moet iemand taggen om punten te geven. :)")
|
||||
await self.sendErrorDm(ctx, "Je moet iemand taggen om punten te geven. :)")
|
||||
#TODO ook userId oid toestaan?
|
||||
return
|
||||
|
||||
userObj = ctx.message.mentions[0]
|
||||
|
||||
if userObj.id == ctx.author.id:
|
||||
yield from ctx.channel.send("Nee. Je mag niet jezelf punten geven.")
|
||||
await ctx.channel.send("Nee. Je mag niet jezelf punten geven.")
|
||||
time.sleep(0.6)
|
||||
yield from ctx.channel.send("Gekkie.")
|
||||
await ctx.channel.send("Gekkie.")
|
||||
return
|
||||
if not self.isUserOnList(userObj):
|
||||
yield from ctx.channel.send("Nee. Die krijgt geen punten.")
|
||||
await ctx.channel.send("Nee. Die krijgt geen punten.")
|
||||
return
|
||||
if self.getUserBalance(ctx.author) < points:
|
||||
yield from ctx.channel.send("Daar heb jij niet genoeg puntjes voor. :bell:")
|
||||
await ctx.channel.send("Daar heb jij niet genoeg puntjes voor. :bell:")
|
||||
return
|
||||
|
||||
# Execute the transaction:
|
||||
@@ -68,7 +66,7 @@ class Points(commands.Cog):
|
||||
self.savePointsCount()
|
||||
|
||||
message = self.getMessageForAwardingPoints(ctx.author.name, userObj.name, points)
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
def execute_geefpunten(self, giverId, recieverId, points):
|
||||
# First, try to give away (at most 10) bankpoints
|
||||
@@ -86,8 +84,7 @@ class Points(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def neempunten(self, ctx, user, points: int):
|
||||
async def neempunten(self, ctx, user, points: int):
|
||||
"""Tijd om iemand the shamen. Haal wat punten weg.
|
||||
Bijvoorbeeld:
|
||||
!neempunten @mark 5
|
||||
@@ -98,27 +95,27 @@ class Points(commands.Cog):
|
||||
self.reloadPointsCount()
|
||||
|
||||
if points < 1:
|
||||
yield from ctx.channel.send("Volgens mij snap je het niet.")
|
||||
await ctx.channel.send("Volgens mij snap je het niet.")
|
||||
return
|
||||
if points > 10:
|
||||
yield from self.sendErrorDm(ctx, "Je mag niet meer dan 10 punten afnemen.")
|
||||
await self.sendErrorDm(ctx, "Je mag niet meer dan 10 punten afnemen.")
|
||||
return
|
||||
remainingToTakeAway = self.getUsersRemainingPointsToTakeToday(ctx.author.id)
|
||||
if points > remainingToTakeAway: # The limit per day is 10
|
||||
yield from self.sendErrorDm(ctx, "Je mag vandaag nog maar " + str(remainingToTakeAway) + " punten wegnemen.")
|
||||
await self.sendErrorDm(ctx, "Je mag vandaag nog maar " + str(remainingToTakeAway) + " punten wegnemen.")
|
||||
return
|
||||
|
||||
if user[0:2] != "<@":
|
||||
yield from self.sendErrorDm(ctx, "Je moet iemand taggen. :)")
|
||||
await self.sendErrorDm(ctx, "Je moet iemand taggen. :)")
|
||||
return
|
||||
|
||||
userObj = ctx.message.mentions[0]
|
||||
|
||||
if not self.isUserOnList(userObj):
|
||||
yield from ctx.channel.send("Nee.")
|
||||
await ctx.channel.send("Nee.")
|
||||
return
|
||||
if self.getUserBalance(userObj) < points:
|
||||
yield from ctx.channel.send(userObj.name + " mag niet rood staan.")
|
||||
await ctx.channel.send(userObj.name + " mag niet rood staan.")
|
||||
return
|
||||
|
||||
# Execute the transaction:
|
||||
@@ -127,7 +124,7 @@ class Points(commands.Cog):
|
||||
self.savePointsCount()
|
||||
|
||||
message = self.getMessageForTakingPoints(userObj.name, ctx.author.name, points)
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
def execute_neempunten(self, takerId, victimId, points):
|
||||
self.increaseUsersPointTakenOnDate(takerId, points)
|
||||
@@ -135,8 +132,7 @@ class Points(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def puntentelling(self, ctx):
|
||||
async def puntentelling(self, ctx):
|
||||
"""Hoeveel punten heeft iedereen?
|
||||
"""
|
||||
|
||||
@@ -148,18 +144,17 @@ class Points(commands.Cog):
|
||||
if user[0] != self.BANK_ID:
|
||||
message += str(user[1]["points"]).rjust(4) + " " + user[1]["name"] + "\n"
|
||||
message += str(self.pointsCount[self.BANK_ID]["points"]).rjust(4) + " " + self.pointsCount[self.BANK_ID]["name"] + "```"
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
|
||||
# No public shaming. Send somebody a direct correction message.
|
||||
@asyncio.coroutine
|
||||
def sendErrorDm(self, ctx, message):
|
||||
async def sendErrorDm(self, ctx, message):
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
try:
|
||||
yield from ctx.message.author.send(message)
|
||||
await ctx.message.author.send(message)
|
||||
except:
|
||||
print("No permission to send DM")
|
||||
|
||||
|
||||
+60
-81
@@ -1,4 +1,3 @@
|
||||
import asyncio
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
from urllib import request
|
||||
@@ -43,8 +42,7 @@ class Shitpost(commands.Cog):
|
||||
warnings.simplefilter("ignore")
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def ishetalhdcon(self, ctx):
|
||||
async def ishetalhdcon(self, ctx):
|
||||
"""Hoe lang nog tot Hoestende Draken Con 2022?
|
||||
Gebruik: !ishetalhdcon
|
||||
"""
|
||||
@@ -61,7 +59,7 @@ class Shitpost(commands.Cog):
|
||||
Message = "HD Con 2022 is vandaag alweer afgelopen... F"
|
||||
|
||||
if Distance.days < 0:
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
return
|
||||
|
||||
NachtjesSlapen = Distance.days + 1
|
||||
@@ -90,23 +88,23 @@ class Shitpost(commands.Cog):
|
||||
return #fuck it.
|
||||
if eventsMinutesAgoSameAuthor > 0:
|
||||
if eventsMinutesAgoSameAuthor > 2:
|
||||
yield from ctx.channel.send("...")
|
||||
await ctx.channel.send("...")
|
||||
return
|
||||
yield from ctx.channel.send("Dat vroeg je net ook al, " + ctx.author.mention + "!")
|
||||
await ctx.channel.send("Dat vroeg je net ook al, " + ctx.author.mention + "!")
|
||||
return
|
||||
#Hoe vaker er wordt gevraagd, hoe ongeduldiger de antwoorden:
|
||||
if not "DMChannel" in type(ctx.channel).__name__: #ignore personal chats
|
||||
impatientFactor = 10 + eventsMinutesAgo*25 + eventsLastDays*10;
|
||||
impatientFactor *= random.random()
|
||||
if impatientFactor > 100:
|
||||
yield from ctx.channel.send("Nee!")
|
||||
await ctx.channel.send("Nee!")
|
||||
return
|
||||
elif impatientFactor > 15 and eventsMinutesAgo > 0:
|
||||
Message = "Dat hebben jullie net gevraagd."
|
||||
elif impatientFactor > 9:
|
||||
Message = "Nee."
|
||||
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
|
||||
def zalgofy(self, sentence, factor = 4):
|
||||
random.seed(datetime.now().timestamp())
|
||||
@@ -119,8 +117,7 @@ class Shitpost(commands.Cog):
|
||||
return message
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def zalgo(self, ctx, *, arg):
|
||||
async def zalgo(self, ctx, *, arg):
|
||||
"""z̴̬̘͇̗͇̦̤̩̜͜ą̷̟̯̪̩̣̭̭͇̹l̴̗͓̟̠̤̳̗͉̠ͅg̵̜͎̪̞̫͎͈͉͉͍o̵̧̧͇̱̱̜̮͉͉̳ ̴̨̡͖̘̪̭̖͖̘̝h̸̭̰̫̲̺̹̻̜͕ͅe̴̢̘̪̱̱̩̠̣̘̱ ̴̡̢̲̞̙̝̮̻̻͇c̶̡̢̺͙̮̗̲̹̱̱o̷̢̡̺̘͈͎̫̬͔̤m̷͕͍͍̥͖̻̲̞̝ͅe̷̱̟͕̥͕̞̜̫̳̙s̷̨͍̼̝̙̩̥̰̠ͅ
|
||||
h̷̦̰̣̗̭͕̩͓͈̠i̶̗̰̹̤̖͙̰̹͙̹j̸̧̜̬̬̜̹͔̰̫͜ ̶̧͉͔̠̻͈̜̳̥̭k̸̯̳̠̼̙̗̘̳͜ͅǫ̵̝̱̩͎̫͈̣̪̦m̶̺̙̟̫͔͈̭̖̱ͅt̶̜̠̟͙̞̠̗̗̥ͅ ̸̢̹̜͉͙̩̬̖ͅͅh̷̯̮̘̭͈̜̺͎̳̯i̴̩̯̼̱͇̟̫̻̘̖j̵̪̤̦͖̮̜̦̼̺̮ ̶̧͇̭̞̮̩̼͚̮ͅḵ̴̢̨̢͉͉͖̹̬̺o̵̢̪̥̻͙͕̫̥̗͜m̶̧̡͔̠̺͖̝̳̪ͅt̷̢̮̭̜̥̠̼̫͍̯
|
||||
d̷̢̪͍͓̭̣̼̠͎̠e̴̡̢̩̱͙̻̥̯͎͜ ̵̲̪͖̖͖͍͈͎̮̼ļ̴̯̗̝̦͍͍͖̰͜i̶̡̘̟̳̖͙͕͔̺͜ȩ̸̤͎̣͖͔̭͔̫̯v̷͔̺͖̖̞̙̘̖̠͓e̶̲͍̮̳͎̗̳̞̹͔ ̸̡̬̫͎͎̝͍̤̯ͅg̴̨̞̻͙̠̰͖͖̝ͅǫ̴̘̥͇̙̖͈͍̹̥e̵̥͇̫̱̬̝̥̲̞̜d̷͈͙̝͍͔̘͕̼̜̦e̴̡̯̦͉͙̪̭͕̻̝
|
||||
@@ -130,10 +127,10 @@ class Shitpost(commands.Cog):
|
||||
"""
|
||||
message = self.zalgofy(arg)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
yield from ctx.channel.send(str(message))
|
||||
await ctx.channel.send(str(message))
|
||||
|
||||
def get_corona_message(self):
|
||||
response = requests.get('https://covid.ourworldindata.org/data/latest/owid-covid-latest.json')
|
||||
@@ -151,18 +148,16 @@ class Shitpost(commands.Cog):
|
||||
return None
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def corona(self, ctx):
|
||||
async def corona(self, ctx):
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
message = self.get_corona_message()
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + str(message))
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + str(message))
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def viertwintig(self, ctx):
|
||||
async def viertwintig(self, ctx):
|
||||
"""Hoe lang nog tot 420?
|
||||
Gebruik: !viertwintig
|
||||
"""
|
||||
@@ -188,11 +183,10 @@ class Shitpost(commands.Cog):
|
||||
seconds = secondsLeft - minutes * 60
|
||||
Message += "Nog " + str(days) + " dagen, " + str(hours) + " uur, " + str(minutes) + " minuten en " + str(seconds) + " seconden tot 420!!"
|
||||
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def iselderscrolls6aluit(self, ctx):
|
||||
async def iselderscrolls6aluit(self, ctx):
|
||||
"""Hoe lang nog tot Elder Scrolls 6? 11-11-11? 20-20-20?
|
||||
Gebruik: !iselderscrolls6aluit
|
||||
"""
|
||||
@@ -203,15 +197,14 @@ class Shitpost(commands.Cog):
|
||||
else:
|
||||
Message = "Nee. :frowning2: Nog even geduld..."
|
||||
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + str(Message))
|
||||
|
||||
def get_giet_het_oan(self):
|
||||
# Alsof we ooit nog een elfstedentocht gaan krijgen.
|
||||
return "nee"
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def giethetaloan(self, ctx):
|
||||
async def giethetaloan(self, ctx):
|
||||
"""Giet het al oan?
|
||||
Ja of Nee.. kom op nou.
|
||||
"""
|
||||
@@ -225,7 +218,7 @@ class Shitpost(commands.Cog):
|
||||
else:
|
||||
if 'nee' in answer:
|
||||
reactie += 'Nee helaas..'
|
||||
yield from ctx.channel.send(ctx.author.mention + ' ' + reactie)
|
||||
await ctx.channel.send(ctx.author.mention + ' ' + reactie)
|
||||
|
||||
def get_inspiration(self):
|
||||
inspiration = requests.get(url='http://inspirobot.me/api?generate=true')
|
||||
@@ -235,8 +228,7 @@ class Shitpost(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=False)
|
||||
@asyncio.coroutine
|
||||
def inspire(self, ctx):
|
||||
async def inspire(self, ctx):
|
||||
"""Laat je inspireren
|
||||
Bijvoorbeeld:
|
||||
!inspire
|
||||
@@ -246,12 +238,12 @@ class Shitpost(commands.Cog):
|
||||
em = discord.Embed(title='Uw wijze woorden:', type='photo')
|
||||
em.set_image(url=inspo)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
else:
|
||||
yield from ctx.channel.send(ctx.author.mention + ' helaas, geen quote gevonden.')
|
||||
await ctx.channel.send(ctx.author.mention + ' helaas, geen quote gevonden.')
|
||||
|
||||
def get_imgflip_embed(self, template: str, boven: str, onder: str, extra_options: dict = None):
|
||||
params = dict(
|
||||
@@ -273,49 +265,46 @@ class Shitpost(commands.Cog):
|
||||
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def tering(self, ctx, boven: str, onder: str):
|
||||
async def tering(self, ctx, boven: str, onder: str):
|
||||
"""Vanavond gaan we helemaal naar de tering
|
||||
Bijvoorbeeld:
|
||||
!tering \"Vanavond\" \"gaan we helemaal naar de tering\"
|
||||
"""
|
||||
em = self.get_imgflip_embed(self.imgflips['tering'], boven, onder)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if em:
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def mark(self, ctx, boven: str, onder: str):
|
||||
async def mark(self, ctx, boven: str, onder: str):
|
||||
"""Maakt een mark meem.
|
||||
Bijvoorbeeld:
|
||||
!mark \"je moeder\" \"is een hoer\"
|
||||
"""
|
||||
em = self.get_imgflip_embed(self.imgflips['mark'], boven, onder)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if em:
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def eriku(self, ctx, boven: str, onder: str):
|
||||
async def eriku(self, ctx, boven: str, onder: str):
|
||||
"""Maakt een erik meem.
|
||||
Bijvoorbeeld:
|
||||
!eriku \"je moeder\" \"is een hoer\"
|
||||
"""
|
||||
em = self.get_imgflip_embed(self.imgflips['eriku'], boven, onder)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if em:
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
def get_tegeltje(self, tekst, auteur):
|
||||
params = {
|
||||
@@ -341,43 +330,39 @@ class Shitpost(commands.Cog):
|
||||
return self.get_imgflip_embed(self.imgflips['tegeltje'], "", "", params)
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def tegeltje(self, ctx, tekst: str, auteur: str=" "):
|
||||
async def tegeltje(self, ctx, tekst: str, auteur: str=" "):
|
||||
"""Maak een mooi tegeltje met volkswijsheid
|
||||
Bijvoorbeeld:
|
||||
!tegeltje \"Oost west, 420 best\" \"Lourens\"
|
||||
"""
|
||||
em = get_tegeltje(tekst, auteur)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if em:
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def zout(self, ctx, boven: str, onder: str):
|
||||
async def zout(self, ctx, boven: str, onder: str):
|
||||
"""Maakt een martijn-zout meem.
|
||||
Bijvoorbeeld:
|
||||
!zout \"je moeder\" \"is een hoer\"
|
||||
"""
|
||||
em = self.get_imgflip_embed(self.imgflips['zout'], boven, onder)
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if em:
|
||||
yield from ctx.channel.send(ctx.author.mention, embed=em)
|
||||
await ctx.channel.send(ctx.author.mention, embed=em)
|
||||
|
||||
@commands.command(pass_context=True, hidden=True)
|
||||
@asyncio.coroutine
|
||||
def nihao(self,ctx):
|
||||
yield from ctx.channel.send("kankerlauw")
|
||||
async def nihao(self,ctx):
|
||||
await ctx.channel.send("kankerlauw")
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def tijd(self, ctx, *args):
|
||||
async def tijd(self, ctx, *args):
|
||||
"""Vertelt je hoe laat het is..
|
||||
Misschien geeft het ook wel een leuke meem terug.
|
||||
Wie weet.
|
||||
@@ -398,13 +383,13 @@ class Shitpost(commands.Cog):
|
||||
elif os.path.isfile(filepng):
|
||||
filepath = filepng
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
if filepath != '':
|
||||
yield from ctx.channel.send(ctx.author.mention + ' Het is nu ' + datetime.now().strftime('%H:%M'), file=discord.File(filepath, 'tijd.png'))
|
||||
await ctx.channel.send(ctx.author.mention + ' Het is nu ' + datetime.now().strftime('%H:%M'), file=discord.File(filepath, 'tijd.png'))
|
||||
else:
|
||||
yield from ctx.channel.send(ctx.author.mention + ' Het is nu ' + datetime.now().strftime('%H:%M'))
|
||||
await ctx.channel.send(ctx.author.mention + ' Het is nu ' + datetime.now().strftime('%H:%M'))
|
||||
|
||||
def get_dice_roll(self, nrOfDice, dieType, modifier=None):
|
||||
if nrOfDice > 99 or dieType > 9999 or dieType < 2 or (modifier and abs(modifier) > 9999):
|
||||
@@ -447,8 +432,7 @@ class Shitpost(commands.Cog):
|
||||
return (numDice, die, modifier)
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def roll(self, ctx, *, dice):
|
||||
async def roll(self, ctx, *, dice):
|
||||
"""Roll een dobbelsteen. Of een paar. Bijvoorbeeld:
|
||||
!roll 4d20
|
||||
!roll 1d6 + 5
|
||||
@@ -456,9 +440,9 @@ class Shitpost(commands.Cog):
|
||||
(nrOfDice, dieType, modifier) = self.get_dice_parameters(dice)
|
||||
message = self.get_dice_roll(nrOfDice, dieType, modifier)
|
||||
if message:
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
else:
|
||||
yield from ctx.channel.send("Die roll vind ik echt een beetje te mal..")
|
||||
await ctx.channel.send("Die roll vind ik echt een beetje te mal..")
|
||||
|
||||
def get_weerbericht(self, wData, verbose=None):
|
||||
if not wData:
|
||||
@@ -519,8 +503,7 @@ class Shitpost(commands.Cog):
|
||||
return None
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def weer(self, ctx, location="Leiden", verbose=None):
|
||||
async def weer(self, ctx, location="Leiden", verbose=None):
|
||||
"""Vertelt je het weer.
|
||||
Omdat je te lui bent om naar buiten te kijken.
|
||||
Oant Moarn!
|
||||
@@ -530,7 +513,7 @@ class Shitpost(commands.Cog):
|
||||
message = self.get_weerbericht(wData, verbose)
|
||||
if not wData or not message:
|
||||
message = "Weer ophalen niet gelukt. Probeer het later nogmaals.."
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
#returns a nice weather icon. Sometimes the API uses non-documented icons, so we return something else
|
||||
def getWeatherIconTranslation(self, iconKey):
|
||||
@@ -610,27 +593,25 @@ class Shitpost(commands.Cog):
|
||||
return zwarte_kaart.replace("___", "**{}**").format(*wit)
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def ktdm(self, ctx, *args):
|
||||
async def ktdm(self, ctx, *args):
|
||||
'''Speel Kaarten Tegen De Mensheid! Genereer een kaart of geef zelf opties.
|
||||
Bijvoorbeeld: !ktdm <"1"><"2"><"3"> (aanbevolen 1 of 2, max 3)'''
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
resultaat = self.get_ktdm(args)
|
||||
if resultaat:
|
||||
yield from ctx.channel.send(f"{ctx.author.mention}\n{resultaat}")
|
||||
await ctx.channel.send(f"{ctx.author.mention}\n{resultaat}")
|
||||
else:
|
||||
yield from ctx.channel.send(f"{ctx.author.mention}\nIets ging niet helemaal lekker")
|
||||
await ctx.channel.send(f"{ctx.author.mention}\nIets ging niet helemaal lekker")
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def beledig(self, ctx, member:discord.User):
|
||||
async def beledig(self, ctx, member:discord.User):
|
||||
'''Je vindt iemand stom maar je hebt geen inspiratie? Beledig al je vriendjes met deze handige beledig-i-fier!
|
||||
Bijvoorbeeld: !beledig @jemoeder'''
|
||||
yield from ctx.channel.send(member.mention+ ", " + ctx.author.mention + " vindt jou een " + random.choice(self.insult) + "! :angry:")
|
||||
yield from ctx.message.delete()
|
||||
await ctx.channel.send(member.mention+ ", " + ctx.author.mention + " vindt jou een " + random.choice(self.insult) + "! :angry:")
|
||||
await ctx.message.delete()
|
||||
|
||||
def get_watspelenwe_cal(self):
|
||||
"""Geeft een paar terug, met de titel en omschrijving van het eerstvolgende event uit de kalender"""
|
||||
@@ -749,8 +730,7 @@ class Shitpost(commands.Cog):
|
||||
return message
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def watspelenwe(self, ctx):
|
||||
async def watspelenwe(self, ctx):
|
||||
"""Stroop weet wat we spelen op vrijdag.
|
||||
Geeft elke week een pseudo-random antwoord.
|
||||
Geseed op weeknummer + jaar.
|
||||
@@ -764,10 +744,10 @@ class Shitpost(commands.Cog):
|
||||
message += ". En wilt iemand even aan Mark vragen of hij de kalender bijhoudt?"
|
||||
|
||||
try:
|
||||
yield from ctx.message.delete()
|
||||
await ctx.message.delete()
|
||||
except:
|
||||
print("No permission to delete message")
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
def get_review_string(self, topic = ""):
|
||||
if topic == "":
|
||||
@@ -819,10 +799,9 @@ class Shitpost(commands.Cog):
|
||||
return message
|
||||
|
||||
@commands.command(pass_context=True)
|
||||
@asyncio.coroutine
|
||||
def review(self, ctx, *args):
|
||||
async def review(self, ctx, *args):
|
||||
"""Stroop heeft (bijna) overal een mening over. Vraag het hem!
|
||||
"""
|
||||
topic = " ".join(args)
|
||||
message = self.get_review_string(topic)
|
||||
yield from ctx.channel.send(message)
|
||||
await ctx.channel.send(message)
|
||||
|
||||
Reference in New Issue
Block a user