First official build of bot!
Co-authored-by: iakrules <64628083+iakrules@noreply.github.com>
This commit is contained in:
parent
953c89ead0
commit
2b8e2345f9
32 changed files with 1164 additions and 383 deletions
64
cogs/moderation/embedCog.py
Normal file
64
cogs/moderation/embedCog.py
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
import discord
|
||||
from discord.ext import commands
|
||||
|
||||
class EmbedCog(commands.Cog):
|
||||
|
||||
def __init__(self, bot):
|
||||
self.bot = bot
|
||||
|
||||
# Commands
|
||||
@commands.command()
|
||||
async def embed(self, ctx, *, data):
|
||||
"""Produces a customizable embed"""
|
||||
# Split arguments into a list
|
||||
data = data.split("%%")
|
||||
|
||||
# Set default channel to current channel where command is used
|
||||
channel = ctx.channel
|
||||
|
||||
# Remove [''] surrounding possible channel argument input (slice value to just channel ID)
|
||||
possible_channel = data[0].rstrip()[2:-1]
|
||||
|
||||
# Set channel if channel argument is given
|
||||
try:
|
||||
channel = await commands.TextChannelConverter().convert(ctx, possible_channel)
|
||||
data.pop(0)
|
||||
except Exception as e:
|
||||
pass
|
||||
|
||||
# Check if user has permission to send in given channel
|
||||
if not ctx.guild.get_member(ctx.author.id).permissions_in(channel).send_messages:
|
||||
return await ctx.send(f"You don't have permission to send messages to {channel.mention}!")
|
||||
|
||||
|
||||
# Add possible empty list values to deter IndexError for embed
|
||||
data += [""] * (3-len(data))
|
||||
|
||||
# Create and send embed
|
||||
embed = discord.Embed(
|
||||
title=f"{data[0]}",
|
||||
description=f"{data[1]}",
|
||||
color=ctx.guild.get_member(ctx.bot.user.id).color
|
||||
)
|
||||
embed.set_footer(
|
||||
text=f"{data[2]}"
|
||||
)
|
||||
await channel.send(embed=embed)
|
||||
|
||||
@embed.error
|
||||
async def embed_error(self, ctx, error):
|
||||
await ctx.send(
|
||||
"Type the command in the following format:```.embed #channel_name %% title %% description %% footer```"
|
||||
)
|
||||
embed = discord.Embed(
|
||||
title="Title",
|
||||
description="Description",
|
||||
color=ctx.guild.get_member(ctx.bot.user.id).color
|
||||
)
|
||||
embed.set_footer(
|
||||
text="Footer"
|
||||
)
|
||||
await ctx.send(embed=embed)
|
||||
|
||||
def setup(bot):
|
||||
bot.add_cog(EmbedCog(bot))
|
||||
Loading…
Add table
Add a link
Reference in a new issue