-- Erstelle die Spieler-Tabelle
CREATE TABLE IF NOT EXISTS Spieler (
    SpielerID INT PRIMARY KEY AUTO_INCREMENT,
    Name VARCHAR(100) NOT NULL,
    Elo INT DEFAULT 1000,
    Siege INT DEFAULT 0,
    Niederlage INT DEFAULT 0,
    Unentschieden INT DEFAULT 0,
    GesamtKarten INT DEFAULT 0,
    CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    UpdatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

-- Erstelle die Spiele-Tabelle
CREATE TABLE IF NOT EXISTS Spiele (
    SpielID INT PRIMARY KEY AUTO_INCREMENT,
    Spieler1ID INT NOT NULL,
    Spieler2ID INT NOT NULL,
    Gewinner INT,
    Unentschieden BOOLEAN DEFAULT FALSE,
    QLeague BOOLEAN DEFAULT FALSE,
    Spieler1Karten INT DEFAULT 0,
    Spieler2Karten INT DEFAULT 0,
    CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (Spieler1ID) REFERENCES Spieler(SpielerID),
    FOREIGN KEY (Spieler2ID) REFERENCES Spieler(SpielerID),
    FOREIGN KEY (Gewinner) REFERENCES Spieler(SpielerID)
);

-- Erstelle die Map-Tabelle
CREATE TABLE IF NOT EXISTS Map (
    MapID INT PRIMARY KEY AUTO_INCREMENT,
    Name VARCHAR(100) NOT NULL,
    SpielID INT NOT NULL,
    CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (SpielID) REFERENCES Spieler(SpielerID)
);

-- Erstelle die Ligen-Tabelle
CREATE TABLE IF NOT EXISTS leagues (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    description TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
