1 //BGM・SE関連のヘッダーファイル 2 #pragma once 3 4 #include "DxLib.h" 5 6 //エラー 7 constexpr const char* MUSIC_LOAD_ERR_CAP = "が読み込めません"; 8 constexpr const char* MUSIC_LOAD_ERR_TITLE = "音楽の読み込みエラー"; 9 10 //インライン関数 11 inline int GetVolume(int volume){return 255*volume/100;} //ボリュームをMIN:0-MAX:255に変換 12 13 //文字列の長さ 14 constexpr int MUSIC_PATH_STR_MAX = 256; //音楽のパスの長さ 15 constexpr int MUSIC_ERR_STR_MAX = 512; //エラーメッセージの長さ 16 17 //デフォルトの音量 18 constexpr int MUSIC_VOLUME_BGM = 40; //BGMの音量 19 constexpr int MUSIC_VOLUME_SE = 70; //SEの音量 20 21 //音楽ファイルパス 22 //BGM 23 constexpr const char* MUSIC_PATH_TITLE_BGM = "./music/BGM/BGM01.mp3"; //タイトルBGMのパス 24 constexpr const char* MUSIC_PATH_PLAY_BGM = "./music/BGM/BGM02.mp3"; //プレイBGMのパス 25 constexpr const char* MUSIC_PATH_RESULT_BGM = "./music/BGM/BGM03.mp3"; //リザルトBGMのパス 26 //SE 27 constexpr const char* MUSIC_PATH_BUTTON_SE = "./music/SE/SE03.mp3"; //ボタンSEのパス 28 constexpr const char* MUSIC_PATH_Hit_SE_01 = "./music/SE/SE01.mp3"; //ヒット時のSEのパス 29 constexpr const char* MUSIC_PATH_Hit_SE_02 = "./music/SE/SE02.mp3"; //ヒット時のSEのパス 30 31 //構造体 32 typedef struct ST_MUSIC 33 { 34 int Handle= -1; //音楽のハンドル 35 int Volume= -1; //音楽の音量 36 char Path[MUSIC_PATH_STR_MAX]; //音楽のパス 37 bool IsPlayStart = true; //停止後は最初から再生するか 38 int PlayType = DX_PLAYTYPE_BACK; //再生タイプ 39 40 int FadeInMillTime = 0; //フェードイン時間 41 int FadeOutMillTime = 0; //フェードアウト時間 42 int FadeInMillTimeMax = 0; //フェードイン時間の最大値 43 int FadeOutMillTimeMax = 0; //フェードアウト時間の最大値 44 bool FadeInStartFlg = false; //フェードイン開始フラグ 45 bool FadeOutStartFlg = false; //フェードアウト開始フラグ 46 47 } Music; 48 49 //外部グローバル変数 50 //BGM 51 extern Music titleBGM; //タイトルBGM 52 extern Music playBGM; //プレイBGM 53 extern Music resultBGM; //リザルトBGM 54 //SE 55 extern Music buttonSE; //ボタンSE 56 extern Music hitSE_01; //ヒット時のSE 57 extern Music hitSE_02; //ヒット時のSE 58 59 //外部プロトタイプ宣言 60 extern bool MusicInit(); //音楽の初期化(読み込み・ハンドル生成) 61 extern void MusicEnd(); //音楽の終了 62 extern void MusicLoadErrMessage( const char* path); //音楽の読み込みエラーメッセージ 63 64 extern Music MusicLoad(const char* path, int volume, int playType); //音楽の読み込み 65 extern void MusicPlay(Music music); //音楽の再生 66 extern void MusicPause(Music* music); //音楽の一時停止 67 extern void MusicStop(Music* music); //音楽の停止 68 extern void MusicDelete(Music music); //音楽の削除 69 70 extern void ChangeMusicVolume(Music* music, int volume); //音楽の音量変更 71 72 extern bool FadeInPlayMusic(Music* music, int fadeInMillTime); //フェードイン再生(1000=1秒) 73 extern bool FadeOutPlayMusic(Music* music, int fadeOutMillTime); //フェードアウト開始(1000=1秒) 74