Änderung: Hinzufügung des Taxi-Minispiels und zugehöriger Funktionen

Änderungen:
- Integration des Taxi-Minispiels mit neuen Routen und Komponenten im Backend und Frontend.
- Erstellung von Modellen und Datenbank-Schemas für das Taxi-Spiel, einschließlich TaxiGameState, TaxiLevelStats und TaxiMap.
- Erweiterung der Navigationsstruktur und der Benutzeroberfläche, um das Taxi-Spiel und die zugehörigen Tools zu unterstützen.
- Aktualisierung der Übersetzungen für das Taxi-Minispiel in Deutsch und Englisch.

Diese Anpassungen erweitern die Funktionalität der Anwendung um ein neues Minispiel und verbessern die Benutzererfahrung durch neue Features und Inhalte.
This commit is contained in:
Torsten Schulz (local)
2025-09-15 17:59:42 +02:00
parent 4699488ce1
commit f230849a5c
72 changed files with 7698 additions and 133 deletions

View File

@@ -13,6 +13,7 @@ import initializeForum from './initializeForum.js';
import initializeChat from './initializeChat.js';
import initializeMatch3Data from './initializeMatch3.js';
import updateExistingMatch3Levels from './updateExistingMatch3Levels.js';
import initializeTaxi from './initializeTaxi.js';
// Normale Synchronisation (nur bei STAGE=dev Schema-Updates)
const syncDatabase = async () => {
@@ -70,6 +71,9 @@ const syncDatabase = async () => {
console.log("Updating existing Match3 levels...");
await updateExistingMatch3Levels();
console.log("Initializing Taxi...");
await initializeTaxi();
console.log('Database synchronization complete.');
} catch (error) {
console.error('Unable to synchronize the database:', error);
@@ -85,19 +89,7 @@ const syncDatabaseForDeployment = async () => {
console.log('✅ Deployment-Modus: Schema-Updates sind immer aktiviert');
console.log("Initializing database schemas...");
// Nur Schemas erstellen, keine Model-Synchronisation
const { sequelize } = await import('./sequelize.js');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS community');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS logs');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS type');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS service');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS forum');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS falukant_data');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS falukant_type');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS falukant_predefine');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS falukant_log');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS chat');
await sequelize.query('CREATE SCHEMA IF NOT EXISTS match3');
await initializeDatabase();
console.log("Synchronizing models with schema updates...");
await syncModelsAlways(models);
@@ -137,6 +129,9 @@ const syncDatabaseForDeployment = async () => {
console.log("Updating existing Match3 levels...");
await updateExistingMatch3Levels();
console.log("Initializing Taxi...");
await initializeTaxi();
console.log('Database synchronization for deployment complete.');
} catch (error) {
console.error('Unable to synchronize the database for deployment:', error);