!!!enemy.h 8< #include #include #include #pragma once #define MAXENEMY 10; /*同エリアに存在できる最大敵数*/ #define SYCOPE_MAX 5; /*最大気絶時間*/ typedef struct { int species; /*敵種*/ int direction; /*方向*/ double x; /*x座標*/ double y; /*y座標*/ double beforeX; /*前回のx座標*/ double beforeY; /*前回のy座標*/ int status; /*状態(0−>回収済み、1−>正常 2−>気絶)*/ struct timeval timer /*状態タイマ*/ int hp; /*HP*/ int r; /*接触範囲(半径)*/ int len; /*配列の長さ*/ }enemy; /*エリアを移動した時に敵情報を設定する関数。 引数は次のエリア番号、前のエリア番号、敵配列。*/ void enemyEreaChange(int newErea, int oldErea, enemy enemyData[]); /*ゲーム開始時に敵情報を設定する関数。 引数は敵配列*/ void enemyFirstSet(enemy enemyData[]); /*状態タイマに応じて状態変数を書き換える関数。 引数は敵配列。一定時間ごとに呼び出して欲しい。*/ void enemyTimer(enemy enemyData[]); /*気絶した時(HP=0)になっときに状態タイマをスタートさせる関数。 引数は気絶した敵DATA。*/ void enemyTimerStart(enemy *enemyData); /*回収された時に状態変数を書き換える関数。 引数は回収された敵DATA。*/ void collectEnemy(enemy *enemyData); /*敵のHPを−1する。 引数は敵DATA、返り値は残りHP*/ int ememyHpDamage(enemy *enemyData); /*敵の動きを決める関数。 引数はエリア番号、敵配列、プレイヤ情報。一定時間ごとに呼び出して欲しい。*/ void enemyAI(int area, enemy enemyData[], player_chara player); >8