龍神録プログラミングの館16章について
Posted: 2010年11月03日(水) 13:52
開発環境はDev-C++4.9.9.2、コンパイラはデフォルトです。
DXライブラリを使わないように龍神録を移植しようとしています。
龍神録プログラミングの館16章の「ミシャグジさま弾幕を作ってみよう」ですが、
19章の「敵の消滅エフェクトを作ってみよう」まで組み込んだ状態で実行すると、
敵が消えた後、弾は出ずに弾の発射音だけ出るようです。
下のソースに変えてみると、改善されました。
管理人さん、もしよろしければ確認をお願いします。
DXライブラリを使わないように龍神録を移植しようとしています。
龍神録プログラミングの館16章の「ミシャグジさま弾幕を作ってみよう」ですが、
19章の「敵の消滅エフェクトを作ってみよう」まで組み込んだ状態で実行すると、
敵が消えた後、弾は出ずに弾の発射音だけ出るようです。
下のソースに変えてみると、改善されました。
管理人さん、もしよろしければ確認をお願いします。
//ミシャグジさま void shot_bullet_H008(int n){ int t=shot[n].cnt; int k; //if(t>=0 && t<1200 && t%90==0){ if(t>=0 && t<1200 && t%90==0 && shot[n].flag!=2){ double angle=rang(PI); for(int j=0;j<2;j++){//途中から2分裂する分 for(int i=0;i<60;i++){//一度に60個 //if(shot[n].flag!=2 && (k=shot_search(n))!=-1){ if((k=shot_search(n))!=-1){ shot[n].bullet[k].knd =8;//8番の弾 shot[n].bullet[k].angle =angle+PI2/60*i;//円形60個 shot[n].bullet[k].flag =1; shot[n].bullet[k].x =enemy[shot[n].num].x; shot[n].bullet[k].y =enemy[shot[n].num].y; shot[n].bullet[k].col =4;//4番の色 shot[n].bullet[k].cnt =0; shot[n].bullet[k].state =j;//ステータス。0か1かで回転がかわる shot[n].bullet[k].spd =2; } } } se_flag[0]=1;//発射音鳴らす } for(int i=0;i<SHOT_BULLET_MAX;i++){//全弾分 if(shot[n].bullet.flag>0){//登録されている弾があれば int state=shot[n].bullet.state; int cnt=shot[n].bullet.cnt; if(30<cnt && cnt<120){//30~120カウントなら shot[n].bullet.spd-=1.2/90.0;//90カウントかけて1.2減らす shot[n].bullet.angle+=(PI/2)/90.0*(state?-1:1);//90カウントかけて90°傾ける } } } }