dernières améliorations

This commit is contained in:
Esenjin 2025-02-18 15:30:18 +01:00
parent e6d8aaf515
commit f616e8130e
10 changed files with 480 additions and 0 deletions

48
LICENSE.md Normal file

@ -0,0 +1,48 @@
# MIT License
Copyright (c) 2025 **Camélia Studio**
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
---
## Traduction française (non officielle)
Licence MIT
Copyright (c) 2025 **Camélia Studio**
La présente autorise, gratuitement, toute personne obtenant une copie de ce
logiciel et des fichiers de documentation associés (le "Logiciel") à traiter
le Logiciel sans restriction, y compris, sans limitation, les droits d'utiliser,
de copier, de modifier, de fusionner, de publier, de distribuer, de concéder
sous licence et/ou de vendre des copies du Logiciel, et à permettre aux personnes
auxquelles le Logiciel est fourni de le faire, sous réserve des conditions
suivantes :
L'avis de copyright ci-dessus et cet avis d'autorisation doivent être inclus
dans toutes les copies ou parties substantielles du Logiciel.
LE LOGICIEL EST FOURNI "TEL QUEL", SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU
IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER, LES GARANTIES DE QUALITÉ MARCHANDE,
D'ADÉQUATION À UN USAGE PARTICULIER ET DE NON-VIOLATION. EN AUCUN CAS, LES
AUTEURS OU LES DÉTENTEURS DU COPYRIGHT NE SERONT RESPONSABLES DE TOUTE
RÉCLAMATION, DOMMAGE OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS UNE ACTION
CONTRACTUELLE, DÉLICTUELLE OU AUTRE, DÉCOULANT DE, OU EN RELATION AVEC LE
LOGICIEL OU L'UTILISATION OU D'AUTRES TRANSACTIONS DANS LE LOGICIEL.

BIN
assets/background.png Normal file

Binary file not shown.

After

(image error) Size: 612 KiB

BIN
assets/favicon.png Normal file

Binary file not shown.

After

(image error) Size: 30 KiB

26
assets/script.js Normal file

@ -0,0 +1,26 @@
document.addEventListener("DOMContentLoaded", () => {
const button = document.getElementById("generate");
const result = document.getElementById("result");
button.addEventListener("click", async () => {
try {
const bugsResponse = await fetch("data/bugs.json");
const featuresResponse = await fetch("data/features.json");
if (!bugsResponse.ok || !featuresResponse.ok) {
throw new Error("Erreur lors du chargement des fichiers JSON.");
}
const bugs = await bugsResponse.json();
const features = await featuresResponse.json();
const bug = bugs.bugs[Math.floor(Math.random() * bugs.bugs.length)];
const feature = features.features[Math.floor(Math.random() * features.features.length)];
result.textContent = `${bug} ${feature}`;
} catch (error) {
result.textContent = "Une erreur s'est produite. Veuillez réessayer.";
console.error(error);
}
});
});

158
assets/styles.css Normal file

@ -0,0 +1,158 @@
:root {
--bg-primary: #1a1b26;
--bg-secondary: #24283b;
--text-primary: #c0caf5;
--text-secondary: #a9b1d6;
--accent-primary: #9ece6a;
--accent-secondary: #73daca;
--error: #f7768e;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Arial', sans-serif;
background-color: var(--bg-primary);
color: var(--text-primary);
line-height: 1.6;
min-height: 100vh;
display: flex;
flex-direction: column;
}
header {
background: linear-gradient(rgba(36, 40, 59, 0.85), rgba(36, 40, 59, 0.85)), url('../assets/background.png');
background-size: cover;
background-position: center;
padding: 2rem 1rem;
text-align: center;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.logo-container {
display: flex;
align-items: center;
justify-content: center;
gap: 1rem;
margin-bottom: 1rem;
}
.logo {
width: 48px;
height: 48px;
}
h1 {
color: var(--accent-primary);
font-size: 2.5rem;
margin-bottom: 0.5rem;
}
header p {
color: var(--text-secondary);
font-size: 1.2rem;
}
main {
flex: 1;
padding: 2rem 1rem;
max-width: 800px;
margin: 0 auto;
width: 100%;
text-align: center;
}
button {
background-color: var(--accent-primary);
color: var(--bg-primary);
border: none;
padding: 1rem 2rem;
font-size: 1.2rem;
border-radius: 8px;
cursor: pointer;
transition: transform 0.2s, background-color 0.2s;
font-weight: bold;
}
button:hover {
background-color: var(--accent-secondary);
transform: translateY(-2px);
}
button:active {
transform: translateY(0);
}
#result {
margin-top: 2rem;
padding: 1.5rem;
background-color: var(--bg-secondary);
border-radius: 8px;
font-size: 1.2rem;
line-height: 1.6;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
footer {
background-color: var(--bg-secondary);
color: var(--text-secondary);
padding: 1.5rem;
text-align: center;
margin-top: auto;
}
.footer-content {
max-width: 800px;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 1rem;
}
.footer-content p {
margin: 0;
}
.contribute-link {
color: var(--accent-primary);
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 0.5rem;
}
.contribute-link:hover {
color: var(--accent-secondary);
text-decoration: underline;
}
@media (max-width: 600px) {
h1 {
font-size: 2rem;
}
header p {
font-size: 1rem;
}
button {
padding: 0.8rem 1.6rem;
font-size: 1rem;
}
#result {
font-size: 1rem;
padding: 1rem;
}
.footer-content {
flex-direction: column;
text-align: center;
}
}

