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

gr04::Suzuki

自機座標はx,y,敵座標はex,ey。 自機弾丸座標はbx,by,敵弾丸座標はebx,ebyで拾えます。 ただし敵弾丸座標は正確ではないかもしれません。

  • アニメーション領域作成

myAnimeArea * my_anime_area_new(gint width, gint height, GdkPixmap *bg_pixmap, gint timeout);

  • アニメーション領域削除

void my_anime_area_remove(myAnimeArea *area);

  • スプライト作成

mySprite * my_chara_new(myAnimeArea *area, gchar *path, gint timeout);

mySprite * my_enemy1_new(myAnimeArea *area, gchar *path, gint timeout);

mySprite * my_enemy2_new(myAnimeArea *area, gchar *path, gint timeout);

mySprite * my_object_new(myAnimeArea *area, gchar *path, gint timeout);

mySprite * my_bullet_new(myAnimeArea *area, gchar *path, gint timeout);

mySprite * my_boss_new(myAnimeArea *, gchar *, gint);

mySprite * my_boss_arm_new(myAnimeArea *, gchar *, gint);

mySprite

  • my_bullet_enemy_new(myAnimeArea *area, gchar *file, gint timeout);

mySprite

  • my_bossbullet_enemy_new(myAnimeArea *area, gchar *file, gint timeout);
  • スプライト移動関数

void my_sprite_move(mySprite *sprite);

void my_enemy_move(mySprite *sprite);

void my_bullet_move(mySprite *sprite);

void my_enemybullet_move(mySprite *sprite);

void my_bossbullet_move(mySprite *sprite);

void my_boss_move(mySprite *sprite);

  • スプライト削除

void my_sprite_remove(mySprite *);

void my_object_move(mySprite *sprite);

  • スプライト描写

static void my_sprite_draw(mySprite *sprite);

static void my_anime_area_draw(myAnimeArea *area);

  • 各コールバック関数
    • 自機 static gint cb_sprite_timeout_chara(gpointer data);
    • 敵機 static gint cb_sprite_timeout_enemy(gpointer data);
    • オブジェクト(体力バー) static gint cb_sprite_timeout_object(gpointer data);
    • 自機の弾丸 static gint cb_sprite_timeout_bullet(gpointer data);
    • 敵機の弾丸 static gint cb_sprite_timeout_enemybullet(gpointer data);
    • ボスの弾丸 static gint cb_sprite_timeout_bossbullet(gpointer data);
    • ボスの腕 static gint cb_sprite_timeout_boss_arm(gpointer data);
    • 当たり判定用 static gint cb_chara_touch(gpointer data);
    • ダメージ判定用 static gint cb_enemy_damaged(gpointer data);
  • アニメーション読み込み

static GdkPixbufAnimation* read_anime(mySprite *sprite, char *filename);

  • キーボードコールバック関数
    • 押した時 static gboolean cb_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data);
    • 離した時 static gboolean cb_key_release(GtkWidget *widget, GdkEventKey *event, gpointer user_data);
  • スプライトの更新

static gboolean cb_update_sprite(gpointer data);

  • デリートイベント

static gint cb_delete_event(GtkWidget *widget, GdkEventExpose *event, gpointer data);


最終更新日:2016/07/29 18:43:59