крестики-нолики.код [JavaScript]

 
0
 
JavaScript
ava
александра89 | 09.12.2011, 00:49
Помогите пожалуйста разобраться в коде,разъяснить как работает программа.а то что то никак не получается разобраться,как принципиально всё работает.

понятно что сначала мы каждой кнопке присваиваем значение -1.Далее идёт проверка на выйгрыши,ну или если все клетки заполнены,то ничья.
не понимаю вот как работает функция "turnchange" , "changing" , и функции для кнопок,допустим "change_b1". подскажите пожалуйста.


<html>
<head>
<title>Крестики Нолики</title>
</head>
<p><script name="JavaScript">
function variables(){
t = 1;
change = 1;
empty1 = -1;
empty2 = -1;
empty3 = -1;
empty4 = -1;
empty5 = -1;
empty6 = -1;
empty7 = -1;
empty8 = -1;
empty9 = -1;
return;
whogoesnow = "Ходит: Игрок 1"
}
function win(){
if (empty1==empty2 && empty2==empty3 && empty3==0 ||
empty4==empty5 && empty5==empty6 && empty6==0 ||
empty7==empty8 && empty8==empty9 && empty9==0 ||
empty1==empty4 && empty4==empty7 && empty7==0 ||
empty2==empty5 && empty5==empty8 && empty8==0 ||
empty3==empty6 && empty6==empty9 && empty9==0 ||
empty1==empty5 && empty5==empty9 && empty9==0 ||
empty3==empty5 && empty5==empty7 && empty7==0 ){
alert ("Выйграл игрок 2 !!!");
history.go(0)
}
if (empty1==empty2 && empty2==empty3 && empty3==1 ||
empty4==empty5 && empty5==empty6 && empty6==1 ||
empty7==empty8 && empty8==empty9 && empty9==1 ||
empty1==empty4 && empty4==empty7 && empty7==1 ||
empty2==empty5 && empty5==empty8 && empty8==1 ||
empty3==empty6 && empty6==empty9 && empty9==1 ||
empty1==empty5 && empty5==empty9 && empty9==1 ||
empty3==empty5 && empty5==empty7 && empty7==1 ){
alert ("Выйграл игрок 1 !!!");
history.go(0)
}
if (empty1!=-1 && empty2 !==-1 && empty3 !=-1 &&
empty4 !=-1 && empty5 !=-1 && empty6 !=-1 &&
empty7 !=-1 && empty8 !=-1 && empty9 !=-1){
alert ("Ничья !!!");
history.go(0)}
}
function turnchange(t){
if (change == 1) {
if (t == 0){
t = 1;
whogoesnow = "Ходит: Игрок " + 1
}
else {
t = 0;
whogoesnow = "Ходит: Игрок " + 2
}
}
else {
t = t;
}
change = 1
return (t);
}

function changing(clicked){
if (clicked == 1){spot = empty1 ;}
if (clicked == 2){spot = empty2 ;}
if (clicked == 3){spot = empty3 ;}
if (clicked == 4){spot = empty4 ;}
if (clicked == 5){spot = empty5 ;}
if (clicked == 6){spot = empty6 ;}
if (clicked == 7){spot = empty7 ;}
if (clicked == 8){spot = empty8 ;}
if (clicked == 9){spot = empty9 ;}
if (spot == -1){
if (t == 0){xo = " O " ;spot = 0}
else {xo = " X " ;spot = 1}
if (clicked == 1){empty1 = spot;}
if (clicked == 2){empty2 = spot ;}
if (clicked == 3){empty3 = spot ;}
if (clicked == 4){empty4 = spot ;}
if (clicked == 5){empty5 = spot ;}
if (clicked == 6){empty6 = spot ;}
if (clicked == 7){empty7 = spot ;}
if (clicked == 8){empty8 = spot ;}
if (clicked == 9){empty9 = spot ;}
}
else {
if (spot == 0){xo = " O ";}
if (spot == 1){xo = " X ";}
change = 0
}
return (xo) ;
}
function change_b1(form){
clicked = 1;
changing(clicked) ;
t = turnchange(t) ;
form.b1.value = xo;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b2(form){
clicked = 2;
changing(clicked) ;
form.b2.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b3(form){
clicked = 3;
changing(clicked) ;
form.b3.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b4(form){
clicked = 4;
changing(clicked) ;
form.b4.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b5(form){
clicked = 5;
changing(clicked) ;
form.b5.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b6(form){
clicked = 6;
changing(clicked) ;
form.b6.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b7(form){
clicked = 7;
changing(clicked) ;
form.b7.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b8(form){
clicked = 8;
changing(clicked) ;
form.b8.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
function change_b9(form){
clicked = 9;
changing(clicked) ;
form.b9.value = xo;
t = turnchange(t) ;
form.whoseturn.value = whogoesnow
win();
return;
}
</script><script name="JavaScript">
variables();
</script></p>

<form>
<p align="center"><input type="button" name="whoseturn"
value="Ходит: Игрок 1"> <br>
<br>
</p>
<div align="center"><center><table border="0">
<tr>
<td><input type="button" name="b1" value=" "
onclick="change_b1(this.form)"> </td>
<td><input type="button" name="b2" value=" "
onclick="change_b2(this.form)"> </td>
<td><input type="button" name="b3" value=" "
onclick="change_b3(this.form)"> </td>
</tr>
<tr>
<td><input type="button" name="b4" value=" "
onclick="change_b4(this.form)"> </td>
<td><input type="button" name="b5" value=" "
onclick="change_b5(this.form)"> </td>
<td><input type="button" name="b6" value=" "
onclick="change_b6(this.form)"> </td>
</tr>
<tr>
<td><input type="button" name="b7" value=" "
onclick="change_b7(this.form)"> </td>
<td><input type="button" name="b8" value=" "
onclick="change_b8(this.form)"> </td>
<td><input type="button" name="b9" value=" "
onclick="change_b9(this.form)"> </td>
</tr>
</table>
</center></div><p align="center"><br>
<input type="button" value="Новая игра"
onclick="history.go(0)"> </p>
</form>
</body>
</html>
Kommentare (0)

Kommentare werden nicht hinzugefügt

Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden