2014 ソフトウェア設計及び演習用の班Wiki
gr03:0129ヘッダ(player_chara.h)
typedef struct{ int x; /* 自機の(現在の)x座標 */ int y; /* 自機の(現在の)y座標 */ int beforex; /* 自機の(1動作前の)x座標 */ int beforey; /* 自機の(1動作前の)y座標 */ int vector; /* 自機の現在の向き(1:左、2:下、3:右、4:上) */ int weapon; /* 自機の現在の武器 (1:ハンドガン、2:マシンガン、3:ショットガン)*/ int status; /* 自機の状態(0:ゲームオーバー、1:標準、2:ノックバック、3:無敵) */ int attack; /* 自機の攻撃状態(0:非攻撃状態、1:攻撃状態) <- 追加しました。*/ int HP; /* 自機の現在のHP */ int maxHP; /* 自機の最大HP(初期値:5) */ double r; /* 自機の接触範囲 */ }player_chara; /* 被ダメ操作 */ /* ダメージ処理とノックバック処理を行う関数 */ void p_e_knockback(int i); /* 敵との接触によるダメージ処理とノックバック処理を行う関数 * 接触判定の部分で呼び出してもらい、どの敵と接触したかをint型で受け取る。 */ void p_b_knockback(int i); /* 弾との接触によるダメージ処理とノックバック処理を行う * 接触判定の部分で呼び出してもらい、どの弾と接触したかをint型で受け取る。 */ /* 無敵時間処理を行う関数 */ gboolean p_nodamage_time(gpointer user_data); /* g_timeout_add(50,(GSourceFunc) p_nodamage_time,NULL)の形で呼び出す。 * playerが一定時間無敵状態になったら、標準状態に戻す。 */ /* キーボード操作 */ /* キーが押された時に呼ばれるコールバック関数 */ gint cb_key_press_event(GtkWidget *widget,GdkEventKey *event,gpointer user_data); /* g_signal_connect(G_OBJECT(window),"key_press_event", * G_CALLBACK(cb_key_press_event),NULL)の形で呼び出す。 * 操作キーが押された時に呼び出され、キーのフラグを立たせる*/ /* キーが離された時に呼ばれるコールバック関数 */ gint cb_key_release_event(GtkWidget *widget,GdkEventKey *event,gpointer user_data); /* g_signal_connect(G_OBJECT(window),"key_release_event", * G_CALLBACK(cb_key_release_event),NULL)の形で呼び出す。 * 操作キーが離された時に呼び出され、キーのフラグを寝かせる*/ /* キーのフラグチェックの関数を一定時間(1/20秒)ごとに呼び出す関数 */ gboolean key_flag_check(gpointer data); /* g_timeout_add(50,(GSourceFunc) key_flag_check,NULL)の形で呼び出す。 * 移動と攻撃について、それぞれのキーが押されているときに処理を行う。 */ /* アイテムに触った際の関数 */ void player_use_item(int item_no); /* 現在のエリア上のどのアイテムと接触したかをint型で受け取る。 * プレイヤーのHPが最大ではないときにHPを増化させる。 */ /* 武器に触った際の関数 */ void p_change_weapon(int wep_no); /* 現在のエリア上のどの武器と接触したかをint型で受け取る。 * プレイヤーの現在の武器と接触した武器の種類が違うときに武器を変化させる。 */ /* エリア移動時操作 */ void player_map_switching(int area_n); /* 次に移動するエリアをint型で受け取る。 * 現在のエリアと次のエリアからデータの変更方法を変える。 */ /* 初期データ操作 */ void default_data_set(void); /* default_data_set()の形で呼び出す。 * playerのデータを初期化する。 */
最終更新日:2015/01/29 18:41:03