"Ayer pasé por tu casa y me tiraste una ley 30. Si no es por que PARO, quedo PRIVADO!"
JUEGOS EDUCATIVOS
http://juegos.lafuga.com/jugar-spider-typer-online/38/85/
http://www.dibujosparapintar.com/juegos_educativos.html
http://www.dibujosparapintar.com/juegos_educativos.html
TALLER JUEGOS GRADO 10º Y 11º
EJEMPLO 1er JUEGO: copia el codigo en bloc de notas y guardalo como triqui.html
<HEAD>
<TITLE>Juego Triqui en JavaScript y HTML</TITLE>
</HEAD>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<SCRIPT LANGUAGE="LiveScript">
step = 0;
diff=3;
function clear_all(form) {
step = 0;
for (i=0;i<9; ++i) {
position="a"+i;
form[position].value="";
}
}
// cambia boton cuando es clickeados
function clickit(field) {
if (step == -1) {alert("Reset para jugar de nuevo"); return;}
position=field.name.substring(1,2,1);
position = 'a'+position;
if (field.form[position].value !="") {alert("No se puede ir alli"); return;}
field.form[position].value="X";
if (eval_pos(field.form)) {
field.form.output.value="Tu ganas!";
step = -1;
return;
}
position=get_move(field.form);
field.form.output.value='Yo muevo a ' + position.substring(1,2,1);
if (position=="") {
field.form.output.value="No hay ganador.";
step = -1;
return;
}
field.form[position].value="O";
if (eval_pos(field.form)) {
field.form.output.value="Tu perdiste!";
step = -1;
}
}
// mira si hay ganador
function eval_pos(form) {
if ((form.a0.value!="" &&
form.a0.value==form.a3.value && form.a0.value==form.a6.value)||
(form.a0.value!=""
&& form.a0.value==form.a1.value && form.a0.value==form.a2.value) ||
(form.a0.value!=""
&& form.a0.value==form.a4.value && form.a0.value==form.a8.value) ||
(form.a1.value!=""
&& form.a1.value==form.a4.value && form.a1.value==form.a7.value) ||
(form.a2.value!=""
&& form.a2.value==form.a5.value && form.a2.value==form.a8.value) ||
(form.a2.value!=""
&& form.a2.value==form.a4.value && form.a2.value==form.a6.value) ||
(form.a3.value!=""
&& form.a3.value==form.a4.value && form.a3.value==form.a5.value) ||
(form.a6.value!=""
&& form.a6.value==form.a7.value && form.a6.value==form.a8.value))
return true;
else
return false;
}
function f(a) {
if (a == "") return "."; else return a;
}
// obtiene la posicion para mover
function comp_move(form,player,weight,depth) {
var cost;
var bestcost=-2;
var position;
var newplayer;
if (player=="X") newplayer="O"; else newplayer="X";
if (depth==diff) return 0;
if (eval_pos(form)) return 1;
for (var i=0; i<9; ++i) {
position='a'+i;
if (form[position].value != "")
continue;
form[position].value=player;
cost = comp_move(form,newplayer, -weight, depth+1);
if (cost > bestcost) {
bestcost=cost;
if (cost==1) i=9;
}
form[position].value="";
}
if (bestcost==-2) bestcost=0;
return(-bestcost);
}
// obtiene la posicion para mover
function get_move(form) {
var cost;
var bestcost=-2;
bestmove="";
if (step++ == 0)
if (form.a4.value=="")
return "a4";
else
if (form.a0.value=="")
return "a0";
for (var i=0; i<9; ++i) {
localposition='a'+i;
if (form[localposition].value != "")
continue;
form[localposition].value="O";
cost=comp_move(form,"X", -1, 0);
if (cost > bestcost) {
if (cost==1) i=9;
bestmove=localposition;
bestcost=cost;
}
form[localposition].value="";
}
return bestmove;
}
function complain(field) {
field.form.output.focus();
alert("No cambie los campos del juego directamente!");
}
// the end -->
</SCRIPT>
</HEAD>
<H1> Un juego de Triqui en Javascript </H1>
Click en el boton siguiente a cada posicion a colocar una X.
<hr>
<FORM>
<INPUT SIZE=1 NAME="a0" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b0" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a1" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b1" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a2" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b2" OnClick="clickit(this)">
<BR>
<INPUT SIZE=1 NAME="a3" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b3" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a4" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b4" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a5" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b5" OnClick="clickit(this)">
<BR>
<INPUT SIZE=1 NAME="a6" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b6" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a7" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b7" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a8" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b8" OnClick="clickit(this)">
<BR>
<BR>
<BR>
Mensaje: <INPUT NAME="output" TYPE="text"><BR>
<BR>
Dificultad: <SELECT NAME="Dificultad"
OnChange="diff=form.difficulty[form.difficulty.selectedIndex].value;">
<OPTION VALUE=1> Muy facil
<OPTION VALUE=2> Facil
<OPTION VALUE=3 SELECTED> Medio
<OPTION VALUE=4> Duro
</SELECT>
<BR><INPUT TYPE="button" VALUE="Computadora Mueve primero" OnClick="
if (!step++) this.form.a4.value='O';">
<BR><INPUT TYPE="reset" VALUE="Restart" OnClick="clear_all(this.form)">
</FORM>
<TITLE>Juego Triqui en JavaScript y HTML</TITLE>
</HEAD>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<SCRIPT LANGUAGE="LiveScript">
step = 0;
diff=3;
function clear_all(form) {
step = 0;
for (i=0;i<9; ++i) {
position="a"+i;
form[position].value="";
}
}
// cambia boton cuando es clickeados
function clickit(field) {
if (step == -1) {alert("Reset para jugar de nuevo"); return;}
position=field.name.substring(1,2,1);
position = 'a'+position;
if (field.form[position].value !="") {alert("No se puede ir alli"); return;}
field.form[position].value="X";
if (eval_pos(field.form)) {
field.form.output.value="Tu ganas!";
step = -1;
return;
}
position=get_move(field.form);
field.form.output.value='Yo muevo a ' + position.substring(1,2,1);
if (position=="") {
field.form.output.value="No hay ganador.";
step = -1;
return;
}
field.form[position].value="O";
if (eval_pos(field.form)) {
field.form.output.value="Tu perdiste!";
step = -1;
}
}
// mira si hay ganador
function eval_pos(form) {
if ((form.a0.value!="" &&
form.a0.value==form.a3.value && form.a0.value==form.a6.value)||
(form.a0.value!=""
&& form.a0.value==form.a1.value && form.a0.value==form.a2.value) ||
(form.a0.value!=""
&& form.a0.value==form.a4.value && form.a0.value==form.a8.value) ||
(form.a1.value!=""
&& form.a1.value==form.a4.value && form.a1.value==form.a7.value) ||
(form.a2.value!=""
&& form.a2.value==form.a5.value && form.a2.value==form.a8.value) ||
(form.a2.value!=""
&& form.a2.value==form.a4.value && form.a2.value==form.a6.value) ||
(form.a3.value!=""
&& form.a3.value==form.a4.value && form.a3.value==form.a5.value) ||
(form.a6.value!=""
&& form.a6.value==form.a7.value && form.a6.value==form.a8.value))
return true;
else
return false;
}
function f(a) {
if (a == "") return "."; else return a;
}
// obtiene la posicion para mover
function comp_move(form,player,weight,depth) {
var cost;
var bestcost=-2;
var position;
var newplayer;
if (player=="X") newplayer="O"; else newplayer="X";
if (depth==diff) return 0;
if (eval_pos(form)) return 1;
for (var i=0; i<9; ++i) {
position='a'+i;
if (form[position].value != "")
continue;
form[position].value=player;
cost = comp_move(form,newplayer, -weight, depth+1);
if (cost > bestcost) {
bestcost=cost;
if (cost==1) i=9;
}
form[position].value="";
}
if (bestcost==-2) bestcost=0;
return(-bestcost);
}
// obtiene la posicion para mover
function get_move(form) {
var cost;
var bestcost=-2;
bestmove="";
if (step++ == 0)
if (form.a4.value=="")
return "a4";
else
if (form.a0.value=="")
return "a0";
for (var i=0; i<9; ++i) {
localposition='a'+i;
if (form[localposition].value != "")
continue;
form[localposition].value="O";
cost=comp_move(form,"X", -1, 0);
if (cost > bestcost) {
if (cost==1) i=9;
bestmove=localposition;
bestcost=cost;
}
form[localposition].value="";
}
return bestmove;
}
function complain(field) {
field.form.output.focus();
alert("No cambie los campos del juego directamente!");
}
// the end -->
</SCRIPT>
</HEAD>
<H1> Un juego de Triqui en Javascript </H1>
Click en el boton siguiente a cada posicion a colocar una X.
<hr>
<FORM>
<INPUT SIZE=1 NAME="a0" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b0" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a1" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b1" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a2" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b2" OnClick="clickit(this)">
<BR>
<INPUT SIZE=1 NAME="a3" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b3" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a4" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b4" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a5" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b5" OnClick="clickit(this)">
<BR>
<INPUT SIZE=1 NAME="a6" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b6" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a7" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b7" OnClick="clickit(this)">
<INPUT SIZE=1 NAME="a8" OnFocus="complain(this)">
<INPUT TYPE="button" NAME="b8" OnClick="clickit(this)">
<BR>
<BR>
<BR>
Mensaje: <INPUT NAME="output" TYPE="text"><BR>
<BR>
Dificultad: <SELECT NAME="Dificultad"
OnChange="diff=form.difficulty[form.difficulty.selectedIndex].value;">
<OPTION VALUE=1> Muy facil
<OPTION VALUE=2> Facil
<OPTION VALUE=3 SELECTED> Medio
<OPTION VALUE=4> Duro
</SELECT>
<BR><INPUT TYPE="button" VALUE="Computadora Mueve primero" OnClick="
if (!step++) this.form.a4.value='O';">
<BR><INPUT TYPE="reset" VALUE="Restart" OnClick="clear_all(this.form)">
</FORM>