Ä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

@@ -0,0 +1,323 @@
{
"tileSize": 640,
"tiles": {
"cornerBottomRight": {
"regions": [
[
{"x": 0, "y": 0},
{"x": 0, "y": 1},
{"x": 0.375, "y": 1},
{"x": 0.375, "y": 0.427},
{"x": 0.38, "y": 0.409},
{"x": 0.389, "y": 0.397},
{"x": 0.4, "y": 0.388},
{"x": 0.408, "y": 0.397},
{"x": 0.417, "y": 0.38},
{"x": 0.434, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0}
],
[
{"x": 0.625, "y": 1},
{"x": 0.625, "y": 0.663},
{"x": 0.629, "y": 0.651},
{"x": 0.632, "y": 0.647},
{"x": 0.634, "y": 0.642},
{"x": 0.641, "y": 0.636},
{"x": 0.648, "y": 0.632},
{"x": 0.656, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1}
]
]
},
"cornerBottomLeft": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 0.575, "y": 0.375},
{"x": 0.588, "y": 0.38},
{"x": 0.6, "y": 0.386},
{"x": 0.611, "y": 0.395},
{"x": 0.619, "y": 0.406},
{"x": 0.625, "y": 0.422},
{"x": 0.625, "y": 1},
{"x": 1, "y": 1},
{"x": 1, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 0, "y": 0.625},
{"x": 0.336, "y": 0.625},
{"x": 0.35, "y": 0.629},
{"x": 0.359, "y": 0.636},
{"x": 0.366, "y": 0.642},
{"x": 0.373, "y": 0.651},
{"x": 0.375, "y": 0.659},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1}
]
]
},
"cornerTopLeft": {
"regions": [
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 0.339},
{"x": 0.372, "y": 0.353},
{"x": 0.366, "y": 0.363},
{"x": 0.361, "y": 0.367},
{"x": 0.356, "y": 0.37},
{"x": 0.348, "y": 0.373},
{"x": 0.336, "y": 0.375},
{"x": 0, "y": 0.375},
{"x": 0, "y": 0}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 0.583},
{"x": 0.62, "y": 0.594},
{"x": 0.615, "y": 0.605},
{"x": 0.605, "y": 0.614},
{"x": 0.594, "y": 0.621},
{"x": 0.584, "y": 0.625},
{"x": 0, "y": 0.625},
{"x": 0, "y": 1},
{"x": 1, "y": 1},
{"x": 1, "y": 0}
]
]
},
"cornerTopRight": {
"regions": [
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 0.583},
{"x": 0.38, "y": 0.594},
{"x": 0.384, "y": 0.605},
{"x": 0.395, "y": 0.614},
{"x": 0.406, "y": 0.621},
{"x": 0.416, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1},
{"x": 0, "y": 1},
{"x": 0, "y": 0}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 0.339},
{"x": 0.628, "y": 0.353},
{"x": 0.634, "y": 0.363},
{"x": 0.639, "y": 0.367},
{"x": 0.644, "y": 0.37},
{"x": 0.652, "y": 0.373},
{"x": 0.664, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0}
]
]
},
"horizontal": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 0, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1},
{"x": 0, "y": 1}
]
]
},
"vertical": {
"regions": [
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1},
{"x": 0, "y": 0}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 1},
{"x": 1, "y": 1},
{"x": 1, "y": 0}
]
]
},
"cross": {
"regions": [
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 0.375},
{"x": 0, "y": 0.375},
{"x": 0, "y": 0}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0}
],
[
{"x": 0.375, "y": 1},
{"x": 0.375, "y": 0.625},
{"x": 0, "y": 0.625},
{"x": 0, "y": 1}
],
[
{"x": 0.625, "y": 1},
{"x": 0.625, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1}
]
]
},
"fuelHorizontal": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 0.075, "y": 0.375},
{"x": 0.384, "y": 0.195},
{"x": 0.615, "y": 0.195},
{"x": 0.925, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 0.25, "y": 0.375},
{"x": 0.384, "y": 0.299},
{"x": 0.615, "y": 0.299},
{"x": 0.75, "y": 0.375},
{"x": 0.25, "y": 0.375}
],
[
{"x": 0, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1},
{"x": 0, "y": 1}
]
]
},
"fuelVertical": {
"regions": [
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 0.075},
{"x": 0.805, "y": 0.384},
{"x": 0.805, "y": 0.615},
{"x": 0.625, "y": 0.925},
{"x": 0.625, "y": 1},
{"x": 1, "y": 1},
{"x": 1, "y": 0}
],
[
{"x": 0.625, "y": 0.25},
{"x": 0.701, "y": 0.384},
{"x": 0.701, "y": 0.615},
{"x": 0.625, "y": 0.75},
{"x": 0.625, "y": 0.25}
],
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1},
{"x": 0, "y": 0}
]
]
},
"tLeft": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 0.375, "y": 0.375},
{"x": 0.375, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 0, "y": 0.625},
{"x": 0.375, "y": 0.625},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 1},
{"x": 1, "y": 1},
{"x": 1, "y": 0}
]
]
},
"tRight": {
"regions": [
[
{"x": 0.375, "y": 0},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1},
{"x": 0, "y": 0}
],
[
{"x": 0.625, "y": 0},
{"x": 0.625, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0}
],
[
{"x": 0.625, "y": 1},
{"x": 0.625, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1}
]
]
},
"tUp": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 0.375, "y": 0.375},
{"x": 0.375, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 1, "y": 0.375},
{"x": 0.625, "y": 0.375},
{"x": 0.625, "y": 0},
{"x": 1, "y": 0}
],
[
{"x": 0, "y": 0.625},
{"x": 1, "y": 0.625},
{"x": 1, "y": 1},
{"x": 0, "y": 1}
]
]
},
"tDown": {
"regions": [
[
{"x": 0, "y": 0.375},
{"x": 1, "y": 0.375},
{"x": 1, "y": 0},
{"x": 0, "y": 0}
],
[
{"x": 0, "y": 0.625},
{"x": 0.375, "y": 0.625},
{"x": 0.375, "y": 1},
{"x": 0, "y": 1}
],
[
{"x": 1, "y": 0.625},
{"x": 0.625, "y": 0.625},
{"x": 0.625, "y": 1},
{"x": 1, "y": 1}
]
]
}
}
}