我正在制作一个井字游戏。纠正功能,尽快申报赢家
我怎么会更改下面的代码,这样的赢家可能被宣布之前完成是真的,(每平方填写),获胜者是第一个达到3匹配值,而不是最后的实现呢?
function check_squares() {
var values = new Array();
var complete = true;
$('.square').each(function() {
values.push($(this).html());
//if ($(this).html() == '') complete = false;
});
if (complete == true) {
var winner = false;
if (values[0] == values[1] && values[1] == values[2]) winner = values[0];
if (values[3] == values[4] && values[4] == values[5]) winner = values[3];
if (values[6] == values[7] && values[7] == values[8]) winner = values[6];
if (values[0] == values[3] && values[3] == values[6]) winner = values[0];
if (values[1] == values[4] && values[4] == values[7]) winner = values[1];
if (values[2] == values[5] && values[5] == values[8]) winner = values[2];
if (values[0] == values[4] && values[4] == values[8]) winner = values[0];
if (values[2] == values[4] && values[4] == values[6]) winner = values[2];
if (winner) {
$('#output').html('Winner: ' + winner);
} else {
$('#output').html('No Winner');
}
} else {
if (player_x == true) {
$('#output').html('x turn to move');
} else {
$('#output').html('o turn to move');
}
}
}
嗯,那里只有*有*更好的方式来处理该逻辑... – 2012-05-08 19:33:50
游戏的规则是什么?我们应该如何知道什么定义了胜利者?这是tic-tac-toe吗? –
看起来像井字棋 – ThiefMaster