attach関数は、check関数に入っています。(クロージャーです)テトリスブロックを固定させる必要があるかどうかを判定します。
いつ呼ばれるのかを調べてみましょう。
firefoxのツール→web開発→開発ツール
左下のソースからtetris2.jsを選択
(f5リロードするしてから)右側にソースが表示されます。
function attach () { の行の数字左側をクリックして、
ブレークポイントが設置されます。
F5を押すと、ブレークポイントに処理が来たところで止まります。
(該当行の処理が行われていません)
左側のコールスタックをクリック
check
gameinit
(global)
global→gameinit→check この順で呼び出されています。
(globalは何か知りません。)
ブレイクポイントを活用してください。
function attach () {
for (var i = playerBlock.x, j = playerBlock.y , k = 0;
k < playerBlock.tetrisBlock.blockShape.length ;
i ++, k++ , j += k / CUBEUNIT_LENGTH) {
if ( Board [ i ] [ j + 1 ] == 1
&& playerBlock.tetrisBlock.blockShape [ k ] == 1 ) {
return true;
}
return false
}
}