2017-01-24 7 views
0

私はjavascript/jqueryでシンプルなティックタックつま先ゲームを作っています。これはcross.jpg又はcircle.jpgにempty.jpgを変更するコードであるtic tac toe javascript回答チェッカー

<div id="gamefield"> 
      <table border="0"> 
       <tr> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
       </tr> 
       <tr> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
       </tr> 
       <tr> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
        <td><img alt="" title="" src="img/empty.jpg" /></td> 
       </tr> 
      </table> 
     </div> 

: これはgamefieldある

$("#gamefieldtr td").click(function (event) { 
if($(".game-button").html() == "Reset game" && $(this).children().attr("src") == "img/empty.jpg") { 

    if(randomStart == 0){ 
     var val = $(this).children().attr('src', 'img/cross.jpg'); 
     randomStart = 1; 
     $(this).children().unbind("click"); 
    } 
    else { 
     var val = $(this).children().attr('src', 'img/circle.jpg'); 
     randomStart = 0; 
     $(this).children().unbind("click"); 
    } 
} 
if ($(".game-button").html() == "Start game") { 
    alert("you can't start"); 
} 
}); 

が、これはrandomstartコードである:

var randomStart = Math.floor(Math.random() * 2); 
+0

あなたのモデルを3,3サイズの行列に保ち、行や列、または対角線が勝てるかどうかを確認することができます –

答えて

1

React tutorialは、TicTacToeゲームを実装しており、この機能を使用して、誰が勝ったかを確認します。

二乗から

function calculateWinner(squares) { 
    const lines = [ 
    [0, 1, 2], 
    [3, 4, 5], 
    [6, 7, 8], 
    [0, 3, 6], 
    [1, 4, 7], 
    [2, 5, 8], 
    [0, 4, 8], 
    [2, 4, 6], 
    ]; 
    for (let i = 0; i < lines.length; i++) { 
    const [a, b, c] = lines[i]; 
    if (squares[a] && squares[a] === squares[b] && squares[a] === squares[c]) { 
     return squares[a]; 
    } 
    } 
    return null; 
} 

は、左から右、上から下への9つの正方形のアレイです。既に塗りつぶされた四角形の場合はxまたはoが含まれ、勝者の文字が返されます。