fusion/index.html

174 lines
8.2 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="logo.png" />
<title>FUSION</title>
<script defer data-domain="fusion.boulbicorp.fr" src="https://plausible.boulbicorp.fr/js/script.js"></script>
<style>
body {
font-family: Arial, sans-serif;
font-size: 2rem;
text-align: center;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: #e0e0e0;
color: #333;
margin: 0;
padding: 0;
}
h1 {
font-size: 3rem;
color: #007BFF;
}
p {
font-size: 1.5rem;
color: #555;
}
main {
margin-top: 2rem;
}
input {
text-align: center;
font-size: 3rem;
margin-bottom: 1rem;
padding: 0.5rem;
width: 80%;
max-width: 500px;
border: 2px solid #ccc;
border-radius: 5px;
}
button {
font-size: 2rem;
padding: 0.5rem 1rem;
border: none;
border-radius: 5px;
background-color: #007BFF;
color: #fff;
cursor: pointer;
transition: background-color 0.3s;
}
button:hover {
background-color: #0056b3;
}
a {
color: #007BFF;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
@media (max-width: 1000px) {
body {
width: 100%;
}
input {
font-size: 4rem;
}
}
#nb_input {
width: 3rem;
font-size: 1.5rem;
}
</style>
</head>
<body>
<h1>FUSION</h1>
<p>Trouvez l'inspiration et les idées pour vos projets grâce au subtil mélange de deux mots aléatoires.</p>
<p>Nombre de mots a générer : <input id="nb_input" type="number" min="1"></p>
<main>
<input type="text" disabled value="tpust" />
<input type="text" disabled value="tpust" />
<br>
<button onclick="generer()">Générer</button>
</main>
<p><a href="/FUSION.apk">Telechargez</a> l'apk de l'application.</p>
<p><a onclick="telecharger()">Telechargez</a> la liste des mots.</p>
<p>Site inspiré de : <a href="https://www.youtube.com/watch?v=yEFT5zqXtoY">Ockam Razor</a></p>
<script>
var mots = [
// Ockam Razor
"vollaile", "rose", "bouche", "visuel", "conduire", "écrire", "légume", "ange", "ampoule", "magie", "tour", "société", "légende", "village",
"gâteau", "colère", "sang", "lumière", "ville", "oreille", "muscle", "secrétaire", "viande", "dragon", "corde", "glace", "astéroïde", "oeil",
"diriger", "drapeau", "génie", "rouge", "jambon", "toboggan", "police", "humeur", "rire", "perdu", "ciel", "metal", "armes", "chirurgie",
"invention", "trou noir", "palais", "musique", "fusée", "samouraï", "porte", "revolution", "os", "vie", "lunnettes", "transformer", "sphinx", "course",
"espace", "prisonnier", "coeur", "odeur", "ninja", "social", "chat", "soleil", "langue", "baignoire", "volcan", "geisha", "message", "serpent",
"pont", "étoile", "océan", "miroir", "chirurgie esthétique", "arc en ciel", "voleur", "rêve", "loup garou", "technologie",
// Dico
"araignée", "gravité", "antigravité", "balise", "bibliothèque", "laser", "canon", "cerveau", "cave", "grotte", "force", "champ", "champ de force",
"astronaute", "ordinateur", "cyber", "matière", "difforme", "desert", "nuit", "argent", "fusion", "gaz", "carburant", "humain", "monde", "navigation",
"saut", "hyper", "intelligence artificielle", "pensée", "mélange", "mécanique", "mecha", "titan", "univers", "nano", "alien", "apocalypse", "psy",
"race", "réalité", "virtuel", "réplique", "robot", "sabre", "katana", "fumée", "berserk", "chaos", "démesure", "illusions", "démon", "vampire",
"élément", "fleur", "sorcier", "farfadet", "kraken", "pirates", "trésor", "sable", "normal", "oiseau", "ténèbre", "vision", "mer",
// Custom
"denrée", "fortune", "math", "mental", "dévorer", "rare", "gemme", "diamant", "or", "féroce", "guerre", "mort", "pays", "mythe", "rune", "château",
"parler", "écrire", "dire", "raconter", "chanter", "invoquer", "descente", "enfer", "machine", "souvenir", "seul", "courir", "vide", "chevalier",
"agriculture", "ferme", "plante", "moyen âge", "contrôle", "lien", "ensemble", "dé", "aléatoire", "hasard", "pari", "appel", "saut", "voler",
"création", "imaginaire", "four", "bois", "hélicoptère", "repos", "repas", "nourriture", "cuisiner", "couper", "ego", "surpasser", "super",
"flamme", "enfant", "sauver", "programme", "voleur", "banque", "gouverner", "famille", "groupe", "coopérer", "police", "armée", "tank", "avion",
"chasse", "pêche", "science", "mouvement", "statue", "créature", "son", "bureau", "travail", "mythologie", "livre", "feuille", "artifice", "explosion",
// Le D
"effondrement ", "empreinte", "fragile", "horizon", "blessure", "otage", "tapis", "inspecter", "copie", "fraction", "siamois", "arome", "cible",
"rivage", "relation", "harem", "mutation", "cadre", "loup", "effacer", "cavalier", "religion", "hallucination", "faux", "bocal", "ancien", "ancêtre",
"transport", "verre",
];
var nbInput = document.getElementById("nb_input");
nbInput.value = 2;
nbInput.onchange = (state) => {
var val = nbInput.value;
var inputs = document.getElementsByTagName("main")[0].getElementsByTagName("input");
if (val < 1) {
val = 1;
nbInput.value = 1;
}
if (val > inputs.length)
addInput(inputs, val - inputs.length);
else if (val < inputs.length)
removeInput(inputs, inputs.length - val);
}
function removeInput(inputs, n) {
for (let i=0; i<n; i++) {
inputs[inputs.length-1].remove();
}
}
function addInput(inputs, n) {
var begin = inputs.length;
for (let i=0; i<n; i++) {
inputs[inputs.length-1].insertAdjacentHTML("afterend", '<input type="text" disabled="disabled">');
}
generer(begin);
}
function generer(begin = 0) {
var inputs = document.getElementsByTagName("main")[0].getElementsByTagName("input");
inputs[begin].value = mots[Math.floor(Math.random() * mots.length)];
for (let i=begin+1; i<inputs.length; i++) {
do {
inputs[i].value = mots[Math.floor(Math.random() * mots.length)];
} while (inputs[i].value == inputs[i-1].value);
}
}
generer();
function telecharger() {
var el = document.createElement('a');
el.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(JSON.stringify(mots, null, 2)));
el.setAttribute('download', 'fusion_liste_mots.json');
el.style.display = 'none';
document.body.appendChild(el);
el.click();
document.body.removeChild(el);
}
</script>
</body>
</html>