var palabras=[
["tos","don","mis","les","una","ojo","ajo","ola","doy","gol","día","más","sol","luz","pie","sal","feo","ata","usa","ser","col","uno","dos","san","oso","tío","aro","año","pan","par","uña","cal","lío","gas","oda","aún","tan","sin","con","can","leo","vio","veo","del","eco","ato","oca","tus","mío","tan","son","ida","iba","hoy","osa","río","vas","fue","uva"],
["tres","cama","vaca","azul","león","sapo","sólo","piel","como","goma","pais","toco","caja","gris","nudo","poco","agua","suma","bebé","roto","pato","buey","huir","cola","nuca","alma","iglú","nuez","gato","pena","ojal","baúl","mano","cara","mamá","papá","niño","soya","sala","once","doce","amor","nube","caer","hora","alas","seis","ocho","diez","nada","todo","casi","seno","casa","nene","cena","cosa","gota"],
["perro","hielo","rosal","marca","jamón","fusil","cerdo","total","torta","bombo","legal","plato","oreja","reloj","negro","nuevo","pobre","plaza","galón","carne","nogal","luces","culpa","troya","silla","burro","ratón","arroz","rueda","pulga","axila","piojo","queso","perno","igual","cazar","banco","morsa","papel","palma","cobra","sexto","toser","torpe","temor","sesos","trece","leche","noche","siete","playa","único","nueve","jabón","sueño","suelo","calma","cinco","pasto","nunca","trote","pulpo","grasa","grupo","indio","firma","mujer","jamás"],
["moneda","minuto","ovillo","teatro","volver","gusano","ciudad","cuerpo","molino","suerte","trauma","blanco","toalla","zapato","cabeza","flauta","muñeca","cámara","retiro","jueves","pensar","róbalo","trampa","calzón","muerte","búfalo","música","tuerca","mucama","peluca","recado","pasear","región","acorde","dragón","mortal","vasija","rosado","triste","lluvia","mármol","manada","rodaja","grande","abuelo","jirafa","camino","sombra","cuatro","coraje","mancha","prueba","hombre","planta"],
["árboles","cebolla","caballo","corbata","rodilla","oración","navidad","chinita","parcela","celular","nuestro","termita","catorce","colmena","viernes","factura","sábanas","llavero","escapar","boletos","túnicas","mostrar","musical","médicos","insumos","colapso","anormal","violeta","calipso","retorno","silbato","cesante","retrato","guarida","control","botella","siempre","canasto"],
["anagrama","ensalada","pastilla","marinero","comensal","sombrero","guitarra","recuerdo","desorden","audífono","renovado","placeres","murciélago","murciélago","segundos","desierto","torcido","columpio","nosotros","unicornio","muérdago","paradoja","sepultura","rajadura","inversión","lavaplatos","flamenco","suplicio"]
];
var tiempoTotal=80;
var score=0;
var scoreFinal=0;
var nivel=0;
var nivelActual=0;
var pasoRestantes=3;
var pasoActual=0;

var casilla="respuesta";
var destino="anagrama";
var correctas="respuestas_correctas";
var restante="restante";
var total="total";
var adivinado="adivinado";
var bloque_anagramas="bloque_anagramas";
var tiempoRestante="tiempo";
var final="final";
var paso="paso";
var puntaje="puntaje";

function tiempo(){
	minutos=Math.floor(tiempoTotal/60);
	segundos=tiempoTotal-(minutos*60);
	if(segundos<10){ var cero="0"; }
	else{ var cero=""; }
	document.getElementById(tiempoRestante).innerHTML=minutos+":"+cero+segundos;
	tiempoTotal--;
	if(tiempoTotal<0) { fin(); }
	else { tpo=setTimeout(tiempo,1000); }
}

function desordenar(txt){
	txt=txt.split('');
	var invertida=txt.reverse();
	var resultado="";
	while(txt.length>0){
		numero=Math.floor(Math.random()*txt.length);
		resultado+=txt[numero];
		txt.splice(numero,1);
	}
	if(resultado==palabra) { resultado=resultado.substr(2)+resultado.substr(0,2); };
	return resultado;
}

function agregar(){
	if(palabras[nivel].length==0){ triunfo(); }
	else{
		nivel=Math.floor(score/20);
		if(nivel!=nivelActual){ nivelActual=nivel; tiempoTotal+=30*(nivel+1); }
		if(nivel>5) { nivel=5; }
		val=Math.floor(Math.random()*palabras[nivel].length);
		palabra=palabras[nivel][val];
		document.getElementById(total).innerHTML=score;
		document.getElementById(destino).innerHTML=desordenar(palabra)+" <small>(nivel "+(nivel+1)+")</small>";
		document.getElementById(destino).rel=palabra;
		document.getElementById(casilla).value="";
	}
}

function triunfo(){
	pasoActual=scoreFinal;
	document.getElementById(casilla).value="";
	document.getElementById(casilla).blur();
	document.getElementById(destino).innerHTML="";
	document.getElementById(bloque_anagramas).style.display="none";
	document.getElementById(adivinado).innerHTML="Conseguiste descifrar un total de "+score+" anagramas, y un puntaje de "+scoreFinal;
	document.getElementById(final).style.display="block";
	alert("¡¡¡INCREIBLE!!!\n¡¡¡Has ganado el juego y has descifrado todos los anagramas!!!\n\n¡¡¡FELICIDADES!!!");
}

function fin(){
	pasoActual=scoreFinal;
	document.getElementById(casilla).value="";
	document.getElementById(casilla).blur();
	document.getElementById(destino).innerHTML="";
	document.getElementById(bloque_anagramas).style.display="none";
	document.getElementById(adivinado).innerHTML="Conseguiste descifrar un total de "+score+" anagramas, y un puntaje de "+scoreFinal;
	document.getElementById(final).style.display="block";
	alert("FIN DEL JUEGO\n¡¡¡Has conseguido descifrar un total de "+(score)+" anagramas.");
}

function enviar(){
	scoreFinal=pasoActual;
	document.getElementById('puntajeFinal').value=scoreFinal;
	document.forms.enviarPuntaje.action="/?pagina=jueganagrama_mejores_puntajes";
	document.forms.enviarPuntaje.submit();
}

function pasar(){
	if(pasoRestantes>0 && scoreFinal>6){
		tiempoTotal-=palabras[nivel][val].length*2;
		scoreFinal-=palabras[nivel][val].length*2;
		document.getElementById(puntaje).innerHTML=scoreFinal;
		pasoRestantes--;
		document.getElementById(paso).value="PASO ("+pasoRestantes+")";
		palabras[nivel].splice(val,1);
		agregar();
	}
	if (pasoRestantes==0){
		document.getElementById(paso).disabled=true;
	}
	document.getElementById(casilla).focus();
}

function comenzar(){
	tiempo();
	agregar();
	document.getElementById('juego').style.display="block";
	document.getElementById('comenzar').style.display="none";
	document.getElementById('stretch_instrucciones').className="stretch cerrado";
	myAccordion.showThisHideOpen(document.getElementById('instrucciones'));
	document.getElementById(paso).value="PASO ("+pasoRestantes+")";
	document.getElementById(puntaje).innerHTML=scoreFinal;
	document.getElementById(casilla).focus();
}

document.getElementById(casilla).onkeyup=function(){
	if(this.value==document.getElementById(destino).rel){
		score++;
		scoreFinal+=palabras[nivel][val].length;
		document.getElementById(correctas).innerHTML+=palabras[nivel][val]+", ";
		document.getElementById(puntaje).innerHTML=scoreFinal;
		palabras[nivel].splice(val,1);
		agregar();
	}
}