私は少々物忘れが激しく、活動記録がろくに思い出せないことが多々ある。ここでは備忘録も兼ねて、随時活動記録を記していくことにする。(5/17)((br)) 日本語入力のトラブルで長らく記述できなかった分の活動日誌を別の記録媒体に残していたので、全部ではないが復元できる限りの活動記録をまとめて記述していく。 (7/17) !!5/17 これまで班員で話し合った記録を元にものと操作の洗い出しについて記入。少々細かすぎて冗長な部分や見落としている部分があるような気もするが、班員の現状把握の助けになれば幸いである。 !!5/18 先生との軽い面談を済ませた。また、モジュール分けをするために話し合いをした。また、班wikiをもう少し有効活用するようにアドバイスを頂いたので、班員と連携してもう少し積極的に記述して行こうと思う。 !!5/25 各々作成してきたモジュール分けの資料を元に、モジュール化を行った。ようやく、プロトタイピングに取り掛かれると思う。 !!5/30 試しに自分が担当となったプレーヤーモジュールを作成する作業にとりかかった。http://www.atmarkit.co.jp/ait/series/965/のサイトを参考に、プロジェクトフォルダを作成して、キャラクターを表示させることに成功した。 !!6/1 今のところキャラクターモジュールで実装したいことは2つだ。((br)) *'''キー入力によってキャラクターを任意の方向に動かす'''((br)) **プログラムの一例(左に移動する時) if(input.left){((br)) chara.vec = 3;((br))    chara.x += spd;((br)) if(chara.frame >= 9 && chara.frame < 11){((br)) chara.frame ++;((br)) } else{((br)) chara.frame = 9;((br)) }((br)) }((br)) 進捗……概ね順調。主人公の歩くアニメーションはフレームを変えることで簡単に表現することができた。キー入力に対応して主人公の座標を動かすことも、イベントリスナやinputを利用することで驚くほど簡単に表現できた。((br)) ''バグ(問題点)''((br)) キー入力をしたまま、別のブラウザに移行した際に、キーが入力されっぱなしになる(キーを離しても、主人公が動き続ける)((br)) 斜め移動時のアニメーションが若干不自然(余裕があれば解消したい) *'''モンスターから攻撃を受けた時に被弾アクションをとる'''((br)) 進捗……全く駄目。一応サンプル用の動かない敵を作成して、当たったらプレーヤーが点滅してノックバックするプログラムを作成したいと思う。 ((br))((br)) また、主人公の攻撃動作は武器モジュールに一任しているため、考えないこととする。 !!6/8 引き続き空き時間を見つつモジュールの作成。((br)) *'''キー入力によってキャラクターを任意の方向に動かす'''((br)) 前回の「キー入力されっぱなし問題」はどうにも「キーを押した判定」とか「キーを離した判定」とかのあたりに問題が潜んでいそう。余裕を持って解消していきたいが、今は被弾モーションを作らなければ。 *'''モンスターから攻撃を受けた時に被弾アクションをとる'''((br)) これが全く思うように行かない。上方向から敵キャラクタにぶつかった際に主人公に上方向に飛んでほしいのに別方向に飛んで行ったり、そもそも当たり判定が不自然だったり。課題点は挙げればきりが無い。(一応当たり判定は32*32のスプライトには32*32で与えられるようで、それを縮めると良いらしい) *'''クラスの導入'''((br)) 今までは普通にプログラムを記述していたが、クラス化したほうが良いと思ったのでCharaクラスを作成。引数はx,y座標。これにより、多少プログラムの記述を変更。 *'''開発作業をやっていて思うこと'''((br)) '''チーム開発って、かなりしんどい。'''自分のモジュールの問題も解決する必要があり、班全体の進捗も管理しながら、今後の展望も建てて……と言った班長としてのしっかりした仕事はとてもできず、それどころかチームのコミニュケーションに差異が生まれて認識の違いが生まれたり、確認不足が後々明らかになったり……せっかく班長をやることになったので、もっと上手に班をまとめて、良い作品を作りたいものだが自分にはチーム運営力も、プログラム力も明らかに足りなく、目の前の不具合に頭を痛めてばっかりだ。頑張らねば、と思う。 !!6/13 数人で集まって中間発表に向けてモジュールの統合をしようとした。試しにプレーヤーモジュールとメニュー画面モジュールを統合しようと思ったが、結局画面が正常に動作することはなかった。 !!6/14 今日も統合をしようと思った。htmlの方で統合しようとしてもうまく行かず。直接プログラムを1つのjsファイルにまとめてもうまく行かない。どうやら自分のプログラムに対する知識理解に大きな問題があるようだ。夜も遅く、明日の中間発表に影響が出てはまずいので帰宅することにした。 !!6/15 中間発表だった。結局統合は出来ず、モジュールのみの発表となった。自分のプログラムの課題解決に力を注ぎすぎて、班全体をまとめることが少々おろそかになっている気がする。頑張らねば。 !!6/22 !!6/29 !!7/6 キャラクターモジュールの作り直し((br)) 近距離攻撃モーションの実装((br)) 以下、主人公モジュールで実装したかったこと((br)) ''<クラス>'' *'''Player''' *'''LongAttack''' *'''ShortAttack''' ((br)) :導入したい動き *十字キーの入力による主人公の向き変更((br)) 移動はマップが担当するため、主人公の座標は固定 *zボタン入力による攻撃(遠距離、近距離)((br)) 攻撃力の値は武器から貰う。攻撃エフェクトを発生させ、そのエフェクトを当たり判定にする。((br)) *'''遠距離攻撃''' **ゲーム座標上の主人公の座標は変わらないので、撃った弾が主人公の移動に合わせて動くようにする。 **近距離攻撃に比べて、むやみに連射できないようにする(主人公の弾は画面内に一つしか存在できないようにする。一回弾を発射した時にリロード状態に遷移し、弾が画面外に出た際に消滅して初めて再び弾を発射できるようになる)((br)) *'''近距離攻撃''' **主人公が剣を振り、斬撃を発生させる。 **当たり判定はあくまで斬撃。主人公の剣には発生しない。 *敵から攻撃を受けた際の処理((br)) グラフィックを点滅させHPを減らし、一定時間無敵になる。 !!7/13 *'''遠距離攻撃の実装'''((br)) !!7/17 !!7/18 '''遠距離攻撃が連射する不具合の解消'''((br)) **SetTimeoutを用いることによって、 '''近距離攻撃モーションの完成'''((br)) '''近距離攻撃エフェクトの作成'''((br)) !!7/19 !!7/20 !!7/27 !!7/31 !!8/1 [[12班トップへ戻る|18::gr12]]