inclus page final

This commit is contained in:
2024-12-24 00:52:14 +01:00
parent 1b12f3f732
commit ec777f133f
115 changed files with 6712 additions and 194 deletions

64
static/css/carte_b.css Normal file
View File

@@ -0,0 +1,64 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
overscroll-behavior: none; /* Empêche les glissements */
touch-action: none; /* Désactive les gestes tactiles */
}
html, body {
height: 100%;
width: 100%;
overflow: hidden; /* Bloque le défilement */
font-family: Arial, sans-serif;
}
.fullscreen-container {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
height: 100%;
width: 100%;
background-color: black;
position: relative;
}
.fullscreen-container img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.header-text {
position: absolute;
top: 20px;
text-align: center;
color: red;
font-size: 2.5rem;
font-weight: bold;
text-shadow: 2px 2px 4px #000;
background-color: rgba(255, 255, 255, 0.8);
padding: 10px 20px;
border-radius: 10px;
}
.button-container {
position: absolute;
bottom: 20px;
right: 20px;
}
.continue-button {
text-decoration: none;
color: white;
background-color: #79d2d8;
padding: 10px 20px;
border-radius: 5px;
font-size: 1.2rem;
box-shadow: 2px 2px 5px #000;
}
.continue-button:hover {
background-color: #79d2d8;
}

64
static/css/carte_j.css Normal file
View File

@@ -0,0 +1,64 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
overscroll-behavior: none; /* Empêche les glissements */
touch-action: none; /* Désactive les gestes tactiles */
}
html, body {
height: 100%;
width: 100%;
overflow: hidden; /* Bloque le défilement */
font-family: Arial, sans-serif;
}
.fullscreen-container {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
height: 100%;
width: 100%;
background-color: black;
position: relative;
}
.fullscreen-container img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.header-text {
position: absolute;
top: 20px;
text-align: center;
color: red;
font-size: 2.5rem;
font-weight: bold;
text-shadow: 2px 2px 4px #000;
background-color: rgba(255, 255, 255, 0.8);
padding: 10px 20px;
border-radius: 10px;
}
.button-container {
position: absolute;
bottom: 20px;
right: 20px;
}
.continue-button {
text-decoration: none;
color: white;
background-color: #b19cd5;
padding: 10px 20px;
border-radius: 5px;
font-size: 1.2rem;
box-shadow: 2px 2px 5px #000;
}
.continue-button:hover {
background-color: #b19cd5;
}

25
static/css/gagne.css Normal file
View File

@@ -0,0 +1,25 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html, body {
height: 100%;
width: 100%;
}
.fullscreen-container {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
width: 100%;
overflow: hidden;
}
.fullscreen-container img {
width: 100%;
height: 100%;
object-fit: cover;
}

64
static/css/gagne_b.css Normal file
View File

@@ -0,0 +1,64 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
overscroll-behavior: none; /* Empêche les glissements */
touch-action: none; /* Désactive les gestes tactiles */
}
html, body {
height: 100%;
width: 100%;
overflow: hidden; /* Bloque le défilement */
font-family: Arial, sans-serif;
}
.fullscreen-container {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
height: 100%;
width: 100%;
background-color: black;
position: relative;
}
.fullscreen-container img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.header-text {
position: absolute;
top: 20px;
text-align: center;
color: red;
font-size: 2.5rem;
font-weight: bold;
text-shadow: 2px 2px 4px #000;
background-color: rgba(255, 255, 255, 0.8);
padding: 10px 20px;
border-radius: 10px;
}
.button-container {
position: absolute;
bottom: 20px;
right: 20px;
}
.continue-button {
text-decoration: none;
color: white;
background-color: #79d2d8;
padding: 10px 20px;
border-radius: 5px;
font-size: 1.2rem;
box-shadow: 2px 2px 5px #000;
}
.continue-button:hover {
background-color: #79d2d8;
}

64
static/css/gagne_j.css Normal file
View File

