Diskuze: Hra šibenice s diakritikou

JavaScript JavaScript Hra šibenice s diakritikou

Avatar
David Moškoř:

Dobrý den, mám naprogramovanou hru šibenici v javascriptu. Ale chtěl bych do ní přidat diakritiku. Např. aby při kliknutí na písmeno A se ve slově kráva zobrazilo A i Á. Ale nedokážu si s tím poradit. Pomůžete mi prosím?

Kód hry bez diakritiky zde:

var databaze = ['kráva','zvíře'];
var vysledek = [];
var abeceda = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
var uhodnute = [];

var pokusu = 10, index, i, j, k, l, m = 0, n, o, konec = false, tajenka, napoveda, vyhry = 0, prohry = 0;
var cervena = "#ff0000", zelena = "#00ff00";

var prednacist = [];

for(o=0;o<=pokusu;o++) {
  prednacist[o] = new Image();
  prednacist[o].src = "images/sibenice"+o+".jpg";
}

function nova_tajenka() {

  index = 2*(Math.floor(Math.random()*(databaze.length/2)));

  for(n = 0; n<uhodnute.length; n++) {

    if(uhodnute[n]==index) {

      index = 2*(Math.floor(Math.random()*(databaze.length/2)));
      n = -1;
    }
  }

  tajenka = databaze[index].split("");
  napoveda = databaze[index+1];

  vysledek = [];

  for(k = 0; k<tajenka.length; k++) {

    vysledek[k] = "_";
  }
  obnovit();
}

function pismena() {

  $("#pismena").html("<div class=\"radek\">");

  for(l = 0; l<abeceda.length; l++){

    $("#pismena").html($("#pismena").html()+"<a href=\""+abeceda[l]+"\">"+abeceda[l].toUpperCase()+"</a>");

    if(l==(abeceda.length/2)-1) {
      $("#pismena").html($("#pismena").html()+"</div><div class=\"radek\">");
    }
  }

  $("#pismena").html($("#pismena").html()+"</div>");

  $("#pismena a").click(function(){

    if(($(this).attr("class")!="clicked")&&(konec==false)) {
      hra($(this).attr("href"));
    }

    return false;
  });
}

function reset() {

  i = 0;
  nova_tajenka();
  pismena();
  $("#status").html("");
  $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
}

function obnovit() {
  $("#policko").html(vysledek.join(""));
  $("#help").html(napoveda);
}

function hra(pismeno) {

  if(pismeno.length>1) {
    pismeno = pismeno.charAt(pismeno.length-1);
  }

  spravne_pismeno = false;

  for(j = 0; j<tajenka.length; j++) {

    if((tajenka[j]==pismeno)||(tajenka[j]==pismeno.toUpperCase())) {

      if(tajenka[j]==pismeno) {
        vysledek[j] = pismeno;
      }
      else {
        vysledek[j] = pismeno.toUpperCase();
      }

      spravne_pismeno = true;
      $("#pismena a[href$="+pismeno+"]").css({"background-color":zelena});
    }
  }

  if(spravne_pismeno==false) {
    $("#pismena a[href$="+pismeno+"]").css({"background-color":cervena});
    i++;
    $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
  }

  obnovit();
  $("#pismena a[href$="+pismeno+"]").attr("class", "clicked");

  if(vysledek.join("")==tajenka.join("")) {
    $("#status").css({"color":zelena});
    $("#status").html("Gratuluji, VÝHRA!");
    konec = true;
    vyhry++;
    $("#vyhry").html(vyhry);

    uhodnute[m] = index;
    m++;

    if(uhodnute.length==(databaze.length)/2) {

      uhodnute = [];
      m = 0;
    }
  }

  if(i==pokusu) {
    $("#status").css({"color":cervena});
    $("#status").html("Už nemáš více pokusů, PROHRA!");
    konec = true;
    prohry++;
    $("#prohry").html(prohry);
  }

  if(konec) {
    $("#ovladani input:submit").removeAttr("disabled");
    $("#ovladani input").focus();
  }
}

