Updating to new discord.py version

This commit is contained in:
Akumatic 2019-06-21 23:39:54 +02:00
parent ed9031a1d9
commit 6f0e6737fd
4 changed files with 73 additions and 14 deletions

View File

@ -9,7 +9,7 @@ A Discord Bot written in Python using the Rewrite API wrapper
- Discord Rewrite API Wrapper
##### You can get the Wrapper with pip:
`python -m pip install -U https://github.com/Rapptz/discord.py/archive/rewrite.zip`
`python -m pip install discord.py`
Depending on your OS and environment you need to type `python3` or another equivalent instead of `python`

View File

@ -1,7 +1,7 @@
import discord, random
from discord.ext import commands
class Fun():
class Fun(commands.Cog):
def __init__(self, bot):
self.bot = bot
@ -11,10 +11,56 @@ class Fun():
await ctx.send(ctx.author.mention + " Pong!")
@commands.command()
async def dice(self, ctx):
async def d4(self, ctx):
"""Throws a four-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D4: " + str(random.randint(1,4)))
@commands.command()
async def d6(self, ctx):
"""Throws a six-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D6: " + str(random.randint(1,6)))
@commands.command()
async def d8(self, ctx):
"""Throws a eight-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D8: " + str(random.randint(1,8)))
@commands.command()
async def d10(self, ctx):
"""Throws a eight-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D10: " + str(random.randint(1,10)))
@commands.command()
async def d12(self, ctx):
"""Throws a twelve-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D12: " + str(random.randint(1,12)))
@commands.command()
async def d20(self, ctx):
"""Throws a twenty-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D20: " + str(random.randint(1,20)))
@commands.command()
async def d100(self, ctx):
"""Throws a hundred-sided dice."""
await ctx.send(ctx.author.mention + " You rolled a D100: " + str(random.randint(1,100)))
@commands.command()
async def magic8ball(self,ctx, *, msg : str = None):
if msg is None:
await ctx.send(":8ball: You need a question")
else:
answers = ["Yes.", "As I see it, yes.", "Outlook good.", "For sure",
"Without a doubt.", "It is decidedly so.", "Without a doubt.",
"Maybe", "Perhaps","It is uncertain", "Dont even think about it.",
"Nope.", "Don't count on it.", "My sources say no.",
"Outlook not so good.", "Very doubtful.", "Definitely no."]
e = discord.Embed(color=0x3296ff)
e.set_author(name = str(ctx.author), icon_url=ctx.author.avatar_url)
e.add_field(name=":grey_question: Question", value=msg, inline=False)
e.add_field(name=":8ball: Answer", value=random.choice(answers), inline=False)
await ctx.send(embed=e)
@commands.command()
async def coin(self, ctx):
"""Throws a coin."""

View File

@ -1,4 +1,4 @@
import discord
import discord, io
from discord.ext import commands
from datetime import datetime
from akuma import s, c, writeServer
@ -17,11 +17,12 @@ ownerCommands = """```Possible Commands:
owner rmAdmin <id>
```"""
class Moderation():
class Moderation(commands.Cog):
def __init__(self, bot):
self.bot = bot
#Logs
@commands.Cog.listener()
async def on_member_join(self, member):
if s[str(member.guild.id)]["logJoinAndLeave"] == True:
if s[str(member.guild.id)]["joinMessage"] != "":
@ -33,7 +34,8 @@ class Moderation():
e.add_field(name="Mention", value=member.mention, inline=False)
chan = self.bot.get_channel(s[str(member.guild.id)]["logJoinAndLeaveChannel"])
await chan.send(embed=e)
@commands.Cog.listener()
async def on_member_remove(self, member):
if s[str(member.guild.id)]["logJoinAndLeave"] == True:
if s[str(member.guild.id)]["logJoinAndLeaveChannel"] != 0:
@ -44,26 +46,37 @@ class Moderation():
chan = self.bot.get_channel(s[str(member.guild.id)]["logJoinAndLeaveChannel"])
await chan.send(embed=e)
@commands.Cog.listener()
async def on_message_edit(self, before, after):
if s[str(before.guild.id)]["logEditAndDelete"] == True and before.author.bot == False:
if before.guild is not None and before.author.bot == False and s[str(before.guild.id)]["logEditAndDelete"] == True:
if s[str(before.guild.id)]["logEditAndDeleteChannel"] != 0 and before.content != after.content:
e = discord.Embed(color=0xc83232)
e = discord.Embed(color=0x32c8c8)
e.set_author(name = str(before.author) + " edited a message.", icon_url=before.author.avatar_url)
e.add_field(name="Author ID", value=str(before.author.id), inline=False)
e.add_field(name="Profile", value=before.author.mention, inline=False)
e.add_field(name="Channel", value=str(before.channel.name), inline=False)
e.add_field(name="Message before", value=before.content,inline=False)
e.add_field(name="Message after", value=after.content,inline=False)
chan = self.bot.get_channel(s[str(before.guild.id)]["logEditAndDeleteChannel"])
await chan.send(embed=e)
@commands.Cog.listener()
async def on_message_delete(self, message):
if s[str(message.guild.id)]["logEditAndDelete"] == True and message.author.bot == False:
if message.guild is not None and message.author.bot == False and s[str(message.guild.id)]["logEditAndDelete"] == True:
if s[str(message.guild.id)]["logEditAndDeleteChannel"] != 0:
e = discord.Embed(color=0xc83232)
e.set_author(name = str(message.author) + " deleted a message.", icon_url=message.author.avatar_url)
e.add_field(name="Author ID", value=str(message.author.id), inline=False)
e.set_author(name = str(message.author) + "'s message got deleted.", icon_url=message.author.avatar_url)
e.add_field(name="Profile", value=message.author.mention, inline=False)
e.add_field(name="Channel", value=str(message.channel.name), inline=False)
e.add_field(name="Message", value=message.content,inline=False)
if message.content:
e.add_field(name="Message", value=message.content,inline=False)
numAtch = len(message.attachments)
if numAtch == 1:
e.add_field(name="Attachments", value="The message had " + str(numAtch) + " attachment",inline=False)
e.add_field(name="File Name", value=message.attachments[0].filename, inline=False)
elif numAtch > 1:
e.add_field(name="Attachments", value="The message had " + str(numAtch) + " attachments",inline=False)
for a in message.attachments:
e.add_field(name="File Name", value=a.filename, inline=False)
chan = self.bot.get_channel(s[str(message.guild.id)]["logEditAndDeleteChannel"])
await chan.send(embed=e)

View File

@ -2,7 +2,7 @@ from discord.ext import commands
from akuma import s
import discord
class User():
class User(commands.Cog):
def __init__(self, bot):
self.bot = bot