refactor: remove dynamic handler system

Can just use client.add_listener instead
This commit is contained in:
Ryan 2025-01-05 17:33:52 -05:00
parent 17bcdc687d
commit cf2348c918
Signed by: ErrorNoInternet
GPG Key ID: 2486BFB7B1E6A4A3
2 changed files with 1 additions and 27 deletions

View File

@ -1,31 +1,13 @@
import commands import commands
import core import core
import events
from state import client from state import client
dynamic_handlers = {}
async def trigger_dynamic_handlers(event_type: str, *data):
if event_type in dynamic_handlers:
for dynamic_handler in dynamic_handlers[event_type]:
try:
await dynamic_handler(*data)
except Exception as e:
print(
f"error in dynamic event handler {dynamic_handler} for {event_type}: {e}"
)
async def on_message(message): async def on_message(message):
await events.trigger_dynamic_handlers("on_message", message)
await core.on_message(message) await core.on_message(message)
async def on_message_edit(before, after): async def on_message_edit(before, after):
await events.trigger_dynamic_handlers("on_message_edit", before, after)
if before.content == after.content: if before.content == after.content:
return return
@ -33,28 +15,21 @@ async def on_message_edit(before, after):
async def on_message_delete(message): async def on_message_delete(message):
await events.trigger_dynamic_handlers("on_bulk_delete", message)
commands.voice.delete_queued([message]) commands.voice.delete_queued([message])
async def on_bulk_message_delete(messages): async def on_bulk_message_delete(messages):
await events.trigger_dynamic_handlers("on_bulk_message_delete", messages)
commands.voice.delete_queued(messages) commands.voice.delete_queued(messages)
async def on_voice_state_update(member, before, after): async def on_voice_state_update(member, before, after):
await events.trigger_dynamic_handlers(
"on_voice_state_update", member, before, after
)
await core.on_voice_state_update(member, before, after) await core.on_voice_state_update(member, before, after)
for k, v in client.get_listeners().items(): for k, v in client.get_listeners().items():
for f in v: for f in v:
client.remove_listener(f, k) client.remove_listener(f, k)
client.add_listener(on_bulk_message_delete, "on_bulk_message_delete") client.add_listener(on_bulk_message_delete, "on_bulk_message_delete")
client.add_listener(on_message, "on_message") client.add_listener(on_message, "on_message")
client.add_listener(on_message_delete, "on_message_delete") client.add_listener(on_message_delete, "on_message_delete")

View File

@ -7,7 +7,6 @@ from state import client, start_time
@client.event @client.event
async def on_ready(): async def on_ready():
await events.trigger_dynamic_handlers("on_ready")
print(f"logged in as {client.user} in {round(time.time() - start_time, 1)}s") print(f"logged in as {client.user} in {round(time.time() - start_time, 1)}s")