50
data/bugs.json Normal file

@ -0,0 +1,50 @@
{
"bugs": [
"À cause d'un bug sur le sort Roublardise,",
"À cause d'un bug sur les renvois de dommages,",
"À cause d'un bug sur l'hôtel des ventes,",
"À cause d'un bug sur la gestion des résistances,",
"À cause d'un bug sur les caractéristiques des familiers,",
"À cause d'un bug sur le système de quêtes,",
"À cause d'un bug sur les métiers de récolte,",
"À cause d'un bug sur le système de guildes,",
"À cause d'un bug sur les montures,",
"À cause d'un bug sur les enclos de guilde,",
"À cause d'un bug sur les maisons de joueurs,",
"À cause d'un bug sur le système de chat,",
"À cause d'un bug sur les émoticônes,",
"À cause d'un bug sur les échanges entre joueurs,",
"À cause d'un bug sur le système de combat,",
"À cause d'un bug sur l'affichage des points de vie,",
"À cause d'un bug sur les points d'action,",
"À cause d'un bug sur les points de mouvement,",
"À cause d'un bug sur les sorts communs,",
"À cause d'un bug sur les armes,",
"À cause d'un bug sur les boucliers,",
"À cause d'un bug sur les familiers,",
"À cause d'un bug sur les potions de téléportation,",
"À cause d'un bug sur les potions de rappel,",
"À cause d'un bug sur les potions de cité,",
"À cause d'un bug sur les zaaps,",
"À cause d'un bug sur les prismes d'alliance,",
"À cause d'un bug sur les percepteurs,",
"À cause d'un bug sur les avis de recherche,",
"À cause d'un bug sur les succès,",
"À cause d'un bug sur les titres et ornements,",
"À cause d'un bug sur les challenges en combat,",
"À cause d'un bug sur les donjons modulaires,",
"À cause d'un bug sur les compagnons,",
"À cause d'un bug sur les invocations,",
"À cause d'un bug sur l'affichage des états,",
"À cause d'un bug sur les coups critiques,",
"À cause d'un bug sur les résistances élémentaires,",
"À cause d'un bug sur les maîtrises d'armes,",
"À cause d'un bug sur les animations de sorts,",
"À cause d'un bug sur les effets visuels,",
"À cause d'un bug sur les sons en combat,",
"À cause d'un bug sur les musiques d'ambiance,",
"À cause d'un bug sur les notifications,",
"À cause d'un bug sur les raccourcis clavier,",
"À cause d'un bug sur l'interface utilisateur,"
]
}

56
data/features.json Normal file

