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