ページ 11

area.bgm.flag==4の場合を教えてください

Posted: 2009年9月09日(水) 15:10
by しっぽ
48章にて、ボスを倒したらボスのBGMを止める処理を色々試してみたのですが
うまく行きません・・どうしたら止まりますか?

void bgm_main(){
        if(area.bgm.flag==0){//最初に読み込む
                load_bgm(0);
                SetLoopPosSoundMem( area.bgm.loop_pos[0], area.bgm.handle );//ループ位置セット
                area.bgm.flag=1;
        }
        if(area.bgm.flag==1){//種類に応じて再生をはじめる
                switch(area.bgm.knd[0]){
                        case 0://再生種類0なら
                                if(stage_count==60){//はじまって60カウント後に再生
                                        PlaySoundMem(area.bgm.handle,DX_PLAYTYPE_LOOP);
                                        area.bgm.flag=2;
                                }
                                break;
                        default:
                                break;
                }
        }
        if(area.bgm.flag==2){//ボス出現時に読み込む
                if(stage_count==boss.appear_count[1]){//ラスボスが現れたら読み込む
                        StopSoundMem(area.bgm.handle);
                        delete_bgm();
                        load_bgm(1);
                        SetLoopPosSoundMem( area.bgm.loop_pos[1], area.bgm.handle );//ループ位置セット
                        area.bgm.flag=3;
                }
        }
        if(area.bgm.flag==3){
                switch(area.bgm.knd[0]){
                        case 0://再生種類0なら
                                if(stage_count==boss.appear_count[1]){//ラスボスが現れたら再生
                                        PlaySoundMem(area.bgm.handle,DX_PLAYTYPE_LOOP);
                                        area.bgm.flag=4;
                                }
                                break;
                        default:
                                break;
                }
        }
       if(area.bgm.flag==4){

        }
}

Re:area.bgm.flag==4の場合を教えてください

Posted: 2009年9月09日(水) 20:44
by さめ
area.bgm.flag==4この部分ってことでしょうか?

Re:area.bgm.flag==4の場合を教えてください

Posted: 2009年9月09日(水) 20:50
by Dixq (管理人)
==4
のとこにとめる処理を書いたらいいのではないでしょうか・・?

今再生中かチェックし、再生中ならとめればいいと思います。

再生中かどうかチェックする関数、再生をとめる関数についてはこちらをご覧下さい。
http://homepage2.nifty.com/natupaji/DxL ... .html#R8N6

Re:area.bgm.flag==4の場合を教えてください

Posted: 2009年9月11日(金) 02:17
by しっぽ
ちょっとお聞きしたいのですが、
ボス(中ボス)が死んだときのフラグみたいなものって
龍神録ではどの関数がそれに該当するのでしょうか?