1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
from discord.ext import commands
import discord
import datetime
def dump(obj):
output = ""
for attr in dir(obj):
output += "\nobj.%s = %r" % (attr, getattr(obj, attr))
print("obj.%s = %r" % (attr, getattr(obj, attr)))
return output
class General(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.command()
async def userinfo(self, ctx, user: discord.Member=None):
#await ctx.send(f"```py\n{dump(user)}```")
if not user:
user = ctx.message.author
output = ""
for i in user.roles:
output += i.mention + " "
if user.color.value == 0:
color = 16777210
else:
color = user.color
embed=discord.Embed(title=user.name, description=user.mention, color=color, timestamp=ctx.message.created_at)
#embed.set_thumbnail(url="attachment://temp.webp")
embed.set_thumbnail(url=user.avatar_url_as(format="png"))
embed.add_field(name="Nickname", value=user.display_name, inline=False)
embed.add_field(name="Joined on", value=user.joined_at.date(), inline=True)
embed.add_field(name="Status", value=user.status, inline=True)
embed.add_field(name="Created account on", value=user.created_at.date(), inline=True)
embed.add_field(name="Roles", value=output, inline=True)
embed.set_footer(text=f"ID: {user.id}")
await ctx.send(embed=embed)
#os.remove("temp.webp")
#os.remove("temp.png")
@commands.command()
async def coop(self, ctx, *, user: discord.Member=None):
if not user:
user = ctx.message.author
else:
user = self.bot.get_user(int(user))
coop_role = ctx.guild.get_role(int(self.bot.config[str(ctx.message.guild.id)]["coop_roleID"]))
if coop_role in user.roles:
await user.remove_roles(coop_role)
await ctx.send('You have left coop gang')
else:
await user.add_roles(coop_role)
await ctx.send("You are now in the coop gang")
@commands.command()
async def serverinfo(self, ctx, guild=None):
if not guild:
guild = ctx.message.guild
else:
print(type(guild))
guild = self.bot.get_guild(int(guild))
if guild.owner.color.value == 0:
color = 16777210
else:
color = guild.owner.color
emojiList = " "
for i in guild.emojis:
emojiList += str(i) + " "
embed=discord.Embed(title=guild.name, description=guild.description, color=color, timestamp=ctx.message.created_at)
embed.set_thumbnail(url=guild.icon_url_as(format="png"))
embed.set_image(url=guild.splash_url_as(format="png"))
embed.add_field(name="Created on", value=guild.created_at.date(), inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Emojis", value=emojiList, inline=True)
embed.add_field(name="Owner", value=guild.owner.mention, inline=True)
embed.set_footer(text=f"ID: {guild.id}")
await ctx.send(embed=embed)
def setup(bot):
bot.add_cog(General(bot))
|