mirror of
https://github.com/halpz/re3.git
synced 2025-06-28 17:16:19 +00:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@ -186,6 +186,24 @@ struct cAudioScriptObject {
|
||||
|
||||
static_assert(sizeof(cAudioScriptObject) == 0x14, "cAudioScriptObject: error");
|
||||
|
||||
enum
|
||||
{
|
||||
/*
|
||||
REFLECTION_YMAX = 0, top
|
||||
REFLECTION_YMIN = 1, bottom
|
||||
REFLECTION_XMIN = 2, left
|
||||
REFLECTION_XMAX = 3, right
|
||||
REFLECTION_ZMAX = 4,
|
||||
*/
|
||||
|
||||
REFLECTION_TOP = 0,
|
||||
REFLECTION_BOTTOM,
|
||||
REFLECTION_LEFT,
|
||||
REFLECTION_RIGHT,
|
||||
REFLECTION_UP,
|
||||
MAX_REFLECTIONS,
|
||||
};
|
||||
|
||||
class cAudioManager
|
||||
{
|
||||
public:
|
||||
@ -233,7 +251,13 @@ public:
|
||||
uint8 m_bUserPause;
|
||||
uint8 m_bPreviousUserPause;
|
||||
uint8 field_19195;
|
||||
int32 m_nTimeOfRecentCrime;
|
||||
uint32 m_FrameCounter;
|
||||
|
||||
inline uint32 GetFrameCounter(void) { return m_FrameCounter; }
|
||||
float GetReflectionsDistance(int32 idx) { return m_afReflectionsDistances[idx]; }
|
||||
int32 GetRandomTabe(int32 idx) { return m_anRandomTable[idx]; }
|
||||
|
||||
//
|
||||
|
||||
void AddDetailsToRequestedOrderList(uint8 sample); /// ok
|
||||
void AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sample, uint8 unk1,
|
||||
@ -242,7 +266,7 @@ public:
|
||||
void AddReleasingSounds(); // todo (difficult)
|
||||
void AddSampleToRequestedQueue(); /// ok
|
||||
void AgeCrimes(); // todo
|
||||
int8 AutoDetect3DProviders(); /// ok
|
||||
int8 GetCurrent3DProviderIndex(); /// ok
|
||||
|
||||
void CalculateDistance(bool *ptr, float dist); /// ok
|
||||
bool CheckForAnAudioFileOnCD(); /// ok
|
||||
@ -282,8 +306,8 @@ public:
|
||||
|
||||
void SetEffectsMasterVolume(uint8 volume);
|
||||
void SetMusicMasterVolume(uint8 volume);
|
||||
void SetEffectsFadeVol(uint8 volume);
|
||||
void SetMusicFadeVol(uint8 volume);
|
||||
void SetEffectsFadeVolume(uint8 volume);
|
||||
void SetMusicFadeVolume(uint8 volume);
|
||||
|
||||
void SetSpeakerConfig(int32 conf);
|
||||
|
||||
@ -323,7 +347,7 @@ public:
|
||||
int32 RandomDisplacement(uint32 seed);
|
||||
|
||||
void ReleaseDigitalHandle();
|
||||
void RequireDigitalHandle();
|
||||
void ReacquireDigitalHandle();
|
||||
void SetDynamicAcousticModelingStatus(bool status);
|
||||
|
||||
bool IsAudioInitialised() const;
|
||||
|
@ -3037,6 +3037,14 @@ enum eAudioSamples : uint32 {
|
||||
AUDIO_SAMPLE_AMMUNATION_WELCOME_3 = 3031,
|
||||
TOTAL_AUDIO_SAMPLES = 3032,
|
||||
NO_SAMPLE = 3033,
|
||||
|
||||
// shorthands
|
||||
SAMPLEBANK_START = AUDIO_SAMPLE_VEHICLE_HORN_0,
|
||||
SAMPLEBANK_END = AUDIO_SAMPLE_PAGER,
|
||||
SAMPLEBANK_MAX = AUDIO_SAMPLE_PAGER+1,
|
||||
SAMPLEBANK_PED_START = AUDIO_SAMPLE_POLICE_COP_1_ARREST_1,
|
||||
SAMPLEBANK_PED_END = AUDIO_SAMPLE_AMMUNATION_WELCOME_3,
|
||||
SAMPLEBANK_PED_MAX = AUDIO_SAMPLE_AMMUNATION_WELCOME_3+1,
|
||||
};
|
||||
|
||||
enum eScriptSounds : int16
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include "Camera.h"
|
||||
#include "World.h"
|
||||
#include "ModelIndices.h"
|
||||
#include "SampleManager.h"
|
||||
#include "sampman.h"
|
||||
#include "Replay.h"
|
||||
|
||||
cMusicManager &MusicManager = *(cMusicManager*)0x8F3964;
|
||||
@ -57,7 +57,7 @@ void cMusicManager::DisplayRadioStationName()
|
||||
if (MusicManager.m_bPlayerInCar && !MusicManager.m_bPreviousPlayerInCar)
|
||||
pCurrentStation = nil;
|
||||
|
||||
if (cSampleManager.IsMP3RadioChannelAvailable()) {
|
||||
if (SampleManager.IsMP3RadioChannelAvailable()) {
|
||||
gStreamedSound = MusicManager.m_nCurrentStreamedSound;
|
||||
|
||||
if (gStreamedSound != STREAMED_SOUND_CITY_AMBIENT && gStreamedSound != STREAMED_SOUND_WATER_AMBIENT) {
|
||||
@ -140,7 +140,7 @@ void cMusicManager::DisplayRadioStationName()
|
||||
return;
|
||||
};
|
||||
|
||||
if (pRetune > CHATTERBOX && !CSampleManager::IsMP3RadioChannelAvailable()) {
|
||||
if (pRetune > CHATTERBOX && !SampleManager.IsMP3RadioChannelAvailable()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -16,6 +16,15 @@ enum eRadioStation
|
||||
RADIO_OFF,
|
||||
};
|
||||
|
||||
enum eMusicMode
|
||||
{
|
||||
MUSICMODE_FRONTEND = 0,
|
||||
MUSICMODE_GAME,
|
||||
MUSICMODE_CUTSCENE,
|
||||
MUSICMODE_OFF,
|
||||
MUSICMODE_4,
|
||||
};
|
||||
|
||||
enum eStreamedSounds
|
||||
{
|
||||
STREAMED_SOUND_RADIO_HEAD = 0,
|
||||
@ -264,6 +273,10 @@ public:
|
||||
uint8 field_2395;
|
||||
|
||||
public:
|
||||
bool IsInitialised() { return m_bIsInitialised; }
|
||||
uint32 GetMusicMode() { return m_nMusicMode; }
|
||||
uint8 GetCurrentTrack() { return m_nCurrentStreamedSound; }
|
||||
|
||||
void Initialise();
|
||||
void Terminate();
|
||||
|
||||
|
@ -1,176 +0,0 @@
|
||||
#include "SampleManager.h"
|
||||
#include "common.h"
|
||||
#include "patcher.h"
|
||||
|
||||
CSampleManager &cSampleManager = *(CSampleManager *)0x7341E0;
|
||||
|
||||
uint32 &nNumOfMp3Files = *(uint32 *)0x95CC00;
|
||||
uint8 &num3DProvidersAvailable = *(uint8 *)0x734237;
|
||||
char **asName3DProviders = (char **)0x734238;
|
||||
|
||||
bool
|
||||
CSampleManager::IsMP3RadioChannelAvailable()
|
||||
{
|
||||
return nNumOfMp3Files != 0;
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannelFrequency(int32, int32) { EAXJMP(0x5679D0); }
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannelEmittingVolume(int32, uint32) { EAXJMP(0x567820); }
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetChannel3DPosition(int32, float, float, float)
|
||||
{
|
||||
EAXJMP(0x567890);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannelLoopCount(int32, int32) { EAXJMP(0x567AA0); }
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannel3DDistances(int32, int32, int32) { EAXJMP(0x5678D0); }
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannelReverbFlag(int32, uint8) { EAXJMP(0x567630); }
|
||||
|
||||
WRAPPER
|
||||
int32 CSampleManager::GetSampleLength(int32) { EAXJMP(0x567300); }
|
||||
|
||||
WRAPPER
|
||||
bool CSampleManager::InitialiseChannel(int32, int32, uint32, uint32) { EAXJMP(0x5676A0); }
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::SetChannelLoopPoints(int32, int32, int32) { EAXJMP(0x567A30); }
|
||||
|
||||
WRAPPER
|
||||
bool
|
||||
CSampleManager::CheckForAnAudioFileOnCD()
|
||||
{
|
||||
EAXJMP(0x566EA0);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
int32 CSampleManager::GetSampleBaseFrequency(int32) { EAXJMP(0x5672A0); }
|
||||
|
||||
WRAPPER
|
||||
int32 CSampleManager::GetSampleLoopStartOffset(int32) { EAXJMP(0x5672C0); }
|
||||
|
||||
WRAPPER
|
||||
int32 CSampleManager::GetSampleLoopEndOffset(int32) { EAXJMP(0x5672E0); }
|
||||
|
||||
WRAPPER
|
||||
bool CSampleManager::IsSampleBankLoaded(uint8) { EAXJMP(0x567130); }
|
||||
|
||||
WRAPPER
|
||||
void CSampleManager::UnloadSampleBank(uint8) { EAXJMP(0x567110); }
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::Terminate()
|
||||
{
|
||||
EAXJMP(0x566DC0);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
bool
|
||||
CSampleManager::Initialise()
|
||||
{
|
||||
EAXJMP(0x566530);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
int32
|
||||
CSampleManager::GetActiveSamples()
|
||||
{
|
||||
EAXJMP(0x565970);
|
||||
}
|
||||
|
||||
WRAPPER void
|
||||
CSampleManager::ReleaseDigitalHandle()
|
||||
{
|
||||
EAXJMP(0x5664B0);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::RequireDigitalHandle()
|
||||
{
|
||||
EAXJMP(0x5664F0);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
char
|
||||
CSampleManager::AutoDetect3DProviders()
|
||||
{
|
||||
EAXJMP(0x565990);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
uint8
|
||||
CSampleManager::GetCDAudioDriveLetter()
|
||||
{
|
||||
EAXJMP(0x566F20);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetEffectsMasterVolume(uint8 volume)
|
||||
{
|
||||
EAXJMP(0x567010);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetMusicMasterVolume(uint8 volume)
|
||||
{
|
||||
EAXJMP(0x567020);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetEffectsFadeVol(uint8 volume)
|
||||
{
|
||||
EAXJMP(0x567030);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetMusicFadeVol(uint8 volume)
|
||||
{
|
||||
EAXJMP(0x567040);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::SetSpeakerConfig(uint32 config)
|
||||
{
|
||||
EAXJMP(0x565900);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
bool
|
||||
CSampleManager::GetChannelUsedFlag(int32 id)
|
||||
{
|
||||
EAXJMP(0x567B00);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::StartChannel(int32 id)
|
||||
{
|
||||
EAXJMP(0x567B80);
|
||||
}
|
||||
|
||||
WRAPPER
|
||||
void
|
||||
CSampleManager::StopChannel(int32 id)
|
||||
{
|
||||
EAXJMP(0x567BE0);
|
||||
}
|
||||
|
||||
STARTPATCHES
|
||||
InjectHook(0x566490, CSampleManager::IsMP3RadioChannelAvailable, PATCH_JUMP);
|
||||
ENDPATCHES
|
@ -1,68 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include "common.h"
|
||||
|
||||
struct tSample {
|
||||
int m_nOffset;
|
||||
unsigned int m_nSize;
|
||||
int m_nFrequency;
|
||||
int m_nLoopStart;
|
||||
int m_nLoopEnd;
|
||||
};
|
||||
|
||||
class CSampleManager
|
||||
{
|
||||
public:
|
||||
void SetChannelFrequency(int32, int32);
|
||||
void SetChannelEmittingVolume(int32, uint32);
|
||||
void SetChannel3DPosition(int32, float, float, float);
|
||||
void SetChannelLoopCount(int32, int32);
|
||||
|
||||
void SetChannel3DDistances(int32, int32, int32);
|
||||
void SetChannelReverbFlag(int32, uint8);
|
||||
|
||||
int32 GetSampleLength(int32);
|
||||
|
||||
bool InitialiseChannel(int32, int32, uint32, uint32 something = 0);
|
||||
|
||||
void SetChannelLoopPoints(int32, int32, int32);
|
||||
|
||||
bool CheckForAnAudioFileOnCD();
|
||||
|
||||
int32 GetSampleBaseFrequency(int32);
|
||||
int32 GetSampleLoopStartOffset(int32);
|
||||
int32 GetSampleLoopEndOffset(int32);
|
||||
|
||||
bool IsSampleBankLoaded(uint8);
|
||||
void UnloadSampleBank(uint8);
|
||||
void Terminate();
|
||||
|
||||
bool Initialise();
|
||||
int32 GetActiveSamples();
|
||||
|
||||
void ReleaseDigitalHandle();
|
||||
void RequireDigitalHandle();
|
||||
|
||||
char AutoDetect3DProviders();
|
||||
uint8 GetCDAudioDriveLetter();
|
||||
|
||||
void SetEffectsMasterVolume(uint8 volume);
|
||||
void SetMusicMasterVolume(uint8 volume);
|
||||
void SetEffectsFadeVol(uint8 volume);
|
||||
void SetMusicFadeVol(uint8 volume);
|
||||
|
||||
void SetSpeakerConfig(uint32 config);
|
||||
|
||||
bool GetChannelUsedFlag(int32 id);
|
||||
|
||||
void StartChannel(int32 id);
|
||||
void StopChannel(int32 id);
|
||||
|
||||
static bool IsMP3RadioChannelAvailable();
|
||||
};
|
||||
|
||||
extern uint32 &nNumOfMp3Files;
|
||||
extern uint8 &num3DProvidersAvailable;
|
||||
extern char **asName3DProviders;
|
||||
|
||||
extern CSampleManager &cSampleManager;
|
2331
src/audio/sampman.cpp
Normal file
2331
src/audio/sampman.cpp
Normal file
File diff suppressed because it is too large
Load Diff
334
src/audio/sampman.h
Normal file
334
src/audio/sampman.h
Normal file
@ -0,0 +1,334 @@
|
||||
#pragma once
|
||||
#include "common.h"
|
||||
#include "AudioSamples.h"
|
||||
|
||||
struct tSample {
|
||||
int32 nOffset;
|
||||
uint32 nSize;
|
||||
int32 nFrequency;
|
||||
int32 nLoopStart;
|
||||
int32 nLoopEnd;
|
||||
};
|
||||
|
||||
#define MAXPROVIDERS 64
|
||||
|
||||
#define MAXCHANNELS 28
|
||||
#define MAXCHANNELS_SURROUND 24
|
||||
#define MAX2DCHANNELS 1
|
||||
#define CHANNEL2D MAXCHANNELS
|
||||
|
||||
|
||||
#define MAX_MP3STREAMS 2
|
||||
|
||||
|
||||
#define MAX_SAMPLEBANKS 2
|
||||
#define MAX_PEDSFX 7
|
||||
#define PED_BLOCKSIZE 79000
|
||||
|
||||
|
||||
#define MAX_DIGITAL_MIXER_CHANNELS 32
|
||||
|
||||
#define DIGITALRATE 32000
|
||||
#define DIGITALBITS 16
|
||||
#define DIGITALCHANNELS 2
|
||||
|
||||
|
||||
|
||||
class cSampleManager
|
||||
{
|
||||
uint8 m_nEffectsVolume;
|
||||
uint8 m_nMusicVolume;
|
||||
uint8 m_nEffectsFadeVolume;
|
||||
uint8 m_nMusicFadeVolume;
|
||||
uint8 m_nMonoMode;
|
||||
char _pad0[1];
|
||||
char m_szCDRomRootPath[80];
|
||||
bool m_bInitialised;
|
||||
uint8 m_nNumberOfProviders;
|
||||
char *m_aAudioProviders[MAXPROVIDERS];
|
||||
tSample m_aSamples[TOTAL_AUDIO_SAMPLES];
|
||||
|
||||
public:
|
||||
|
||||
|
||||
|
||||
cSampleManager(void) :
|
||||
m_nNumberOfProviders(0)
|
||||
{ }
|
||||
|
||||
~cSampleManager(void)
|
||||
{ }
|
||||
|
||||
void SetSpeakerConfig(int32 nConfig);
|
||||
uint32 GetMaximumSupportedChannels(void);
|
||||
|
||||
uint32 GetNum3DProvidersAvailable() { return m_nNumberOfProviders; }
|
||||
void SetNum3DProvidersAvailable(uint32 num) { m_nNumberOfProviders = num; }
|
||||
|
||||
char *Get3DProviderName(uint8 id) { return m_aAudioProviders[id]; }
|
||||
void Set3DProviderName(uint8 id, char *name) { m_aAudioProviders[id] = name; }
|
||||
|
||||
int8 GetCurrent3DProviderIndex(void);
|
||||
int8 SetCurrent3DProvider(uint8 which);
|
||||
|
||||
bool IsMP3RadioChannelAvailable(void);
|
||||
|
||||
void ReleaseDigitalHandle (void);
|
||||
void ReacquireDigitalHandle(void);
|
||||
|
||||
bool Initialise(void);
|
||||
void Terminate (void);
|
||||
|
||||
bool CheckForAnAudioFileOnCD(void);
|
||||
char GetCDAudioDriveLetter (void);
|
||||
|
||||
void UpdateEffectsVolume(void);
|
||||
|
||||
void SetEffectsMasterVolume(uint8 nVolume);
|
||||
void SetMusicMasterVolume (uint8 nVolume);
|
||||
void SetEffectsFadeVolume (uint8 nVolume);
|
||||
void SetMusicFadeVolume (uint8 nVolume);
|
||||
|
||||
bool LoadSampleBank (uint8 nBank);
|
||||
void UnloadSampleBank (uint8 nBank);
|
||||
bool IsSampleBankLoaded(uint8 nBank);
|
||||
|
||||
bool IsPedCommentLoaded(uint32 nComment);
|
||||
bool LoadPedComment (uint32 nComment);
|
||||
|
||||
int32 _GetPedCommentSlot(uint32 nComment);
|
||||
|
||||
int32 GetSampleBaseFrequency (uint32 nSample);
|
||||
int32 GetSampleLoopStartOffset(uint32 nSample);
|
||||
int32 GetSampleLoopEndOffset (uint32 nSample);
|
||||
uint32 GetSampleLength (uint32 nSample);
|
||||
|
||||
bool UpdateReverb(void);
|
||||
|
||||
void SetChannelReverbFlag (uint32 nChannel, uint8 nReverbFlag);
|
||||
bool InitialiseChannel (uint32 nChannel, uint32 nSfx, uint8 nBank);
|
||||
void SetChannelEmittingVolume(uint32 nChannel, uint32 nVolume);
|
||||
void SetChannel3DPosition (uint32 nChannel, float fX, float fY, float fZ);
|
||||
void SetChannel3DDistances (uint32 nChannel, float fMax, float fMin);
|
||||
void SetChannelVolume (uint32 nChannel, uint32 nVolume);
|
||||
void SetChannelPan (uint32 nChannel, uint32 nPan);
|
||||
void SetChannelFrequency (uint32 nChannel, uint32 nFreq);
|
||||
void SetChannelLoopPoints (uint32 nChannel, uint32 nLoopStart, int32 nLoopEnd);
|
||||
void SetChannelLoopCount (uint32 nChannel, uint32 nLoopCount);
|
||||
bool GetChannelUsedFlag (uint32 nChannel);
|
||||
void StartChannel (uint32 nChannel);
|
||||
void StopChannel (uint32 nChannel);
|
||||
|
||||
void PreloadStreamedFile (uint8 nFile, uint8 nStream);
|
||||
void PauseStream (uint8 nPauseFlag, uint8 nStream);
|
||||
void StartPreloadedStreamedFile (uint8 nStream);
|
||||
bool StartStreamedFile (uint8 nFile, uint32 nPos, uint8 nStream);
|
||||
void StopStreamedFile (uint8 nStream);
|
||||
int32 GetStreamedFilePosition (uint8 nStream);
|
||||
void SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffectFlag, uint8 nStream);
|
||||
int32 GetStreamedFileLength (uint8 nStream);
|
||||
bool IsStreamPlaying (uint8 nStream);
|
||||
bool InitialiseSampleBanks(void);
|
||||
};
|
||||
|
||||
extern cSampleManager &SampleManager;
|
||||
|
||||
static char StreamedNameTable[][25]=
|
||||
{
|
||||
"AUDIO\\HEAD.WAV",
|
||||
"AUDIO\\CLASS.WAV",
|
||||
"AUDIO\\KJAH.WAV",
|
||||
"AUDIO\\RISE.WAV",
|
||||
"AUDIO\\LIPS.WAV",
|
||||
"AUDIO\\GAME.WAV",
|
||||
"AUDIO\\MSX.WAV",
|
||||
"AUDIO\\FLASH.WAV",
|
||||
"AUDIO\\CHAT.WAV",
|
||||
"AUDIO\\HEAD.WAV",
|
||||
"AUDIO\\POLICE.WAV",
|
||||
"AUDIO\\CITY.WAV",
|
||||
"AUDIO\\WATER.WAV",
|
||||
"AUDIO\\COMOPEN.WAV",
|
||||
"AUDIO\\SUBOPEN.WAV",
|
||||
"AUDIO\\JB.MP3",
|
||||
"AUDIO\\BET.MP3",
|
||||
"AUDIO\\L1_LG.MP3",
|
||||
"AUDIO\\L2_DSB.MP3",
|
||||
"AUDIO\\L3_DM.MP3",
|
||||
"AUDIO\\L4_PAP.MP3",
|
||||
"AUDIO\\L5_TFB.MP3",
|
||||
"AUDIO\\J0_DM2.MP3",
|
||||
"AUDIO\\J1_LFL.MP3",
|
||||
"AUDIO\\J2_KCL.MP3",
|
||||
"AUDIO\\J3_VH.MP3",
|
||||
"AUDIO\\J4_ETH.MP3",
|
||||
"AUDIO\\J5_DST.MP3",
|
||||
"AUDIO\\J6_TBJ.MP3",
|
||||
"AUDIO\\T1_TOL.MP3",
|
||||
"AUDIO\\T2_TPU.MP3",
|
||||
"AUDIO\\T3_MAS.MP3",
|
||||
"AUDIO\\T4_TAT.MP3",
|
||||
"AUDIO\\T5_BF.MP3",
|
||||
"AUDIO\\S0_MAS.MP3",
|
||||
"AUDIO\\S1_PF.MP3",
|
||||
"AUDIO\\S2_CTG.MP3",
|
||||
"AUDIO\\S3_RTC.MP3",
|
||||
"AUDIO\\S5_LRQ.MP3",
|
||||
"AUDIO\\S4_BDBA.MP3",
|
||||
"AUDIO\\S4_BDBB.MP3",
|
||||
"AUDIO\\S2_CTG2.MP3",
|
||||
"AUDIO\\S4_BDBD.MP3",
|
||||
"AUDIO\\S5_LRQB.MP3",
|
||||
"AUDIO\\S5_LRQC.MP3",
|
||||
"AUDIO\\A1_SSO.WAV",
|
||||
"AUDIO\\A2_PP.WAV",
|
||||
"AUDIO\\A3_SS.WAV",
|
||||
"AUDIO\\A4_PDR.WAV",
|
||||
"AUDIO\\A5_K2FT.WAV",
|
||||
"AUDIO\\K1_KBO.MP3",
|
||||
"AUDIO\\K2_GIS.MP3",
|
||||
"AUDIO\\K3_DS.MP3",
|
||||
"AUDIO\\K4_SHI.MP3",
|
||||
"AUDIO\\K5_SD.MP3",
|
||||
"AUDIO\\R0_PDR2.MP3",
|
||||
"AUDIO\\R1_SW.MP3",
|
||||
"AUDIO\\R2_AP.MP3",
|
||||
"AUDIO\\R3_ED.MP3",
|
||||
"AUDIO\\R4_GF.MP3",
|
||||
"AUDIO\\R5_PB.MP3",
|
||||
"AUDIO\\R6_MM.MP3",
|
||||
"AUDIO\\D1_STOG.MP3",
|
||||
"AUDIO\\D2_KK.MP3",
|
||||
"AUDIO\\D3_ADO.MP3",
|
||||
"AUDIO\\D5_ES.MP3",
|
||||
"AUDIO\\D7_MLD.MP3",
|
||||
"AUDIO\\D4_GTA.MP3",
|
||||
"AUDIO\\D4_GTA2.MP3",
|
||||
"AUDIO\\D6_STS.MP3",
|
||||
"AUDIO\\A6_BAIT.WAV",
|
||||
"AUDIO\\A7_ETG.WAV",
|
||||
"AUDIO\\A8_PS.WAV",
|
||||
"AUDIO\\A9_ASD.WAV",
|
||||
"AUDIO\\K4_SHI2.MP3",
|
||||
"AUDIO\\C1_TEX.MP3",
|
||||
"AUDIO\\EL_PH1.MP3",
|
||||
"AUDIO\\EL_PH2.MP3",
|
||||
"AUDIO\\EL_PH3.MP3",
|
||||
"AUDIO\\EL_PH4.MP3",
|
||||
"AUDIO\\YD_PH1.MP3",
|
||||
"AUDIO\\YD_PH2.MP3",
|
||||
"AUDIO\\YD_PH3.MP3",
|
||||
"AUDIO\\YD_PH4.MP3",
|
||||
"AUDIO\\HD_PH1.MP3",
|
||||
"AUDIO\\HD_PH2.MP3",
|
||||
"AUDIO\\HD_PH3.MP3",
|
||||
"AUDIO\\HD_PH4.MP3",
|
||||
"AUDIO\\HD_PH5.MP3",
|
||||
"AUDIO\\MT_PH1.MP3",
|
||||
"AUDIO\\MT_PH2.MP3",
|
||||
"AUDIO\\MT_PH3.MP3",
|
||||
"AUDIO\\MT_PH4.MP3",
|
||||
"AUDIO\\MISCOM.WAV",
|
||||
"AUDIO\\END.MP3",
|
||||
"AUDIO\\lib_a1.WAV",
|
||||
"AUDIO\\lib_a2.WAV",
|
||||
"AUDIO\\lib_a.WAV",
|
||||
"AUDIO\\lib_b.WAV",
|
||||
"AUDIO\\lib_c.WAV",
|
||||
"AUDIO\\lib_d.WAV",
|
||||
"AUDIO\\l2_a.WAV",
|
||||
"AUDIO\\j4t_1.WAV",
|
||||
"AUDIO\\j4t_2.WAV",
|
||||
"AUDIO\\j4t_3.WAV",
|
||||
"AUDIO\\j4t_4.WAV",
|
||||
"AUDIO\\j4_a.WAV",
|
||||
"AUDIO\\j4_b.WAV",
|
||||
"AUDIO\\j4_c.WAV",
|
||||
"AUDIO\\j4_d.WAV",
|
||||
"AUDIO\\j4_e.WAV",
|
||||
"AUDIO\\j4_f.WAV",
|
||||
"AUDIO\\j6_1.WAV",
|
||||
"AUDIO\\j6_a.WAV",
|
||||
"AUDIO\\j6_b.WAV",
|
||||
"AUDIO\\j6_c.WAV",
|
||||
"AUDIO\\j6_d.WAV",
|
||||
"AUDIO\\t4_a.WAV",
|
||||
"AUDIO\\s1_a.WAV",
|
||||
"AUDIO\\s1_a1.WAV",
|
||||
"AUDIO\\s1_b.WAV",
|
||||
"AUDIO\\s1_c.WAV",
|
||||
"AUDIO\\s1_c1.WAV",
|
||||
"AUDIO\\s1_d.WAV",
|
||||
"AUDIO\\s1_e.WAV",
|
||||
"AUDIO\\s1_f.WAV",
|
||||
"AUDIO\\s1_g.WAV",
|
||||
"AUDIO\\s1_h.WAV",
|
||||
"AUDIO\\s1_i.WAV",
|
||||
"AUDIO\\s1_j.WAV",
|
||||
"AUDIO\\s1_k.WAV",
|
||||
"AUDIO\\s1_l.WAV",
|
||||
"AUDIO\\s3_a.WAV",
|
||||
"AUDIO\\s3_b.WAV",
|
||||
"AUDIO\\el3_a.WAV",
|
||||
"AUDIO\\mf1_a.WAV",
|
||||
"AUDIO\\mf2_a.WAV",
|
||||
"AUDIO\\mf3_a.WAV",
|
||||
"AUDIO\\mf3_b.WAV",
|
||||
"AUDIO\\mf3_b1.WAV",
|
||||
"AUDIO\\mf3_c.WAV",
|
||||
"AUDIO\\mf4_a.WAV",
|
||||
"AUDIO\\mf4_b.WAV",
|
||||
"AUDIO\\mf4_c.WAV",
|
||||
"AUDIO\\a1_a.WAV",
|
||||
"AUDIO\\a3_a.WAV",
|
||||
"AUDIO\\a5_a.WAV",
|
||||
"AUDIO\\a4_a.WAV",
|
||||
"AUDIO\\a4_b.WAV",
|
||||
"AUDIO\\a4_c.WAV",
|
||||
"AUDIO\\a4_d.WAV",
|
||||
"AUDIO\\k1_a.WAV",
|
||||
"AUDIO\\k3_a.WAV",
|
||||
"AUDIO\\r1_a.WAV",
|
||||
"AUDIO\\r2_a.WAV",
|
||||
"AUDIO\\r2_b.WAV",
|
||||
"AUDIO\\r2_c.WAV",
|
||||
"AUDIO\\r2_d.WAV",
|
||||
"AUDIO\\r2_e.WAV",
|
||||
"AUDIO\\r2_f.WAV",
|
||||
"AUDIO\\r2_g.WAV",
|
||||
"AUDIO\\r2_h.WAV",
|
||||
"AUDIO\\r5_a.WAV",
|
||||
"AUDIO\\r6_a.WAV",
|
||||
"AUDIO\\r6_a1.WAV",
|
||||
"AUDIO\\r6_b.WAV",
|
||||
"AUDIO\\lo2_a.WAV",
|
||||
"AUDIO\\lo6_a.WAV",
|
||||
"AUDIO\\yd2_a.WAV",
|
||||
"AUDIO\\yd2_b.WAV",
|
||||
"AUDIO\\yd2_c.WAV",
|
||||
"AUDIO\\yd2_c1.WAV",
|
||||
"AUDIO\\yd2_d.WAV",
|
||||
"AUDIO\\yd2_e.WAV",
|
||||
"AUDIO\\yd2_f.WAV",
|
||||
"AUDIO\\yd2_g.WAV",
|
||||
"AUDIO\\yd2_h.WAV",
|
||||
"AUDIO\\yd2_ass.WAV",
|
||||
"AUDIO\\yd2_ok.WAV",
|
||||
"AUDIO\\h5_a.WAV",
|
||||
"AUDIO\\h5_b.WAV",
|
||||
"AUDIO\\h5_c.WAV",
|
||||
"AUDIO\\ammu_a.WAV",
|
||||
"AUDIO\\ammu_b.WAV",
|
||||
"AUDIO\\ammu_c.WAV",
|
||||
"AUDIO\\door_1.WAV",
|
||||
"AUDIO\\door_2.WAV",
|
||||
"AUDIO\\door_3.WAV",
|
||||
"AUDIO\\door_4.WAV",
|
||||
"AUDIO\\door_5.WAV",
|
||||
"AUDIO\\door_6.WAV",
|
||||
"AUDIO\\t3_a.WAV",
|
||||
"AUDIO\\t3_b.WAV",
|
||||
"AUDIO\\t3_c.WAV",
|
||||
"AUDIO\\k1_b.WAV",
|
||||
"AUDIO\\cat1.WAV"
|
||||
};
|
Reference in New Issue
Block a user