var x="x.gif"
var o="o.gif"
var blank="blank.gif"
var blanco="blanco.jpg"

var casil=new Array(9)
var timerID
var tStart
var pause
var all
var temp
var ok
var cf
var choice
var aRandomNumber
var comp
var t
var wn
var ls
var ts
var valor
var esco
var clic
var incorrect
var correct
var yo
var lema
var tot
var cuenta


Inicia()
Start()
Inhabilita()
help()

function Inicia(){
 for (ta=0;ta<=8;ta++){
  casil[ta]=0
 }
 timerID=0
 tStart=null
 pause=0
 all=0
 temp=""
 ok=0
 cf=0
 choice=9
 aRandomNumber=0
 comp=0 
 t=0
 wn=0
 ls=0
 ts=0
 valor=0
 esco=""
 clic=0
 incorrect=0
 correct=0
 yo=0
 lema=""
 tot=0
 cuenta=0
}


function help() {
 document.quiz.Pregunta.style.color="#008000"
 document.quiz.Pregunta.value="Parece el tradicional juego de TATETI, y a usted le tocan los ceritos."+
  "\nSin embargo, usted juega contra usted mismo, ya que al escoger un casillero, haciendo clic en él,"+
  "\nle aparecerá una pregunta, con sus respectivas opciones, una de las cuales es la correcta."+
  "\nSi acierta, entonces el cerito es suyo. Si no..."+
  "\nLe deseo éxitos"+
  "\nYehuda Ribco - serjudio.com"
}

function logicOne() {
if ((casil[0]==1)&&(casil[1]==1)&&(casil[2]==1)) all=1
if ((casil[0]==1)&&(casil[3]==1)&&(casil[6]==1)) all=1
if ((casil[0]==1)&&(casil[4]==1)&&(casil[8]==1)) all=1
if ((casil[1]==1)&&(casil[4]==1)&&(casil[7]==1)) all=1
if ((casil[3]==1)&&(casil[4]==1)&&(casil[5]==1)) all=1
if ((casil[6]==1)&&(casil[7]==1)&&(casil[8]==1)) all=1
if ((casil[2]==1)&&(casil[5]==1)&&(casil[8]==1)) all=1
if ((casil[6]==1)&&(casil[4]==1)&&(casil[2]==1)) all=1
if ((casil[0]==2)&&(casil[1]==2)&&(casil[2]==2)) all=2
if ((casil[0]==2)&&(casil[3]==2)&&(casil[6]==2)) all=2
if ((casil[0]==2)&&(casil[4]==2)&&(casil[8]==2)) all=2
if ((casil[1]==2)&&(casil[4]==2)&&(casil[7]==2)) all=2
if ((casil[3]==2)&&(casil[4]==2)&&(casil[5]==2)) all=2
if ((casil[6]==2)&&(casil[7]==2)&&(casil[8]==2)) all=2
if ((casil[2]==2)&&(casil[5]==2)&&(casil[8]==2)) all=2
if ((casil[6]==2)&&(casil[4]==2)&&(casil[2]==2)) all=2
if ((casil[0] !=0)&&(casil[1] !=0)&&(casil[2] !=0)&&(casil[3] !=0)&&(casil[4] !=0)&&(casil[5] !=0)&&(casil[6] !=0)&&(casil[7] !=0)&&(casil[8] !=0)&&(all==0)) all=3
} 