@ -0,0 +1,56 @@
{
"features": [
"vous ne pouvez plus accéder à votre havre-sac.",
"le donjon Glourséleste a été désactivé.",
"les raccourcis claviers ont été réinitialisés.",
"les prismes d'alliance ne fonctionnent plus.",
"les potions de rappel vous téléportent à un emplacement aléatoire.",
"les percepteurs refusent de récolter des ressources.",
"les montiliers avancent à reculons.",
"les sorts de soin infligent désormais des dégâts.",
"les succès ne se débloquent plus.",
"les objets équipés disparaissent après un combat.",
"les quêtes principales ne progressent plus.",
"les enclos de guilde sont devenus inaccessibles.",
"les PNJ ne parlent plus.",
"les monstres ne lâchent plus de butin.",
"les HDV vendent les objets à un prix aléatoire.",
"les alliances de guildes sont dissoutes après chaque maintenance.",
"les défis entre joueurs provoquent une déconnexion immédiate.",
"les personnages perdent leurs points de vie en dehors des combats.",
"les échanges entre joueurs sont désactivés.",
"les familiers refusent de manger.",
"les animations de sorts ne se déclenchent plus.",
"les maps de certaines zones sont remplacées par un écran noir.",
"les joueurs ne peuvent plus entrer dans les tavernes.",
"les dopeuls ne donnent plus d'expérience.",
"les caractéristiques des personnages sont inversées.",
"les sorts à longue portée ne fonctionnent que au corps-à-corps.",
"les équipements perdent leurs bonus aléatoirement.",
"les monstres ignorent les joueurs et quittent le combat.",
"les boosts de statistiques disparaissent au lancement dun combat.",
"les titres et ornements seffacent à chaque connexion.",
"les potions de cité vous envoient dans la dimension Srambad.",
"les portails Eliotropes conduisent toujours à la même destination.",
"les personnages ne peuvent plus monter en niveau.",
"les parchemins de caractéristiques sont devenus inutilisables.",
"équiper un bouclier augmente les dégâts reçus.",
"toutes les invocations attaquent aléatoirement alliés et ennemis.",
"les familiers gagnent de lénergie au lieu den perdre.",
"les coups critiques ont disparu du jeu.",
"les banques des joueurs se vident après chaque maintenance.",
"les sorts de déplacement ne fonctionnent plus en combat.",
"les invocations se retournent contre leur invocateur.",
"les dragodindes refusent de se reproduire.",
"les objets de quête sont échangés avec des objets inutiles.",
"les équipements perdent aléatoirement des stats après un combat.",
"les interfaces de discussion affichent des messages aléatoires.",
"les récompenses de succès sont attribuées aux mauvais personnages.",
"les zaaps changent leur destination de manière imprévisible.",
"les échanges entre deux membres d'une même guilde suppriment les objets transférés.",
"les consommables restaurent moins de points de vie quindiqué.",
"lors des combats JcJ les statistiques des bonus de panoplies ne s'appliquent plus.",
"les personnages se figent après un combat et doivent se reconnecter."
]
}

50
data/liste-bugs.json Normal file

@ -0,0 +1,50 @@
{
"bugs": [
"À cause d'un bug sur le sort Roublardise",
"À cause d'un bug sur les renvois de dommages",
"À cause d'un bug sur l'hôtel des ventes",
"À cause d'un bug sur la gestion des résistances",
"À cause d'un bug sur les caractéristiques des familiers",
"À cause d'un bug sur le système de quêtes",
"À cause d'un bug sur les métiers de récolte",
"À cause d'un bug sur le système de guildes",
"À cause d'un bug sur les montures",
"À cause d'un bug sur les enclos de guilde",
"À cause d'un bug sur les maisons de joueurs",
"À cause d'un bug sur le système de chat",
"À cause d'un bug sur les émoticônes",
"À cause d'un bug sur les échanges entre joueurs",
"À cause d'un bug sur le système de combat",
"À cause d'un bug sur l'affichage des points de vie",
"À cause d'un bug sur les points d'action",
"À cause d'un bug sur les points de mouvement",
"À cause d'un bug sur les sorts communs",
"À cause d'un bug sur les armes",
"À cause d'un bug sur les boucliers",
"À cause d'un bug sur les familiers",
"À cause d'un bug sur les potions de téléportation",
"À cause d'un bug sur les potions de rappel",
"À cause d'un bug sur les potions de cité",
"À cause d'un bug sur les zaaps",
"À cause d'un bug sur les prismes d'alliance",
"À cause d'un bug sur les percepteurs",
"À cause d'un bug sur les avis de recherche",
"À cause d'un bug sur les succès",
"À cause d'un bug sur les titres et ornements",
"À cause d'un bug sur les challenges en combat",
"À cause d'un bug sur les donjons modulaires",
"À cause d'un bug sur les compagnons",
"À cause d'un bug sur les invocations",
"À cause d'un bug sur l'affichage des états",
"À cause d'un bug sur les coups critiques",
"À cause d'un bug sur les résistances élémentaires",
"À cause d'un bug sur les maîtrises d'armes",
"À cause d'un bug sur les animations de sorts",
"À cause d'un bug sur les effets visuels",
"À cause d'un bug sur les sons en combat",
"À cause d'un bug sur les musiques d'ambiance",
"À cause d'un bug sur les notifications",
"À cause d'un bug sur les raccourcis clavier",
"À cause d'un bug sur l'interface utilisateur"
]
}

