Consolidate info + stats commands
This commit is contained in:
parent
9a31885078
commit
e418e06ce6
@ -1,45 +0,0 @@
|
|||||||
from discord.ext import commands
|
|
||||||
import discord
|
|
||||||
|
|
||||||
from global_variables import BOT_COLOR
|
|
||||||
|
|
||||||
|
|
||||||
class Info(commands.Cog):
|
|
||||||
def __init__(self, bot):
|
|
||||||
self.bot = bot
|
|
||||||
|
|
||||||
@commands.command()
|
|
||||||
@commands.dm_only()
|
|
||||||
@commands.is_owner()
|
|
||||||
async def info(self, ctx: commands.Context):
|
|
||||||
total_guilds = {}
|
|
||||||
|
|
||||||
for guild in self.bot.guilds:
|
|
||||||
total_guilds[guild.name] = guild.member_count
|
|
||||||
|
|
||||||
# Sort the dictionary by value descending
|
|
||||||
total_guilds = dict(
|
|
||||||
sorted(total_guilds.items(), key=lambda item: item[1], reverse=True)
|
|
||||||
)
|
|
||||||
|
|
||||||
total_members = 0
|
|
||||||
|
|
||||||
for guild in total_guilds:
|
|
||||||
total_members += total_guilds[guild]
|
|
||||||
|
|
||||||
embed = discord.Embed(
|
|
||||||
title="User Count",
|
|
||||||
description=f"Total Members: `{total_members:,}`\nTotal Guilds: `{len(self.bot.guilds):,}`\n\nTotal Players: `{self.bot.lavalink.nodes[0].stats.playing_players}`\nLoad: `{round(self.bot.lavalink.nodes[0].stats.lavalink_load * 100, 2)}%`",
|
|
||||||
color=BOT_COLOR,
|
|
||||||
)
|
|
||||||
# Add the top 5 guilds to the embed
|
|
||||||
for guild in list(total_guilds)[:5]:
|
|
||||||
embed.add_field(
|
|
||||||
name=guild, value=f"```{total_guilds[guild]:,}```", inline=False
|
|
||||||
)
|
|
||||||
|
|
||||||
await ctx.send(embed=embed)
|
|
||||||
|
|
||||||
|
|
||||||
async def setup(bot):
|
|
||||||
await bot.add_cog(Info(bot))
|
|
@ -56,16 +56,24 @@ class Stats(commands.Cog):
|
|||||||
connection = sqlite3.connect("count.db")
|
connection = sqlite3.connect("count.db")
|
||||||
cursor = connection.cursor()
|
cursor = connection.cursor()
|
||||||
|
|
||||||
embed = discord.Embed(title="Command Statistics", color=BOT_COLOR)
|
# Pull the top 5 commands being run
|
||||||
|
data = cursor.execute(
|
||||||
|
"SELECT * FROM count ORDER BY count DESC LIMIT 5"
|
||||||
|
).fetchall()
|
||||||
|
|
||||||
|
# Get the combined total amount of commands run
|
||||||
|
total_commands = cursor.execute("SELECT SUM(count) FROM count").fetchone()[0]
|
||||||
|
|
||||||
|
embed = discord.Embed(
|
||||||
|
title="Statistics",
|
||||||
|
description=f"Total Guilds: `{len(self.bot.guilds):,}`\nTotal Commands: `{total_commands:,}`\n\nTotal Players: `{self.bot.lavalink.nodes[0].stats.playing_players}`\nLoad: `{round(self.bot.lavalink.nodes[0].stats.lavalink_load * 100, 2)}%`",
|
||||||
|
color=BOT_COLOR,
|
||||||
|
)
|
||||||
|
|
||||||
total = 0
|
|
||||||
data = cursor.execute("SELECT * FROM count").fetchall()
|
|
||||||
for entry in data:
|
for entry in data:
|
||||||
embed.add_field(name=entry[0], value=f"` {entry[1]} `", inline=True)
|
embed.add_field(name=entry[0], value=f"` {entry[1]:,} `", inline=True)
|
||||||
total += entry[1]
|
|
||||||
|
|
||||||
embed.add_field(name="TOTAL", value=f"` {total} `", inline=False)
|
|
||||||
|
|
||||||
|
connection.close()
|
||||||
await ctx.send(embed=embed)
|
await ctx.send(embed=embed)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user