From 86991290495f2a09cb5e43765c0be32101300620 Mon Sep 17 00:00:00 2001 From: sgoudham Date: Tue, 21 Jul 2020 04:38:57 +0100 Subject: [PATCH] Deleting previous cogs as they have been moved into fun.py --- cogs/fun/doggo.py | 115 ------------------------------------------ cogs/fun/eightball.py | 40 --------------- cogs/fun/homies.py | 88 -------------------------------- cogs/fun/owo_text.py | 30 ----------- cogs/fun/reminder.py | 49 ------------------ 5 files changed, 322 deletions(-) delete mode 100644 cogs/fun/doggo.py delete mode 100644 cogs/fun/eightball.py delete mode 100644 cogs/fun/homies.py delete mode 100644 cogs/fun/owo_text.py delete mode 100644 cogs/fun/reminder.py diff --git a/cogs/fun/doggo.py b/cogs/fun/doggo.py deleted file mode 100644 index bdcce891..00000000 --- a/cogs/fun/doggo.py +++ /dev/null @@ -1,115 +0,0 @@ -import datetime -import random -import string - -from aiohttp import request -from discord import Colour, Embed -from discord.ext import commands -from discord.ext.commands import BucketType, cooldown, command - -from settings import colour_list - - -# Set up the cog -class Doggo(commands.Cog): - def __init__(self, bot): - self.bot = bot - - @command(name="doggo", aliases=["Doggo"]) - @cooldown(1, 1, BucketType.user) - async def doggo(self, ctx, breed=None): - """Allows an API to grab images of dogs""" - - # Set member as the author - member = ctx.message.author - # Get the member avatar - userAvatar = member.avatar_url - - # Initialise array to store doggo pics - b_list = [] - - # If a breed if specified - if breed: - # Get the lowercase string input - lowercase_breed = breed.lower() - - # If the user wants to know what breeds there are - if lowercase_breed == "breeds": - # Get the list of breeds - breed_url = "https://dog.ceo/api/breeds/list/all" - - # Using API, retrieve the full list of breeds available - async with request("GET", breed_url, headers={}) as response: - if response.status == 200: - data = await response.json() - breed_link = data["message"] - - # Store every Doggo in an array - for doggo in breed_link: - b_list.append(doggo) - - # Join together all the breeds into a string - doggo_string = string.capwords(", ".join(b_list)) - - # Tell the user to try the breeds listed below - await ctx.send(f"Try the Breeds listed below!\n{doggo_string}") - - # If no breed has been specified - else: - - # Grab a random image of a doggo with the breed specified - image_url = f"https://dog.ceo/api/breed/{lowercase_breed}/images/random" - - # Using API, retrieve the image of a doggo of the breed specified - async with request("GET", image_url, headers={}) as response: - if response.status == 200: - data = await response.json() - image_link = data["message"] - - # Set up the embed for a doggo image - doggo_embed = Embed( - title=f"**It's a {lowercase_breed.capitalize()} Doggo!!** ", - colour=Colour(random.choice(colour_list)), - timestamp=datetime.datetime.utcnow()) - doggo_embed.set_image(url=image_link) - doggo_embed.set_footer(text=f"Requested by {member}", icon_url='{}'.format(userAvatar)) - - # Send the doggo image - await ctx.send(embed=doggo_embed) - - else: - - # Send error message that Doggo was not found! - await ctx.send( - "Doggo Not Found! Please do **~doggo `breeds`** to see the full list of Doggos!") - else: - - # Grab a random image of a doggo of any breed - image_url = "https://dog.ceo/api/breeds/image/random" - - # Using API, retrieve the image of a doggo of any breed - async with request("GET", image_url, headers={}) as response: - if response.status == 200: - data = await response.json() - image_link = data["message"] - - # Set up the embed for a random doggo image - doggo_embed = Embed( - title=f"**Doggo!** ", - colour=Colour(random.choice(colour_list)), - timestamp=datetime.datetime.utcnow()) - doggo_embed.set_image(url=image_link) - doggo_embed.set_footer(text=f"Requested by {member}", icon_url='{}'.format(userAvatar)) - - # Send random doggo image to the channel - await ctx.send(embed=doggo_embed) - - else: - - # Send error message that Doggo was not found! - await ctx.send( - "Doggo Not Found! Please do **~doggo `breeds`** to see the full list of Doggos!") - - -def setup(bot): - bot.add_cog(Doggo(bot)) diff --git a/cogs/fun/eightball.py b/cogs/fun/eightball.py deleted file mode 100644 index a5d42816..00000000 --- a/cogs/fun/eightball.py +++ /dev/null @@ -1,40 +0,0 @@ -import urllib.parse - -from aiohttp import request -from discord.ext import commands -from discord.ext.commands import BucketType, cooldown, command - - -# Set up the cog -class eightball(commands.Cog): - def __init__(self, bot): - self.bot = bot - - @command(name="8ball", aliases=['8Ball']) - @cooldown(1, 1, BucketType.user) - async def _8ball(self, ctx, *, question): - """8ball responses!""" - - try: - # Make the text readable to the api - eightball_question = urllib.parse.quote(question) - - # Using API, make a connection to 8ball API - async with request("GET", f"https://8ball.delegator.com/magic/JSON/{eightball_question}", - headers={}) as response: - - # With a successful connection - # Get the answer - if response.status == 200: - data = await response.json() - api_question = data["magic"] - api_answer = api_question["answer"] - - await ctx.send(api_answer) - - except Exception as e: - print(e) - - -def setup(bot): - bot.add_cog(eightball(bot)) diff --git a/cogs/fun/homies.py b/cogs/fun/homies.py deleted file mode 100644 index af783da0..00000000 --- a/cogs/fun/homies.py +++ /dev/null @@ -1,88 +0,0 @@ -import textwrap - -import discord -from PIL import Image, ImageDraw, ImageFont -from discord.ext import commands -from discord.ext.commands import command, cooldown, BucketType - - -def generate_meme(image_path, top_text, bottom_text='', font_path='homies/impact/Impacted.ttf', font_size=9): - get_image = Image.open(image_path) - draw = ImageDraw.Draw(get_image) - image_width, image_height = get_image.size - - # Load font - font = ImageFont.truetype(font=font_path, size=int(image_height * font_size) // 100) - - # Convert text to uppercase - top_text = top_text.upper() - bottom_text = bottom_text.upper() - - # Text wrapping - char_width, char_height = font.getsize('A') - chars_per_line = image_width // char_width - top_lines = textwrap.wrap(top_text, width=chars_per_line) - bottom_lines = textwrap.wrap(bottom_text, width=chars_per_line) - - # Draw top lines - y = 10 - for line in top_lines: - line_width, line_height = font.getsize(line) - x = (image_width - line_width) / 2 - draw.text((x, y), line, fill='white', font=font) - y += line_height - - # Draw bottom lines - y = image_height - char_height * len(bottom_lines) - 15 - for line in bottom_lines: - line_width, line_height = font.getsize(line) - x = (image_width - line_width) / 2 - draw.text((x, y), line, fill='white', font=font) - y += line_height - - # Save meme - get_image.save("AllMyHomiesHateMeme.jpg") - - -# Set up the cog -class Fun(commands.Cog): - def __init__(self, bot): - self.bot = bot - - @command(name="homies", aliases=["Homies", "homie", "Homie"]) - @cooldown(1, 10, BucketType.user) - async def homies(self, ctx, *, user_word): - """Allows people to summon the homies""" - - try: - # Make sure the text entered is less than 20 characters - if len(user_word) >= 20: - await ctx.send("Please make sure the prompt is below **20** characters!") - return - else: - - # Define the text to be drawn on the top and the bottom - top_text = f"Ayo fuck {user_word}" - bottom_text = f"All my homies hate {user_word}" - - # Call the method to generate the image - generate_meme('homies/AllMyHomies.jpg', top_text=top_text, bottom_text=bottom_text) - - # Send the image file stored in the directory - await ctx.send(file=discord.File('AllMyHomiesHateMeme.jpg')) - except Exception as e: - print(e) - - -def setup(bot): - bot.add_cog(Fun(bot)) - - -""" # Set up the embed to display a random kissing gif -embed = Embed( -title=f"**The Homies**", -colour=Colour(int(random.choice(settings.colour_list))), -timestamp=datetime.datetime.utcnow()) -embed.set_image(url=f"{image}") -embed.set_footer(text=f"Requested by {ctx.author}", icon_url='{}'.format(ctx.author.avatar_url)) -""" diff --git a/cogs/fun/owo_text.py b/cogs/fun/owo_text.py deleted file mode 100644 index 3f78d686..00000000 --- a/cogs/fun/owo_text.py +++ /dev/null @@ -1,30 +0,0 @@ -from discord.ext import commands -# OwO Impowt da wibwawy ÙωÙ -from discord.ext.commands import BucketType, cooldown, command -from owotext import OwO - - -# Initiate the cog -class OwOText(commands.Cog): - def __init__(self, bot): - self.bot = bot - - # ~owo command allows for text to be 'converted to OWO' - @command(name="owo", aliases=["Owo", "OwO"]) - @cooldown(1, 1, BucketType.user) - async def owo(self, ctx): - # Making sure that the string that gets converted is excluding the ~owo - if ctx.message.content.startswith(f"{ctx.prefix}owo"): - # Get the message to be converted - msg = ctx.message.content.split(f"{ctx.prefix}owo ", 1) - - # Convert the message into owo text - uwu = OwO() - owo = uwu.whatsthis(str(msg[-1])) - - # Send the owo version of the text to the channel - await ctx.message.channel.send(owo) - - -def setup(bot): - bot.add_cog(OwOText(bot)) diff --git a/cogs/fun/reminder.py b/cogs/fun/reminder.py deleted file mode 100644 index 96d69ac4..00000000 --- a/cogs/fun/reminder.py +++ /dev/null @@ -1,49 +0,0 @@ -import asyncio - -from discord.ext import commands -from discord.ext.commands import command - - -# Set up the Cog -class Reminder(commands.Cog): - def __init__(self, bot): - self.bot = bot - - # ~remindme command to allow the bot to dm you to remind you of something - @command(name="remindme", aliases=["Remindme", "rm"]) - async def remind_me(self, ctx, time=None, *, text): - # Grab the author and store it in "author" - author = ctx.author - - # If a value for time as been given - if time: - # Sleep the thread for the amount of time specified by the user - await asyncio.sleep(float(time)) - # Send message to user's dms - await ctx.send(f"I've reminded you in your dms! {ctx.author.mention}") - await author.send(text) - - # else no time has been given - else: - # Instantly Send message to user's dms - await author.send(text) - - -""" - @commands.Cog.listener() - @commands.is.owner() - async def (): - time_left = [float(i) for i in str(datetime.now().time()).split(":")] - time_left = timedelta(hours=2) - timedelta(hours=time_left[0] % 2, minutes=time_left[1], seconds=time_left[2]) - sleep(round(time_left.total_seconds())) - - while True: - await ctx.send("Bump the Server Idiots") - sleep(7200) - - _thread.start_new_thread(ex(self=self, ctx), ()) -""" - - -def setup(bot): - bot.add_cog(Reminder(bot))