56
data/liste-features.json Normal file

@ -0,0 +1,56 @@
{
"features": [
"vous ne pouvez plus accéder à votre havre-sac.",
"le donjon Glourséleste a été désactivé.",
"les raccourcis claviers ont été réinitialisés.",
"les prismes d'alliance ne fonctionnent plus.",
"les potions de rappel vous téléportent à un emplacement aléatoire.",
"les percepteurs refusent de récolter des ressources.",
"les montiliers avancent à reculons.",
"les sorts de soin infligent désormais des dégâts.",
"les succès ne se débloquent plus.",
"les objets équipés disparaissent après un combat.",
"les quêtes principales ne progressent plus.",
"les enclos de guilde sont devenus inaccessibles.",
"les PNJ ne parlent plus.",
"les monstres ne lâchent plus de butin.",
"les HDV vendent les objets à un prix aléatoire.",
"les alliances de guildes sont dissoutes après chaque maintenance.",
"les défis entre joueurs provoquent une déconnexion immédiate.",
"les personnages perdent leurs points de vie en dehors des combats.",
"les échanges entre joueurs sont désactivés.",
"les familiers refusent de manger.",
"les animations de sorts ne se déclenchent plus.",
"les maps de certaines zones sont remplacées par un écran noir.",
"les joueurs ne peuvent plus entrer dans les tavernes.",
"les dopeuls ne donnent plus d'expérience.",
"les caractéristiques des personnages sont inversées.",
"les sorts à longue portée ne fonctionnent que au corps-à-corps.",
"les équipements perdent leurs bonus aléatoirement.",
"les monstres ignorent les joueurs et quittent le combat.",
"les boosts de statistiques disparaissent au lancement dun combat.",
"les titres et ornements seffacent à chaque connexion.",
"les potions de cité vous envoient dans la dimension Srambad.",
"les portails Eliotropes conduisent toujours à la même destination.",
"les personnages ne peuvent plus monter en niveau.",
"les parchemins de caractéristiques sont devenus inutilisables.",
"équiper un bouclier augmente les dégâts reçus.",
"toutes les invocations attaquent aléatoirement alliés et ennemis.",
"les familiers gagnent de lénergie au lieu den perdre.",
"les coups critiques ont disparu du jeu.",
"les banques des joueurs se vident après chaque maintenance.",
"les sorts de déplacement ne fonctionnent plus en combat.",
"les invocations se retournent contre leur invocateur.",
"les dragodindes refusent de se reproduire.",
"les objets de quête sont échangés avec des objets inutiles.",
"les équipements perdent aléatoirement des stats après un combat.",
"les interfaces de discussion affichent des messages aléatoires.",
"les récompenses de succès sont attribuées aux mauvais personnages.",
"les zaaps changent leur destination de manière imprévisible.",
"les échanges entre deux membres d'une même guilde suppriment les objets transférés.",
"les consommables restaurent moins de points de vie quindiqué.",
"lors des combats JcJ les statistiques des bonus de panoplies ne s'appliquent plus.",
"les personnages se figent après un combat et doivent se reconnecter."
]
}

36
index.php Normal file

@ -0,0 +1,36 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>À cause de Flash</title>
<meta name="description" content="T'inquiète frère, une fois sur le moteur Unity il n'y aura plus aucun soucis !">
<link rel="stylesheet" href="assets/styles.css">
<link rel="icon" type="image/png" href="assets/favicon.png">
</head>
<body>
<header>
<div class="logo-container">
<img src="assets/favicon.png" alt="Logo À cause de Flash" class="logo">
<h1>À cause de Flash</h1>
</div>
<p>T'inquiète frère, une fois sur le moteur Unity il n'y aura plus aucun soucis !</p>
</header>
<main>
<button id="generate">Générer une phrase</button>
<p id="result"></p>
</main>
<footer>
<div class="footer-content">
<p>© 2025 <a href="https://camelia-studio.org/" class="contribute-link" target="_blank" rel="noopener">Camélia Studio</a> (licence MIT) - Site non officiel sur Dofus</p>
<a href="https://git.crystalyx.net/camelia-studio/A-cause-de-Flash" class="contribute-link" target="_blank" rel="noopener">
Venir sur Gitea ajouter des bugs !
</a>
</div>
</footer>
<script src="assets/script.js"></script>
</body>
</html>