@@ -0,0 +1,64 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
overscroll-behavior: none; /* Empêche les glissements */
touch-action: none; /* Désactive les gestes tactiles */
}
html, body {
height: 100%;
width: 100%;
overflow: hidden; /* Bloque le défilement */
font-family: Arial, sans-serif;
}
.fullscreen-container {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
height: 100%;
width: 100%;
background-color: black;
position: relative;
}
.fullscreen-container img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.header-text {
position: absolute;
top: 20px;
text-align: center;
color: red;
font-size: 2.5rem;
font-weight: bold;
text-shadow: 2px 2px 4px #000;
background-color: rgba(255, 255, 255, 0.8);
padding: 10px 20px;
border-radius: 10px;
}
.button-container {
position: absolute;
bottom: 20px;
right: 20px;
}
.continue-button {
text-decoration: none;
color: white;
background-color: #b19cd5;
padding: 10px 20px;
border-radius: 5px;
font-size: 1.2rem;
box-shadow: 2px 2px 5px #000;
}
.continue-button:hover {
background-color: #b19cd5;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/E_b.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/E_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/I_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/L_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/O_b.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/P_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/R_b.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/R_b2.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/S_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/T_b.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/U_b.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
static/css/img/cartes/X_j.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 420 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 KiB

BIN
static/css/img/gagne.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 679 KiB

BIN
static/css/img/perdu.webp Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 KiB

147
static/css/mystere_b.css Normal file
View File

@@ -0,0 +1,147 @@
/* Style global */
body {
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
background-color: #000;
color: #fff;
overflow: hidden;
}
/* Conteneur principal */
.fullscreen-container {
position: relative;
width: 100%;
height: 100vh;
background-image: url('../img/fond_mystere_b.webp'); /* Corrigez le chemin ici */
background-size: cover;
background-position: center;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
overflow: hidden;
}
/* Texte en haut */
.header-text {
position: absolute;
top: 240px;
width: 350px;
left: 50%;
transform: translateX(-50%);
text-align: center;
font-size: 1.2rem;
font-weight: bold;
color: white;
text-shadow: 2px 2px 4px #000;
background-color: rgba(0, 0, 0, 0.7);
padding: 10px;
border-radius: 10px;
display: none; /* Masqué par défaut */
}
/* Conteneur des défis */
.defis-container {
position: absolute;
top: 10px;
width: 100%;
height: 80%; /* Ajustez la hauteur du conteneur */
}
/* Style des images des défis */
.defi-image {
position: absolute;
top: 10px;
width: 120px;
height: auto;
border: 2px solid white;
border-radius: 5px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}
/* Exemple de positionnement des défis */
.defi-1 { top: 00px; left: 50px; }
.defi-2 { top: 00px; left: 180px; }
.defi-3 { top: 00px; left: 300px; }
.defi-4 { top: 120px; left: 50px; }
.defi-5 { top: 120px; left: 180px; }
.defi-6 { top: 120px; left: 300px; }
/* Champ de réponse */
#reponse {
position: absolute;
bottom: 200px;
left: 50%;
transform: translateX(-50%);
width: 80%;
padding: 10px;
font-size: 1.2rem;
border-radius: 5px;
border: none;
outline: none;
display: none; /* Masqué par défaut */
}
/* Bouton de validation */
#valide {
position: absolute;
bottom: 150px;
left: 50%;
transform: translateX(-50%);
padding: 10px 20px;
font-size: 1.2rem;
color: white;
background-color: #007BFF;
border: none;
border-radius: 5px;
cursor: pointer;
display: none; /* Masqué par défaut */
}
/* Style de la popup */
.popup {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: none;
background-color: rgba(0, 0, 0, 0.8);
padding: 20px;
border-radius: 10px;
text-align: center;
color: white;
z-index: 1000;
}
.popup img {
width: 350px;
height: auto;
}
.popup .close {
margin-top: 10px;
padding: 10px 20px;
background-color: #FF5722;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
}
/* Adaptations pour écrans mobiles */
@media (max-width: 768px) {
.defi-image {
width: 60px;
}
#reponse {
font-size: 1rem;
}
#valide {
font-size: 1rem;
}
}

147
static/css/mystere_j.css Normal file
View File

