// JavaScript Document
//Created By Simon Mitchell and Tim Shipman

var play_game = true; 
			//Enables the user to play the game, the game cannot be played if this is false


var word_selected = "";
			//The word selected from the array

var clue_selected = "";
			//The word selected from the array

var word_number = "";
			//The number of letters in the word displayed

var letters_used = "";
			//The letters already used

var wrong_guesses = 0;
			//Number of wrong guesses


function chooseWord() {
			//Selects a word from the array above variable words_choice
	play_game = true;
	random_selection = Math.round(Math.random() * (words.length - 1));
			//A random number is generated but so that it is not longer than the number of words in the array
	word_selected = words[random_selection];
			//Uses the random number created above to select the word that is in that position in the array
	clue_selected = clues[random_selection];
			//Uses the same random number created above to select the clue for the word
	hidden_word = createHideword(word_selected);
			//Takes Hideword function below and displays the value of the word using that function
	//document.game.displayWord.value = hidden_word;
	document.getElementById("wordtext").innerHTML=hidden_word;
	document.getElementById("cluetext").innerHTML="Clue = " + clue_selected;
	word_number = hidden_word;
}


function createHideword(n) {
			//Creates a mask of the number of letters in the word from the random select
	hide = "";
	word_length = n.length;
	for (i = 0; i < word_length; i ++) {
			//For loop that reates a '?' per letter in the selected random word
		hide += "?";
	}
	return hide;
}


function selectLetter(m) { 
			//Function performed when the user clicks on one of the hyperlinks
	if (play_game == false) {
		return;
	}
	if (letters_used.indexOf(m) != -1) {
			//Used to find the position of the selected character in the variable word_selected
		return;
	}
	
	letters_used += m;
	//document.reject.lettersUsed.value = letters_used;
	document.getElementById("LettersUsed").innerHTML="Letters Used: "+letters_used;
	document.getElementById(m).innerHTML="&nbsp&nbsp;";
			//Places the variable letters_used in the Letters Used box on display and changes the Lette on the Pallete
	
	if (word_selected.indexOf(m) != -1) {
			//This is executed When a letter is correctly guessed
		pos = 0;
		temp_mask = word_number;
			//Used to select the position of the user's chosen letter in the word in word_selected

		while (word_selected.indexOf(m, pos) != -1) {
			//Used to return a character in the variable word_selected defined by the pos parameter character
			pos = word_selected.indexOf(m, pos);			
			end = pos + 1;

		start_text = temp_mask.substring(0, pos);
		end_text = temp_mask.substring(end, temp_mask.length);

		temp_mask = start_text + m + end_text;
			pos = end;
		}

	word_number = temp_mask;
		//document.game.displayWord.value = word_number;
		document.getElementById("wordtext").innerHTML=word_number;
			//Places in the Word textbox on the page displayed the variable word_number
		if (word_number.indexOf("?") == -1) {
		window.alert("Congratulations you did not get hanged!");
			//Alert that the game has been won come up on the user screen
			play_game = false;
		}
	}
	else {
			/*Executed when a letter is wrongly guessed,  the variable is increased and the value is then added to "Hangman-" image files to 
				create the image name that is displayed in the image part of the page*/
		wrong_guesses += 1;
			eval("document.hm.src=\"res-hangnote/hang-" + wrong_guesses + ".gif\"");
		
		if (wrong_guesses == 6) {
		window.alert("Sorry, you did not complete the word ... "+word_selected);
			//Alert that the game has been lost come up on the user screent
		play_game = false;
		}
	}
}


function reset() {
			//When the user clicks the 'Play Again' button, all crucial variables and images are reset to their original values
	SetUpWords();
	chooseWord();
	//document.reject.lettersUsed.value = "";
	document.getElementById("LettersUsed").innerHTML="Letters Used: ";
	letters_used = "";
	wrong_guesses = 0;
	document.hm.src="res-hangnote/hang-0.gif";
	
	// Now set up the pallete
	document.getElementById("A").innerHTML="<a href=\"javascript:selectLetter('A');\">A</a>";
	document.getElementById("B").innerHTML="<a href=\"javascript:selectLetter('B');\">B</a>";
	document.getElementById("C").innerHTML="<a href=\"javascript:selectLetter('C');\">C</a>";
	document.getElementById("D").innerHTML="<a href=\"javascript:selectLetter('D');\">D</a>";
	document.getElementById("E").innerHTML="<a href=\"javascript:selectLetter('E');\">E</a>";
	document.getElementById("F").innerHTML="<a href=\"javascript:selectLetter('F');\">F</a>";
	document.getElementById("G").innerHTML="<a href=\"javascript:selectLetter('G');\">G</a>";
	document.getElementById("H").innerHTML="<a href=\"javascript:selectLetter('H');\">H</a>";
	document.getElementById("I").innerHTML="<a href=\"javascript:selectLetter('I');\">I</a>";
	document.getElementById("J").innerHTML="<a href=\"javascript:selectLetter('J');\">J</a>";
	document.getElementById("K").innerHTML="<a href=\"javascript:selectLetter('K');\">K</a>";
	document.getElementById("L").innerHTML="<a href=\"javascript:selectLetter('L');\">L</a>";
	document.getElementById("M").innerHTML="<a href=\"javascript:selectLetter('M');\">M</a>";
	document.getElementById("N").innerHTML="<a href=\"javascript:selectLetter('N');\">N</a>";
	document.getElementById("O").innerHTML="<a href=\"javascript:selectLetter('O');\">O</a>";
	document.getElementById("P").innerHTML="<a href=\"javascript:selectLetter('P');\">P</a>";
	document.getElementById("Q").innerHTML="<a href=\"javascript:selectLetter('Q');\">Q</a>";
	document.getElementById("R").innerHTML="<a href=\"javascript:selectLetter('R');\">R</a>";
	document.getElementById("S").innerHTML="<a href=\"javascript:selectLetter('S');\">S</a>";
	document.getElementById("T").innerHTML="<a href=\"javascript:selectLetter('T');\">T</a>";
	document.getElementById("U").innerHTML="<a href=\"javascript:selectLetter('U');\">U</a>";
	document.getElementById("V").innerHTML="<a href=\"javascript:selectLetter('V');\">V</a>";
	document.getElementById("W").innerHTML="<a href=\"javascript:selectLetter('W');\">W</a>";
	document.getElementById("X").innerHTML="<a href=\"javascript:selectLetter('X');\">X</a>";
	document.getElementById("Y").innerHTML="<a href=\"javascript:selectLetter('Y');\">Y</a>";
	document.getElementById("Z").innerHTML="<a href=\"javascript:selectLetter('Z');\">Z</a>";

}
