!!表示モジュール(岡野、福士)の仕様書 *得点と盤面の表示モジュールは完成。 *HTMLで読み込んだ白、黒、緑色のマスを表示させる。 *置けるマスを見やすよう色を変えて表示。 *スタートモジュールのあとに盤面と得点を表示させるので、最初はHTMLファイルにおけるboardとmsgには何も表示されず透過されているので今のままの書き方でいい。 *しかし、エンドモジュールに進む前にboard,msgをリセットしないと表示されたままになってしまうので、その問題は統合時に解決する。 --onload-- *それぞれのマスの画像データを得る **コマ無しの画像データ"cell" **黒コマの画像データ"black" **白コマの画像データ"white" *8✕8のマスそれぞれのメモリ宣言 **二次元配列(board[x][y])で作成 *コマの初期配置を設定 --showbord-- *boardの要素をリセット *bordのdivタグのノードを取得し"b"に格納 *"b"の最初の子ノードが0以外である間、"b"の最初の子ノードを削除 *"cell"に盤面のマス情報を代入しその情報を盤面のどの位置に表示するかを確定後に中身を表示 *コマを置けるマスをクリックしたら裏返しモジュールへ移行 **盤面の状態(board)、盤面のX座標とY座標(_x,_y)、プレイヤー情報(player)を渡す *黒ターン:1、白ターン:2で分けそれぞれの値を"player"に格納しplayerの情報を取得 **プレイヤーは "player = 3 - player" で移行 --countpiece-- *盤面上の黒コマと白コマの数を数える *それぞれのコマの数を盤面とともに表示 !!裏返しモジュール(結城) *石を置けるかどうかの判定、置いた場合の裏返し動作をするものはほぼ完成。 *石を置けるかどうかの判定  check.can(newboard, x, y, player) *裏返しの実行 check.turn(newboard, x, y, player) 8< 引数  newboard 現在の盤面   x    石をおいたx座標   y    石をおいたy座標   plyer 石をおいたプレイヤー(1 or 2) check.canの返り値  1  ここには石が置ける           0  ここには石が置けない check.turnの返り値  newboard ひっくり返したあとの盤面(あとは表示するだけ) >8 !!スタートモジュール(千葉) *タイトル画面とスタートボタンが生成され、スタートをクリックでゲーム画面へ移行 --createStartScene-- *読み込んでいた画像を生成 *スタートボタンにタッチイベントを追加 --createGameScene-- *ゲーム画面を生成 *GameSceneの中身は統合する !!BGMモジュール(千葉) *現時点ではタイトル画面と同時にBGMが再生される *BGMはひとつの曲をループする !!トラップモジュール(大嶋、玉川) --set_trap-- *指定した座標にトラップを設置する *配置するトラップの種類はランダム set_trap = function(board, x, y, cell) 引数  board 現在の盤面       x    指定されたx座標       y    指定されたy座標      cell   マスの情報取得 返り値 newboard 罠をおいたあとの盤面 *トラップ1(スキップ),2(無力化)完成 !!通信+ターン切り替えモジュール(田代) *サーバー側 socket.on("client_to_server",function(balck,white,board){ io.sockets.emit("server_to_client",function(balck,white,board){}); });//データが送られてきたら全員ににデータを送ってシーンを変える *クライアント側 var blackScene = function() { var scene = new Scene(); // 新しいシーンを作る (function(){ showBoard() socket.emit("client_to_server",function(black,white,board){});//ここでデータをサーバーに送る }()); socket.on("server_to_client",function(black,white,board){ //サーバーから返信が来たらシーンを切り替える game_.replaceScene(whiteScene()); }); return scene; };