Initialisation du repository de Beta
This commit is contained in:
commit
14985f6dbb
9469 changed files with 1903273 additions and 0 deletions
32
commandes/roles/creer.py
Normal file
32
commandes/roles/creer.py
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
import discord
|
||||
|
||||
async def execute(bot, params, message):
|
||||
roles = params.get('roles', [])
|
||||
if not roles:
|
||||
# Fallback for single role
|
||||
roles = [params]
|
||||
guild = message.guild
|
||||
created_count = 0
|
||||
for role_params in roles:
|
||||
role_name = role_params.get('role_name')
|
||||
color = role_params.get('color', '#ffffff')
|
||||
permissions_str = role_params.get('permissions', '')
|
||||
# Parse color
|
||||
try:
|
||||
color = discord.Color(int(color.lstrip('#'), 16))
|
||||
except ValueError:
|
||||
color = discord.Color.default()
|
||||
# Parse permissions
|
||||
permissions = discord.Permissions()
|
||||
if permissions_str:
|
||||
perm_list = [p.strip() for p in permissions_str.split(',')]
|
||||
for perm in perm_list:
|
||||
if hasattr(discord.Permissions, perm):
|
||||
setattr(permissions, perm, True)
|
||||
try:
|
||||
role = await guild.create_role(name=role_name, color=color, permissions=permissions)
|
||||
created_count += 1
|
||||
except discord.Forbidden:
|
||||
await message.channel.send(f"Je n'ai pas les permissions pour créer le rôle '{role_name}'.")
|
||||
if created_count > 0:
|
||||
await message.channel.send(f"{created_count} rôle(s) créé(s).")
|
||||
Loading…
Add table
Add a link
Reference in a new issue