function logicTwo() {
if ((casil[0]==2)&&(casil[1]==2)&&(casil[2]==0)&&(temp=="")) temp="C"
if ((casil[0]==2)&&(casil[1]==0)&&(casil[2]==2)&&(temp=="")) temp="B"
if ((casil[0]==0)&&(casil[1]==2)&&(casil[2]==2)&&(temp=="")) temp="A"
if ((casil[0]==2)&&(casil[3]==2)&&(casil[6]==0)&&(temp=="")) temp="G"
if ((casil[0]==2)&&(casil[3]==0)&&(casil[6]==2)&&(temp=="")) temp="D"
if ((casil[0]==0)&&(casil[3]==2)&&(casil[6]==2)&&(temp=="")) temp="A"
if ((casil[0]==2)&&(casil[4]==2)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[0]==2)&&(casil[4]==0)&&(casil[8]==2)&&(temp=="")) temp="E"
if ((casil[0]==0)&&(casil[4]==2)&&(casil[8]==2)&&(temp=="")) temp="A"
if ((casil[1]==2)&&(casil[4]==2)&&(casil[7]==0)&&(temp=="")) temp="H"
if ((casil[1]==2)&&(casil[4]==0)&&(casil[7]==2)&&(temp=="")) temp="E"
if ((casil[1]==0)&&(casil[4]==2)&&(casil[7]==2)&&(temp=="")) temp="B"
if ((casil[3]==2)&&(casil[4]==2)&&(casil[5]==0)&&(temp=="")) temp="F"
if ((casil[3]==2)&&(casil[4]==0)&&(casil[5]==2)&&(temp=="")) temp="E"
if ((casil[3]==0)&&(casil[4]==2)&&(casil[5]==2)&&(temp=="")) temp="D"
if ((casil[6]==2)&&(casil[7]==2)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[6]==2)&&(casil[7]==0)&&(casil[8]==2)&&(temp=="")) temp="H"
if ((casil[6]==0)&&(casil[7]==2)&&(casil[8]==2)&&(temp=="")) temp="G"
if ((casil[2]==2)&&(casil[5]==2)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[2]==2)&&(casil[5]==0)&&(casil[8]==2)&&(temp=="")) temp="F"
if ((casil[2]==0)&&(casil[5]==2)&&(casil[8]==2)&&(temp=="")) temp="C"
if ((casil[6]==2)&&(casil[4]==2)&&(casil[2]==0)&&(temp=="")) temp="C"
if ((casil[6]==2)&&(casil[4]==0)&&(casil[2]==2)&&(temp=="")) temp="E"
if ((casil[6]==0)&&(casil[4]==2)&&(casil[2]==2)&&(temp=="")) temp="G"
}
function logicThree() {
if ((casil[0]==1)&&(casil[1]==1)&&(casil[2]==0)&&(temp=="")) temp="C"
if ((casil[0]==1)&&(casil[1]==0)&&(casil[2]==1)&&(temp=="")) temp="B"
if ((casil[0]==0)&&(casil[1]==1)&&(casil[2]==1)&&(temp=="")) temp="A"
if ((casil[0]==1)&&(casil[3]==1)&&(casil[6]==0)&&(temp=="")) temp="G"
if ((casil[0]==1)&&(casil[3]==0)&&(casil[6]==1)&&(temp=="")) temp="D"
if ((casil[0]==0)&&(casil[3]==1)&&(casil[6]==1)&&(temp=="")) temp="A"
if ((casil[0]==1)&&(casil[4]==1)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[0]==1)&&(casil[4]==0)&&(casil[8]==1)&&(temp=="")) temp="E"
if ((casil[0]==0)&&(casil[4]==1)&&(casil[8]==1)&&(temp=="")) temp="A"
if ((casil[1]==1)&&(casil[4]==1)&&(casil[7]==0)&&(temp=="")) temp="H"
if ((casil[1]==1)&&(casil[4]==0)&&(casil[7]==1)&&(temp=="")) temp="E"
if ((casil[1]==0)&&(casil[4]==1)&&(casil[7]==1)&&(temp=="")) temp="B"
if ((casil[3]==1)&&(casil[4]==1)&&(casil[5]==0)&&(temp=="")) temp="F"
if ((casil[3]==1)&&(casil[4]==0)&&(casil[5]==1)&&(temp=="")) temp="E"
if ((casil[3]==0)&&(casil[4]==1)&&(casil[5]==1)&&(temp=="")) temp="D"
if ((casil[6]==1)&&(casil[7]==1)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[6]==1)&&(casil[7]==0)&&(casil[8]==1)&&(temp=="")) temp="H"
if ((casil[6]==0)&&(casil[7]==1)&&(casil[8]==1)&&(temp=="")) temp="G"
if ((casil[2]==1)&&(casil[5]==1)&&(casil[8]==0)&&(temp=="")) temp="I"
if ((casil[2]==1)&&(casil[5]==0)&&(casil[8]==1)&&(temp=="")) temp="F"
if ((casil[2]==0)&&(casil[5]==1)&&(casil[8]==1)&&(temp=="")) temp="C"
if ((casil[6]==1)&&(casil[4]==1)&&(casil[2]==0)&&(temp=="")) temp="C"
if ((casil[6]==1)&&(casil[4]==0)&&(casil[2]==1)&&(temp=="")) temp="E"
if ((casil[6]==0)&&(casil[4]==1)&&(casil[2]==1)&&(temp=="")) temp="G"
}

