This commit is contained in:
parent
410be002f9
commit
e0e6d5d853
6 changed files with 68 additions and 262 deletions
|
@ -95,6 +95,7 @@ static CXMPlaySound *s_xmplaySound;
|
|||
// Songs
|
||||
static XMSONGDATA s_xmSongData[CSoundMediator::NUM_SONGIDS]=
|
||||
{
|
||||
// m_vh m_vb m_pxm m_startPattern;
|
||||
{ MUSIC_SB_TITLE_VH, MUSIC_SB_TITLE_VB, MUSIC_SB_TITLE_PXM, 0x00 }, // SONG_TITLE
|
||||
{ MUSIC_SB_TITLE_VH, MUSIC_SB_TITLE_VB, MUSIC_SB_TITLE_PXM, 0x0a }, // SONG_OPTIONS
|
||||
{ MUSIC_SB_TITLE_VH, MUSIC_SB_TITLE_VB, MUSIC_SB_TITLE_PXM, 0x13 }, // SONG_MEMORYCARD
|
||||
|
@ -116,29 +117,46 @@ static XMSONGDATA s_xmSongData[CSoundMediator::NUM_SONGIDS]=
|
|||
{ MUSIC_CHAPTER3_VH, MUSIC_CHAPTER3_VB, MUSIC_CHAPTER3_PXM, 0x0b }, // SONG_CHAPTER3_LEVEL4,
|
||||
{ MUSIC_CHAPTER3_VH, MUSIC_CHAPTER3_VB, MUSIC_CHAPTER3_PXM, 0x21 }, // SONG_CHAPTER3_BOSS_ASLEEP,
|
||||
{ MUSIC_CHAPTER3_VH, MUSIC_CHAPTER3_VB, MUSIC_CHAPTER3_PXM, 0x22 }, // SONG_CHAPTER3_BOSS_AWAKE,
|
||||
{ MUSIC_CHAPTER4_VH, MUSIC_CHAPTER4_VB, MUSIC_CHAPTER4_PXM, 0x1b }, // SONG_CHAPTER4_LEVEL1,
|
||||
{ MUSIC_CHAPTER4_VH, MUSIC_CHAPTER4_VB, MUSIC_CHAPTER4_PXM, 0x00 }, // SONG_CHAPTER4_LEVEL2,
|
||||
{ MUSIC_CHAPTER4_VH, MUSIC_CHAPTER4_VB, MUSIC_CHAPTER4_PXM, 0x2c }, // SONG_CHAPTER4_LEVEL3,
|
||||
{ MUSIC_CHAPTER4_VH, MUSIC_CHAPTER4_VB, MUSIC_CHAPTER4_PXM, 0x00 }, // SONG_CHAPTER4_LEVEL4,
|
||||
{ MUSIC_CHAPTER4_VH, MUSIC_CHAPTER4_VB, MUSIC_CHAPTER4_PXM, 0x3c }, // SONG_CHAPTER4_BOSS,
|
||||
{ MUSIC_CHAPTER5_VH, MUSIC_CHAPTER5_VB, MUSIC_CHAPTER5_PXM, 0x00 }, // SONG_CHAPTER5_LEVEL1,
|
||||
{ MUSIC_CHAPTER5_VH, MUSIC_CHAPTER5_VB, MUSIC_CHAPTER5_PXM, 0x14 }, // SONG_CHAPTER5_LEVEL2,
|
||||
{ MUSIC_CHAPTER5_VH, MUSIC_CHAPTER5_VB, MUSIC_CHAPTER5_PXM, 0x00 }, // SONG_CHAPTER5_LEVEL3,
|
||||
{ MUSIC_CHAPTER5_VH, MUSIC_CHAPTER5_VB, MUSIC_CHAPTER5_PXM, 0x2a }, // SONG_CHAPTER5_LEVEL4,
|
||||
{ MUSIC_CHAPTER5_VH, MUSIC_CHAPTER5_VB, MUSIC_CHAPTER5_PXM, 0x3e }, // SONG_CHAPTER5_BOSS,
|
||||
};
|
||||
|
||||
// SFX banks
|
||||
static XMSFXFILEDATA s_xmSfxData[CSoundMediator::NUM_SFXBANKIDS]=
|
||||
{
|
||||
// m_vh m_vb m_pxm
|
||||
{ SFX_INGAME_VH, SFX_INGAME_VB, SFX_INGAME_PXM }, // SFX_INGAME
|
||||
};
|
||||
|
||||
// Individual SFX details
|
||||
static SFXDETAILS s_sfxDetails[]=
|
||||
static SFXDETAILS s_sfxDetails[CSoundMediator::NUM_SFXIDS]=
|
||||
{
|
||||
{ 1, 6, 1 },
|
||||
{ 1, 4, 0 },
|
||||
{ 1, 5, 0 },
|
||||
{ 1, 0, 1 },
|
||||
// m_channelMask m_pattern m_looping
|
||||
{ 1, 0, 0 }, // SFX_TEST0
|
||||
{ 1, 1, 0 }, // SFX_TEST1
|
||||
{ 1, 2, 0 }, // SFX_TEST2
|
||||
{ 1, 3, 0 }, // SFX_TEST3
|
||||
{ 1, 4, 0 }, // SFX_TEST4
|
||||
{ 1, 5, 0 }, // SFX_TEST5
|
||||
{ 1, 6, 0 }, // SFX_TEST6
|
||||
{ 1, 7, 0 }, // SFX_TEST7
|
||||
};
|
||||
|
||||
|
||||
// Reverb details
|
||||
static ReverbDetails s_reverbDetails[CSoundMediator::NUM_REVERBTYPES]=
|
||||
{
|
||||
{ SPU_REV_MODE_OFF, 0, 0, 0 }, // REV_NONE
|
||||
{ SPU_REV_MODE_ECHO, 75, 0x3000, 100 }, // REV_ECHOTEST
|
||||
// m_type m_delay m_depth m_feedback
|
||||
{ SPU_REV_MODE_OFF, 0, 0, 0 }, // REV_NONE
|
||||
{ SPU_REV_MODE_ECHO, 75, 0x3000, 100 }, // REV_ECHOTEST
|
||||
};
|
||||
|
||||
|
||||
|
@ -372,7 +390,7 @@ void CSoundMediator::setSfxBank(SFXBANKID _bankId)
|
|||
same time as *lots* of other sfx.
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
xmPlayingId CSoundMediator::playSfx(int _sfxId,int _lock=false)
|
||||
xmPlayingId CSoundMediator::playSfx(SFXID _sfxId,int _lock=false)
|
||||
{
|
||||
int sfxChannelMask;
|
||||
xmPlayingId playId;
|
||||
|
|
|
@ -49,34 +49,26 @@ class CSoundMediator
|
|||
public:
|
||||
typedef enum SONGID
|
||||
{
|
||||
SONG_TITLE,
|
||||
SONG_OPTIONS,
|
||||
SONG_MEMORYCARD,
|
||||
SONG_GAMECOMPLETE,
|
||||
SONG_GAMEOVER,
|
||||
SONG_CHAPTER1_LEVEL1,
|
||||
SONG_CHAPTER1_LEVEL2,
|
||||
SONG_CHAPTER1_LEVEL3,
|
||||
SONG_CHAPTER1_LEVEL4,
|
||||
SONG_CHAPTER1_BOSS,
|
||||
SONG_CHAPTER2_LEVEL1,
|
||||
SONG_CHAPTER2_LEVEL2,
|
||||
SONG_CHAPTER2_LEVEL3,
|
||||
SONG_CHAPTER2_LEVEL4,
|
||||
SONG_CHAPTER2_BOSS,
|
||||
SONG_CHAPTER3_LEVEL1,
|
||||
SONG_CHAPTER3_LEVEL2,
|
||||
SONG_CHAPTER3_LEVEL3,
|
||||
SONG_CHAPTER3_LEVEL4,
|
||||
SONG_CHAPTER3_BOSS_ALSEEP,
|
||||
SONG_CHAPTER3_BOSS_AWAKE,
|
||||
SONG_TITLE, SONG_OPTIONS, SONG_MEMORYCARD, SONG_GAMECOMPLETE, SONG_GAMEOVER,
|
||||
SONG_CHAPTER1_LEVEL1, SONG_CHAPTER1_LEVEL2, SONG_CHAPTER1_LEVEL3, SONG_CHAPTER1_LEVEL4, SONG_CHAPTER1_BOSS,
|
||||
SONG_CHAPTER2_LEVEL1, SONG_CHAPTER2_LEVEL2, SONG_CHAPTER2_LEVEL3, SONG_CHAPTER2_LEVEL4, SONG_CHAPTER2_BOSS,
|
||||
SONG_CHAPTER3_LEVEL1, SONG_CHAPTER3_LEVEL2, SONG_CHAPTER3_LEVEL3, SONG_CHAPTER3_LEVEL4, SONG_CHAPTER3_BOSS_ALSEEP, SONG_CHAPTER3_BOSS_AWAKE,
|
||||
SONG_CHAPTER4_LEVEL1, SONG_CHAPTER4_LEVEL2, SONG_CHAPTER4_LEVEL3, SONG_CHAPTER4_LEVEL4, SONG_CHAPTER4_BOSS,
|
||||
SONG_CHAPTER5_LEVEL1, SONG_CHAPTER5_LEVEL2, SONG_CHAPTER5_LEVEL3, SONG_CHAPTER5_LEVEL4, SONG_CHAPTER5_BOSS,
|
||||
NUM_SONGIDS,
|
||||
};
|
||||
|
||||
typedef enum SFXBANKID
|
||||
{
|
||||
SFX_INGAME,
|
||||
NUM_SFXBANKIDS,
|
||||
};
|
||||
typedef enum SFXID
|
||||
{
|
||||
SFX_TEST0, SFX_TEST1, SFX_TEST2, SFX_TEST3,
|
||||
SFX_TEST4, SFX_TEST5, SFX_TEST6, SFX_TEST7,
|
||||
NUM_SFXIDS,
|
||||
};
|
||||
|
||||
typedef enum VOLUMETYPE
|
||||
{
|
||||
|
@ -119,7 +111,7 @@ public:
|
|||
|
||||
// SFX interface
|
||||
static void setSfxBank(SFXBANKID _bankId);
|
||||
static xmPlayingId playSfx(int _sfxId,int _lock=false);
|
||||
static xmPlayingId playSfx(SFXID _sfxId,int _lock=false);
|
||||
static void setposition(xmPlayingId _playingId,VECTOR *pos);
|
||||
static void stopSfx(xmPlayingId _playingId);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue