modified: bot.py

This commit is contained in:
SimolZimol
2024-09-14 18:53:18 +02:00
parent 9caeab0145
commit effc84dcc5

40
bot.py
View File

@@ -156,7 +156,9 @@ CREATE TABLE IF NOT EXISTS user_data (
askmultus INT, askmultus INT,
filter_value INT, filter_value INT,
rank INT, rank INT,
chat_history JSON chat_history JSON,
xp INT,
level INT
); );
""" """
db_cursor.execute(create_table_query) db_cursor.execute(create_table_query)
@@ -214,7 +216,7 @@ def load_user_data_from_mysql(user_id):
close_database_connection(connection) close_database_connection(connection)
if result: if result:
# Überprüfe, ob die Felder 'level' und 'xp' fehlen, und initialisiere sie gegebenenfalls # Wenn das Level und die XP nicht vorhanden sind, initialisieren
user_data = { user_data = {
"user_id": result[0], "user_id": result[0],
"permission": result[1], "permission": result[1],
@@ -224,24 +226,25 @@ def load_user_data_from_mysql(user_id):
"filter_value": result[5], "filter_value": result[5],
"rank": result[6], "rank": result[6],
"chat_history": json.loads(result[7]) if result[7] else [], "chat_history": json.loads(result[7]) if result[7] else [],
"xp": result[8] if len(result) > 8 else 0, # Setze XP auf 0, wenn es fehlt "level": result[8] if result[8] is not None else 1, # Initialisiere Level mit 1
"level": result[9] if len(result) > 9 else 1 # Setze Level auf 1, wenn es fehlt "xp": result[9] if result[9] is not None else 0 # Initialisiere XP mit 0
} }
else: else:
# Benutzer existiert noch nicht, initialisiere die Standarddaten # Falls keine Benutzerdaten gefunden werden, initialisiere sie neu
user_data = { user_data = {
"user_id": user_id, "user_id": user_id,
"permission": 0, "permission": 0, # Standardberechtigung
"points": 0, "points": 0, # Standardpunkte
"ban": 0, "ban": 0, # Standardbannstatus
"askmultus": 0, "askmultus": 0, # Standardwert für askmultus
"filter_value": 0, "filter_value": 0, # Standardwert für Filter
"rank": 0, "rank": 0, # Standardrang
"chat_history": [], "chat_history": [], # Leerer Chatverlauf
"xp": 0, # Standardmäßig 0 XP "level": 1, # Standardlevel
"level": 1 # Standardmäßig Level 1 "xp": 0 # Standard-XP
} }
# Füge den Benutzer in die Datenbank ein
# Fügen Sie die neuen Benutzerdaten zur Datenbank hinzu
insert_user_data( insert_user_data(
user_data["user_id"], user_data["user_id"],
user_data["permission"], user_data["permission"],
@@ -251,9 +254,12 @@ def load_user_data_from_mysql(user_id):
user_data["filter_value"], user_data["filter_value"],
user_data["chat_history"] user_data["chat_history"]
) )
update_user_data(user_data["user_id"], "level", 1)
update_user_data(user_data["user_id"], "xp", 0)
return user_data return user_data
cached_user_data = {} cached_user_data = {}
pending_deletion = {} pending_deletion = {}
@@ -484,8 +490,8 @@ async def level(ctx):
user_id = ctx.author.id user_id = ctx.author.id
user_data = load_user_data(user_id) user_data = load_user_data(user_id)
level = user_data["level"] level = user_data.get("level", 1) # Verwende 1 als Standardlevel, wenn nicht vorhanden
xp = user_data["xp"] xp = user_data.get("xp", 0) # Verwende 0 als Standard-XP, wenn nicht vorhanden
required_xp = calculate_xp_for_level(level) required_xp = calculate_xp_for_level(level)
embed = discord.Embed( embed = discord.Embed(