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

24::gr04::モジュール分け

戻る

目次

0. このページについて

0.1. ページの概要

各モジュールの役割について整理する。
それぞれが担う"ものと操作"については ものと操作 のページに記載した。

0.2. 全体の流れ

プログラム全体の流れは、概ね下記のようになる。
entire.png

1. ゲームの管理・進行

1.1. htmlファイル : 佐々木

  • ライブラリの読み込み
  • 各スクリプトの読み込み

1.2. setup.js : 佐々木, 大久保

  • セーブに係るグローバル変数
gameMode 場面の遷移先を格納する
"行き先" 選択された行き先を格納する
"経過日数" ゲーム開始から経過した日数を格納する
"曜日" 曜日を格納する
"対象から主人公への好感度" ---
"対象から主人公への不信感" ---
"対象からライバル1への好感度" "対象とライバル1に会う"の発生回数に準ずる
"対象からライバル2への好感度" "対象とライバル2に会う"の発生回数に準ずる
"対象からライバル3への好感度" "対象とライバル3に会う"の発生回数に準ずる
"ライバル1から主人公への不信感" ---
"ライバル2から主人公への不信感" ---
"ライバル3から主人公への不信感" ---
  • 不可視
    • グローバル変数の初期化
    • スプライトの作成

1.3. load.js : 全員

  • 不可視
    • 画像のプレロード

1.4. global.js(進行管理) : 佐々木, 大久保

  • 不可視
    • マウスを描画
    • 変数gameModeの値に応じた関数を呼び出す
      draw.png

2. 夜行動

2.1. nighthome.js : 大久保

  • 可視
    • スマホをフレームインさせる
    • スマホのフレームを描画する
    • 各種アプリを描画する
    • 経過日数・曜日を描画する
    • 注意書きを描画する
  • 不可視
    • マウスのクリックを得る
    • 行き先が入力されたかを判断する
    • 変数"曜日"の値を適切な曜日に変える
    • 変数gameModeの値を"schedule"に変える
    • 変数gameModeの値を"cafeHP"に変える
    • 変数gameModeの値を"sleep"に変える
    • 変数gameModeの値を"note"に変える
    • 変数gameModeの値を"plan"に変える
    • 変数gameModeの値を"save"に変える
    • 変数gameModeの値を"SNS"に変える
    • 変数gameModeの値を"title"に変える

2.2. schedule : LU, 佐々木

  • 可視
    • マップとピンを描画する
    • 場所名の吹き出しを描画する
  • 不可視
    • マウスの位置を得る
    • マウスのクリックを得る
    • 変数"行き先"の値を書き換える
    • 変数gameModeの値を"nighthome"に変える
      schedule2.png

2.3. cafeHP.js : 高橋, 大久保

  • 可視
    • ホームページの画像を描画する
    • ホームページの画像を切り替える
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nghthome"に変える

2.4. sleep.js : 佐々木

  • 可視
    • 行き先に応じたセリフを描画する
  • 不可視
    • 変数"経過日数"の値を1増やす
    • 変数"経過日数"からゲームオーバーかを判断する
    • 変数"行き先"から適切なgameModeを判断する
    • 変数gameModeの値をいずれかに変える :
      • カフェ
      • 公園
      • 大学
      • ストライプ大学
      • 空港
      • 警察署
        sleep.png

2.5. note.js : 佐々木

  • 可視
    • 好感度やライバルとあった回数に応じた画像を描画
    • クリックに応じて, 画像を切り替える
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

2.6. plan.js : 佐々木

  • 可視
    • クリックに応じて, 画像を切り替える
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

2.7. save.js : 大久保

  • 可視
    • セーブデータのスロットを描画
    • クリックに応じて, セーブする
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

2.8. SNS.js : LU, 佐々木, 大久保

  • 可視
    • 日付に応じた画像を描画
    • クリックに応じて, 画像を切り替える
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える
      SNS.png

3. カフェ(昼行動)

3.1. cafe.js(カフェ-管理) : 佐々木, 長谷川

  • 可視
    • キャラクターを描画する
    • セリフを描画する
  • 不可視
    • 変数"曜日"から適切な遷移先を判断する
    • 規定回数以上連続して"対象のみイベント"にあたった場合, "doubt"を発生させる
    • "カフェ-対象のみ"のうち, 好感度や生成された乱数の値に応じたものを発生させる
    • "カフェ-対象とライバル"のうち, 好感度や生成された乱数の値に応じたものを発生させる
    • "カフェ-誰もいない"のうち, 好感度や生成された乱数の値に応じたものを発生させる

