現在、妖夢の通常弾幕を説明してる15章を拝見させて頂いてます。
そこで永夜抄のように弾の発射位置(発射源)に魔法陣を描画したいのですが、どのようにすればよいでしょうか?
この場合、弾が発射されるタイミングだけ描画されるのではなく常に表示されるようにしたいです。
自分の方でも考えてみたのですが、上手くいきませんでした。
shotH.cpp(値は多少変えてます)
void shot_bullet_H007(int n){
int t=shot[n].cnt;
int k;
if(t>=0 && t<=500 && t%15==0){
for(int i=0;i<10;i++){
if(shot[n].flag!=2 && (k=shot_search(n))!=-1){
shot[n].bullet[k].knd =8;
shot[n].bullet[k].angle =PI2/20*i;
shot[n].bullet[k].flag =1;
shot[n].bullet[k].x =enemy[shot[n].num].x+cos(PI/2+PI/100*t)*100;
shot[n].bullet[k].y =enemy[shot[n].num].y+sin(PI/2+PI/200*t)*100;
shot[n].bullet[k].col =2;
shot[n].bullet[k].cnt =0;
shot[n].bullet[k].spd =1.2;
se_flag[0]=1;
DrawRotaGraph(shot[n].bullet[k].x,shot[n].bullet[k].y,1.0f,0.0,shotE,TRUE); //shotEは魔法陣の画像が入ってるハンドル
}
}
for(int i=0;i<10;i++){
if(shot[n].flag!=2 && (k=shot_search(n))!=-1){
shot[n].bullet[k].knd =8;
shot[n].bullet[k].angle =PI2/20*i;
shot[n].bullet[k].flag =1;
shot[n].bullet[k].x =enemy[shot[n].num].x+cos(PI/2-PI/100*t)*100;
shot[n].bullet[k].y =enemy[shot[n].num].y+sin(PI/2-PI/200*t)*100;
shot[n].bullet[k].col =4;
shot[n].bullet[k].cnt =0;
shot[n].bullet[k].spd =1.2;
se_flag[0]=1;
}
}
}
たとえ描画されたとしてもt%15となっているので常に表示されないとは思いますが・・・
またこれだと魔法陣も弾の軌道と同じように飛んでいきそうです。
自分一人では解決できそうになかったので質問させていただきました。よろしくお願いします。