$(document).ready(function(){

  $("a[href=about]").click(function(){
    alert("Hra šibenice\n"
    +"Počet slov v databázi: " +(databaze.length/2) +"\n"
    +"Jazyk: JavaScript\n"
    +"Autor: David Moškoř\n"
    +"© 2016");
    return false;
  });

  $("a[href=help]").click(function(){
    alert("Známá hra šibenice (hangman)\n\n"

    +"1) Cílem hry je uhodnout celé slovo podle nápovědy.\n"
    +"2) Počet podržítek značí, kolik je ve slově písmen.\n"
    +"3) Písmena pište na klávesnici nebo na ně klikejte.\n"
    +"4) Správné písmeno bude označeno zeleně špatné červeně.\n"
    +"5) Každé písmeno je možné použít jen jednou.\n"
    +"6) Slovo musíte uhodnout dřív než budete oběšen :-)\n\n"

    +"Přeji příjemnou zábavu :-)");
    return false;
  });

  $("#vyhry").html(vyhry);
  $("#prohry").html(prohry);

  reset();

  $("#ovladani").submit(function(){
    konec = false;
    reset();
    $("#ovladani input:submit").attr("disabled", "disabled");
    return false;
  });

  $(document).keydown(function(klavesa) {

    if(konec==false) {
      if(((klavesa.keyCode-65)>=0)&&((klavesa.keyCode-65)<abeceda.length)) {

        pismeno_klavesnice = abeceda[klavesa.keyCode-65];

        if($("#pismena a[href$="+pismeno_klavesnice+"]").attr("class")!="clicked") {
          hra(pismeno_klavesnice);
        }
      }
    }
  });
});

window.onbeforeunload = function(){
  if(konec==false) {
    return "Máte rozehranou hru opravdu chcete odejít?";
  }
}
Odpovědět 29. srpna 20:54
Všechno jde, když se chce!
Avatar
Odpovídá na David Moškoř
Libor Šimo (libcosenior):

Toto ti možno pomôže

var diakritika = "aábcčdďeéěfgh iíjklmnňoópqrřsštťuúůvwxyýzž";

function vypis() {
    for (var i = 0; i < diakritika.length; i++) {
        if (diakritika[i] == " ") {
           var p = $('<p></p>').text(i + ". ch");
           $('body').append(p);
        }
        else
           var p = $('<p></p>').text(i + ". " + diakritika[i]);
           $('body').append(p);
    }
}

$(function() {
    vypis();
});
Nahoru Odpovědět 30. srpna 7:52
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Bohužel mi to nepomohlo. Vložil jsem to tam a pod hrou se mi zobrazilo toto:

0. a

1. á

2. b

3. c

4. č

5. d

6. ď

7. e

8. é

9. ě

10. f

11. g

12. h

13. ch

14. i

15. í

16. j

17. k

18. l

19. m

20. n

21. ň

22. o

23. ó

24. p

25. q

26. r

27. ř

28. s

29. š

30. t

31. ť

32. u

33. ú

34. ů

35. v

36. w

37. x

38. y

39. ý

40. z

41. ž
Nahoru Odpovědět 30. srpna 8:43
Všechno jde, když se chce!
Avatar
Odpovídá na David Moškoř
Libor Šimo (libcosenior):

To nebol kód na vloženie do hry, ale na ilustráciu poľa s celou českou abecedou bez a s diakritikou.
Manipulácia s jednotlivými prvkami poľa je ti určite jasná.

Editováno 30. srpna 8:46
Nahoru Odpovědět 30. srpna 8:46
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Možná, že jsem to špatně popsal. Já nepotřebuji vypsat celou abecedu s diakritikou. Já potřebuji vypsat abecedu bez diakritiky, aby při kliknutí na písmeno se například ve slově kráva zobrazilo A i Á, ne pouze A .

Nahoru Odpovědět 30. srpna 8:50
Všechno jde, když se chce!
Avatar
Odpovídá na David Moškoř
Libor Šimo (libcosenior):

Jedno z možných riešení. Neriešil som písmeno ch, to sa mi už nechcelo.

index.html

<!DOCTYPE html>

<html lang="sk">
<head>
  <meta charset="utf-8" />
  <link rel="stylesheet" href="css/style.css" type="text/css" />
  <script type="text/javascript" src="js/jquery.js"></script>
  <script type="text/javascript" src="js/testy.js"></script>
  <title>Narodeniny</title>
</head>
<body>
  <p id="tajnicka"></p>
  <a>hádaj písmeno: </a>
  <input id="hadaj" type="text" />
  <p id="uhadol"></p>

</body>
</html>

style.css

#hadaj {
  width: 50px;
  text-align: center;
  font-size: 1.5em;
}