3.2. c_good.js(カフェ-対象のみ) : 佐々木

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
    • クリックに応じて, 選択肢を描画する
  • 不可視
    • マウスのクリックを得る
    • 変数"対象から主人公への好感度"を書き換える
    • 変数"対象から主人公への不信感"を書き換える
    • 変数gameModeの値を"nighthome"に変える

3.3. c_bad.js(カフェ-対象とライバル) : 高橋, 長谷川, 佐々木

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
  • 不可視
    • マウスのクリックを得る
    • 変数"対象からライバル1への好感度"を書き換える
    • 変数"ライバル1から主人公への不信感"を書き換える
    • 変数gameModeの値を"nighthome"に変える

3.4. c_nothing.js(カフェ-誰もいない) : 高橋, 長谷川

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

4. 公園(昼行動)

4.1. park.js(公園-管理) : 佐々木

  • "カフェ"と同様
    • ただし、"ライバル1"を"ライバル2"に置き換える
  • 実装はpark.js
    park2.png

4.2. p_good.js(公園-対象のみ) : 長谷川, 佐々木

  • "カフェ-対象のみ"と同様
    • ただし、"ライバル1"を"ライバル2"に置き換える

4.3. p_bad.js(公園-対象とライバル) : 伊藤, 佐々木

  • "カフェ-対象とライバル"と同様
    • ただし、"ライバル1"を"ライバル2"に置き換える
  • 実装はp_bad.js

4.4. p_nothing(公園-誰もいない) : 高橋, 伊藤

  • "カフェ-誰もいない"と同様
    • ただし、"ライバル1"を"ライバル2"に置き換える

5. 大学(昼行動)

5.1. university.js(大学-管理) : 佐々木

  • "カフェ"と同様
    • ただし、"ライバル1"を"ライバル3"に置き換える

5.2. u_good.js(大学-対象のみ) : 佐々木

  • "カフェ-対象のみ"と同様
    • ただし、"ライバル1"を"ライバル3"に置き換える

5.3. u_bad.js(大学-対象とライバル) : 渋谷, 佐々木

  • "カフェ-対象とライバル"と同様
    • ただし、"ライバル1"を"ライバル3"に置き換える

5.4. u_nothing.js(大学-誰もいない) : 渋谷, 高橋

  • "カフェ-誰もいない"と同様
    • ただし、"ライバル1"を"ライバル3"に置き換える

6. 上記以外の昼イベント

6.1. doubt.js : 佐々木

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
  • 不可視
    • マウスのクリックを得る
    • 対象から主人公への不信感を上げる
    • 変数gameModeの値を"nighthome"に変える

6.2. dummy.js : 長谷川

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

6.3. komaba_main.js(駒場くん管理) : 佐々木

  • 不可視
    • "駒場くん"とあった回数に応じたイベントを発生させる
    • 対象から各ライバルへの好感度に応じたイベントを発生させる

6.4. komaba.js(駒場くんイベント) : 高橋

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を"nighthome"に変える

7. その他

7.1. title.js : 佐々木, 大久保

  • 可視
    • タイトル画面を描画する
    • オープニングを再生する
  • 不可視
    • タイトル画面でマウスのクリックを得る
    • クリックに応じてセーブデータをロードする
    • 変数gameModeの値を'opening'に変える
      title.png

7.2. ending.js : 佐々木

  • 可視
    • クリックに応じて, キャラクターを描画する
    • クリックに応じて, セリフを描画する
    • 変数"エンディング番号"に応じたエンディングを再生する
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を'title'に変える

7.3. opening.js : 佐々木

  • 可視
    • クリックに応じて, 導入のセリフ・画像を描画する
  • 不可視
    • マウスのクリックを得る
    • 変数gameModeの値を'plan'に変える

7.4. serif.js : 高橋, 佐々木

  • 可視
    • セリフ枠とセリフを表示する
      serif.png

7.5. choise.js : 佐々木

  • 可視
    • 選択肢を表示する
  • 不可視
    • 変数"選ばれた選択肢"の値を書き換える


最終更新日:2024/08/08 20:55:50