From 6221fd49a47ae47f5ff498e758882843f4dfdc3c Mon Sep 17 00:00:00 2001 From: christian Date: Sun, 7 Jan 2024 10:54:35 +0100 Subject: [PATCH] Pygame-test changed import User class to modules folder --- pygame-tests/User.py | 130 ------------------------------------ pygame-tests/pygame-test.py | 1 + 2 files changed, 1 insertion(+), 130 deletions(-) delete mode 100644 pygame-tests/User.py diff --git a/pygame-tests/User.py b/pygame-tests/User.py deleted file mode 100644 index 9c4389c..0000000 --- a/pygame-tests/User.py +++ /dev/null @@ -1,130 +0,0 @@ -import sqlite3 - -#from sqlite3.dbapi2 import Cursor - -# Start einer Userklasse -# Lade, sofern vorhanden, Spieler aus der Datenbank - - -class User: - __usercount = 0 - __highscore = 0 - __uid = -1 - __username = "" - __db_player_exist = 0 - __lastlogin = "" - __played_time = 0 - __all_listed_users = list() - #__sql_create_table = "CREATE TABLE IF NOT EXISTS user ( `id` INTEGER PRIMARY KEY, `username` VARCHAR(100) NOT NULL , `highscore` INT NOT NULL)" - __sql_create_table = """CREATE TABLE IF NOT EXISTS "user" ( - "id" INTEGER UNIQUE, - "username" VARCHAR(100) NOT NULL, - "highscore" INT NOT NULL, - "lastlogin" TEXT, - "played_time" INTEGER, - PRIMARY KEY("id") -);""" - - __sqlhandle = 0 #Statichandle - - def __init__(self) -> None: - - print("Userklasse erstellt") - - if(len(self.__username) <= 0 or self.__user == "") and (self.__uid == -1): - #print("Es existieren noch keine Daten!") - - if(self.__sqlhandle == 0): - self.__sqlhandle = sqlite3.connect("user.db") - cursor = self.__sqlhandle.cursor() - cursor.execute(self.__sql_create_table) - self.__sqlhandle.commit() - - def __del__(self): - print("Userklasse zerstört") - if(self.__sqlhandle != 0): - print(self.__sqlhandle) - print("Datenbank wird ordentlich geschlossen\n") - self.__sqlhandle.close() - #self.__sqlhandle = 0 - #print(self.__sqlhandle) Debug only - - - def createuser(self, username :str): - if(len(username) > 0): - cursor = self.__sqlhandle.cursor() - if(cursor != 0): - if(self.__username == ""): - print("SQLHANDLE:", self.__sqlhandle) - sql = "INSERT INTO user (username, highscore, lastlogin) VALUES('"+username+"', 0, datetime())" - try: - cursor.execute(sql) - self.__sqlhandle.commit() - print("User hinzugefügt!") - except: - print("Es ist beim Erstellen es Spielers ein Fehler aufgetreten!") - else: - print("Scheinbar besteht keine Verbindung zur Datenbank") - else: - print("Es wurde kein Name übergeben") - - - def select(self, username): - sql = "SELECT * FROM user WHERE username ='"+username+"'" - sql_update_login_date = "UPDATE user SET lastlogin = datetime() WHERE username = '"+username+"'" - try: - c = self.__sqlhandle.cursor() - row = c.execute(sql) - res = row.fetchone() - c.execute(sql_update_login_date) - - self.__sqlhandle.commit() - self.__uid = res[0] - self.__username = res[1] - self.__highscore = res[2] - self.__lastlogin = res[3] - - except: - print("Fehler bei der Nutzerauswahl") - return False - - return True - - def getplayed_time(self): - return self.__played_time - - def getlastlogin(self): - return self.__lastlogin - - def getusername(self): - return self.__username - - - def gethighscore(self): - return self.__highscore - - def getuid(self): - return self.__uid - - def listallusers(self): - cursor = self.__sqlhandle.cursor() - - for row in cursor.execute("SELECT * FROM user"): - print("ID:",row[0],", Username:", row[1], ", Highscore:", row[2]) - self.__all_listed_users.append(row[1]) - print (self.__all_listed_users) - - cursor.close() - self.__sqlhandle.commit() - - return self.__all_listed_users - - def checkuserdb(self): - cursor = self.__sqlhandle.cursor() - rows=cursor.execute("SELECT * FROM user") - rows_count =len(list(rows)) - if(rows_count >= 1): - #print("Es gibt", rows_count, "Datensätze") - return True - else: - return False \ No newline at end of file diff --git a/pygame-tests/pygame-test.py b/pygame-tests/pygame-test.py index 7e24f47..223e7c8 100644 --- a/pygame-tests/pygame-test.py +++ b/pygame-tests/pygame-test.py @@ -2,6 +2,7 @@ import pygame import pygame_menu import random as rand from copy import deepcopy +import modules.User pygame.init() MAINSCREEN_SIZE = (1024,768)