#tajnicka {
  font-size: 2em;
  margin-left: 95px;
}

testy.js

var diakritika = "aábcčdďeéěfgh iíjklmnňoópqrřsštťuúůvwxyýzž";
var pole = [
    [0,1], // a, á
    [2],   // b
    [3,4], // c, č
    [5,6], // atd....
    [7,8,9],
    [10],
    [11],
    [12],
    [13],
    [14,15],
    [16],
    [17],
    [18],
    [19],
    [20,21],
    [22,23],
    [24],
    [25],
    [26,27],
    [28,29],
    [30,31],
    [32,33,34],
    [35],
    [36],
    [37],
    [38,39],
    [40,41]
]
var test = ['kráva','zvíře'];
var pom = new Array;

function vypisTajnicky(taj) {
    var vysledok = "";
    for (var i = 0; i < taj.length; i++) {
        vysledok += pom[i];
    }
    $('#tajnicka').text(vysledok);
    $('#hadaj').val("");
}

function naplnenieTajnicky() {
    for (var i = 0; i < test[0].length; i++) {
        pom[i] = "-";
    }
    vypisTajnicky(pom);
}

function hadajPismeno(p) {
    $('#uhadol').text("");
    if (test[0].match(p)) { // ak sa písmeno nachádza v tajničke
        var x = diakritika.indexOf(p);
        for (var i = 0; i < pole.length; i++) {
            for (var j = 0; j < pole[i].length; j++) {
                if (pole[i][j] == x) {
                    var xy = pole[i];

                }
            }
        }
        for (var i = 0; i < xy.length; i++) {
            for (var j = 0; j < test[0].length; j++){
                if (test[0][j] == diakritika[xy[i]]) {
                    pom[j] = diakritika[xy[i]];
                }
                else {
                    if ([0][j] == p)
                        pom[j] = p;
                }
            }
        }
        vypisTajnicky(pom);
    }
    else {
        $('#uhadol').text("Neuhádol!");
        $('#hadaj').val("");
    }
}

$(function() {
    $('#hadaj').focus();
    naplnenieTajnicky();
    $('#hadaj').change(function() {
        hadajPismeno($(this).val());
    });
});
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 30. srpna 11:21
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Díky, CH nepotřebuji. Stačí, aby hráč zadal C a H.

Nahoru Odpovědět 30. srpna 11:53
Všechno jde, když se chce!
Avatar
David Moškoř:

Pokoušel jsem se tvůj kód spojit s tím mým, ale šibenice mi přestala fungovat. Nevíš proč?

Kód zde:

var diakritika = "aábcčdďeéěfgh iíjklmnňoópqrřsštťuúůvwxyýzž";
var pole = [
    [0,1], // a, á
    [2],   // b
    [3,4], // c, č
    [5,6], // atd....
    [7,8,9],
    [10],
    [11],
    [12],
    [13],
    [14,15],
    [16],
    [17],
    [18],
    [19],
    [20,21],
    [22,23],
    [24],
    [25],
    [26,27],
    [28,29],
    [30,31],
    [32,33,34],
    [35],
    [36],
    [37],
    [38,39],
    [40,41]
]
var pom = new Array;

var databaze = ['kráva','zvíře'];
var vysledek = [];
var abeceda = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
var uhodnute = [];

var pokusu = 10, index, i, j, k, l, m = 0, n, o, konec = false, tajenka, napoveda, vyhry = 0, prohry = 0;
var cervena = "#ff0000", zelena = "#00ff00";

var prednacist = [];

for(o=0;o<=pokusu;o++) {
  prednacist[o] = new Image();
  prednacist[o].src = "images/sibenice"+o+".jpg";
}

function nova_tajenka() {

  index = 2*(Math.floor(Math.random()*(databaze.length/2)));

  for(n = 0; n<uhodnute.length; n++) {

    if(uhodnute[n]==index) {

      index = 2*(Math.floor(Math.random()*(databaze.length/2)));
      n = -1;
    }
  }

  tajenka = databaze[index].split("");
  napoveda = databaze[index+1];

  vysledek = [];

  for(k = 0; k<tajenka.length; k++) {

    vysledek[k] = "_";
  }
  obnovit();
}

