$(function(){ var app = { // Application Constructor initialize: function () { this.bindEvents(); }, // Bind Event Listeners // // Bind any events that are required on startup. Common events are: // 'load', 'deviceready', 'offline', and 'online'. bindEvents: function () { document.addEventListener('deviceready', this.onDeviceReady, false); }, // deviceready Event Handler // // The scope of 'this' is the event. In order to call the 'receivedEvent' // function, we must explicitly call 'app.receivedEvent(...);' onDeviceReady: function () { app.receivedEvent('deviceready'); }, // Update DOM on a Received Event receivedEvent: function (id) { var parentElement = document.getElementById(id); var listeningElement = parentElement.querySelector('.listening'); var receivedElement = parentElement.querySelector('.received'); listeningElement.setAttribute('style', 'display:none;'); receivedElement.setAttribute('style', 'display:block;'); console.log('Received Event: ' + id); } }; app.initialize(); // defining the wordzzz var dict = [ { cat: "írásjel", word: "felkiáltószív" }, { cat: "ruhadarab", word: "pizdi" }, { cat: "finomság", word: "mangó" }, { cat: "finomság", word: "hamburger" }, { cat: "ebben profi vagy", word: "analízis" }, /*{cat: "író", word: "krúdy gyula"}, {cat: "költő", word: "tristan tzara"},*/ { cat: "becenév", word: "muci" }, { cat: "étterem", word: "brgr" }, { cat: "állat", word: "vöröspanda" }, { cat: "állat", word: "coboly" }, { cat: "finomság", word: "minifánk" }, { cat: "finomság", word: "palacsinta" }, { cat: "finomság", word: "gofri" }, { cat: "állat", word: "gabonasikló" }, /*{cat: "előadó", word: "a láma dalai"},*/ { cat: "művészet", word: "pasztellkréta" }, { cat: "művészet", word: "olajfesték" }, { cat: "játék", word: "cluedo" }, { cat: "szórakozóhely", word: "puttó" }, { cat: "állat", word: "tengemalac" }, { cat: "mindennapok", word: "szundi" }, { cat: "finomság", word: "tigrispüré" }, { cat: "finomság", word: "snakeass" }, /*{cat: "előadó", word: "laughing buddha"},*/ { cat: "közlekedés", word: "huszonhármas" }, { cat: "közlekedés", word: "ötvenhármas" }, { cat: "csoport", word: "magányosszinglik" } ]; // this function returns a random number from an arbitrary interval function getRandomArbitrary(min, max) { return Math.random() * (max - min) + min; } // making sure if letters are really mixed var isConsecutive = function (array) { var timesItWasOne = 0; for (var u = 0; u < array.length - 1; u++) { if ((array[array.length - 1 - u]) - (array[array.length - 2 - u]) === 1) { timesItWasOne++; } } return (timesItWasOne === array.length - 1); }; // function for replacing characters function setCharAt(str, index, chr) { if (index > str.length - 1) return str; return str.substr(0, index) + chr + str.substr(index + 1); } // begin game session var solvedPuzzles = 0; var solvedTarget = 10; var totalSolved = 0; var totalScore = 0; var playerGuess = ""; var addedIds = []; newPuzzle(); function newPuzzle() { console.log(solvedPuzzles); var loadDate = new Date().getTime(); var currentDictEntry = dict[Math.round(getRandomArbitrary(0, dict.length - 1))]; var currentWord = currentDictEntry.word; var currentWordCat = currentDictEntry.cat; var wordMixed = currentWord; var currentScore = 0; // clearing the game table var gameTable = document.getElementById("puzzle"); var resultRow = document.getElementById("result"); while (gameTable.firstChild) { gameTable.removeChild(gameTable.firstChild); } resultRow.innerHTML = ""; // making a randomized word var boxTable = []; var boxTableMin = 0; var boxTableMax = currentWord.length - 1; var i = 0; // counter variable function makeTable() { if (i <= boxTableMax) { var newNumber = Math.round(getRandomArbitrary(boxTableMin, boxTableMax)); // console.log(newNumber); if (boxTable.indexOf(newNumber) == -1) { boxTable[i] = newNumber; // console.log(boxTable[i]); i++; makeTable(); } else { makeTable(); } } else { if (isConsecutive(boxTable)) { i = 0; boxTable = []; makeTable(); } } } makeTable(); // placing the mixed up letters for (var i = 0; i < currentWord.length; i++) { wordMixed = setCharAt(wordMixed, i, currentWord[boxTable[i]]); } // laying out the game table for (var i = 0; i < wordMixed.length; i++) { var letter = document.createElement("div"); letter.className = "letter" + " " + wordMixed[i]; letter.setAttribute("id", i); letter.innerHTML = "