const readlineSync = require("readline-sync") function nahodneSlovo() { //načteme si slova (napište si další) const slova = ["skola", "zabava", "maturita", "web", "pes", "kocka"]; //nahodne se vybere cislo mezi 0 a delkou pole // index zarína od NULY const nahodnyIndex = Math.floor(Math.random()*slova.length) //vrati pouze slovo na pozici nahodnyIndex return slova[nahodnyIndex] } function zobrazeniSlova(slovo,zadanyPismena) { return slovo.split('') .map(pismeno => zadanyPismena.includes(pismeno) ? pismeno : '_') .join(' ') } function hangman() { //načtení a nastavení hodnot const maxPokusu = 10; let zbyvajiciPokusy = maxPokusu; const hadajiciSlovo = nahodneSlovo(); let hadajiciPismena = []; //uvítání console.log("Vitej ve hře Hangman"); console.log(zobrazeniSlova(hadajiciSlovo,hadajiciPismena)) //herni logiku while (zbyvajiciPokusy > 0){ const uhadnuti = readlineSync.question("Hadej pismeno: ").toLowerCase(); if (hadajiciPismena.includes(uhadnuti)){ console.log("Toto pismeno už si hadal(a)") continue; // pokud hadajici pismeno už jsme zadali tak jde na začátek while cyklu } //přidáme pismeno do pole písmenek hadajiciPismena.push(uhadnuti); //Špatné písmeno if (!hadajiciSlovo.includes(uhadnuti)){ zbyvajiciPokusy--; console.log(`Špatný pokus, zbyva: ${zbyvajiciPokusy} pokusů`); } //zobrazeni pokusu po přidaní písmena const zobrazeniPoPridaniPismenka = zobrazeniSlova(hadajiciSlovo,hadajiciPismena); console.log(zobrazeniPoPridaniPismenka); //když mame všechny písmena - VÝHRA if(!zobrazeniPoPridaniPismenka.includes('_')){ console.log("WINNER WINNER, CHICKEN DINNER"); break; } } //po vyčerpání pokusů if (zbyvajiciPokusy === 0) { console.log (`Bohužel, prohral si nad slovem ${hadajiciSlovo}`) } } hangman()