2024-08-11 17:02:24 +00:00
import nextcord
from nextcord . ext import commands , application_checks
from nextcord import TextInputStyle
import traceback
import random
import aiosqlite as sqlite3
import aiohttp
from urllib . parse import urlparse
import os
import sys
2024-08-11 17:17:50 +00:00
errormsg = [ " How could you do this to me! " , " I tried my best... " , " Maybe this will be fixed next patch " , " There ' s always next time " , " Simply processed too hard " , " Perhaps this will be fixed " , " You found an easter egg! Wait no it ' s just an error... " ]
2024-08-11 17:02:24 +00:00
class misc ( commands . Cog ) :
def __init__ ( self , bot : commands . Bot ) :
self . bot = bot
@commands.Cog.listener ( ' on_application_command_error ' )
async def errorhandler ( self , interaction : nextcord . Interaction , error : nextcord . DiscordException ) :
error = traceback . format_exception ( type ( error ) , error , error . __traceback__ )
random . shuffle ( errormsg )
2024-08-11 17:12:28 +00:00
strerror = " " . join ( error )
2024-08-11 17:17:50 +00:00
print ( strerror , file = sys . stderr )
2024-08-11 17:10:03 +00:00
message = f " { errormsg [ 0 ] } \n ```py \n { strerror [ - 1800 : ] } \n ``` \n Contact <@ { self . bot . owner_id } > if the error persists "
2024-08-11 17:02:24 +00:00
try :
await interaction . response . send_message ( message , ephemeral = True )
except :
await interaction . followup . send ( message , ephemeral = True )
2024-08-11 17:42:11 +00:00
@commands.Cog.listener ( ' on_error ' )
async def seconderrorhandler ( self , event_method , * args , * * kwargs ) :
error = traceback . format_exc ( )
random . shuffle ( errormsg )
print ( error , file = sys . stderr )
message = f " { errormsg [ 0 ] } \n ```py \n { error [ - 1800 : ] } \n ``` \n Contact <@ { self . bot . owner_id } > if the error persists "
try :
await interaction . response . send_message ( message , ephemeral = True )
except :
try :
await interaction . followup . send ( message , ephemeral = True )
except :
await interaction . send ( message , ephemeral = True )
2024-08-11 17:03:37 +00:00
def setup ( bot : commands . Bot ) :
bot . add_cog ( misc ( bot ) )