!!!プレイ画面のモジュール分け 画面を作るのに必要なモジュールを集めたscript。((br)) このscriptにplay画面そのものを作るわけではない。((br)) *>>{20::gr03::プレイ画面::playerモジュール}{playerモジュール}((br)) *>>{20::gr03::プレイ画面::stageモジュール}{stage作成モジュール}((br)) !!ソース名 play.js !!主人公(class) [player(x, y)] [引数]((br)) 初期座標(x, y)((br))((br)) [実装すべき内容]((br)) player生成((br)) AとDキーによる移動((br)) spaceキーによるジャンプ((br)) ステージと動く壁にめり込まないようにする(当たり判定)((br)) 壁を動かしている時は、操作不可にする((br)) 穴に落ちたらゲームオーバーにする((br)) !!動く壁(class) [moveWall(x, y, sizeX, sizeY, move)] [引数]((br)) 生成位置の座標(x, y)、大きさ(sizeX, sizeY)、動く方向(move)((br))((br)) [実装すべき内容]((br)) 動く壁生成((br)) マウス操作で縦横どちらかのみに動かす((br)) player、警備員、ステージ、囚人にめり込まないようにする(当たり判定)((br)) !!警備員(class) [police(x, y)] [引数]((br)) 生成位置の座標(x, y)((br))((br)) [実装すべき内容]((br)) 警備員生成((br)) playerとの距離が一定以下になったらplayerの方向に動く(x軸のみ)((br)) playerと接触したらgameoverにする((br)) 巡回させる(多分難しいので余裕があったら実装)((br)) !!囚人(class) [thief(x, y)] [引数]((br)) 生成位置の座標(x, y)((br))((br)) [実装すべき内容]((br)) 囚人生成((br)) playerと接触したら消える((br)) thiefNum +1((br)) !!ゴール(class) [goal(x, NumMore)] [引数]((br)) ゴールの座標(x)、ゴールするために必要な囚人の数(NumMore) [実装すべき内容]((br)) playerのxがゴールの座標xを超えたときgameclear !!ステージ(class) [stage(x, y, sizeX, sizeY)] [引数]((br)) stageの座標(x, y)、stageの大きさ(sizeX, sizeY)((br)) !!各コマンド ・escapeキーでメニュー画面へ(別シーンへ)((br)) !!変数 [各シーン限定] 読み込む度、初期化必須((br)) 仲間になった囚人の数(thiefNum)