refactor: remove dynamic handler system
Can just use client.add_listener instead
This commit is contained in:
parent
17bcdc687d
commit
cf2348c918
27
events.py
27
events.py
@ -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")
|
||||||
|
1
main.py
1
main.py
@ -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")
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user