2015 ソフトウェア設計及び演習用の班Wiki
gr06::オブジェクトモジュール
オブジェクト担当 マイタ です。画像アップロードありがとうございました。
enemy.h
[void enemy_move(mySprite *sprite)]が入っています。mySprite型構造体内にある変数(sprite->mode)に数値を入れてこの関数に渡せば、敵のタイプを判断して以下の処理を行います。
- 敵の座標の更新
- 敵と主人公、及び武器(ファイアボール)の接触の判断と、それに伴うダメージ・効果音の処理
- 特定の条件を満たした時に敵を消滅させる処理
「敵とアイテムの接触の判断」と「敵とオブジェクトの接触の判断」は実装できませんでした。
enemy(初期段階でのイメージです。実装されていないものやイメージとは異なる挙動のものがあります)
敵キャラ
-
No0...クリボー
- 速度一定で地面を進む。
- 崖でも構わず直進し、落下する。
- 壁にあたったら反転する。
-
No1...トゲゾー
- クリボーと同じ。
- 踏みつけられない。踏むとダメージ。
-
No2...ノコノコ
- クリボーと同じ。(余裕があれば崖で向き転換するかもしれない)
- 撃墜すると甲羅を落とす。
-
No3...パタパタ
- 跳ねながら左右に移動する。
- 崖には落ちる。
- 一度踏むとそのまま絶命する。
-
No4...ハンマーブロス
- 常時左右に動き、ランダムでジャンプする。
- 適宜ハンマーを投げつけてくる。
- 崖から落ちないような行動範囲にしたい。
- No5...ボス… 考察中
object.h
[void object_move(mySprite *sprite)]が入っています。mySprite型構造体内にある変数(sprite->mode)に数値を入れてこの関数に渡せば、オブジェクトのタイプを判断して以下の処理を行います。
- 主人公との接触の判断と、それに伴うセーブデータの情報更新
- 通過時の効果音の処理
「敵とオブジェクトの接触の判断」と「オブジェクトとアイテムの接触の判断」は実装できませんでした。
item.c
[void item_move(mySprite *sprite)]が入っています。mySprite型構造体内にある変数(sprite->mode)に数値を入れてこの関数に渡せば、アイテムのタイプを判断して以下の処理を行います。
- アイテムの座標更新
- アイテムと主人公の接触の判断と、それに伴うパワーアップやダメージ・効果音の処理
- 特定の条件を満たした時にアイテムを消滅させる処理
「敵とアイテムの接触の判断」と「オブジェクトとアイテムの接触の判断」は実装できませんでした。
item(初期段階でのイメージです。実装されていないものやイメージとは異なる挙動のものがあります)
アイテム
-
No0...きのこ
- クリボーと同じ。
-
No1...フラワー
- 不動。
-
No2...スター
- パタパタと同様の軌道で跳ねまわる。
-
No3...甲羅
- 主人公が触れるまで動かない。
- 主人公と接触したら地面に沿って滑る。
- 壁、またはブロックに接触した場合は速度そのままで跳ね返る。
- 主人公が上からぶつかった場合は静止する。
-
No4...ブロック
- 不動
- No5...はてなブロック
-
No6...ハンマー
-
隠しブロック
- 見えない「はてなブロック」。
- 進路妨害も兼ねる。
-
コイン(おそらく使わないため番号未設定)
- 空中に浮いている。
- 動くものと動かないもの。
最終更新日:2015/08/10 01:32:51