音楽が流れない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
yux

音楽が流れない

#1

投稿記事 by yux » 15年前

こんにちは、Xです。
今回RPGを頑張って作っているところですが、PlaySoundMem関数を使って、再生しようとしたところ、
PlaySoundMemを先にすると画像が表示されなく、
DrawGraphを先にすると音楽が流れません。
どうすればいいでしょうか? 何かあれば教えてくださいm(__)m

OS:WindowsXP HomeEdition

Visual C++ 2008 ExpressEdition

↓-------ソースです-------↓

#include "DxLib.h"
#include "../head/struct.h"
#include "../head/function.h"
#include "../head/define.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){


int ben[16];
char Key[256];
ch_t ch;
back_t bc;
music_t ms;

bc.x = 0;
bc.y = 0;


ch.x = 320;
ch.y = 320;
ch.walking_flag = 0;
ch.muki = 3;



if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1;


SetDrawScreen( DX_SCREEN_BACK ) ;
LoadDivGraph("dat/img/ben.png",16,4,4,32,32,ben);

ms.music = LoadSoundMem("dat/bgm/field_01.mp3");
bc.img = LoadGraph("dat/img/bk_ground.png");

while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){




if(ch.x%32==0 && ch.y%32==0){
ch.walking_flag=1;
if ( Key[ KEY_INPUT_UP ] == 1 )
ch.muki=0;
else if( Key[ KEY_INPUT_LEFT ] == 1 )
ch.muki=1;
else if( Key[ KEY_INPUT_DOWN ] == 1 )
ch.muki=2;
else if( Key[ KEY_INPUT_RIGHT] == 1 )
ch.muki=3;
else
ch.walking_flag=0;

if (ch.walking_flag == 1)
if(can_or_cannot(ch.x,ch.y,ch.muki)==1)//行き先が歩けないなら
ch.walking_flag=0; //歩かないフラグを立てる。

}
if(ch.walking_flag==1){
if (ch.muki==0) {
ch.y--;
bc.y++;
}
else if(ch.muki==1) {
ch.x--;
bc.x++;
}
else if(ch.muki==2) {
ch.y++;
bc.y--;
}
else if(ch.muki==3) {
ch.x++;
bc.x--;
}
}

ch.img = ben[(ch.x % 32 + ch.y % 32)/8 + ch.muki * 4];


PlaySoundMem(ms.music,DX_PLAYTYPE_BACK);

DrawGraph( bc.x , bc.y ,bc.img ,FALSE);
DrawGraph( GetCenterX, GetCenterY, ch.img,TRUE);


ScreenFlip();

}

DxLib_End();
return 0;
} 画像

Justy

Re:音楽が流れない

#2

投稿記事 by Justy » 15年前

 PlaySoundMemを毎ループ呼び出さないで、再生を開始したいそのタイミングのみ呼び出すよう修正してみて下さい。

yux

Re:音楽が流れない

#3

投稿記事 by yux » 15年前

Justyさんの言われたとおりに、毎ループ呼び出さないようにしてみると、
うまく画像も音楽も流せました^^
Justyさん、ありがとうございました!!

夕暮

Re:音楽が流れない

#4

投稿記事 by 夕暮 » 15年前

解決したのでしたら良かったのですが
if(読み込んだ音が流れていなかったら) ならす
といった風にしてみてはいかがでしょうか?

DXライブラリに判定する関数があったはずです。

閉鎖

“C言語何でも質問掲示板” へ戻る