function pismena() {

  $("#pismena").html("<div class=\"radek\">");

  for(l = 0; l<abeceda.length; l++){

    $("#pismena").html($("#pismena").html()+"<a href=\""+abeceda[l]+"\">"+abeceda[l].toUpperCase()+"</a>");

    if(l==(abeceda.length/2)-1) {
      $("#pismena").html($("#pismena").html()+"</div><div class=\"radek\">");
    }
  }

  $("#pismena").html($("#pismena").html()+"</div>");

  $("#pismena a").click(function(){

    if(($(this).attr("class")!="clicked")&&(konec==false)) {
      hra($(this).attr("href"));
    }

    return false;
  });
}

function reset() {

  i = 0;
  nova_tajenka();
  pismena();
  $("#status").html("");
  $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
}

function obnovit() {
  $("#policko").html(vysledek.join(""));
  $("#help").html(napoveda);
}

function hra(pismeno) {
  spravne_pismeno = false;
    for (k = 0; k < tajenka.length; k++){
    if (tajenka[k].match(pismeno)) {
        var x = diakritika.indexOf(pismeno);
        for (i = 0; i < pole.length; i++) {
            for (j = 0; j < pole[i].length; j++) {
                if (pole[i][j] == x) {
                    var xy = pole[i];

                }
            }
        }
        for (i = 0; i < xy.length; i++) {
                if (tajenka[k] == diakritika[xy[i]]) {
                    pom[k] = diakritika[xy[i]];
                }
                else {
                    if (tajenka[k] == pismeno)
                        pom[k] = pismeno;
                }
        }

      spravne_pismeno = true;
      $("#pismena a[href$="+pismeno+"]").css({"background-color":zelena});
    }
  }

  if(spravne_pismeno==false) {
    $("#pismena a[href$="+pismeno+"]").css({"background-color":cervena});
    i++;
    $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
  }

  obnovit();
  $("#pismena a[href$="+pismeno+"]").attr("class", "clicked");

  if(vysledek.join("")==tajenka.join("")) {
    $("#status").css({"color":zelena});
    $("#status").html("Gratuluji, VÝHRA!");
    konec = true;
    vyhry++;
    $("#vyhry").html(vyhry);

    uhodnute[m] = index;
    m++;

    if(uhodnute.length==(databaze.length)/2) {

      uhodnute = [];
      m = 0;
    }
  }

  if(i==pokusu) {
    $("#status").css({"color":cervena});
    $("#status").html("Už nemáš více pokusů, PROHRA!");
    konec = true;
    prohry++;
    $("#prohry").html(prohry);
  }

  if(konec) {
    $("#ovladani input:submit").removeAttr("disabled");
    $("#ovladani input").focus();
  }
}

$(document).ready(function(){

  $("a[href=about]").click(function(){
    alert("Hra šibenice\n"
    +"Počet slov v databázi: " +(databaze.length/2) +"\n"
    +"Jazyk: JavaScript\n"
    +"Autor: David Moškoř\n"
    +"© 2016");
    return false;
  });

  $("a[href=help]").click(function(){
    alert("Známá hra šibenice (hangman)\n\n"

    +"1) Cílem hry je uhodnout celé slovo podle nápovědy.\n"
    +"2) Počet podržítek značí, kolik je ve slově písmen.\n"
    +"3) Písmena pište na klávesnici nebo na ně klikejte.\n"
    +"4) Správné písmeno bude označeno zeleně špatné červeně.\n"
    +"5) Každé písmeno je možné použít jen jednou.\n"
    +"6) Slovo musíte uhodnout dřív než budete oběšen :-)\n\n"

    +"Přeji příjemnou zábavu :-)");
    return false;
  });

  $("#vyhry").html(vyhry);
  $("#prohry").html(prohry);

  reset();

  $("#ovladani").submit(function(){
    konec = false;
    reset();
    $("#ovladani input:submit").attr("disabled", "disabled");
    return false;
  });

  $(document).keydown(function(klavesa) {

    if(konec==false) {
      if(((klavesa.keyCode-65)>=0)&&((klavesa.keyCode-65)<abeceda.length)) {

        pismeno_klavesnice = abeceda[klavesa.keyCode-65];

        if($("#pismena a[href$="+pismeno_klavesnice+"]").attr("class")!="clicked") {
          hra(pismeno_klavesnice);
        }
      }
    }
  });
});

window.onbeforeunload = function(){
  if(konec==false) {
    return "Máte rozehranou hru opravdu chcete odejít?";
  }
}
Nahoru Odpovědět 30. srpna 12:34
Všechno jde, když se chce!
Avatar
Odpovídá na David Moškoř
Libor Šimo (libcosenior):

