2016 ソフトウェア設計及び演習用の班Wiki

g06::壽 尚之

壽 尚幸です。尚之ではないです。

担当分野と触ったところの更新状況

操作受付モジュール(とりあえず上下左右だけ)→第一章、第三章は斜め入力可能になった

  • (6/21)敵との当たり判定に伴い、動作が止まっている状態をescで抜けられるようにした。今後タイピングで解除できるようになる予定。
  • (6月某日)敵が2体出てくるのに合わせ、敵から抜け出すときに特定の敵のみを止めるようにした。
  • (7/14) ついに第一章で斜め入力が可能になった。むしろ自転車に轢かれやすくなったような
  • 7/15 第三章でも引き続き斜め入力が可能となった。ゲーム中、3を押せば第三章へのショートカットとなるようにした。
  • 7/22 攻撃用アイテムを飛ばせるようになった。タイピングの関係上、左手をホームポジションにおいたまま操作できると良さそうなので、asdf辺りで操作できるようにする予定です。現状aで自転車です。
  • 7/26 key press event 経由で武器の使用をすると羊の行動が止まってしまうバグが出たので、羊の動作は第一章と第三章ではタイマー依存にする予定です。今のところ第1章のみタイマー依存動作にして不具合がないか確認中です。
  • 7/29 大丈夫そうなので第三章でも斜め移動可能にしました。
  • 8/3 エンディング及び最終リザルト周りのショートカット、操作を追加しました。

アイテムモジュール(未完成)

  • ヘッダファイルはこちら
  • (6/22)上から草が流れてくるところまで出来た。草を取るとスタミナが100回復。回復量は要調整と思われ。→(6/29)回復量を30にしてみた。
  • (6/29) 障害物の岩(当面はがんちゃん)が流れてくるようになった。がんちゃんに当たるとスクロールが止まるよう、chapter1.cも編集した。当たり判定モジュール次第では岩を透過しないように出来そう!
  • 7/8 そろそろキーアイテム追加の予定→追加は出来た。
  • todo:キーアイテムの出現条件決定
  • 7/21 アイテム保有量を保存し、各章で使う準備をした。
  • 7/22 アイテム保有量依存でゲーム画面の下にアイテム(数)を表示できるようにした。アイテムを使いきった時、空にする部分はまだできていない。→結局うまくはできなかったが、章の切り替わりでは反映されている。

敵AIモジュール(第一段階)

  • ヘッダファイルはこちら
  • (中間発表前)なかなかに良い動きをしてくれるものが出来た。今後動きが早いやつを作るときは、関数を2回呼び出しとかでいいと思う。
  • 7/1 自転車も加わり賑やかになりました。X座標をランダムに画面の下から突っ込んできます。
  • 7/6 自転車は上からも下からも来るようになりました。グラフィック担当さんに感謝です。かわいい
  • 7/7 自転車に当たり判定がつきました。さらにゴールの際、自転車は車となって道路を横切るようになりました。現状、致命傷レベルの攻撃力を持っています。
  • 7/8 自転車が事故った時に相手の自転車を奪うことができるようになりました!今後強力な武器になる予感…

最終章モジュール(仮版)→正式版

  • 7/15 とりあえず第一章をほぼそのまま移植しました。
  • その後、非正規ルートでのみ背景がうまく表示され、正規ルートでは背景がごちゃごちゃになるバグを修正しました!!!!!!! 原因は第二章で動かした背景のX座標を第3章向けに直していないことでした…
  • 7/19 何故か途中でタイマー関連のバグが発生。敵が動かなくなり、スタミナ消費が激しくなる…→7/21修正完了、以後正式版とします。
  • 7/29 スクロールの最後にボスが登場するようにしました。詳細はボス制御モジュールを参照のこと。
  • 8/3 敵の体力がなくなった後、仮エンディングが流れるようにしました。エンディング中はスペースでリザルトまで飛ばせます。一応、何回も直しそうなので別のソースコードに初期化をさせるようにしています。時間短縮のため、ほとんど第三章用ソースに依存しています。 どうでも機能としてアイテムの数、脱走距離を引き継いで新しいゲームを始められるようにしています。

攻撃表示モジュール(attack.c)7/22〜

  • 7/22 自転車(aキー)(と何か(sキー))を飛ばせるようになった。main.h内のdefineにて画面に一度に表示できる数を指定できる。指定された数を超えると古いものから上書きしていく。自転車なのでとりあえず直線で動く。画面外で描画し続けると流石に処理が重くなるので画面外に出た際は表示をやめるようフラグ制御した。
  • タイプの指定によって飛ぶもの、羊の動きに合わせるもの、とどまるものなど自由に変更できそう。これからの仕様変更に柔軟に対応できるよう心がけてみた。(あまり詳しく話し合っていないため)
  • 弾の表現については2014年グループ12のものを参考に、自分たちの班の動作に合わせて弾の動き、タイマー依存への変更、描画方法、構造体の中身を調整した。
  • 表示のため、表示モジュール(view.c/view.h)を少しいじりました。ごめんなさい。多分競合とかは大丈夫だと思います。
  • 7/26 羊の周りにバリアを張る(dキー)、羊の近接攻撃(fキー)を入れてみました。構造体にスプライト高さと幅を追加、継続時間(ものにぶつかったら消えるとか、時間が立ったら消えるとか)とアイテムが出現した時の状況を入れる部分(羊の体力とか)を実装してみました。
  • 7/29 敵の攻撃にも使えるようになりました。羊と違い、こちらは攻撃のタイプが負の数となっています。当たり判定に役立てていきたいです。
  • 8/2 攻撃エフェクトに当たり判定つけてみました。
  • 8/3 今まで置物として使ってきたものを、爆発物として仕掛けられるようにしました。

ボス制御モジュール(boss.c)7/29〜

  • 7/29 ボスを表示し、移動させ、攻撃できるようになった(飛び道具だけ実装)
  • 最初は秩序なく撃っていたが最終的には狙って撃てるようになった。常に羊の方を向くように努力しています。
  • 動き方は羊を追いかける以外にも指定できるようにしておいたので、うまく利用していきたいです。時間ないからできないかもしれない

(キャラクター表示モジュール(中間発表用))

  • main.cに書きすぎた。非常にごちゃごちゃしてきたので分離作業が必要だと思う。→大変だった…

正式版キャラ表示モジュール

  • ヘッダファイルはこちら
  • (6/21)分離しても動くようになった。
  • 6月某日 一回の関数呼び出しで複数のキャラクターを表示できるようにした。関数内の編集で、表示の順番も簡単に変えられるはず。

main.cについて

  • 6/22 main.cを各モジュールへ分離する作業がだいたい終わった。
  • スタミナ表示を羊のスタミナ依存にした。
  • 7/22 手に入れたアイテムを画面の下に表示できるようにした。詳細はアイテムモジュール参照のこと。特性からWindowに近いmain.cに記述したが、いずれitem.cあたりに移動するかも。詳細はアイテムモジュールに記述していきます。

その他

(中間発表用main.c共同開発)

main.c分離作業

第一章の背景をゴールで止めるようにした。

gr06に戻る


最終更新日:2016/08/04 02:33:24