cog`и и комманды не работают в discrod py
import discord
from discord.ext import commands
import os
import asyncio
bot = commands.Bot(command_prefix="!" ,intents=discord.Intents.all())
TOKEN = "токен"
autorole_id1 = 1301516990216671282
autorole_id2 = 1301106667173187654
autorole_id3 = 1301517267502235648
autorole_id4 = 1301517125298552903
autorole_id5 = 1301517394077945927
autorole_id6 = 1301517566656643144
autorole_id7 = 1301517624093708328
autorole_id8 = 1301625759739412490
@bot.event
async def on_ready():
print(f'Logged in as {bot.user} (ID: {bot.user.id})')
@bot.hybrid_command()
async def ping(ctx):
await ctx.send("Pong!")
async def load():
for filename in os.listdir("./cogs"):
if filename.endswith(".py"):
await bot.load_extension(f'cogs.{filename[:-3]}')
async def main():
async with bot:
await load()
await bot.start(TOKEN)
@bot.event
async def on_member_join(member):
role = member.guild.get_role(autorole_id1)
role2 = member.guild.get_role(autorole_id2)
role3 = member.guild.get_role(autorole_id3)
role4 = member.guild.get_role(autorole_id4)
role5 = member.guild.get_role(autorole_id5)
role6 = member.guild.get_role(autorole_id6)
role7 = member.guild.get_role(autorole_id7)
role8 = member.guild.get_role(autorole_id8)
await member.add_roles(role,role2,role3,role4,role5,role6,role7,role8)
channel = bot.get_channel(1300875870579458081)
await channel.send("Welcome")
asyncio.run(main())
Это основной код и вот сами коги
первый
import discord
from discord.ext import commands
import random
import json
class Economy(commands.Cog):
def __init__(self,bot):
self.bot = bot
@commands.Cog.listener()
async def on_ready(self):
print(f"{__name__} is online" )
@commands.command()
async def balance(self, ctx, member: discord.Member = None):
with open("eco.json","r") as f:
user_eco = json.load(f)
if member is None:
member = ctx.author
elif member is not None:
member = member
if str(member.id) not in user_eco:
user_eco[str(member.id)] = {}
user_eco[str(member.id)]["Balance"] = 5000
with open("eco.json","w") as f:
json.dump(user_eco,f, indent=4)
eco_embed = discord.Embed(title =f"Текущий баланс {member.name} ",description="Баланс этого пользователя.",color=discord.Color.blurple())
eco_embed.add_field(name = "Текущий баланс:", value = f"?{user_eco[str(member.id)]['Balance']}")
await ctx.send(embed = eco_embed)
@commands.command()
async def work(self,ctx):
with open("eco.json","r") as f:
user_eco = json.load(f)
if str(ctx.author.id) not in user_eco:
user_eco[str(ctx.author.id)] = {}
user_eco[str(ctx.author.id)]["Balance"] = 5000
with open("eco.json","w") as f:
json.dump(user_eco, f , indent=4)
cur_bal = user_eco[str(ctx.author.id)]["Balance"] = 5000
amount = random.randint(0,1000)
new_bal = cur_bal + amount
if cur_bal > new_bal:
eco_embed = discord.Embed(title = "Вас ограбили." ,description = "Группа грабителей заметила вас и они увидели в этом возможность заработать",color = discord.Color.red())
eco_embed.add_field(Name = "Новый баланс",value = f"?{new_bal}",inline = False)
eco_embed.add_field(name="Вы заработали:", value=f"?{amount}", inline=False)
eco_embed.set_footer(text = "-",icon_url = None)
await ctx.send(embed = eco_embed)
user_eco[str(ctx.author.id)]["Balance"] += amount
with open("eco.json", "w") as f:
json.dump(user_eco, f, indent=4)
elif cur_bal < new_bal:
eco_embed = discord.Embed(title = 'Вы заработали немного денег.', description="А теперь пора заниматся другими делами...",color = discord.Color.green())
eco_embed.add_field(name="Вы заработали:", value=f"?{amount}", inline=False)
eco_embed.add_field(name = "Новый баланс", value = f"?{new_bal}", inline=False)
eco_embed.set_footer(text="-.",icon_url = None)
await ctx.send(embed = eco_embed)
user_eco[str(ctx.author.id)]['Balance'] += amount
with open("eco.json","w") as f:
json.dump(user_eco, f, indent=4)
elif cur_bal == new_bal:
eco_embed = discord.Embed(title = 'Вы ничего не заработали.', description="Сегодня вам ничего не заплатили.",color = discord.Color.green())
eco_embed.add_field(name = "Вы заработали:", value = f"?{amount}",inline=False)
eco_embed.set_footer(text="-",icon_url = None)
await ctx.send(embed = eco_embed)
async def setup(bot):
await bot.add_cog(Economy(bot))
```
```import discord
from discord.ext import commands
class Moderation(commands.Cog):
def __init__(self,bot):
self.bot = bot
@commands.Cog.listener()
async def on_ready(self):
print("Moderation is online!")
@commands.command()
@commands.has_permissions(manage_messages = True)
async def clear(self,ctx, count: int):
await ctx.channel.purge(limit = count)
await ctx.send(f"{count} было удалено сообщений.")
@commands.command()
@commands.has_permissions(kick_members = True)
async def kick(self,ctx,member : discord.Member,modreason):
await ctx.guild.kick(member)
conf_embed = discord.Embed(title="Данный пользователь был успешно кикнут с сервера!", color = discord.Color.green())
conf_embed.add_field(name = "Кто был кикнут:", value= f"{member.mention} был кикнут с сервера!Наказание привел в исполниение: {ctx.author.mention}", inline = False)
conf_embed.add_field(name = "По причине:" ,value = modreason,inline= False)
await ctx.send(embed = conf_embed)
@commands.command()
@commands.has_permissions(ban_members = True)
async def ban(self,ctx,member : discord.Member,modreason):
await ctx.guild.kick(member)
conf_embed = discord.Embed(title="Данный пользователь был успешно забанен на сервере!", color = discord.Color.green())
conf_embed.add_field(name = "Кто был забанен:", value= f"{member.mention} был забанен на сервере!Наказание привел в исполниение: {ctx.author.mention}", inline = False)
conf_embed.add_field(name = "По причине:" ,value = modreason,inline= False)
await ctx.send(embed = conf_embed)
async def setup(bot):
await bot.add_cog(Moderation(bot))```