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

19::gr03ゲーム画面仕様書

BackGround

  • サイズは縦横750×500 pixel このサイズを基本サイズとする
  • 常に表示

MyCharacter

  • ゲーム開始時、画面中央下に配置。 フレームごとにインターバルカウントを+1
  • フレーム毎に十字キー入力を感知 押されたキー方向に自機スピード分移動
    ゲーム画面外に出てしまう場合、押したキー方向とは逆方向にスピード分移動して相殺
  • フレーム毎にFキー入力を感知 {押されたand(インターバル<インターバルカウント)}ならMyBulletを呼び出しMycharのx座標y座標を引数にして渡す その後インターバルカウントを0で初期化。
  • EvilBulletとMyChar間にintersect関数で当たり判定を設け 当たった場合、EvilBulletの攻撃力を引数にしてMyHPを呼び出し

MyHP:引数(x)

  • 横幅100pixelをscaleをつかって収まるようにゲーム画面下部に配置(縦幅は適当に)
  • わかりやすいように数字でも表示(レイアウトは数字とバーが横並びする感じに)
  • フレームごとに引数xを受け取ったらバーと数字をMh(=100-x)に変更
  • Mh=0になったらリザルトモジュール呼び出し(引数はMh)

MyBullet:引数(x,y)

  • 初期位置は受け取った引数のxy座標
  • フレーム毎に画面上部方向に8pixel移動
  • MyBulletとEvilChar間にwithin関数を設けて当たった場合、MyBulletスプライトを消去(弾が当たったように見せるため)。
    その後MyBulletの攻撃力を引数にしてEvilHPを呼び出し

EvilCharacter

  • ゲーム開始時、画面中央上に配置

EvilHP:引数(x)

  • 横幅1000pixelをscaleをつかって収まるようにゲーム画面下部に配置(要するにHP1000のHPバー 縦幅は適当に)
  • わかりやすいように数字でも表示(レイアウトは数字とバーが横並びする感じに)
  • フレームごとに引数xを受け取ったらバーと数字をEh(=1000-x)に変更
  • Eh=0になったらリザルトモジュール呼び出し(引数Mh)

EvilBullet:引数(x,y)

  • 初期位置は受け取った引数のxy座標

Item

  • 各アイテムをクラス化して空のクラス内で乱数を用いてアイテムを降らせる
  • フレーム毎にインターバルカウント+1
  • インターバル<インターバルカウント なら
    出現させるアイテムを乱数→switchで分岐 出現するX座標を乱数→分岐先で引数にXを渡す
    その後インターバルカウントを0で初期化
    • 各アイテムクラス(引数:x)
      • 受け取ったx座標からフレームごとに画面した方向に3pixel移動
      • MyChar間にwithin関数を設けて(各々調整)当たった場合、当たったアイテム画像を消去
        その後消えたアイテムに対応するパラメータ変動を行う
        • エナジードリンク:speed+0.5
        • マンガ:speed-1.0
        • 過去問:power+1.0
        • ゲーム:power-1.0
      • 画面外に出たら消去


最終更新日:2019/07/31 14:09:46