@@ -0,0 +1,147 @@
/* Style global */
body {
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
background-color: #000;
color: #fff;
overflow: hidden;
}
/* Conteneur principal */
.fullscreen-container {
position: relative;
width: 100%;
height: 100vh;
background-image: url('../img/fond_mystere_j.webp'); /* Corrigez le chemin ici */
background-size: cover;
background-position: center;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
overflow: hidden;
}
/* Texte en haut */
.header-text {
position: absolute;
top: 240px;
width: 350px;
left: 50%;
transform: translateX(-50%);
text-align: center;
font-size: 1.2rem;
font-weight: bold;
color: white;
text-shadow: 2px 2px 4px #000;
background-color: rgba(0, 0, 0, 0.7);
padding: 10px;
border-radius: 10px;
display: none; /* Masqué par défaut */
}
/* Conteneur des défis */
.defis-container {
position: absolute;
top: 10px;
width: 100%;
height: 80%; /* Ajustez la hauteur du conteneur */
}
/* Style des images des défis */
.defi-image {
position: absolute;
top: 10px;
width: 120px;
height: auto;
border: 2px solid white;
border-radius: 5px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}
/* Exemple de positionnement des défis */
.defi-1 { top: 00px; left: 50px; }
.defi-2 { top: 00px; left: 180px; }
.defi-3 { top: 00px; left: 300px; }
.defi-4 { top: 120px; left: 50px; }
.defi-5 { top: 120px; left: 180px; }
.defi-6 { top: 120px; left: 300px; }
/* Champ de réponse */
#reponse {
position: absolute;
bottom: 200px;
left: 50%;
transform: translateX(-50%);
width: 80%;
padding: 10px;
font-size: 1.2rem;
border-radius: 5px;
border: none;
outline: none;
display: none; /* Masqué par défaut */
}
/* Bouton de validation */
#valide {
position: absolute;
bottom: 150px;
left: 50%;
transform: translateX(-50%);
padding: 10px 20px;
font-size: 1.2rem;
color: white;
background-color: #007BFF;
border: none;
border-radius: 5px;
cursor: pointer;
display: none; /* Masqué par défaut */
}
/* Style de la popup */
.popup {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: none;
background-color: rgba(0, 0, 0, 0.8);
padding: 20px;
border-radius: 10px;
text-align: center;
color: white;
z-index: 1000;
}
.popup img {
width: 350px;
height: auto;
}
.popup .close {
margin-top: 10px;
padding: 10px 20px;
background-color: #FF5722;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
}
/* Adaptations pour écrans mobiles */
@media (max-width: 768px) {
.defi-image {
width: 60px;
}
#reponse {
font-size: 1rem;
}
#valide {
font-size: 1rem;
}
}

64
static/css/perdu.css Normal file
View File

@@ -0,0 +1,64 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
overscroll-behavior: none; /* Empêche les glissements */
touch-action: none; /* Désactive les gestes tactiles */
}
html, body {
height: 100%;
width: 100%;
overflow: hidden; /* Bloque le défilement */
font-family: Arial, sans-serif;
}
.fullscreen-container {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
height: 100%;
width: 100%;
background-color: black;
position: relative;
}
.fullscreen-container img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.header-text {
position: absolute;
top: 20px;
text-align: center;
color: red;
font-size: 2.5rem;
font-weight: bold;
text-shadow: 2px 2px 4px #000;
background-color: rgba(255, 255, 255, 0.8);
padding: 10px 20px;
border-radius: 10px;
}
.button-container {
position: absolute;
bottom: 20px;
right: 20px;
}
.continue-button {
text-decoration: none;
color: rgb(148, 163, 206);
background-color: #141414;
padding: 5px 5px;
border-radius: 2px;
font-size: 0.5rem;
box-shadow: 2px 2px 5px #000;
}
.continue-button:hover {
background-color: #f8f9fa;
}

View File

