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

16::gr12::佐藤駿

自機のプロトタイプ

#pragma once
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixbuf.h>


typedef struct{
  GdkPixbuf *image;   //自機の画像
  double x;           //x座標
  double y;           //y座標
  double width;       //自機の幅(x方向)
  double height;      //自機の高さ(y方向)
  int hp;             //体力
  double speed;       //速度
}Ziki;

void ziki_new(int difficulty);   /* 難易度ごとに自機の初期設定
				    とりあえず1でeasy、2でnormal、
                                    3でhardに設定しておく */

void ziki_pos_new(int key);      /* 自機の座標更新
                                    1:left,2:right,3:up,4:down*/

void ziki_draw(cairo_t *cr);      // 自機の描画

void ziki_hit(double e_x, double e_y,
	      double e_width,
	      double e_height); /* 自機の当たり判定
                   引数は敵の座標と幅と高さ*/

void ziki_speed_change(double s); //自機のスピードを引数の値に変更

double ziki_x();                 // 自機の中央のx座標を返す

double ziki_y();                 // 自機の中央のy座標を返す

double ziki_width();             // 自機の横幅を返す

double ziki_height();            // 自機の高さを返す

int ziki_hp();                   // 自機の体力を返す

キー入力のプロトタイプ

#pragma once
#include <gtk/gtk.h>

void flag_delete();                     //spaceキー(中断)用の処理

void key();                             //キー入力処理、他の関数を呼び出す

void key_gameover();                    //ゲームオーバー時のキー処理

void cb_key_press(GtkWidget *widget,
		  GdkEventKey *event,
		  gpointer user_data);  //キー入力のコールバック関数

void cb_key_release(GtkWidget *widget,
		    GdkEventKey *event,
		    gpointer user_data);//キーを離した時のコールバック関数

スコアのプロトタイプ

#pragma once
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixbuf.h>


void score_init(int difficulty); /*引数で難易度を決定し、スコアを初期化する
				   とりあえずとりあえず1でeasy、2でnormal、
				   3でhardに設定しておく*/

void score_s();    //敵(小)のスコア追加

void score_m();    //敵(中)のスコア追加

void score_l();    //敵(大)のスコア追加

void score_save(); /*スコアのセーブ
		     ゲームオーバー時に呼び出す*/

void score_draw(cairo_t *cr);//ゲーム中でのスコア表示

void score_rank_draw(cairo_t *cr); //ランキング表示

int score_get();  //現時点のスコアを返す

/*以下はscore.c内でのみ使う予定の関数*/

void score_rank_read(); //ランキングの読み込み

void make_new_score_file(); //ファイルの新規作成


最終更新日:2016/08/09 11:47:41