function checkSpace() {
cara=(temp.charCodeAt())-65
if(casil[cara]==0) ok=1
}

function myChoice() {
if (lema=="") {
temp=""
ok=0
yo=1
cf=1
logicTwo()
logicThree()
checkSpace()
while(ok==0) {
aRandomNumber=Math.random()
comp=Math.round((choice-1)*aRandomNumber)+1
temp=String.fromCharCode(eval(comp+65))
checkSpace()
}
document.quiz.Pregunta.style.color="#0000ff"
 Pregunta(temp)
 clic=1
 }
} 

function yourChoice(chName) {
if (lema=="") {
Habilita()
if (clic==1) {
	alert("Debe contestar antes de proseguir")
} else {
pause=0
yo=0
if (all!=0) ended()
if (all==0) {
cf=0
ok=0
temp=chName
checkSpace()
if (ok==1) {
document.quiz.Pregunta.style.color="#ff0101"
 Pregunta(chName)
 clic=1
 }
if (ok==0) taken()
}
}
}
} 

function taken() {
 document.quiz.Pregunta.style.color="#008000"
 document.quiz.Pregunta.value="Ese casillero está ocupado, escoja otro."
} 

function Pregunta(nume) {
if (lema=="") {
valor=eval(nume.charCodeAt())-65
esco=nume
document.images[nume].src=blanco
document.quiz.Pregunta.value=prego[valor]
Habilita()
cuenta=1
tot=0
}
}

function gradeit(nume){
Inhabilita()
cuenta=0
if(resp.charAt(valor)==nume){
 //correcta
 correct++
 casil[valor]=1
 document.images[esco].src=o
} else {
 // incorrecta
 casil[valor]=2
 incorrect++
 document.images[esco].src=x
}
logicOne()
if (all!=0) {
 if (all==1){ lema="¡Ha ganado la partida!"}
 if (all==2){ lema="Para otra vez será..."}
 if (all==3){ lema="Empate..."}
 Stop()
 document.quiz.Pregunta.style.color="#008000"
 document.quiz.Pregunta.value=lema
}else{
if (yo==0) {
 document.quiz.Pregunta.value=""
 myChoice()
 } else {
 clic=0
 document.quiz.Pregunta.style.color="#008000"
 document.quiz.Pregunta.value="Escoja una casilla para tratar de poner su marca."
 }
}
} 

function ended() {
alert("Este juego ya está terminado, es mejor comenzar uno nuevo...")
Inhabilita()
}

function playAgain() {
if (all==0) {
if(confirm("¿Empezar del principio?")) reset()
}
if (all>0) reset()
}

function reset() {
Inicia()
for (ta=0;ta<=8;ta++){
 cara=String.fromCharCode(eval(ta+65))
 eval("document.images."+cara).src=blank 
}
document.quiz.reloj.value="00:00"
Start()
Inhabilita()
help()
}

function Inhabilita() {
for (t=1;t<=3;t++){
 eval("document.quiz.Opcion"+t).disabled=true
}
} 

function Habilita() {
for (t=1;t<=3;t++){
eval("document.quiz.Opcion"+t).disabled=false
}
} 

function UpdateTimer() {
   if(timerID) {
      clearTimeout(timerID)
      clockID=0
   }
   if(!tStart)
      tStart=new Date()
   var tDate=new Date()
   var tDiff=tDate.getTime() - tStart.getTime()
   tDate.setTime(tDiff)
   document.quiz.reloj.value="" 
                                   + tDate.getMinutes() + ":" 
                                   + tDate.getSeconds()
   
   timerID=setTimeout("UpdateTimer()", 1000)
   if (document.quiz.portiempo.checked) {
   if (cuenta==1) {
    tot+=20
    document.all.Barra.style.height=eval(252-tot)
	if (tot>=240) gradeit(99)
   }
   }
}

function Start() {
   tStart=new Date()
   document.quiz.reloj.value="00:00"
   timerID=setTimeout("UpdateTimer()", 1000)
} 

function Stop() {
   if(timerID) {
      clearTimeout(timerID)
      timerID=0
   }
   tStart=null
} 
