喰らいボムのエフェクト表示について
Posted: 2015年1月06日(火) 23:23
龍神録23章の「喰らいボムを作ってみよう」で疑問な部分があったので質問させていただきます。
内容になりますが、graph.cpp内のgraph_main関数内にある
graph_effect(4);//喰らいボムのエフェクト
というのはgraph_effect(int knd)関数のint kndに4を代入するということでよろしいのでしょうか。
C言語は学校の授業等で9か月くらいやって、現在はファイル入出力あたりを行っています。DXライブラリは半年くらいで、時間があるときにおこなっています。C言語やDXライブラリ等、初心者のため分からないことが多いですが、少しずつ理解していこうとおもっています。
ソースコードなど読みづらくなってしまい大変恐縮ですが、どなたか解説よろしくお願いいたします。
内容になりますが、graph.cpp内のgraph_main関数内にある
graph_effect(4);//喰らいボムのエフェクト
というのはgraph_effect(int knd)関数のint kndに4を代入するということでよろしいのでしょうか。
C言語は学校の授業等で9か月くらいやって、現在はファイル入出力あたりを行っています。DXライブラリは半年くらいで、時間があるときにおこなっています。C言語やDXライブラリ等、初心者のため分からないことが多いですが、少しずつ理解していこうとおもっています。
ソースコードなど読みづらくなってしまい大変恐縮ですが、どなたか解説よろしくお願いいたします。
void graph_effect(int knd){
for (int i = 0; i < EFFECT_MAX; i++){
if (effect[i].flag>0 && effect[i].knd==knd){
if (effect[i].eff == 1)//エフェクトが光エフェクトなら
SetDrawBlendMode(DX_BLENDMODE_ADD, effect[i].brt);//拡大、縮小用コマンド
if (effect[i].eff == 2)//エフェクトがαエフェクトなら
SetDrawBlendMode(DX_BLENDMODE_ALPHA, effect[i].brt);
DrawRotaGraphF(effect[i].x+FIELD_X+dn.x,effect[i].y+FIELD_Y+dn.y,effect[i].r,effect[i].ang,effect[i].img,TRUE);
if (effect[i].eff == 1 || effect[i].eff ==2)
SetDrawBlendMode(DX_BLENDMODE_NOBLEND, 0);
}
}
}
void graph_main() {
if (bright_set.brt != 255)SetDrawBright(bright_set.brt, bright_set.brt, bright_set.brt);
graph_back_main();//背景描画メイン
graph_effect(0);//敵が死ぬエフェクト graph_effect()関数を入れないとエフェクトが動かない
if (bright_set.brt != 255)SetDrawBright(255, 255, 255);//setdrawbright(だんだん明るくor暗くする,RGBになっている)
graph_effect(4);//喰らいボムのエフェクト
if (bright_set.brt != 255)SetDrawBright(bright_set.brt,bright_set.brt,bright_set.brt);
graph_enemy();//敵の描画
graph_cshot();//自機ショットの描画
if (bright_set.brt != 255)SetDrawBright(255, 255, 255);
graph_ch();//自機の描画
if (bright_set.brt != 255)SetDrawBright(bright_set.brt, bright_set.brt, bright_set.brt);
graph_bullet();//弾の描画
if (bright_set.brt != 255)SetDrawBright(255, 255, 255);
graph_effect(1);//ボムのエフェクト
graph_effect(2);//ボム線のエフェクト
graph_effect(3);//ボムキャラのエフェクト
graph_board();//ボードの描画
}