Môj kód je iba ukážka, ako sa to dá.
Upraviť si svoju hru už musíš sám, ak môjmu kódu rozumieš.
Ak ti kód nefunguje, stlač F12 a v konzole by si mal mať vypísané prečo.

Editováno 30. srpna 13:04
Nahoru Odpovědět 30. srpna 13:02
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Už mi to funguje. Jen jsem tam potřeboval dopsat vysledek[k]=pis­meno;. Ale diakritika bohužel ne. Když kliknu na a tak nic. To je zvláštní protože by fungovat měla. Mám PSPad editor a konzole mi nic nepíše.

Editováno 30. srpna 13:35
Nahoru Odpovědět 30. srpna 13:33
Všechno jde, když se chce!
Avatar
Libor Šimo (libcosenior):

Ja tiež na kódenie používam PSPad. Ale keď si to otvorím v prehliadačí (chrome), potom F12 otvorí spodné okno, kde je okrem iného záložka console. ;-)

Ak chceš, aby som ti to pozrel poriadne, zbaľ celú zložku s html, css aj js do zip-u a pošli mi to na libcosenior@gmail.com, aby som to mohol otestovať.

Editováno 30. srpna 14:27
Nahoru Odpovědět 30. srpna 14:25
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Poslal jsem

Nahoru Odpovědět 30. srpna 14:37
Všechno jde, když se chce!
Avatar
Nahoru Odpovědět 30. srpna 14:54
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

A teď už jo? Posílal jsem to 14:37 na email: libcosenior@gmail.com

Nahoru Odpovědět 30. srpna 15:04
Všechno jde, když se chce!
Avatar
Libor Šimo (libcosenior):

Už to pozriem len doma, za chviľku idem z práce.

Nahoru Odpovědět 30. srpna 15:06
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Nahoru Odpovědět 30. srpna 19:39
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Moškoř:

Super, měl jsem tam malou chybu. Už jsem to vyřešil takhle:

var diakritika = "aábcčdďeéěfgh iíjklmnňoópqrřsštťuúůvwxyýzž";
var pole = [
    [0,1], // a, á
    [2],   // b
    [3,4], // c, č
    [5,6], // atd....
    [7,8,9],
    [10],
    [11],
    [12],
    [13],
    [14,15],
    [16],
    [17],
    [18],
    [19],
    [20,21],
    [22,23],
    [24],
    [25],
    [26,27],
    [28,29],
    [30,31],
    [32,33,34],
    [35],
    [36],
    [37],
    [38,39],
    [40,41]
]
var pom = new Array;

var databaze = ['kráva','zvíře', 'cestování','moje záliba'];
var vysledek = [];
var abeceda = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
var uhodnute = [];

var pokusu = 10, index, i, j, k, l, m = 0, n, o, konec = false, tajenka, spravna_tajenka, napoveda, vyhry = 0, prohry = 0;
var cervena = "#ff0000", zelena = "#00ff00";

var prednacist = [];

for(o=0;o<=pokusu;o++) {
  prednacist[o] = new Image();
  prednacist[o].src = "images/sibenice"+o+".jpg";
}

function nova_tajenka() {

  index = 2*(Math.floor(Math.random()*(databaze.length/2)));

  for(n = 0; n<uhodnute.length; n++) {

    if(uhodnute[n]==index) {

      index = 2*(Math.floor(Math.random()*(databaze.length/2)));
      n = -1;
    }
  }
  spravna_tajenka = databaze[index];
  tajenka = databaze[index].split("");
  napoveda = databaze[index+1];

  vysledek = [];

  for(k = 0; k<tajenka.length; k++) {

    vysledek[k] = "_";
  }
  obnovit();
}

function pismena() {

  $("#pismena").html("<div class=\"radek\">");

  for(l = 0; l<abeceda.length; l++){

    $("#pismena").html($("#pismena").html()+"<a href=\""+abeceda[l]+"\">"+abeceda[l].toUpperCase()+"</a>");

    if(l==(abeceda.length/2)-1) {
      $("#pismena").html($("#pismena").html()+"</div><div class=\"radek\">");
    }
  }

  $("#pismena").html($("#pismena").html()+"</div>");

  $("#pismena a").click(function(){

    if(($(this).attr("class")!="clicked")&&(konec==false)) {
      hra($(this).attr("href"));
    }

    return false;
  });
}

