!!!担当モジュール
*攻撃
**攻撃モーション
**相手のHPを削る。(キャラクターの構造体の中の「HP」の値を減少させる)
**攻撃の間隔(時間で管理)
**射程内に複数の敵がいた場合にどのキャラを攻撃するかの判定
(キャラクターの構造体の中に攻撃優先度の値が入ったメンバを用意)
**射程内に敵がいなくなったら移動
*倒れる
**倒れるモーション(orグラフィックの消滅)
**HPが0になる→存在判定をTURE→FALSEへ
**倒れたのが敵のとき、キャラを出せるコストを増やす
**FALSEの時
グラフィックが消える、移動、攻撃をしなくなる。
移動、攻撃時に常に自身の存在判定を確認する関数が必要
!!!活動記録
*5/22
**キャラクターの構造体
typedef struct{
int mob; //キャラの種類
int enemy; //敵or味方
int hp; //HP
int cost; //コスト
int atk; //攻撃力
int atk_s; //攻撃間隔(頻度)
int atk_p; //攻撃優先度
int range; //射程
int spd; //移動速度
int ex; //存在判定
} MOB;
*5/29
**キャラクター構造体のメンバに現在の座標(doublr coor)を追加。
**キャラクターの構造体
typedef struct{
int mob; //キャラの番号
int enemy; //敵or味方の判別
double coor; //現在位置
int hp; //体力
int cost; //召喚コスト
int atk; //攻撃力
int atk_s; //攻撃間隔
int atk_p; //被攻撃優先度
int range; //射程
int spd; //移動速度
int ex; //存在判定
} MOB;
**攻撃に関する関数のプロトタイプを作成
***与えられた範囲内にキャラクターがいるかどうかの判別
***キャラクターの敵or味方の判別
***指定された時間間隔で行動をする
***敵キャラクターへの攻撃
***倒されたときのキャラクターの消滅
*6/5
**繰り返し(時間間隔で)攻撃するモジュールを作成
これで最低限の攻撃モジュールのプロトタイプは完成。
担当分が思ったより早く終わったので,キャラクター登場のモジュール作成に取り掛かります。
*6/12
**中間発表が終わりました。課題などが改めて確認できたのでこれからも引き続き頑張る。
*6/19
**キャラクターのステータスなどのゲームバランスを(大まかに)決定。
*6/26
**ヘッダファイル、モジュールの見直しをした。後に使うのに苦労しそうな関数があるかも...
*7/3
**移動(横田担当分)との返り値やそれに対応する動作を割り当てた。
***int find(自分,敵[i]):自分の射程内に敵がいるかみつける。
返り値:0 敵なし。キャラの移動を継続。
1 敵あり。キャラの動きを止めて攻撃を開始する。
*** int attack(自分、敵):相手に攻撃をする。
返り値:0 攻撃を継続。
1 相手が倒れる。攻撃を中断し、再び移動開始。
*7/10
**それぞれの担当分のモジュールの統合を開始した。
*7/17
**使うかどうかはわからないが役に立ちそうな関数を作成。
[[戻る|15::gr05]]