Prefixing channel names
This commit is contained in:
16
poetry.lock
generated
16
poetry.lock
generated
@@ -277,6 +277,20 @@ files = [
|
||||
{file = "charset_normalizer-3.2.0-py3-none-any.whl", hash = "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "emoji"
|
||||
version = "2.8.0"
|
||||
description = "Emoji for Python"
|
||||
optional = false
|
||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
||||
files = [
|
||||
{file = "emoji-2.8.0-py2.py3-none-any.whl", hash = "sha256:a8468fd836b7ecb6d1eac054c9a591701ce0ccd6c6f7779ad71b66f76664df90"},
|
||||
{file = "emoji-2.8.0.tar.gz", hash = "sha256:8d8b5dec3c507444b58890e598fc895fcec022b3f5acb49497c6ccc5208b8b00"},
|
||||
]
|
||||
|
||||
[package.extras]
|
||||
dev = ["coverage", "coveralls", "pytest"]
|
||||
|
||||
[[package]]
|
||||
name = "frozenlist"
|
||||
version = "1.4.0"
|
||||
@@ -621,4 +635,4 @@ multidict = ">=4.0"
|
||||
[metadata]
|
||||
lock-version = "2.0"
|
||||
python-versions = "^3.10"
|
||||
content-hash = "5b48792862b482a79e3aa47c0bcbd4b0328067319f200a0b9e18135f59185532"
|
||||
content-hash = "9242538fd34a7c862185523b7db15cde94069c1411cbda62d67ae4e196b5ed27"
|
||||
|
||||
@@ -11,6 +11,7 @@ unidecode = "^1.3.6"
|
||||
requests = "^2.31.0"
|
||||
bs4 = "^0.0.1"
|
||||
nextcord = "^2.5.0"
|
||||
emoji = "^2.8.0"
|
||||
|
||||
|
||||
[build-system]
|
||||
|
||||
41
run.py
41
run.py
@@ -1,9 +1,10 @@
|
||||
import sys
|
||||
import nextcord
|
||||
import hashlib
|
||||
import re
|
||||
import asyncio
|
||||
import random
|
||||
import base64
|
||||
import emoji
|
||||
from datetime import datetime
|
||||
import cambot.codenames as codenames
|
||||
import cambot.wordle as wordle
|
||||
@@ -70,28 +71,58 @@ async def on_message(message):
|
||||
games_entered = [codenames_game for codenames_game in codenames_games.values() if codenames_game.get_player(message.author)]
|
||||
|
||||
# Admin commands
|
||||
print(message.author.name)
|
||||
if message.author.name == "biganon":
|
||||
if regex := re.search(r"^[sS]ay ([0-9]+) (.*)$", content):
|
||||
channel_id = int(regex.group(1))
|
||||
to_say = regex.group(2)
|
||||
await bot.get_channel(channel_id).send(to_say)
|
||||
|
||||
if regex := re.search(r"^wordle targets?$", content_lowercase):
|
||||
if regex := re.search(r"^[wW]ordle targets?$", content_lowercase):
|
||||
output = ""
|
||||
for wordle_game in wordle_games.values():
|
||||
output += f"{wordle_game.channel.guild} > {wordle_game.channel.name} : {wordle_game.target}\n"
|
||||
await message.author.send(output)
|
||||
|
||||
if regex := re.search(r"^wordle reset ([0-9]+)$", content_lowercase):
|
||||
if regex := re.search(r"^[wW]ordle reset ([0-9]+)$", content_lowercase):
|
||||
channel_id = int(regex.group(1))
|
||||
await wordle_games[channel_id].reset()
|
||||
|
||||
if regex := re.search(r"^ephemeris$", content_lowercase):
|
||||
if regex := re.search(r"^[eE]phemeris$", content_lowercase):
|
||||
embed = ephemeris.digest()
|
||||
for channel_id in EPHEMERIS_CHANNEL_IDS:
|
||||
await bot.get_channel(channel_id).send(embed=embed)
|
||||
|
||||
if regex := re.search(r"^[dD]ump ([0-9]+)$", content):
|
||||
guild_id = int(regex.group(1))
|
||||
guild = bot.get_guild(guild_id)
|
||||
string = ",".join(channel.name for channel in guild.text_channels)
|
||||
b64 = base64.b64encode(string.encode("utf-8")).decode()
|
||||
await message.author.send(string)
|
||||
await message.author.send(b64)
|
||||
|
||||
if regex := re.search(r"[lL]oad ([0-9]+) (.*)$", content):
|
||||
guild_id = int(regex.group(1))
|
||||
guild = bot.get_guild(guild_id)
|
||||
b64 = regex.group(2)
|
||||
string = base64.b64decode(b64.encode("utf-8")).decode()
|
||||
names = string.split(",")
|
||||
if len(names) != len(guild.text_channels):
|
||||
await message.author.send(f"Erreur : {len(names)} noms fournis, mais {len(guild.text_channels)} canaux trouvés")
|
||||
return
|
||||
for idx, channel in enumerate(guild.text_channels):
|
||||
await channel.edit(name=names[idx])
|
||||
|
||||
if regex := re.search(r"[pP]refix ([0-9]+) (.*)$", content):
|
||||
guild_id = int(regex.group(1))
|
||||
guild = bot.get_guild(guild_id)
|
||||
prefix = regex.group(2)
|
||||
for channel in guild.text_channels:
|
||||
if emoji.is_emoji(channel.name[0]):
|
||||
unprefixed = channel.name[1:]
|
||||
else:
|
||||
unprefixed = channel.name
|
||||
await channel.edit(name=prefix+unprefixed)
|
||||
|
||||
# Codenames whispers
|
||||
if len(games_entered) == 1:
|
||||
await codenames.process_whisper(games_entered[0], message)
|
||||
|
||||
Reference in New Issue
Block a user