function reset() {

  i = 0;
  nova_tajenka();
  pismena();
  $("#policko").css({"color":"white"});
  $("#status").html("");
  $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
}

function obnovit() {
  $("#policko").html(vysledek.join(""));
  $("#help").html(napoveda);
}

function hra(pismeno) {
  spravne_pismeno = false;
    for (m = 0; m < databaze.length; m++){
    for (k = 0; k < tajenka.length; k++){
    if (databaze[m].match(pismeno)) {
        var x = diakritika.indexOf(pismeno);
        for (i = 0; i < pole.length; i++) {
            for (j = 0; j < pole[i].length; j++) {
                if (pole[i][j] == x) {
                    var xy = pole[i];

                }
            }
        }
        for (i = 0; i < xy.length; i++) {
                if (tajenka[k] == diakritika[xy[i]]) {
                    vysledek[k] = diakritika[xy[i]];
                }
                else {
                    if (tajenka[k] == pismeno)
                        vysledek[k] = pismeno;
                }
        }

      spravne_pismeno = true;
      $("#pismena a[href$="+pismeno+"]").css({"background-color":zelena});
    }

  }
  }

  if(spravne_pismeno==false) {
    $("#pismena a[href$="+pismeno+"]").css({"background-color":cervena});
    i++;
    $("#sibenice").css({"background-image":"url(images/sibenice"+i+".jpg)"});
  }

  obnovit();
  $("#pismena a[href$="+pismeno+"]").attr("class", "clicked");

  if(vysledek.join("")==tajenka.join("")) {
    $("#status").css({"color":zelena});
    $("#status").html("Gratuluji, VÝHRA!");
    konec = true;
    vyhry++;
    $("#vyhry").html(vyhry);

    uhodnute[m] = index;
    m++;

    if(uhodnute.length==(databaze.length)/2) {

      uhodnute = [];
      m = 0;
    }
  }

  if(i==pokusu) {
    $("#status").css({"color":cervena});
    $("#status").html("Už nemáš více pokusů, PROHRA!");
    $("#policko").css({"color":cervena});
    $("#policko").html(spravna_tajenka);
    konec = true;
    prohry++;
    $("#prohry").html(prohry);
  }

  if(konec) {
    $("#ovladani input:submit").removeAttr("disabled");
    $("#ovladani input").focus();
  }
}

$(document).ready(function(){

  $("a[href=about]").click(function(){
    alert("Hra šibenice\n"
    +"Počet slov v databázi: " +(databaze.length/2) +"\n"
    +"Jazyk: JavaScript\n"
    +"Autor: David Moškoř\n"
    +"© 2016");
    return false;
  });

  $("a[href=help]").click(function(){
    alert("Známá hra šibenice (hangman)\n\n"

    +"1) Cílem hry je uhodnout celé slovo podle nápovědy.\n"
    +"2) Počet podržítek značí, kolik je ve slově písmen.\n"
    +"3) Písmena pište na klávesnici nebo na ně klikejte.\n"
    +"4) Správné písmeno bude označeno zeleně špatné červeně.\n"
    +"5) Každé písmeno je možné použít jen jednou.\n"
    +"6) Slovo musíte uhodnout dřív než budete oběšen :-)\n\n"

    +"Přeji příjemnou zábavu :-)");
    return false;
  });

  $("#vyhry").html(vyhry);
  $("#prohry").html(prohry);

  reset();

  $("#ovladani").submit(function(){
    konec = false;
    reset();
    $("#ovladani input:submit").attr("disabled", "disabled");
    return false;
  });

  $(document).keydown(function(klavesa) {

    if(konec==false) {
      if(((klavesa.keyCode-65)>=0)&&((klavesa.keyCode-65)<abeceda.length)) {

        pismeno_klavesnice = abeceda[klavesa.keyCode-65];

        if($("#pismena a[href$="+pismeno_klavesnice+"]").attr("class")!="clicked") {
          hra(pismeno_klavesnice);
        }
      }
    }
  });
});

window.onbeforeunload = function(){
  if(konec==false) {
    return "Máte rozehranou hru opravdu chcete odejít?";
  }
}
Nahoru Odpovědět 30. srpna 19:59
Všechno jde, když se chce!
Avatar
Nahoru Odpovědět 31. srpna 5:58
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 18 zpráv z 18.