mirror of
https://github.com/miaowware/qrm2.git
synced 2024-11-10 10:23:32 -05:00
8f15feab94
Fixes #150
58 lines
1.8 KiB
Python
58 lines
1.8 KiB
Python
"""
|
|
Fun extension for qrm
|
|
---
|
|
Copyright (C) 2019-2020 Abigail Gold, 0x5c
|
|
|
|
This file is part of discord-qrm2 and is released under the terms of the GNU
|
|
General Public License, version 2.
|
|
"""
|
|
|
|
import random
|
|
|
|
import discord.ext.commands as commands
|
|
|
|
import common as cmn
|
|
|
|
|
|
class FunCog(commands.Cog):
|
|
def __init__(self, bot: commands.Bot):
|
|
self.bot = bot
|
|
with open('resources/words') as words_file:
|
|
self.words = words_file.read().lower().splitlines()
|
|
|
|
@commands.command(name="xkcd", aliases=['x'], category=cmn.cat.fun)
|
|
async def _xkcd(self, ctx: commands.Context, number: str):
|
|
'''Look up an xkcd by number.'''
|
|
await ctx.send('http://xkcd.com/' + number)
|
|
|
|
@commands.command(name="tar", category=cmn.cat.fun)
|
|
async def _tar(self, ctx: commands.Context):
|
|
'''Returns an xkcd about tar.'''
|
|
await ctx.send('http://xkcd.com/1168')
|
|
|
|
@commands.command(name="xd", hidden=True, category=cmn.cat.fun)
|
|
async def _xd(self, ctx: commands.Context):
|
|
'''ecks dee'''
|
|
await ctx.send('ECKS DEE :smirk:')
|
|
|
|
@commands.command(name="funetics", aliases=['fun'], category=cmn.cat.fun)
|
|
async def _funetics_lookup(self, ctx: commands.Context, *, msg: str):
|
|
'''Get fun phonetics for a word or phrase.'''
|
|
with ctx.typing():
|
|
result = ''
|
|
for char in msg.lower():
|
|
if char.isalpha():
|
|
result += random.choice([word for word in self.words if word[0] == char])
|
|
else:
|
|
result += char
|
|
result += ' '
|
|
embed = cmn.embed_factory(ctx)
|
|
embed.title = f'Funetics for {msg}'
|
|
embed.description = result.title()
|
|
embed.colour = cmn.colours.good
|
|
await ctx.send(embed=embed)
|
|
|
|
|
|
def setup(bot: commands.Bot):
|
|
bot.add_cog(FunCog(bot))
|