feat: complete outdoor escape game platform with location-based steps
- Initialize SvelteKit project with authentication and database - Implement multilingual support (English/French) - Add authentication system with login, signup, and logout - Create admin panel with games and sessions management - Implement game and step management (CRUD operations) - Add soft delete for escape games - Create player game flow with step progression - Implement inventory and collected items system - Add location-based steps with GPS tracking and proximity validation - Create compass arrow indicator pointing to destinations - Add session management with code-based access - Implement edit session and delete session functionality - Add terms and conditions page - Create completion screens with time tracking - Add tutorial navigation guide
This commit is contained in:
138
src/lib/i18n/fr.json
Normal file
138
src/lib/i18n/fr.json
Normal file
@@ -0,0 +1,138 @@
|
||||
{
|
||||
"common": {
|
||||
"language": "Langue",
|
||||
"selectLanguage": "Sélectionnez la Langue",
|
||||
"english": "English",
|
||||
"french": "Français",
|
||||
"german": "Deutsch",
|
||||
"spanish": "Español"
|
||||
},
|
||||
"home": {
|
||||
"title": "Jeu d'Évasion en Plein Air",
|
||||
"subtitle": "L'aventure vous attend ! Entrez votre code de session pour commencer à jouer.",
|
||||
"playGame": "Jouez",
|
||||
"joinWithCode": "Rejoignez avec un code de session"
|
||||
},
|
||||
"game": {
|
||||
"sessionCode": "Code de Session",
|
||||
"enterSessionCode": "Entrez le code de session",
|
||||
"yourName": "Votre Nom",
|
||||
"enterYourName": "Entrez votre nom",
|
||||
"acceptTerms": "J'accepte les",
|
||||
"termsAndConditions": "conditions d'utilisation",
|
||||
"joinGame": "Rejoindre le Jeu",
|
||||
"joining": "Connexion...",
|
||||
"pleaseEnterCode": "Veuillez entrer un code de session",
|
||||
"pleaseEnterName": "Veuillez entrer votre nom",
|
||||
"mustAcceptTerms": "Vous devez accepter les conditions d'utilisation",
|
||||
"failedToJoin": "Échec de la connexion à la session",
|
||||
"errorOccurred": "Une erreur s'est produite. Veuillez réessayer."
|
||||
},
|
||||
"gameplay": {
|
||||
"progress": "Progression",
|
||||
"step": "Étape",
|
||||
"of": "sur",
|
||||
"currentStep": "Étape Actuelle",
|
||||
"yourAnswer": "Votre Réponse",
|
||||
"enterYourAnswer": "Entrez votre réponse",
|
||||
"submitAnswer": "Soumettre la Réponse",
|
||||
"checking": "Vérification...",
|
||||
"incorrectAnswer": "Réponse incorrecte",
|
||||
"needAHint": "Besoin d'un indice ?",
|
||||
"continue": "Continuer",
|
||||
"loadingStep": "Chargement de l'étape...",
|
||||
"collectedItems": "Articles Collectés",
|
||||
"inventory": "Inventaire",
|
||||
"previous": "Précédent",
|
||||
"next": "Suivant",
|
||||
"emptyInventory": "Aucun objet collecté pour le moment.",
|
||||
"viewingUnlockedStep": "Vous consultez une étape déjà débloquée. Revenez à l'étape active pour continuer la progression.",
|
||||
"completedLabel": "Escape termine",
|
||||
"completedTitle": "Bravo, vous avez termine l'escape game !",
|
||||
"completedIn": "Temps total",
|
||||
"playAgain": "Rejouer",
|
||||
"sessionCode": "Code session",
|
||||
"tutorial": "Tutoriel",
|
||||
"tutorialTitle": "Guide de la barre de navigation",
|
||||
"tutorialIntro": "Cette barre vous aide a naviguer rapidement pendant le jeu :",
|
||||
"tutorialPrevious": "Precedent : revenir a l'etape debloquee precedente.",
|
||||
"tutorialInventory": "Inventaire : ouvrir la zone des objets recoltes.",
|
||||
"tutorialNext": "Suivant : aller a l'etape suivante uniquement si elle est deja debloquee.",
|
||||
"backToGame": "Retour au jeu",
|
||||
"locationError": "Erreur de localisation",
|
||||
"locatingYou": "Localisation en cours...",
|
||||
"distance": "Distance",
|
||||
"arrived": "Vous êtes arrivé !",
|
||||
"getWithin": "Approchez-vous à",
|
||||
"toValidate": "pour valider",
|
||||
"validateLocation": "Valider la position",
|
||||
"locationDenied": "Accès à la localisation refusé",
|
||||
"locationDeniedMessage": "Veuillez activer l'accès à la localisation dans les paramètres de votre navigateur pour continuer cette étape.",
|
||||
"locationRequired": "Accès à la localisation requis",
|
||||
"locationRequiredMessage": "Cette étape nécessite votre position pour vous montrer le chemin vers la destination.",
|
||||
"enableLocation": "Activer la localisation",
|
||||
"tryAgain": "Réessayer"
|
||||
},
|
||||
"admin": {
|
||||
"adminDashboard": "Tableau de Bord Admin",
|
||||
"createNewGame": "Créer un Nouveau Jeu",
|
||||
"createSession": "Créer une Session",
|
||||
"createSessionDescription": "Créez une session de jeu et générez un code d'accès pour les joueurs.",
|
||||
"selectGame": "Sélectionnez un jeu",
|
||||
"expiresDate": "Date d'expiration",
|
||||
"expiresTime": "Heure d'expiration",
|
||||
"expiresAtDateTime": "Date et heure d'expiration",
|
||||
"expiresAtDateTimeHelp": "Choisissez quand cette session doit expirer.",
|
||||
"cancel": "Annuler",
|
||||
"createGameBeforeSession": "Vous avez besoin d'au moins un jeu avant de créer une session.",
|
||||
"totalGames": "Jeux Totaux",
|
||||
"activeSessions": "Sessions Actives",
|
||||
"totalPlayers": "Joueurs Totaux",
|
||||
"escapeGames": "Jeux d'Évasion",
|
||||
"gameTitle": "Titre du Jeu",
|
||||
"steps": "Étapes",
|
||||
"sessions": "Sessions",
|
||||
"created": "Créé",
|
||||
"actions": "Actions",
|
||||
"edit": "Modifier",
|
||||
"delete": "Supprimer",
|
||||
"confirmDeleteSessionTitle": "Supprimer la session",
|
||||
"confirmDeleteSession": "Voulez-vous vraiment supprimer la session",
|
||||
"confirmDeleteTitle": "Supprimer le jeu",
|
||||
"confirmDeleteGame": "Voulez-vous vraiment supprimer",
|
||||
"confirmDelete": "Supprimer definitivement",
|
||||
"manage": "Gérer",
|
||||
"editSession": "Modifier la session",
|
||||
"editSessionDescription": "Mettez a jour le jeu, la date d'expiration et le statut actif.",
|
||||
"saveChanges": "Enregistrer les modifications",
|
||||
"noGamesYet": "Aucun jeu d'évasion pour le moment",
|
||||
"createFirstGame": "Créez Votre Premier Jeu",
|
||||
"recentSessions": "Sessions Récentes",
|
||||
"currentAndIncomingSessions": "Sessions en cours et a venir",
|
||||
"meanResolutionTime": "Temps moyen de resolution par jeu",
|
||||
"noResolutionData": "Aucune session terminee pour le moment.",
|
||||
"current": "En cours",
|
||||
"incoming": "A venir",
|
||||
"noCurrentOrIncomingSessions": "Aucune session en cours ou a venir",
|
||||
"code": "Code",
|
||||
"game": "Jeu",
|
||||
"status": "Statut",
|
||||
"players": "Joueurs",
|
||||
"expires": "Expire",
|
||||
"active": "Actif",
|
||||
"inactive": "Inactif",
|
||||
"noSessions": "Aucune session",
|
||||
"logout": "Déconnexion"
|
||||
},
|
||||
"login": {
|
||||
"login": "Connexion",
|
||||
"signup": "Inscription",
|
||||
"accessAdmin": "Accédez au tableau de bord d'administration",
|
||||
"createAccount": "Créer un compte administrateur",
|
||||
"emptyFields": "Veuillez remplir tous les champs",
|
||||
"authFailed": "L'authentification a échoué",
|
||||
"hasAccount": "Vous avez déjà un compte ?",
|
||||
"noAccount": "Vous n'avez pas de compte ?",
|
||||
"loading": "Chargement..."
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user