@@ -0,0 +1,134 @@
body {
font-family: Arial, sans-serif;
text-align: center;
margin: 0;
padding: 0;
height: 100vh;
width: 100vw;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
/* Fond d'écran */
background: url('img/fond.jpg') no-repeat center center;
background-size: cover; /* Adapte l'image à la taille de l'écran */
}
#content0 {
position: fixed; /* Fixe le conteneur en haut de la page */
top: 0; /* Place l'élément tout en haut */
margin: 0; /* Supprime les marges par défaut */
right: 0; /* Aligne à gauche */
width: 50%; /* Prend toute la largeur */
background: rgba(255, 255, 255, 0.8); /* Fond semi-transparent pour un effet header */
padding: 10px 10px; /* Espacement intérieur */
border-radius: 15px; /* Arrondit les angles */
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); /* Ajoute une légère ombre */
text-align: center; /* Centrage du texte */
border-bottom: 2px solid rgba(0, 0, 0, 0.1); /* Légère bordure en bas */
z-index: 1000; /* Assure que le header est au-dessus des autres éléments */
}
#content {
position: relative; /* Nécessaire pour positionner des éléments enfants absolument */
background: rgba(255, 255, 255, 0.8); /* Fond semi-transparent */
padding: 20px;
border-radius: 10px;
text-align: center;
}
#position {
font-size: 1.2em;
margin-top: 10px;
}
#distance {
margin-top: 10px;
font-size: 1.5em;
}
/* Style des flèches */
.arrow {
position: absolute;
width: 100px;
height: 100px;
display: none; /* Masqué par défaut */
}
#arrow-approaching {
bottom: 10px;
left: 10px;
}
#arrow-moving-away {
bottom: 10px;
right: 10px;
}
/* Style de Avatar */
#avatar {
position: absolute;
width: 130px;
height: 130px;
background-color: rgba(27, 28, 29, 0.6); /* Couleur de remplissage interne */
border-radius: 50%; /* Pour arrondir l'intérieur */
box-shadow: 0 0 20px 10px rgba(27, 28, 29, 0.6); /* Halo par défaut */
transition: all 0.5s ease-in-out; /* Transition douce pour les changements */
}
/* Conteneur de la flèche */
#arrow-container {
position: relative;
width: 100px; /* Taille de la boîte de la flèche */
height: 100px;
margin: 20px auto; /* Centre horizontalement dans le div #content */
}
/* Flèche noire */
#arrow-black {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
transform-origin: center center; /* Centre de rotation */
transform: rotate(0deg); /* Rotation initiale */
transition: transform 0.1s linear; /* Animation fluide pour les rotations */
}
#user-avatar {
position: absolute; /* Permet de positionner avec left et top */
width: 100px;
height: 100px;
border-radius: 50%; /* Cercle */
object-fit: cover; /* Ajuste l'image */
transition: left 0.2s ease, top 0.2s ease; /* Animation fluide */
}
[data-debug="true"] {
display: none;
}
#user-name {
font-weight: bold; /* Rend le texte en gras */
margin: 0; /* Supprime les marges par défaut */
}
#challenge-number , #distance {
margin: 0; /* Supprime les marges par défaut */
}
#arrow-approaching, #arrow-moving-away {
position: fixed; /* Fixe le conteneur en haut de la page */
bottom: 0; /* Place l'élément tout en haut */
margin: 0; /* Supprime les marges par défaut */
left: 0; /* Aligne à gauche */
width: 25%; /* Prend toute la largeur */
background: rgba(255, 255, 255, 0.8); /* Fond semi-transparent pour un effet header */
padding: 10px 10px; /* Espacement intérieur */
border-radius: 15px; /* Arrondit les angles */
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); /* Ajoute une légère ombre */
text-align: center; /* Centrage du texte */
border-bottom: 2px solid rgba(0, 0, 0, 0.1); /* Légère bordure en bas */
z-index: 1000; /* Assure que le header est au-dessus des autres éléments */
}

View File

@@ -0,0 +1,58 @@
html, body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
background: url('./img/fond_mystere2_b.webp') no-repeat center center;
background-size: 100% 100%;
overflow: hidden;
}
#zone_cartes {
position: relative;
width: 100%;
height: 100%;
}
.carte {
position: absolute;
width: 15vw; /* Taille des cartes */
height: calc(15vw * 1.4); /* Respecte le ratio */
background-size: cover;
z-index: 10; /* Au-dessus des ronds */
cursor: grab;
touch-action: none;
}
#emplacements {
position: absolute;
bottom: 150px; /* Augmente la distance par rapport au bas de l'écran */
left: 50%;
transform: translateX(-50%);
display: flex;
justify-content: space-between;
width: 80%; /* Largeur totale de la rangée */
height: 50px; /* Hauteur totale */
z-index: 1; /* Sous les cartes */
}
.emplacement {
width: 5vw; /* Taille des ronds */
height: 5vw;
background-color: #34b115; /* Nouvelle couleur */
border: 2px solid black;
border-radius: 50%; /* Forme ronde */
position: relative;
box-sizing: border-box;
}
.zone-blanche {
position: absolute;
top: 0;
right: 0;
width: 100px; /* Ajustez la taille selon vos besoins */
height: 100px; /* Ajustez la taille selon vos besoins */
background-color: white;
border: 2px solid black;
z-index: 5;
}

View File

@@ -82,8 +82,8 @@ html, body {
#user-avatar {
display: block;
margin: 10px auto;
border: 2px solid #333;
margin: 5px auto;
border: 0px solid #333;
}
/* Section 2 - Organisation en colonne */
#section-top-right, #section-top-right-baptiste, #section-top-right-julien {
@@ -104,13 +104,21 @@ html, body {
}
#user-avatar {
width: 50px;
height: 50px;
width: 70px;
height: 70px;
border-radius: 50%; /* Avatar en forme de cercle */
object-fit: cover;
border: 2px solid #333; /* Bordure autour de l'avatar */
/* border: 2px solid #333; /* Bordure autour de l'avatar */
}
#map {
width: 100%;
height: 100%;
}
#user-avatar-julien {
width: 70px;
height: 70px;
border-radius: 50%; /* Avatar en forme de cercle */
object-fit: cover;
/*border: 2px solid #333; /* Bordure autour de l'avatar */
}