!!!shin_map_ver2.js 担当:千葉大輝 !!マップ表示 :概要 ::スクロールに対応したマップの構築・表示を行う関数郡 ::マップの座標位置を利用したゲームの進行管理 :詳細 *PCを常にマップの中心に置き、その周囲を一定範囲に渡り描画 *マップを動かすことによりPCの移動を表現 *広範囲のマップデータと表示用のマップデータを用意し、入力に合わせて表示用のマップデータをその都度更新 *当たり判定を用いて、PCの行動範囲の管理 *マップの座標と鍵のの所持/未所持を判定し、マップの切り替え(次のマップの読み込みと表示用データの更新・敵の生成)を行う *宝箱のマップチップの座標と主人公の座標が重なった時に、宝箱イラストの変更・アイテム取得のエフェクト(イラスト/サウンド)表示・メニューへの情報渡しを行う :具体的な関数 *make_map_c() **表示する範囲のマップデータを元のマップから読み取り、表示用マップデータ(var map_b)へと格納する。 **直接データ用の変数を操作するため、引数・戻り値はなし。 *new_map_display(id) **引数(id)から表示に必要な変数のデータを設定する。 **mapオブジェクトを作成し、PCが初期位置にいるマップを表示する。 **当たり判定とマップの移動(PCの移動)を表示データに反映するための関数をイベントリスナへと登録する。 *利用するデータ **連想配列を用いてそれぞれのマップに関する情報を格納 **"mx":初期位置のx座標((br))"my":初期位置のy座標((br))"image":画像データの名前((br))"mapdata_i":マップの画像配列用のデータ((br))"mapdata_a":マップの当たり判定用のデータ((br)) *注意! **表示するマップタイル(マップの座標)が縦横どちらも偶数個であり、中心の座標は存在しない。そのため、中心4つのマップタイルのうち左上のタイルを中心として扱う :イベントリスナへの登録 *主人公の移動(マップの移動)を行うために方向キーの読み取り *宝箱管理のためのif文等