diff --git a/.gitignore b/.gitignore
index 896276a4..70bb8361 100644
--- a/.gitignore
+++ b/.gitignore
@@ -355,6 +355,7 @@ vendor/glfw-3.3.2.bin.WIN64/
sdk/
+codewarrior/reVC.mcp
codewarrior/reVC_Data/
codewarrior/Release/
codewarrior/Debug/
diff --git a/README.md b/README.md
index c603466f..4772190e 100644
--- a/README.md
+++ b/README.md
@@ -14,29 +14,29 @@ To build the channel edit `CHANNEL_BUILD := 0` to `CHANNEL_BUILD := 1` in the `M
# Original README
[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2FGTAmodding%2Fre3%2Fbadge%3Fref%3Dmiami&style=flat)](https://actions-badge.atrox.dev/GTAmodding/re3/goto?ref=miami)
-
+
## Intro
In this repository you'll find the fully reversed source code for GTA III ([master](https://github.com/GTAmodding/re3/tree/master/) branch) and GTA VC ([miami](https://github.com/GTAmodding/re3/tree/miami/) branch).
-It has been tested and works on Windows, Linux and FreeBSD, on x86, amd64, arm and arm64.\
+It has been tested and works on Windows, Linux, MacOS and FreeBSD, on x86, amd64, arm and arm64.\
Rendering is handled either by original RenderWare (D3D8)
or the reimplementation [librw](https://github.com/aap/librw) (D3D9, OpenGL 2.1 or above, OpenGL ES 2.0 or above).\
Audio is done with MSS (using dlls from original GTA) or OpenAL.
We cannot build for PS2 or Xbox yet. If you're interested in doing so, get in touch with us.
-## How can I try it?
+## Installation
- reVC requires game assets to work, so you **must** own [a copy of GTA Vice City](https://store.steampowered.com/app/12110/Grand_Theft_Auto_Vice_City/).
-- Build reVC or download the latest nightly build:
+- Build reVC or download the latest build:
- [Windows D3D9 MSS 32bit](https://nightly.link/GTAmodding/re3/workflows/reVC_msvc_x86/miami/reVC_Release_win-x86-librw_d3d9-mss.zip)
- [Windows D3D9 64bit](https://nightly.link/GTAmodding/re3/workflows/reVC_msvc_amd64/miami/reVC_Release_win-amd64-librw_d3d9-oal.zip)
- [Windows OpenGL 64bit](https://nightly.link/GTAmodding/re3/workflows/reVC_msvc_amd64/miami/reVC_Release_win-amd64-librw_gl3_glfw-oal.zip)
- - [Linux 64bit](https://nightly.link/GTAmodding/re3/workflows/build-cmake-conan/miami/ubuntu-latest-gl3.zip)
- - [MacOS 64bit](https://nightly.link/GTAmodding/re3/workflows/build-cmake-conan/miami/macos-latest-gl3.zip)
-- Extract the downloaded zip over your GTA VC directory and run reVC. The zip includes the gamefiles and in case of OpenAL the required dlls.
+ - [Linux 64bit](https://nightly.link/GTAmodding/re3/workflows/build-cmake-conan/miami/ubuntu-18.04-gl3.zip)
+ - [MacOS 64bit x86-64](https://nightly.link/GTAmodding/re3/workflows/build-cmake-conan/miami/macos-latest-gl3.zip)
+- Extract the downloaded zip over your GTA VC directory and run reVC. The zip includes the binary, updated and additional gamefiles and in case of OpenAL the required dlls.
## Screenshots
@@ -120,6 +120,12 @@ conan build .. -if build -bf build -pf package
```
+MacOS Premake
+
+For MacOS using premake, proceed: [Building on MacOS](https://github.com/GTAmodding/re3/wiki/Building-on-MacOS)
+
+
+
FreeBSD
For FreeBSD using premake, proceed: [Building on FreeBSD](https://github.com/GTAmodding/re3/wiki/Building-on-FreeBSD)
@@ -137,7 +143,7 @@ Microsoft recently discontinued its downloads of the DX9 SDK. You can download a
**If you choose OpenAL on Windows** You must read [Running OpenAL build on Windows](https://github.com/GTAmodding/re3/wiki/Running-OpenAL-build-on-Windows).
-> :information_source: premake has an `--lto` option if you want the project to be compiled with Link Time Optimization.
+> :information_source: premake has an `--with-lto` option if you want the project to be compiled with Link Time Optimization.
> :information_source: There are various settings in [config.h](https://github.com/GTAmodding/re3/tree/miami/src/core/config.h), you may want to take a look there.
diff --git a/codewarrior/reVC.mcp b/codewarrior/reVC.mcp
deleted file mode 100644
index 00b3fd74..00000000
Binary files a/codewarrior/reVC.mcp and /dev/null differ
diff --git a/codewarrior/reVC.mcp.xml b/codewarrior/reVC.mcp.xml
new file mode 100644
index 00000000..92638894
--- /dev/null
+++ b/codewarrior/reVC.mcp.xml
@@ -0,0 +1,16066 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+ Debug
+
+
+
+ UserSourceTrees
+
+
+ AlwaysSearchUserPathsfalse
+ InterpretDOSAndUnixPathstrue
+ RequireFrameworkStyleIncludesfalse
+ UserSearchPaths
+
+ SearchPath
+ Path
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\animation
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\audio
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\buildings
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\collision
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\control
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\core
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\entities
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\math
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\modelinfo
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\objects
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\peds
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\render
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\rw
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\save
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\skel
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\text
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\vehicles
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\weapons
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\vendor\milessdk\lib
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\vendor\milessdk\include
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\dx8sdk\Lib
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\rwsdk\lib\d3d8\release
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\rwsdk\include\d3d8
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\extras
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SystemSearchPaths
+
+ SearchPath
+ Path..\sdk\rwsdk\include\d3d8
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\dx8sdk\Include
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathWin32-x86 Support\Headers\
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathWin32-x86 Support\Libraries\
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathMSL
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\audio\eax
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+
+
+ MWRuntimeSettings_WorkingDirectory
+ MWRuntimeSettings_CommandLine
+ MWRuntimeSettings_HostApplication
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ MWRuntimeSettings_EnvVars
+
+
+ LinkerWin32 x86 Linker
+ PreLinker
+ PostLinker
+ TargetnameDebug
+ OutputDirectory
+ Path
+ PathFormatWindows
+ PathRootProject
+
+ SaveEntriesUsingRelativePathsfalse
+
+
+ FileMappings
+
+ FileTypeTEXT
+ FileExtension.c
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.c++
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cc
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cp
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cpp
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.def
+ Compiler
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.h
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMaketrue
+
+
+ FileTypeTEXT
+ FileExtension.p
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pas
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pch
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pch++
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.ppu
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.rc
+ CompilerMW WinRC
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.res
+ CompilerWinRes Import
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.doc
+ Compiler
+ EditLanguage
+ Precompilefalse
+ Launchabletrue
+ ResourceFilefalse
+ IgnoredByMaketrue
+
+
+ FileExtension.lib
+ CompilerLib Import x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.obj
+ CompilerObj Import x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.res
+ CompilerWinRes Import
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+
+
+ CacheModDatestrue
+ ActivateBrowsertrue
+ DumpBrowserInfofalse
+ CacheSubprojectstrue
+ UseThirdPartyDebuggerfalse
+ DebuggerAppPath
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ DebuggerCmdLineArgs
+ DebuggerWorkingDir
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+
+
+ LogSystemMessagesfalse
+ AutoTargetDLLsfalse
+ StopAtWatchpointstrue
+ PauseWhileRunningfalse
+ PauseInterval5
+ PauseUIFlags0
+ AltExePath
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ StopAtTempBPOnLaunchtrue
+ CacheSymbolicstrue
+ TempBPFunctionNamemain
+ TempBPType0
+
+
+ Enabledfalse
+ ConnectionName
+ DownloadPath
+ LaunchRemoteAppfalse
+ RemoteAppPath
+
+
+ OtherExecutables
+
+
+ CustomColor1
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor2
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor3
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor4
+ Red0
+ Green32767
+ Blue0
+
+
+
+ MWCodeGen_X86_processorPentiumII
+ MWCodeGen_X86_alignmentbytes8
+ MWCodeGen_X86_exceptionsZeroOverhead
+ MWCodeGen_X86_extinst_mmx0
+ MWCodeGen_X86_extinst_3dnow0
+ MWCodeGen_X86_use_mmx_3dnow_convention0
+ MWCodeGen_X86_machinecodelisting0
+ MWCodeGen_X86_intrinsics0
+ MWCodeGen_X86_syminfo0
+ MWCodeGen_X86_codeviewinfo1
+ MWCodeGen_X86_extinst_cmov_fcomi0
+ MWCodeGen_X86_extinst_sse0
+
+
+ MWDebugger_X86_Exceptions
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+
+
+
+ PDisasmX86_showHeaderstrue
+ PDisasmX86_showSymTabtrue
+ PDisasmX86_showCodetrue
+ PDisasmX86_showSourcefalse
+ PDisasmX86_showHextrue
+ PDisasmX86_showRelocationtrue
+ PDisasmX86_showCommentsfalse
+ PDisasmX86_showDebugfalse
+ PDisasmX86_showExceptionsfalse
+ PDisasmX86_showDatatrue
+ PDisasmX86_showRawfalse
+ PDisasmX86_verbosefalse
+
+
+ MWFrontEnd_C_cplusplus1
+ MWFrontEnd_C_checkprotos0
+ MWFrontEnd_C_arm0
+ MWFrontEnd_C_trigraphs0
+ MWFrontEnd_C_onlystdkeywords0
+ MWFrontEnd_C_enumsalwaysint1
+ MWFrontEnd_C_mpwpointerstyle0
+ MWFrontEnd_C_prefixname
+ MWFrontEnd_C_ansistrict0
+ MWFrontEnd_C_mpwcnewline0
+ MWFrontEnd_C_wchar_type1
+ MWFrontEnd_C_enableexceptions1
+ MWFrontEnd_C_dontreusestrings0
+ MWFrontEnd_C_poolstrings1
+ MWFrontEnd_C_dontinline1
+ MWFrontEnd_C_useRTTI1
+ MWFrontEnd_C_multibyteaware1
+ MWFrontEnd_C_unsignedchars0
+ MWFrontEnd_C_autoinline0
+ MWFrontEnd_C_booltruefalse1
+ MWFrontEnd_C_direct_to_som0
+ MWFrontEnd_C_som_env_check0
+ MWFrontEnd_C_alwaysinline0
+ MWFrontEnd_C_inlinelevel0
+ MWFrontEnd_C_ecplusplus0
+ MWFrontEnd_C_objective_c0
+ MWFrontEnd_C_defer_codegen0
+
+
+ MWLinker_X86_entrypointusageDefault
+ MWLinker_X86_entrypoint
+ MWLinker_X86_subsystemWinGUI
+ MWLinker_X86_subsysmajorid4
+ MWLinker_X86_subsysminorid0
+ MWLinker_X86_usrmajorid0
+ MWLinker_X86_usrminorid0
+ MWLinker_X86_commandfile
+ MWLinker_X86_generatemap0
+ MWLinker_X86_linksym0
+ MWLinker_X86_linkCV1
+
+
+ MWProject_X86_typeApplication
+ MWProject_X86_outfileDebug\gta-vc.exe
+ MWProject_X86_baseaddress4194304
+ MWProject_X86_maxstacksize1024
+ MWProject_X86_minstacksize4
+ MWProject_X86_size1024
+ MWProject_X86_minsize4
+ MWProject_X86_importlib
+
+
+ MWWarning_C_warn_illpragma0
+ MWWarning_C_warn_emptydecl0
+ MWWarning_C_warn_possunwant1
+ MWWarning_C_warn_unusedvar1
+ MWWarning_C_warn_unusedarg0
+ MWWarning_C_warn_extracomma1
+ MWWarning_C_pedantic0
+ MWWarning_C_warningerrors0
+ MWWarning_C_warn_hidevirtual1
+ MWWarning_C_warn_implicitconv0
+ MWWarning_C_warn_notinlined0
+ MWWarning_C_warn_structclass0
+
+
+ MWWinRC_prefixnameResourcePrefix.h
+
+
+ GlobalOptimizer_X86__optimizationlevelLevel0
+ GlobalOptimizer_X86__optforSize
+
+
+
+ Name
+ Comdlg32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ Gdi32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ Kernel32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ User32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ MSL_All_x86_D.lib
+ MacOS
+ Unknown
+ Debug
+
+
+ Name
+ mss32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ d3d8.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ ddraw.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ dxguid.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ strmiids.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ dinput8.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ winmm.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rwcore.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpworld.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpmatfx.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpskin.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rphanim.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtbmp.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtquat.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtcharse.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ ole32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ shell32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ uuid.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtanim.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpanisot.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ AnimationId.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendAssocGroup.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendAssocGroup.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendAssociation.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendAssociation.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendClumpData.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendClumpData.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendHierarchy.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendHierarchy.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendList.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendNode.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendNode.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendSequence.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendSequence.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimManager.h
+ Windows
+ Text
+
+
+
+ Name
+ Bones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bones.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ FrameUpdate.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RpAnimBlend.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RpAnimBlend.h
+ Windows
+ Text
+
+
+
+ Name
+ audio_enums.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioCollision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioCollision.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioLogic.cpp
+ Windows
+ Text
+
+
+
+ Name
+ AudioManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioManager.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioSamples.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioScriptObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioScriptObject.h
+ Windows
+ Text
+
+
+
+ Name
+ DMAudio.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DMAudio.h
+ Windows
+ Text
+
+
+
+ Name
+ MusicManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MusicManager.h
+ Windows
+ Text
+
+
+
+ Name
+ PolRadio.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PolRadio.h
+ Windows
+ Text
+
+
+
+ Name
+ sampman.h
+ Windows
+ Text
+
+
+
+ Name
+ sampman_miles.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ soundlist.h
+ Windows
+ Text
+
+
+
+ Name
+ eax.h
+ Windows
+ Text
+
+
+
+ Name
+ eax-util.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ eax-util.h
+ Windows
+ Text
+
+
+
+ Name
+ Building.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Building.h
+ Windows
+ Text
+
+
+
+ Name
+ Solid.h
+ Windows
+ Text
+
+
+
+ Name
+ Treadable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Treadable.h
+ Windows
+ Text
+
+
+
+ Name
+ ColBox.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColBox.h
+ Windows
+ Text
+
+
+
+ Name
+ ColLine.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColLine.h
+ Windows
+ Text
+
+
+
+ Name
+ Collision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Collision.h
+ Windows
+ Text
+
+
+
+ Name
+ ColModel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColModel.h
+ Windows
+ Text
+
+
+
+ Name
+ ColPoint.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColPoint.h
+ Windows
+ Text
+
+
+
+ Name
+ ColSphere.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColSphere.h
+ Windows
+ Text
+
+
+
+ Name
+ ColStore.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColStore.h
+ Windows
+ Text
+
+
+
+ Name
+ ColTriangle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColTriangle.h
+ Windows
+ Text
+
+
+
+ Name
+ CompressedVector.h
+ Windows
+ Text
+
+
+
+ Name
+ TempColModels.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TempColModels.h
+ Windows
+ Text
+
+
+
+ Name
+ VuCollision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VuCollision.h
+ Windows
+ Text
+
+
+
+ Name
+ AutoPilot.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AutoPilot.h
+ Windows
+ Text
+
+
+
+ Name
+ Bridge.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bridge.h
+ Windows
+ Text
+
+
+
+ Name
+ CarAI.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarAI.h
+ Windows
+ Text
+
+
+
+ Name
+ CarCtrl.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarCtrl.h
+ Windows
+ Text
+
+
+
+ Name
+ Curves.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Curves.h
+ Windows
+ Text
+
+
+
+ Name
+ Darkel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Darkel.h
+ Windows
+ Text
+
+
+
+ Name
+ GameLogic.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ GameLogic.h
+ Windows
+ Text
+
+
+
+ Name
+ Garages.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Garages.h
+ Windows
+ Text
+
+
+
+ Name
+ NameGrid.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ NameGrid.h
+ Windows
+ Text
+
+
+
+ Name
+ OnscreenTimer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ OnscreenTimer.h
+ Windows
+ Text
+
+
+
+ Name
+ PathFind.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PathFind.h
+ Windows
+ Text
+
+
+
+ Name
+ Phones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Phones.h
+ Windows
+ Text
+
+
+
+ Name
+ Pickups.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pickups.h
+ Windows
+ Text
+
+
+
+ Name
+ PowerPoints.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PowerPoints.h
+ Windows
+ Text
+
+
+
+ Name
+ Record.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Record.h
+ Windows
+ Text
+
+
+
+ Name
+ Remote.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Remote.h
+ Windows
+ Text
+
+
+
+ Name
+ Replay.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Replay.h
+ Windows
+ Text
+
+
+
+ Name
+ Restart.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Restart.h
+ Windows
+ Text
+
+
+
+ Name
+ RoadBlocks.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RoadBlocks.h
+ Windows
+ Text
+
+
+
+ Name
+ SceneEdit.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SceneEdit.h
+ Windows
+ Text
+
+
+
+ Name
+ Script.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script.h
+ Windows
+ Text
+
+
+
+ Name
+ Script2.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script3.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script4.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script5.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script6.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script7.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script8.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ScriptCommands.h
+ Windows
+ Text
+
+
+
+ Name
+ SetPieces.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SetPieces.h
+ Windows
+ Text
+
+
+
+ Name
+ TrafficLights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TrafficLights.h
+ Windows
+ Text
+
+
+
+ Name
+ Accident.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Accident.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimViewer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimViewer.h
+ Windows
+ Text
+
+
+
+ Name
+ Cam.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Camera.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Camera.h
+ Windows
+ Text
+
+
+
+ Name
+ CdStream.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CdStream.h
+ Windows
+ Text
+
+
+
+ Name
+ CdStreamPosix.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clock.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clock.h
+ Windows
+ Text
+
+
+
+ Name
+ common.h
+ Windows
+ Text
+
+
+
+ Name
+ config.h
+ Windows
+ Text
+
+
+
+ Name
+ ControllerConfig.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ControllerConfig.h
+ Windows
+ Text
+
+
+
+ Name
+ Crime.h
+ Windows
+ Text
+
+
+
+ Name
+ Debug.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Debug.h
+ Windows
+ Text
+
+
+
+ Name
+ Directory.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Directory.h
+ Windows
+ Text
+
+
+
+ Name
+ EventList.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ EventList.h
+ Windows
+ Text
+
+
+
+ Name
+ FileLoader.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FileLoader.h
+ Windows
+ Text
+
+
+
+ Name
+ FileMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FileMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ Fire.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Fire.h
+ Windows
+ Text
+
+
+
+ Name
+ Frontend.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Frontend.h
+ Windows
+ Text
+
+
+
+ Name
+ Frontend_PS2.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Frontend_PS2.h
+ Windows
+ Text
+
+
+
+ Name
+ FrontEndControls.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FrontEndControls.h
+ Windows
+ Text
+
+
+
+ Name
+ FrontendTriggers.h
+ Windows
+ Text
+
+
+
+ Name
+ Game.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Game.h
+ Windows
+ Text
+
+
+
+ Name
+ General.h
+ Windows
+ Text
+
+
+
+ Name
+ IniFile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ IniFile.h
+ Windows
+ Text
+
+
+
+ Name
+ Lists.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lists.h
+ Windows
+ Text
+
+
+
+ Name
+ main.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ main.h
+ Windows
+ Text
+
+
+
+ Name
+ MenuScreens.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MenuScreensCustom.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ obrstr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ obrstr.h
+ Windows
+ Text
+
+
+
+ Name
+ Pad.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pad.h
+ Windows
+ Text
+
+
+
+ Name
+ Placeable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Placeable.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Pools.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pools.h
+ Windows
+ Text
+
+
+
+ Name
+ Profile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Profile.h
+ Windows
+ Text
+
+
+
+ Name
+ Radar.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Radar.h
+ Windows
+ Text
+
+
+
+ Name
+ Range2D.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Range2D.h
+ Windows
+ Text
+
+
+
+ Name
+ Range3D.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Range3D.h
+ Windows
+ Text
+
+
+
+ Name
+ re3.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ References.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ References.h
+ Windows
+ Text
+
+
+
+ Name
+ Ropes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Ropes.h
+ Windows
+ Text
+
+
+
+ Name
+ Stats.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Stats.h
+ Windows
+ Text
+
+
+
+ Name
+ Streaming.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Streaming.h
+ Windows
+ Text
+
+
+
+ Name
+ SurfaceTable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SurfaceTable.h
+ Windows
+ Text
+
+
+
+ Name
+ templates.h
+ Windows
+ Text
+
+
+
+ Name
+ timebars.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ timebars.h
+ Windows
+ Text
+
+
+
+ Name
+ Timer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Timer.h
+ Windows
+ Text
+
+
+
+ Name
+ TimeStep.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TimeStep.h
+ Windows
+ Text
+
+
+
+ Name
+ User.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ User.h
+ Windows
+ Text
+
+
+
+ Name
+ Wanted.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Wanted.h
+ Windows
+ Text
+
+
+
+ Name
+ World.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ World.h
+ Windows
+ Text
+
+
+
+ Name
+ ZoneCull.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ZoneCull.h
+ Windows
+ Text
+
+
+
+ Name
+ Zones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Zones.h
+ Windows
+ Text
+
+
+
+ Name
+ Dummy.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Dummy.h
+ Windows
+ Text
+
+
+
+ Name
+ Entity.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Entity.h
+ Windows
+ Text
+
+
+
+ Name
+ Physical.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Physical.h
+ Windows
+ Text
+
+
+
+ Name
+ math.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ maths.h
+ Windows
+ Text
+
+
+
+ Name
+ Matrix.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Matrix.h
+ Windows
+ Text
+
+
+
+ Name
+ Quaternion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Quaternion.h
+ Windows
+ Text
+
+
+
+ Name
+ Rect.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Rect.h
+ Windows
+ Text
+
+
+
+ Name
+ Vector.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Vector.h
+ Windows
+ Text
+
+
+
+ Name
+ Vector2D.h
+ Windows
+ Text
+
+
+
+ Name
+ VuVector.h
+ Windows
+ Text
+
+
+
+ Name
+ BaseModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ BaseModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ClumpModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ClumpModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ModelIndices.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ModelIndices.h
+ Windows
+ Text
+
+
+
+ Name
+ ModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ PedModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ SimpleModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SimpleModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ TimeModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TimeModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ VehicleModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VehicleModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneObject.h
+ Windows
+ Text
+
+
+
+ Name
+ DummyObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DummyObject.h
+ Windows
+ Text
+
+
+
+ Name
+ Object.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Object.h
+ Windows
+ Text
+
+
+
+ Name
+ ObjectData.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ObjectData.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ParticleObject.h
+ Windows
+ Text
+
+
+
+ Name
+ Projectile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Projectile.h
+ Windows
+ Text
+
+
+
+ Name
+ Stinger.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Stinger.h
+ Windows
+ Text
+
+
+
+ Name
+ CivilianPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CivilianPed.h
+ Windows
+ Text
+
+
+
+ Name
+ CopPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CopPed.h
+ Windows
+ Text
+
+
+
+ Name
+ DummyPed.h
+ Windows
+ Text
+
+
+
+ Name
+ EmergencyPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ EmergencyPed.h
+ Windows
+ Text
+
+
+
+ Name
+ Gangs.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Gangs.h
+ Windows
+ Text
+
+
+
+ Name
+ Ped.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Ped.h
+ Windows
+ Text
+
+
+
+ Name
+ PedAI.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedAttractor.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedAttractor.h
+ Windows
+ Text
+
+
+
+ Name
+ PedChat.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedDebug.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedFight.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedIK.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedIK.h
+ Windows
+ Text
+
+
+
+ Name
+ PedPlacement.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedPlacement.h
+ Windows
+ Text
+
+
+
+ Name
+ PedRoutes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedRoutes.h
+ Windows
+ Text
+
+
+
+ Name
+ PedType.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedType.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerPed.h
+ Windows
+ Text
+
+
+
+ Name
+ Population.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Population.h
+ Windows
+ Text
+
+
+
+ Name
+ 2dEffect.h
+ Windows
+ Text
+
+
+
+ Name
+ Antennas.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Antennas.h
+ Windows
+ Text
+
+
+
+ Name
+ Clouds.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clouds.h
+ Windows
+ Text
+
+
+
+ Name
+ Console.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Console.h
+ Windows
+ Text
+
+
+
+ Name
+ Coronas.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Coronas.h
+ Windows
+ Text
+
+
+
+ Name
+ Credits.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Credits.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneShadow.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneShadow.h
+ Windows
+ Text
+
+
+
+ Name
+ Draw.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Draw.h
+ Windows
+ Text
+
+
+
+ Name
+ Fluff.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Fluff.h
+ Windows
+ Text
+
+
+
+ Name
+ Font.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Font.h
+ Windows
+ Text
+
+
+
+ Name
+ Glass.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Glass.h
+ Windows
+ Text
+
+
+
+ Name
+ Hud.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Hud.h
+ Windows
+ Text
+
+
+
+ Name
+ Instance.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Instance.h
+ Windows
+ Text
+
+
+
+ Name
+ Lines.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lines.h
+ Windows
+ Text
+
+
+
+ Name
+ MBlur.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MBlur.h
+ Windows
+ Text
+
+
+
+ Name
+ Occlusion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Occlusion.h
+ Windows
+ Text
+
+
+
+ Name
+ Particle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Particle.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ParticleMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleType.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerSkin.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerSkin.h
+ Windows
+ Text
+
+
+
+ Name
+ PointLights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PointLights.h
+ Windows
+ Text
+
+
+
+ Name
+ RenderBuffer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RenderBuffer.h
+ Windows
+ Text
+
+
+
+ Name
+ Renderer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Renderer.h
+ Windows
+ Text
+
+
+
+ Name
+ Rubbish.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Rubbish.h
+ Windows
+ Text
+
+
+
+ Name
+ ShadowCamera.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ShadowCamera.h
+ Windows
+ Text
+
+
+
+ Name
+ Shadows.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Shadows.h
+ Windows
+ Text
+
+
+
+ Name
+ Skidmarks.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Skidmarks.h
+ Windows
+ Text
+
+
+
+ Name
+ SpecialFX.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SpecialFX.h
+ Windows
+ Text
+
+
+
+ Name
+ Sprite.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Sprite.h
+ Windows
+ Text
+
+
+
+ Name
+ Sprite2d.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Sprite2d.h
+ Windows
+ Text
+
+
+
+ Name
+ TexList.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexList.h
+ Windows
+ Text
+
+
+
+ Name
+ Timecycle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Timecycle.h
+ Windows
+ Text
+
+
+
+ Name
+ VarConsole.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VarConsole.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterCannon.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterCannon.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterCreatures.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterCreatures.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterLevel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterLevel.h
+ Windows
+ Text
+
+
+
+ Name
+ Weather.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Weather.h
+ Windows
+ Text
+
+
+
+ Name
+ WindModifiers.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WindModifiers.h
+ Windows
+ Text
+
+
+
+ Name
+ ClumpRead.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lights.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryHeap.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryHeap.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ NodeName.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ NodeName.h
+ Windows
+ Text
+
+
+
+ Name
+ RwHelper.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RwHelper.h
+ Windows
+ Text
+
+
+
+ Name
+ RwMatFX.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RwPS2AlphaTest.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexRead.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexturePools.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexturePools.h
+ Windows
+ Text
+
+
+
+ Name
+ TxdStore.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TxdStore.h
+ Windows
+ Text
+
+
+
+ Name
+ VisibilityPlugins.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VisibilityPlugins.h
+ Windows
+ Text
+
+
+
+ Name
+ Date.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Date.h
+ Windows
+ Text
+
+
+
+ Name
+ GenericGameStorage.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ GenericGameStorage.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryCard.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryCard.h
+ Windows
+ Text
+
+
+
+ Name
+ PCSave.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PCSave.h
+ Windows
+ Text
+
+
+
+ Name
+ crossplatform.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ crossplatform.h
+ Windows
+ Text
+
+
+
+ Name
+ events.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ events.h
+ Windows
+ Text
+
+
+
+ Name
+ platform.h
+ Windows
+ Text
+
+
+
+ Name
+ skeleton.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ skeleton.h
+ Windows
+ Text
+
+
+
+ Name
+ resource.h
+ Windows
+ Text
+
+
+
+ Name
+ win.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ win.h
+ Windows
+ Text
+
+
+
+ Name
+ win.rc
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Messages.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Messages.h
+ Windows
+ Text
+
+
+
+ Name
+ Pager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pager.h
+ Windows
+ Text
+
+
+
+ Name
+ Text.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Text.h
+ Windows
+ Text
+
+
+
+ Name
+ Automobile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Automobile.h
+ Windows
+ Text
+
+
+
+ Name
+ Bike.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bike.h
+ Windows
+ Text
+
+
+
+ Name
+ Boat.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Boat.h
+ Windows
+ Text
+
+
+
+ Name
+ CarGen.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarGen.h
+ Windows
+ Text
+
+
+
+ Name
+ Cranes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Cranes.h
+ Windows
+ Text
+
+
+
+ Name
+ DamageManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DamageManager.h
+ Windows
+ Text
+
+
+
+ Name
+ Door.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Door.h
+ Windows
+ Text
+
+
+
+ Name
+ Floater.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Floater.h
+ Windows
+ Text
+
+
+
+ Name
+ HandlingMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ HandlingMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ Heli.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Heli.h
+ Windows
+ Text
+
+
+
+ Name
+ Plane.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Plane.h
+ Windows
+ Text
+
+
+
+ Name
+ Train.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Train.h
+ Windows
+ Text
+
+
+
+ Name
+ Transmission.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Transmission.h
+ Windows
+ Text
+
+
+
+ Name
+ Vehicle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Vehicle.h
+ Windows
+ Text
+
+
+
+ Name
+ BulletInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ BulletInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Explosion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Explosion.h
+ Windows
+ Text
+
+
+
+ Name
+ ProjectileInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ProjectileInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ShotInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ShotInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Weapon.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Weapon.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponEffects.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponEffects.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponType.h
+ Windows
+ Text
+
+
+
+
+
+ Name
+ AnimationId.h
+ Windows
+
+
+ Name
+ AnimBlendAssocGroup.cpp
+ Windows
+
+
+ Name
+ AnimBlendAssocGroup.h
+ Windows
+
+
+ Name
+ AnimBlendAssociation.cpp
+ Windows
+
+
+ Name
+ AnimBlendAssociation.h
+ Windows
+
+
+ Name
+ AnimBlendClumpData.cpp
+ Windows
+
+
+ Name
+ AnimBlendClumpData.h
+ Windows
+
+
+ Name
+ AnimBlendHierarchy.cpp
+ Windows
+
+
+ Name
+ AnimBlendHierarchy.h
+ Windows
+
+
+ Name
+ AnimBlendList.h
+ Windows
+
+
+ Name
+ AnimBlendNode.cpp
+ Windows
+
+
+ Name
+ AnimBlendNode.h
+ Windows
+
+
+ Name
+ AnimBlendSequence.cpp
+ Windows
+
+
+ Name
+ AnimBlendSequence.h
+ Windows
+
+
+ Name
+ AnimManager.cpp
+ Windows
+
+
+ Name
+ AnimManager.h
+ Windows
+
+
+ Name
+ Bones.cpp
+ Windows
+
+
+ Name
+ Bones.h
+ Windows
+
+
+ Name
+ CutsceneMgr.cpp
+ Windows
+
+
+ Name
+ CutsceneMgr.h
+ Windows
+
+
+ Name
+ FrameUpdate.cpp
+ Windows
+
+
+ Name
+ RpAnimBlend.cpp
+ Windows
+
+
+ Name
+ RpAnimBlend.h
+ Windows
+
+
+ Name
+ audio_enums.h
+ Windows
+
+
+ Name
+ AudioCollision.cpp
+ Windows
+
+
+ Name
+ AudioCollision.h
+ Windows
+
+
+ Name
+ AudioLogic.cpp
+ Windows
+
+
+ Name
+ AudioManager.cpp
+ Windows
+
+
+ Name
+ AudioManager.h
+ Windows
+
+
+ Name
+ AudioSamples.h
+ Windows
+
+
+ Name
+ AudioScriptObject.cpp
+ Windows
+
+
+ Name
+ AudioScriptObject.h
+ Windows
+
+
+ Name
+ DMAudio.cpp
+ Windows
+
+
+ Name
+ DMAudio.h
+ Windows
+
+
+ Name
+ MusicManager.cpp
+ Windows
+
+
+ Name
+ MusicManager.h
+ Windows
+
+
+ Name
+ PolRadio.cpp
+ Windows
+
+
+ Name
+ PolRadio.h
+ Windows
+
+
+ Name
+ sampman.h
+ Windows
+
+
+ Name
+ sampman_miles.cpp
+ Windows
+
+
+ Name
+ soundlist.h
+ Windows
+
+
+ Name
+ eax.h
+ Windows
+
+
+ Name
+ eax-util.cpp
+ Windows
+
+
+ Name
+ eax-util.h
+ Windows
+
+
+ Name
+ Building.cpp
+ Windows
+
+
+ Name
+ Building.h
+ Windows
+
+
+ Name
+ Solid.h
+ Windows
+
+
+ Name
+ Treadable.cpp
+ Windows
+
+
+ Name
+ Treadable.h
+ Windows
+
+
+ Name
+ ColBox.cpp
+ Windows
+
+
+ Name
+ ColBox.h
+ Windows
+
+
+ Name
+ ColLine.cpp
+ Windows
+
+
+ Name
+ ColLine.h
+ Windows
+
+
+ Name
+ Collision.cpp
+ Windows
+
+
+ Name
+ Collision.h
+ Windows
+
+
+ Name
+ ColModel.cpp
+ Windows
+
+
+ Name
+ ColModel.h
+ Windows
+
+
+ Name
+ ColPoint.cpp
+ Windows
+
+
+ Name
+ ColPoint.h
+ Windows
+
+
+ Name
+ ColSphere.cpp
+ Windows
+
+
+ Name
+ ColSphere.h
+ Windows
+
+
+ Name
+ ColStore.cpp
+ Windows
+
+
+ Name
+ ColStore.h
+ Windows
+
+
+ Name
+ ColTriangle.cpp
+ Windows
+
+
+ Name
+ ColTriangle.h
+ Windows
+
+
+ Name
+ CompressedVector.h
+ Windows
+
+
+ Name
+ TempColModels.cpp
+ Windows
+
+
+ Name
+ TempColModels.h
+ Windows
+
+
+ Name
+ VuCollision.cpp
+ Windows
+
+
+ Name
+ VuCollision.h
+ Windows
+
+
+ Name
+ AutoPilot.cpp
+ Windows
+
+
+ Name
+ AutoPilot.h
+ Windows
+
+
+ Name
+ Bridge.cpp
+ Windows
+
+
+ Name
+ Bridge.h
+ Windows
+
+
+ Name
+ CarAI.cpp
+ Windows
+
+
+ Name
+ CarAI.h
+ Windows
+
+
+ Name
+ CarCtrl.cpp
+ Windows
+
+
+ Name
+ CarCtrl.h
+ Windows
+
+
+ Name
+ Curves.cpp
+ Windows
+
+
+ Name
+ Curves.h
+ Windows
+
+
+ Name
+ Darkel.cpp
+ Windows
+
+
+ Name
+ Darkel.h
+ Windows
+
+
+ Name
+ GameLogic.cpp
+ Windows
+
+
+ Name
+ GameLogic.h
+ Windows
+
+
+ Name
+ Garages.cpp
+ Windows
+
+
+ Name
+ Garages.h
+ Windows
+
+
+ Name
+ NameGrid.cpp
+ Windows
+
+
+ Name
+ NameGrid.h
+ Windows
+
+
+ Name
+ OnscreenTimer.cpp
+ Windows
+
+
+ Name
+ OnscreenTimer.h
+ Windows
+
+
+ Name
+ PathFind.cpp
+ Windows
+
+
+ Name
+ PathFind.h
+ Windows
+
+
+ Name
+ Phones.cpp
+ Windows
+
+
+ Name
+ Phones.h
+ Windows
+
+
+ Name
+ Pickups.cpp
+ Windows
+
+
+ Name
+ Pickups.h
+ Windows
+
+
+ Name
+ PowerPoints.cpp
+ Windows
+
+
+ Name
+ PowerPoints.h
+ Windows
+
+
+ Name
+ Record.cpp
+ Windows
+
+
+ Name
+ Record.h
+ Windows
+
+
+ Name
+ Remote.cpp
+ Windows
+
+
+ Name
+ Remote.h
+ Windows
+
+
+ Name
+ Replay.cpp
+ Windows
+
+
+ Name
+ Replay.h
+ Windows
+
+
+ Name
+ Restart.cpp
+ Windows
+
+
+ Name
+ Restart.h
+ Windows
+
+
+ Name
+ RoadBlocks.cpp
+ Windows
+
+
+ Name
+ RoadBlocks.h
+ Windows
+
+
+ Name
+ SceneEdit.cpp
+ Windows
+
+
+ Name
+ SceneEdit.h
+ Windows
+
+
+ Name
+ Script.cpp
+ Windows
+
+
+ Name
+ Script.h
+ Windows
+
+
+ Name
+ Script2.cpp
+ Windows
+
+
+ Name
+ Script3.cpp
+ Windows
+
+
+ Name
+ Script4.cpp
+ Windows
+
+
+ Name
+ Script5.cpp
+ Windows
+
+
+ Name
+ Script6.cpp
+ Windows
+
+
+ Name
+ Script7.cpp
+ Windows
+
+
+ Name
+ Script8.cpp
+ Windows
+
+
+ Name
+ ScriptCommands.h
+ Windows
+
+
+ Name
+ SetPieces.cpp
+ Windows
+
+
+ Name
+ SetPieces.h
+ Windows
+
+
+ Name
+ TrafficLights.cpp
+ Windows
+
+
+ Name
+ TrafficLights.h
+ Windows
+
+
+ Name
+ Accident.cpp
+ Windows
+
+
+ Name
+ Accident.h
+ Windows
+
+
+ Name
+ AnimViewer.cpp
+ Windows
+
+
+ Name
+ AnimViewer.h
+ Windows
+
+
+ Name
+ Cam.cpp
+ Windows
+
+
+ Name
+ Camera.cpp
+ Windows
+
+
+ Name
+ Camera.h
+ Windows
+
+
+ Name
+ CdStream.cpp
+ Windows
+
+
+ Name
+ CdStream.h
+ Windows
+
+
+ Name
+ CdStreamPosix.cpp
+ Windows
+
+
+ Name
+ Clock.cpp
+ Windows
+
+
+ Name
+ Clock.h
+ Windows
+
+
+ Name
+ common.h
+ Windows
+
+
+ Name
+ config.h
+ Windows
+
+
+ Name
+ ControllerConfig.cpp
+ Windows
+
+
+ Name
+ ControllerConfig.h
+ Windows
+
+
+ Name
+ Crime.h
+ Windows
+
+
+ Name
+ Debug.cpp
+ Windows
+
+
+ Name
+ Debug.h
+ Windows
+
+
+ Name
+ Directory.cpp
+ Windows
+
+
+ Name
+ Directory.h
+ Windows
+
+
+ Name
+ EventList.cpp
+ Windows
+
+
+ Name
+ EventList.h
+ Windows
+
+
+ Name
+ FileLoader.cpp
+ Windows
+
+
+ Name
+ FileLoader.h
+ Windows
+
+
+ Name
+ FileMgr.cpp
+ Windows
+
+
+ Name
+ FileMgr.h
+ Windows
+
+
+ Name
+ Fire.cpp
+ Windows
+
+
+ Name
+ Fire.h
+ Windows
+
+
+ Name
+ Frontend.cpp
+ Windows
+
+
+ Name
+ Frontend.h
+ Windows
+
+
+ Name
+ Frontend_PS2.cpp
+ Windows
+
+
+ Name
+ Frontend_PS2.h
+ Windows
+
+
+ Name
+ FrontEndControls.cpp
+ Windows
+
+
+ Name
+ FrontEndControls.h
+ Windows
+
+
+ Name
+ FrontendTriggers.h
+ Windows
+
+
+ Name
+ Game.cpp
+ Windows
+
+
+ Name
+ Game.h
+ Windows
+
+
+ Name
+ General.h
+ Windows
+
+
+ Name
+ IniFile.cpp
+ Windows
+
+
+ Name
+ IniFile.h
+ Windows
+
+
+ Name
+ Lists.cpp
+ Windows
+
+
+ Name
+ Lists.h
+ Windows
+
+
+ Name
+ main.cpp
+ Windows
+
+
+ Name
+ main.h
+ Windows
+
+
+ Name
+ MenuScreens.cpp
+ Windows
+
+
+ Name
+ MenuScreensCustom.cpp
+ Windows
+
+
+ Name
+ obrstr.cpp
+ Windows
+
+
+ Name
+ obrstr.h
+ Windows
+
+
+ Name
+ Pad.cpp
+ Windows
+
+
+ Name
+ Pad.h
+ Windows
+
+
+ Name
+ Placeable.cpp
+ Windows
+
+
+ Name
+ Placeable.h
+ Windows
+
+
+ Name
+ PlayerInfo.cpp
+ Windows
+
+
+ Name
+ PlayerInfo.h
+ Windows
+
+
+ Name
+ Pools.cpp
+ Windows
+
+
+ Name
+ Pools.h
+ Windows
+
+
+ Name
+ Profile.cpp
+ Windows
+
+
+ Name
+ Profile.h
+ Windows
+
+
+ Name
+ Radar.cpp
+ Windows
+
+
+ Name
+ Radar.h
+ Windows
+
+
+ Name
+ Range2D.cpp
+ Windows
+
+
+ Name
+ Range2D.h
+ Windows
+
+
+ Name
+ Range3D.cpp
+ Windows
+
+
+ Name
+ Range3D.h
+ Windows
+
+
+ Name
+ re3.cpp
+ Windows
+
+
+ Name
+ References.cpp
+ Windows
+
+
+ Name
+ References.h
+ Windows
+
+
+ Name
+ Ropes.cpp
+ Windows
+
+
+ Name
+ Ropes.h
+ Windows
+
+
+ Name
+ Stats.cpp
+ Windows
+
+
+ Name
+ Stats.h
+ Windows
+
+
+ Name
+ Streaming.cpp
+ Windows
+
+
+ Name
+ Streaming.h
+ Windows
+
+
+ Name
+ SurfaceTable.cpp
+ Windows
+
+
+ Name
+ SurfaceTable.h
+ Windows
+
+
+ Name
+ templates.h
+ Windows
+
+
+ Name
+ timebars.cpp
+ Windows
+
+
+ Name
+ timebars.h
+ Windows
+
+
+ Name
+ Timer.cpp
+ Windows
+
+
+ Name
+ Timer.h
+ Windows
+
+
+ Name
+ TimeStep.cpp
+ Windows
+
+
+ Name
+ TimeStep.h
+ Windows
+
+
+ Name
+ User.cpp
+ Windows
+
+
+ Name
+ User.h
+ Windows
+
+
+ Name
+ Wanted.cpp
+ Windows
+
+
+ Name
+ Wanted.h
+ Windows
+
+
+ Name
+ World.cpp
+ Windows
+
+
+ Name
+ World.h
+ Windows
+
+
+ Name
+ ZoneCull.cpp
+ Windows
+
+
+ Name
+ ZoneCull.h
+ Windows
+
+
+ Name
+ Zones.cpp
+ Windows
+
+
+ Name
+ Zones.h
+ Windows
+
+
+ Name
+ Dummy.cpp
+ Windows
+
+
+ Name
+ Dummy.h
+ Windows
+
+
+ Name
+ Entity.cpp
+ Windows
+
+
+ Name
+ Entity.h
+ Windows
+
+
+ Name
+ Physical.cpp
+ Windows
+
+
+ Name
+ Physical.h
+ Windows
+
+
+ Name
+ math.cpp
+ Windows
+
+
+ Name
+ maths.h
+ Windows
+
+
+ Name
+ Matrix.cpp
+ Windows
+
+
+ Name
+ Matrix.h
+ Windows
+
+
+ Name
+ Quaternion.cpp
+ Windows
+
+
+ Name
+ Quaternion.h
+ Windows
+
+
+ Name
+ Rect.cpp
+ Windows
+
+
+ Name
+ Rect.h
+ Windows
+
+
+ Name
+ Vector.cpp
+ Windows
+
+
+ Name
+ Vector.h
+ Windows
+
+
+ Name
+ Vector2D.h
+ Windows
+
+
+ Name
+ VuVector.h
+ Windows
+
+
+ Name
+ BaseModelInfo.cpp
+ Windows
+
+
+ Name
+ BaseModelInfo.h
+ Windows
+
+
+ Name
+ ClumpModelInfo.cpp
+ Windows
+
+
+ Name
+ ClumpModelInfo.h
+ Windows
+
+
+ Name
+ ModelIndices.cpp
+ Windows
+
+
+ Name
+ ModelIndices.h
+ Windows
+
+
+ Name
+ ModelInfo.cpp
+ Windows
+
+
+ Name
+ ModelInfo.h
+ Windows
+
+
+ Name
+ PedModelInfo.cpp
+ Windows
+
+
+ Name
+ PedModelInfo.h
+ Windows
+
+
+ Name
+ SimpleModelInfo.cpp
+ Windows
+
+
+ Name
+ SimpleModelInfo.h
+ Windows
+
+
+ Name
+ TimeModelInfo.cpp
+ Windows
+
+
+ Name
+ TimeModelInfo.h
+ Windows
+
+
+ Name
+ VehicleModelInfo.cpp
+ Windows
+
+
+ Name
+ VehicleModelInfo.h
+ Windows
+
+
+ Name
+ WeaponModelInfo.cpp
+ Windows
+
+
+ Name
+ WeaponModelInfo.h
+ Windows
+
+
+ Name
+ CutsceneObject.cpp
+ Windows
+
+
+ Name
+ CutsceneObject.h
+ Windows
+
+
+ Name
+ DummyObject.cpp
+ Windows
+
+
+ Name
+ DummyObject.h
+ Windows
+
+
+ Name
+ Object.cpp
+ Windows
+
+
+ Name
+ Object.h
+ Windows
+
+
+ Name
+ ObjectData.cpp
+ Windows
+
+
+ Name
+ ObjectData.h
+ Windows
+
+
+ Name
+ ParticleObject.cpp
+ Windows
+
+
+ Name
+ ParticleObject.h
+ Windows
+
+
+ Name
+ Projectile.cpp
+ Windows
+
+
+ Name
+ Projectile.h
+ Windows
+
+
+ Name
+ Stinger.cpp
+ Windows
+
+
+ Name
+ Stinger.h
+ Windows
+
+
+ Name
+ CivilianPed.cpp
+ Windows
+
+
+ Name
+ CivilianPed.h
+ Windows
+
+
+ Name
+ CopPed.cpp
+ Windows
+
+
+ Name
+ CopPed.h
+ Windows
+
+
+ Name
+ DummyPed.h
+ Windows
+
+
+ Name
+ EmergencyPed.cpp
+ Windows
+
+
+ Name
+ EmergencyPed.h
+ Windows
+
+
+ Name
+ Gangs.cpp
+ Windows
+
+
+ Name
+ Gangs.h
+ Windows
+
+
+ Name
+ Ped.cpp
+ Windows
+
+
+ Name
+ Ped.h
+ Windows
+
+
+ Name
+ PedAI.cpp
+ Windows
+
+
+ Name
+ PedAttractor.cpp
+ Windows
+
+
+ Name
+ PedAttractor.h
+ Windows
+
+
+ Name
+ PedChat.cpp
+ Windows
+
+
+ Name
+ PedDebug.cpp
+ Windows
+
+
+ Name
+ PedFight.cpp
+ Windows
+
+
+ Name
+ PedIK.cpp
+ Windows
+
+
+ Name
+ PedIK.h
+ Windows
+
+
+ Name
+ PedPlacement.cpp
+ Windows
+
+
+ Name
+ PedPlacement.h
+ Windows
+
+
+ Name
+ PedRoutes.cpp
+ Windows
+
+
+ Name
+ PedRoutes.h
+ Windows
+
+
+ Name
+ PedType.cpp
+ Windows
+
+
+ Name
+ PedType.h
+ Windows
+
+
+ Name
+ PlayerPed.cpp
+ Windows
+
+
+ Name
+ PlayerPed.h
+ Windows
+
+
+ Name
+ Population.cpp
+ Windows
+
+
+ Name
+ Population.h
+ Windows
+
+
+ Name
+ 2dEffect.h
+ Windows
+
+
+ Name
+ Antennas.cpp
+ Windows
+
+
+ Name
+ Antennas.h
+ Windows
+
+
+ Name
+ Clouds.cpp
+ Windows
+
+
+ Name
+ Clouds.h
+ Windows
+
+
+ Name
+ Console.cpp
+ Windows
+
+
+ Name
+ Console.h
+ Windows
+
+
+ Name
+ Coronas.cpp
+ Windows
+
+
+ Name
+ Coronas.h
+ Windows
+
+
+ Name
+ Credits.cpp
+ Windows
+
+
+ Name
+ Credits.h
+ Windows
+
+
+ Name
+ CutsceneShadow.cpp
+ Windows
+
+
+ Name
+ CutsceneShadow.h
+ Windows
+
+
+ Name
+ Draw.cpp
+ Windows
+
+
+ Name
+ Draw.h
+ Windows
+
+
+ Name
+ Fluff.cpp
+ Windows
+
+
+ Name
+ Fluff.h
+ Windows
+
+
+ Name
+ Font.cpp
+ Windows
+
+
+ Name
+ Font.h
+ Windows
+
+
+ Name
+ Glass.cpp
+ Windows
+
+
+ Name
+ Glass.h
+ Windows
+
+
+ Name
+ Hud.cpp
+ Windows
+
+
+ Name
+ Hud.h
+ Windows
+
+
+ Name
+ Instance.cpp
+ Windows
+
+
+ Name
+ Instance.h
+ Windows
+
+
+ Name
+ Lines.cpp
+ Windows
+
+
+ Name
+ Lines.h
+ Windows
+
+
+ Name
+ MBlur.cpp
+ Windows
+
+
+ Name
+ MBlur.h
+ Windows
+
+
+ Name
+ Occlusion.cpp
+ Windows
+
+
+ Name
+ Occlusion.h
+ Windows
+
+
+ Name
+ Particle.cpp
+ Windows
+
+
+ Name
+ Particle.h
+ Windows
+
+
+ Name
+ ParticleMgr.cpp
+ Windows
+
+
+ Name
+ ParticleMgr.h
+ Windows
+
+
+ Name
+ ParticleType.h
+ Windows
+
+
+ Name
+ PlayerSkin.cpp
+ Windows
+
+
+ Name
+ PlayerSkin.h
+ Windows
+
+
+ Name
+ PointLights.cpp
+ Windows
+
+
+ Name
+ PointLights.h
+ Windows
+
+
+ Name
+ RenderBuffer.cpp
+ Windows
+
+
+ Name
+ RenderBuffer.h
+ Windows
+
+
+ Name
+ Renderer.cpp
+ Windows
+
+
+ Name
+ Renderer.h
+ Windows
+
+
+ Name
+ Rubbish.cpp
+ Windows
+
+
+ Name
+ Rubbish.h
+ Windows
+
+
+ Name
+ ShadowCamera.cpp
+ Windows
+
+
+ Name
+ ShadowCamera.h
+ Windows
+
+
+ Name
+ Shadows.cpp
+ Windows
+
+
+ Name
+ Shadows.h
+ Windows
+
+
+ Name
+ Skidmarks.cpp
+ Windows
+
+
+ Name
+ Skidmarks.h
+ Windows
+
+
+ Name
+ SpecialFX.cpp
+ Windows
+
+
+ Name
+ SpecialFX.h
+ Windows
+
+
+ Name
+ Sprite.cpp
+ Windows
+
+
+ Name
+ Sprite.h
+ Windows
+
+
+ Name
+ Sprite2d.cpp
+ Windows
+
+
+ Name
+ Sprite2d.h
+ Windows
+
+
+ Name
+ TexList.cpp
+ Windows
+
+
+ Name
+ TexList.h
+ Windows
+
+
+ Name
+ Timecycle.cpp
+ Windows
+
+
+ Name
+ Timecycle.h
+ Windows
+
+
+ Name
+ VarConsole.cpp
+ Windows
+
+
+ Name
+ VarConsole.h
+ Windows
+
+
+ Name
+ WaterCannon.cpp
+ Windows
+
+
+ Name
+ WaterCannon.h
+ Windows
+
+
+ Name
+ WaterCreatures.cpp
+ Windows
+
+
+ Name
+ WaterCreatures.h
+ Windows
+
+
+ Name
+ WaterLevel.cpp
+ Windows
+
+
+ Name
+ WaterLevel.h
+ Windows
+
+
+ Name
+ Weather.cpp
+ Windows
+
+
+ Name
+ Weather.h
+ Windows
+
+
+ Name
+ WindModifiers.cpp
+ Windows
+
+
+ Name
+ WindModifiers.h
+ Windows
+
+
+ Name
+ ClumpRead.cpp
+ Windows
+
+
+ Name
+ Lights.cpp
+ Windows
+
+
+ Name
+ Lights.h
+ Windows
+
+
+ Name
+ MemoryHeap.cpp
+ Windows
+
+
+ Name
+ MemoryHeap.h
+ Windows
+
+
+ Name
+ MemoryMgr.cpp
+ Windows
+
+
+ Name
+ MemoryMgr.h
+ Windows
+
+
+ Name
+ NodeName.cpp
+ Windows
+
+
+ Name
+ NodeName.h
+ Windows
+
+
+ Name
+ RwHelper.cpp
+ Windows
+
+
+ Name
+ RwHelper.h
+ Windows
+
+
+ Name
+ RwMatFX.cpp
+ Windows
+
+
+ Name
+ RwPS2AlphaTest.cpp
+ Windows
+
+
+ Name
+ TexRead.cpp
+ Windows
+
+
+ Name
+ TexturePools.cpp
+ Windows
+
+
+ Name
+ TexturePools.h
+ Windows
+
+
+ Name
+ TxdStore.cpp
+ Windows
+
+
+ Name
+ TxdStore.h
+ Windows
+
+
+ Name
+ VisibilityPlugins.cpp
+ Windows
+
+
+ Name
+ VisibilityPlugins.h
+ Windows
+
+
+ Name
+ Date.cpp
+ Windows
+
+
+ Name
+ Date.h
+ Windows
+
+
+ Name
+ GenericGameStorage.cpp
+ Windows
+
+
+ Name
+ GenericGameStorage.h
+ Windows
+
+
+ Name
+ MemoryCard.cpp
+ Windows
+
+
+ Name
+ MemoryCard.h
+ Windows
+
+
+ Name
+ PCSave.cpp
+ Windows
+
+
+ Name
+ PCSave.h
+ Windows
+
+
+ Name
+ crossplatform.cpp
+ Windows
+
+
+ Name
+ crossplatform.h
+ Windows
+
+
+ Name
+ events.cpp
+ Windows
+
+
+ Name
+ events.h
+ Windows
+
+
+ Name
+ platform.h
+ Windows
+
+
+ Name
+ skeleton.cpp
+ Windows
+
+
+ Name
+ skeleton.h
+ Windows
+
+
+ Name
+ resource.h
+ Windows
+
+
+ Name
+ win.cpp
+ Windows
+
+
+ Name
+ win.h
+ Windows
+
+
+ Name
+ win.rc
+ Windows
+
+
+ Name
+ Messages.cpp
+ Windows
+
+
+ Name
+ Messages.h
+ Windows
+
+
+ Name
+ Pager.cpp
+ Windows
+
+
+ Name
+ Pager.h
+ Windows
+
+
+ Name
+ Text.cpp
+ Windows
+
+
+ Name
+ Text.h
+ Windows
+
+
+ Name
+ Automobile.cpp
+ Windows
+
+
+ Name
+ Automobile.h
+ Windows
+
+
+ Name
+ Bike.cpp
+ Windows
+
+
+ Name
+ Bike.h
+ Windows
+
+
+ Name
+ Boat.cpp
+ Windows
+
+
+ Name
+ Boat.h
+ Windows
+
+
+ Name
+ CarGen.cpp
+ Windows
+
+
+ Name
+ CarGen.h
+ Windows
+
+
+ Name
+ Cranes.cpp
+ Windows
+
+
+ Name
+ Cranes.h
+ Windows
+
+
+ Name
+ DamageManager.cpp
+ Windows
+
+
+ Name
+ DamageManager.h
+ Windows
+
+
+ Name
+ Door.cpp
+ Windows
+
+
+ Name
+ Door.h
+ Windows
+
+
+ Name
+ Floater.cpp
+ Windows
+
+
+ Name
+ Floater.h
+ Windows
+
+
+ Name
+ HandlingMgr.cpp
+ Windows
+
+
+ Name
+ HandlingMgr.h
+ Windows
+
+
+ Name
+ Heli.cpp
+ Windows
+
+
+ Name
+ Heli.h
+ Windows
+
+
+ Name
+ Plane.cpp
+ Windows
+
+
+ Name
+ Plane.h
+ Windows
+
+
+ Name
+ Train.cpp
+ Windows
+
+
+ Name
+ Train.h
+ Windows
+
+
+ Name
+ Transmission.cpp
+ Windows
+
+
+ Name
+ Transmission.h
+ Windows
+
+
+ Name
+ Vehicle.cpp
+ Windows
+
+
+ Name
+ Vehicle.h
+ Windows
+
+
+ Name
+ BulletInfo.cpp
+ Windows
+
+
+ Name
+ BulletInfo.h
+ Windows
+
+
+ Name
+ Explosion.cpp
+ Windows
+
+
+ Name
+ Explosion.h
+ Windows
+
+
+ Name
+ ProjectileInfo.cpp
+ Windows
+
+
+ Name
+ ProjectileInfo.h
+ Windows
+
+
+ Name
+ ShotInfo.cpp
+ Windows
+
+
+ Name
+ ShotInfo.h
+ Windows
+
+
+ Name
+ Weapon.cpp
+ Windows
+
+
+ Name
+ Weapon.h
+ Windows
+
+
+ Name
+ WeaponEffects.cpp
+ Windows
+
+
+ Name
+ WeaponEffects.h
+ Windows
+
+
+ Name
+ WeaponInfo.cpp
+ Windows
+
+
+ Name
+ WeaponInfo.h
+ Windows
+
+
+ Name
+ WeaponType.h
+ Windows
+
+
+ Name
+ mss32.lib
+ Windows
+
+
+ Name
+ d3d8.lib
+ Windows
+
+
+ Name
+ ddraw.lib
+ Windows
+
+
+ Name
+ dxguid.lib
+ Windows
+
+
+ Name
+ strmiids.lib
+ Windows
+
+
+ Name
+ dinput8.lib
+ Windows
+
+
+ Name
+ winmm.lib
+ Windows
+
+
+ Name
+ rwcore.lib
+ Windows
+
+
+ Name
+ rpworld.lib
+ Windows
+
+
+ Name
+ rpmatfx.lib
+ Windows
+
+
+ Name
+ rpskin.lib
+ Windows
+
+
+ Name
+ rphanim.lib
+ Windows
+
+
+ Name
+ rtbmp.lib
+ Windows
+
+
+ Name
+ rtquat.lib
+ Windows
+
+
+ Name
+ rtcharse.lib
+ Windows
+
+
+ Name
+ rtanim.lib
+ Windows
+
+
+ Name
+ rpanisot.lib
+ Windows
+
+
+ Name
+ MSL_All_x86_D.lib
+ MacOS
+
+
+ Name
+ Comdlg32.lib
+ MacOS
+
+
+ Name
+ Gdi32.lib
+ MacOS
+
+
+ Name
+ Kernel32.lib
+ MacOS
+
+
+ Name
+ User32.lib
+ MacOS
+
+
+ Name
+ ole32.lib
+ Windows
+
+
+ Name
+ shell32.lib
+ Windows
+
+
+ Name
+ uuid.lib
+ Windows
+
+
+
+
+ Release
+
+
+
+ UserSourceTrees
+
+
+ AlwaysSearchUserPathsfalse
+ InterpretDOSAndUnixPathstrue
+ RequireFrameworkStyleIncludesfalse
+ UserSearchPaths
+
+ SearchPath
+ Path
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\animation
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\audio
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\buildings
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\collision
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\control
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\core
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\entities
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\math
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\modelinfo
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\objects
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\peds
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\render
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\rw
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\save
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\skel
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\text
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\vehicles
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\weapons
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\vendor\milessdk\lib
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\vendor\milessdk\include
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\dx8sdk\Lib
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\rwsdk\lib\d3d8\release
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\rwsdk\include\d3d8
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\extras
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SystemSearchPaths
+
+ SearchPath
+ Path..\sdk\rwsdk\include\d3d8
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\sdk\dx8sdk\Include
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathWin32-x86 Support\Headers\
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathWin32-x86 Support\Libraries\
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ PathMSL
+ PathFormatWindows
+ PathRootCodeWarrior
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+ SearchPath
+ Path..\src\audio\eax
+ PathFormatWindows
+ PathRootProject
+
+ Recursivetrue
+ FrameworkPathfalse
+ HostFlagsAll
+
+
+
+
+ MWRuntimeSettings_WorkingDirectory
+ MWRuntimeSettings_CommandLine
+ MWRuntimeSettings_HostApplication
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ MWRuntimeSettings_EnvVars
+
+
+ LinkerWin32 x86 Linker
+ PreLinker
+ PostLinker
+ TargetnameRelease
+ OutputDirectory
+ Path
+ PathFormatWindows
+ PathRootProject
+
+ SaveEntriesUsingRelativePathsfalse
+
+
+ FileMappings
+
+ FileTypeTEXT
+ FileExtension.c
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.c++
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cc
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cp
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.cpp
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.def
+ Compiler
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.h
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMaketrue
+
+
+ FileTypeTEXT
+ FileExtension.p
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pas
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pch
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.pch++
+ CompilerMW C/C++ x86
+ EditLanguageC/C++
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.ppu
+ CompilerMW Pascal x86
+ EditLanguage
+ Precompiletrue
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.rc
+ CompilerMW WinRC
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileTypeTEXT
+ FileExtension.res
+ CompilerWinRes Import
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.doc
+ Compiler
+ EditLanguage
+ Precompilefalse
+ Launchabletrue
+ ResourceFilefalse
+ IgnoredByMaketrue
+
+
+ FileExtension.lib
+ CompilerLib Import x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.obj
+ CompilerObj Import x86
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+ FileExtension.res
+ CompilerWinRes Import
+ EditLanguage
+ Precompilefalse
+ Launchablefalse
+ ResourceFilefalse
+ IgnoredByMakefalse
+
+
+
+
+ CacheModDatestrue
+ ActivateBrowserfalse
+ DumpBrowserInfofalse
+ CacheSubprojectstrue
+ UseThirdPartyDebuggerfalse
+ DebuggerAppPath
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ DebuggerCmdLineArgs
+ DebuggerWorkingDir
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+
+
+ LogSystemMessagesfalse
+ AutoTargetDLLsfalse
+ StopAtWatchpointstrue
+ PauseWhileRunningfalse
+ PauseInterval5
+ PauseUIFlags0
+ AltExePath
+ Path
+ PathFormatGeneric
+ PathRootAbsolute
+
+ StopAtTempBPOnLaunchtrue
+ CacheSymbolicstrue
+ TempBPFunctionNamemain
+ TempBPType0
+
+
+ Enabledfalse
+ ConnectionName
+ DownloadPath
+ LaunchRemoteAppfalse
+ RemoteAppPath
+
+
+ OtherExecutables
+
+
+ CustomColor1
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor2
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor3
+ Red0
+ Green32767
+ Blue0
+
+ CustomColor4
+ Red0
+ Green32767
+ Blue0
+
+
+
+ MWCodeGen_X86_processorPentiumII
+ MWCodeGen_X86_alignmentbytes8
+ MWCodeGen_X86_exceptionsZeroOverhead
+ MWCodeGen_X86_extinst_mmx0
+ MWCodeGen_X86_extinst_3dnow0
+ MWCodeGen_X86_use_mmx_3dnow_convention0
+ MWCodeGen_X86_machinecodelisting0
+ MWCodeGen_X86_intrinsics1
+ MWCodeGen_X86_syminfo0
+ MWCodeGen_X86_codeviewinfo1
+ MWCodeGen_X86_extinst_cmov_fcomi0
+ MWCodeGen_X86_extinst_sse0
+
+
+ MWDebugger_X86_Exceptions
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+
+
+
+ PDisasmX86_showHeaderstrue
+ PDisasmX86_showSymTabtrue
+ PDisasmX86_showCodetrue
+ PDisasmX86_showSourcefalse
+ PDisasmX86_showHextrue
+ PDisasmX86_showRelocationtrue
+ PDisasmX86_showCommentsfalse
+ PDisasmX86_showDebugfalse
+ PDisasmX86_showExceptionsfalse
+ PDisasmX86_showDatatrue
+ PDisasmX86_showRawfalse
+ PDisasmX86_verbosefalse
+
+
+ MWFrontEnd_C_cplusplus1
+ MWFrontEnd_C_checkprotos0
+ MWFrontEnd_C_arm0
+ MWFrontEnd_C_trigraphs0
+ MWFrontEnd_C_onlystdkeywords0
+ MWFrontEnd_C_enumsalwaysint1
+ MWFrontEnd_C_mpwpointerstyle0
+ MWFrontEnd_C_prefixname
+ MWFrontEnd_C_ansistrict0
+ MWFrontEnd_C_mpwcnewline0
+ MWFrontEnd_C_wchar_type1
+ MWFrontEnd_C_enableexceptions1
+ MWFrontEnd_C_dontreusestrings0
+ MWFrontEnd_C_poolstrings1
+ MWFrontEnd_C_dontinline0
+ MWFrontEnd_C_useRTTI1
+ MWFrontEnd_C_multibyteaware1
+ MWFrontEnd_C_unsignedchars0
+ MWFrontEnd_C_autoinline1
+ MWFrontEnd_C_booltruefalse1
+ MWFrontEnd_C_direct_to_som0
+ MWFrontEnd_C_som_env_check0
+ MWFrontEnd_C_alwaysinline0
+ MWFrontEnd_C_inlinelevel0
+ MWFrontEnd_C_ecplusplus0
+ MWFrontEnd_C_objective_c0
+ MWFrontEnd_C_defer_codegen0
+
+
+ MWLinker_X86_entrypointusageDefault
+ MWLinker_X86_entrypoint
+ MWLinker_X86_subsystemWinGUI
+ MWLinker_X86_subsysmajorid4
+ MWLinker_X86_subsysminorid0
+ MWLinker_X86_usrmajorid0
+ MWLinker_X86_usrminorid0
+ MWLinker_X86_commandfile
+ MWLinker_X86_generatemap0
+ MWLinker_X86_linksym0
+ MWLinker_X86_linkCV1
+
+
+ MWProject_X86_typeApplication
+ MWProject_X86_outfileRelease\gta-vc.exe
+ MWProject_X86_baseaddress4194304
+ MWProject_X86_maxstacksize1024
+ MWProject_X86_minstacksize4
+ MWProject_X86_size1024
+ MWProject_X86_minsize4
+ MWProject_X86_importlib
+
+
+ MWWarning_C_warn_illpragma0
+ MWWarning_C_warn_emptydecl0
+ MWWarning_C_warn_possunwant1
+ MWWarning_C_warn_unusedvar1
+ MWWarning_C_warn_unusedarg0
+ MWWarning_C_warn_extracomma1
+ MWWarning_C_pedantic0
+ MWWarning_C_warningerrors0
+ MWWarning_C_warn_hidevirtual1
+ MWWarning_C_warn_implicitconv0
+ MWWarning_C_warn_notinlined0
+ MWWarning_C_warn_structclass0
+
+
+ MWWinRC_prefixnameResourcePrefix.h
+
+
+ GlobalOptimizer_X86__optimizationlevelLevel4
+ GlobalOptimizer_X86__optforSpeed
+
+
+
+ Name
+ MSL_All_x86.lib
+ MacOS
+ Library
+
+
+
+ Name
+ Comdlg32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ Gdi32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ Kernel32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ User32.lib
+ MacOS
+ Library
+
+
+
+ Name
+ mss32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ d3d8.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ ddraw.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ dxguid.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ strmiids.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ dinput8.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ winmm.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rwcore.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpworld.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpmatfx.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpskin.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rphanim.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtbmp.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtquat.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtcharse.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ ole32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ shell32.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ uuid.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rtanim.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ rpanisot.lib
+ Windows
+ Library
+ Debug
+
+
+ Name
+ AnimationId.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendAssocGroup.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendAssocGroup.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendAssociation.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendAssociation.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendClumpData.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendClumpData.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendHierarchy.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendHierarchy.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendList.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendNode.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendNode.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimBlendSequence.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimBlendSequence.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimManager.h
+ Windows
+ Text
+
+
+
+ Name
+ Bones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bones.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ FrameUpdate.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RpAnimBlend.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RpAnimBlend.h
+ Windows
+ Text
+
+
+
+ Name
+ audio_enums.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioCollision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioCollision.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioLogic.cpp
+ Windows
+ Text
+
+
+
+ Name
+ AudioManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioManager.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioSamples.h
+ Windows
+ Text
+
+
+
+ Name
+ AudioScriptObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AudioScriptObject.h
+ Windows
+ Text
+
+
+
+ Name
+ DMAudio.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DMAudio.h
+ Windows
+ Text
+
+
+
+ Name
+ MusicManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MusicManager.h
+ Windows
+ Text
+
+
+
+ Name
+ PolRadio.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PolRadio.h
+ Windows
+ Text
+
+
+
+ Name
+ sampman.h
+ Windows
+ Text
+
+
+
+ Name
+ sampman_miles.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ soundlist.h
+ Windows
+ Text
+
+
+
+ Name
+ eax.h
+ Windows
+ Text
+
+
+
+ Name
+ eax-util.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ eax-util.h
+ Windows
+ Text
+
+
+
+ Name
+ Building.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Building.h
+ Windows
+ Text
+
+
+
+ Name
+ Solid.h
+ Windows
+ Text
+
+
+
+ Name
+ Treadable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Treadable.h
+ Windows
+ Text
+
+
+
+ Name
+ ColBox.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColBox.h
+ Windows
+ Text
+
+
+
+ Name
+ ColLine.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColLine.h
+ Windows
+ Text
+
+
+
+ Name
+ Collision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Collision.h
+ Windows
+ Text
+
+
+
+ Name
+ ColModel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColModel.h
+ Windows
+ Text
+
+
+
+ Name
+ ColPoint.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColPoint.h
+ Windows
+ Text
+
+
+
+ Name
+ ColSphere.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColSphere.h
+ Windows
+ Text
+
+
+
+ Name
+ ColStore.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColStore.h
+ Windows
+ Text
+
+
+
+ Name
+ ColTriangle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ColTriangle.h
+ Windows
+ Text
+
+
+
+ Name
+ CompressedVector.h
+ Windows
+ Text
+
+
+
+ Name
+ TempColModels.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TempColModels.h
+ Windows
+ Text
+
+
+
+ Name
+ VuCollision.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VuCollision.h
+ Windows
+ Text
+
+
+
+ Name
+ AutoPilot.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AutoPilot.h
+ Windows
+ Text
+
+
+
+ Name
+ Bridge.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bridge.h
+ Windows
+ Text
+
+
+
+ Name
+ CarAI.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarAI.h
+ Windows
+ Text
+
+
+
+ Name
+ CarCtrl.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarCtrl.h
+ Windows
+ Text
+
+
+
+ Name
+ Curves.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Curves.h
+ Windows
+ Text
+
+
+
+ Name
+ Darkel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Darkel.h
+ Windows
+ Text
+
+
+
+ Name
+ GameLogic.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ GameLogic.h
+ Windows
+ Text
+
+
+
+ Name
+ Garages.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Garages.h
+ Windows
+ Text
+
+
+
+ Name
+ NameGrid.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ NameGrid.h
+ Windows
+ Text
+
+
+
+ Name
+ OnscreenTimer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ OnscreenTimer.h
+ Windows
+ Text
+
+
+
+ Name
+ PathFind.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PathFind.h
+ Windows
+ Text
+
+
+
+ Name
+ Phones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Phones.h
+ Windows
+ Text
+
+
+
+ Name
+ Pickups.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pickups.h
+ Windows
+ Text
+
+
+
+ Name
+ PowerPoints.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PowerPoints.h
+ Windows
+ Text
+
+
+
+ Name
+ Record.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Record.h
+ Windows
+ Text
+
+
+
+ Name
+ Remote.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Remote.h
+ Windows
+ Text
+
+
+
+ Name
+ Replay.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Replay.h
+ Windows
+ Text
+
+
+
+ Name
+ Restart.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Restart.h
+ Windows
+ Text
+
+
+
+ Name
+ RoadBlocks.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RoadBlocks.h
+ Windows
+ Text
+
+
+
+ Name
+ SceneEdit.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SceneEdit.h
+ Windows
+ Text
+
+
+
+ Name
+ Script.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script.h
+ Windows
+ Text
+
+
+
+ Name
+ Script2.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script3.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script4.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script5.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script6.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script7.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Script8.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ScriptCommands.h
+ Windows
+ Text
+
+
+
+ Name
+ SetPieces.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SetPieces.h
+ Windows
+ Text
+
+
+
+ Name
+ TrafficLights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TrafficLights.h
+ Windows
+ Text
+
+
+
+ Name
+ Accident.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Accident.h
+ Windows
+ Text
+
+
+
+ Name
+ AnimViewer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ AnimViewer.h
+ Windows
+ Text
+
+
+
+ Name
+ Cam.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Camera.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Camera.h
+ Windows
+ Text
+
+
+
+ Name
+ CdStream.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CdStream.h
+ Windows
+ Text
+
+
+
+ Name
+ CdStreamPosix.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clock.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clock.h
+ Windows
+ Text
+
+
+
+ Name
+ common.h
+ Windows
+ Text
+
+
+
+ Name
+ config.h
+ Windows
+ Text
+
+
+
+ Name
+ ControllerConfig.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ControllerConfig.h
+ Windows
+ Text
+
+
+
+ Name
+ Crime.h
+ Windows
+ Text
+
+
+
+ Name
+ Debug.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Debug.h
+ Windows
+ Text
+
+
+
+ Name
+ Directory.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Directory.h
+ Windows
+ Text
+
+
+
+ Name
+ EventList.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ EventList.h
+ Windows
+ Text
+
+
+
+ Name
+ FileLoader.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FileLoader.h
+ Windows
+ Text
+
+
+
+ Name
+ FileMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FileMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ Fire.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Fire.h
+ Windows
+ Text
+
+
+
+ Name
+ Frontend.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Frontend.h
+ Windows
+ Text
+
+
+
+ Name
+ Frontend_PS2.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Frontend_PS2.h
+ Windows
+ Text
+
+
+
+ Name
+ FrontEndControls.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ FrontEndControls.h
+ Windows
+ Text
+
+
+
+ Name
+ FrontendTriggers.h
+ Windows
+ Text
+
+
+
+ Name
+ Game.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Game.h
+ Windows
+ Text
+
+
+
+ Name
+ General.h
+ Windows
+ Text
+
+
+
+ Name
+ IniFile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ IniFile.h
+ Windows
+ Text
+
+
+
+ Name
+ Lists.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lists.h
+ Windows
+ Text
+
+
+
+ Name
+ main.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ main.h
+ Windows
+ Text
+
+
+
+ Name
+ MenuScreens.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MenuScreensCustom.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ obrstr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ obrstr.h
+ Windows
+ Text
+
+
+
+ Name
+ Pad.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pad.h
+ Windows
+ Text
+
+
+
+ Name
+ Placeable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Placeable.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Pools.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pools.h
+ Windows
+ Text
+
+
+
+ Name
+ Profile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Profile.h
+ Windows
+ Text
+
+
+
+ Name
+ Radar.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Radar.h
+ Windows
+ Text
+
+
+
+ Name
+ Range2D.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Range2D.h
+ Windows
+ Text
+
+
+
+ Name
+ Range3D.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Range3D.h
+ Windows
+ Text
+
+
+
+ Name
+ re3.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ References.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ References.h
+ Windows
+ Text
+
+
+
+ Name
+ Ropes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Ropes.h
+ Windows
+ Text
+
+
+
+ Name
+ Stats.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Stats.h
+ Windows
+ Text
+
+
+
+ Name
+ Streaming.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Streaming.h
+ Windows
+ Text
+
+
+
+ Name
+ SurfaceTable.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SurfaceTable.h
+ Windows
+ Text
+
+
+
+ Name
+ templates.h
+ Windows
+ Text
+
+
+
+ Name
+ timebars.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ timebars.h
+ Windows
+ Text
+
+
+
+ Name
+ Timer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Timer.h
+ Windows
+ Text
+
+
+
+ Name
+ TimeStep.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TimeStep.h
+ Windows
+ Text
+
+
+
+ Name
+ User.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ User.h
+ Windows
+ Text
+
+
+
+ Name
+ Wanted.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Wanted.h
+ Windows
+ Text
+
+
+
+ Name
+ World.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ World.h
+ Windows
+ Text
+
+
+
+ Name
+ ZoneCull.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ZoneCull.h
+ Windows
+ Text
+
+
+
+ Name
+ Zones.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Zones.h
+ Windows
+ Text
+
+
+
+ Name
+ Dummy.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Dummy.h
+ Windows
+ Text
+
+
+
+ Name
+ Entity.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Entity.h
+ Windows
+ Text
+
+
+
+ Name
+ Physical.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Physical.h
+ Windows
+ Text
+
+
+
+ Name
+ math.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ maths.h
+ Windows
+ Text
+
+
+
+ Name
+ Matrix.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Matrix.h
+ Windows
+ Text
+
+
+
+ Name
+ Quaternion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Quaternion.h
+ Windows
+ Text
+
+
+
+ Name
+ Rect.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Rect.h
+ Windows
+ Text
+
+
+
+ Name
+ Vector.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Vector.h
+ Windows
+ Text
+
+
+
+ Name
+ Vector2D.h
+ Windows
+ Text
+
+
+
+ Name
+ VuVector.h
+ Windows
+ Text
+
+
+
+ Name
+ BaseModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ BaseModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ClumpModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ClumpModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ModelIndices.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ModelIndices.h
+ Windows
+ Text
+
+
+
+ Name
+ ModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ PedModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ SimpleModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SimpleModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ TimeModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TimeModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ VehicleModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VehicleModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponModelInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponModelInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneObject.h
+ Windows
+ Text
+
+
+
+ Name
+ DummyObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DummyObject.h
+ Windows
+ Text
+
+
+
+ Name
+ Object.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Object.h
+ Windows
+ Text
+
+
+
+ Name
+ ObjectData.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ObjectData.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleObject.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ParticleObject.h
+ Windows
+ Text
+
+
+
+ Name
+ Projectile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Projectile.h
+ Windows
+ Text
+
+
+
+ Name
+ Stinger.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Stinger.h
+ Windows
+ Text
+
+
+
+ Name
+ CivilianPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CivilianPed.h
+ Windows
+ Text
+
+
+
+ Name
+ CopPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CopPed.h
+ Windows
+ Text
+
+
+
+ Name
+ DummyPed.h
+ Windows
+ Text
+
+
+
+ Name
+ EmergencyPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ EmergencyPed.h
+ Windows
+ Text
+
+
+
+ Name
+ Gangs.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Gangs.h
+ Windows
+ Text
+
+
+
+ Name
+ Ped.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Ped.h
+ Windows
+ Text
+
+
+
+ Name
+ PedAI.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedAttractor.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedAttractor.h
+ Windows
+ Text
+
+
+
+ Name
+ PedChat.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedDebug.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedFight.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedIK.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedIK.h
+ Windows
+ Text
+
+
+
+ Name
+ PedPlacement.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedPlacement.h
+ Windows
+ Text
+
+
+
+ Name
+ PedRoutes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedRoutes.h
+ Windows
+ Text
+
+
+
+ Name
+ PedType.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PedType.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerPed.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerPed.h
+ Windows
+ Text
+
+
+
+ Name
+ Population.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Population.h
+ Windows
+ Text
+
+
+
+ Name
+ 2dEffect.h
+ Windows
+ Text
+
+
+
+ Name
+ Antennas.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Antennas.h
+ Windows
+ Text
+
+
+
+ Name
+ Clouds.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Clouds.h
+ Windows
+ Text
+
+
+
+ Name
+ Console.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Console.h
+ Windows
+ Text
+
+
+
+ Name
+ Coronas.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Coronas.h
+ Windows
+ Text
+
+
+
+ Name
+ Credits.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Credits.h
+ Windows
+ Text
+
+
+
+ Name
+ CutsceneShadow.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CutsceneShadow.h
+ Windows
+ Text
+
+
+
+ Name
+ Draw.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Draw.h
+ Windows
+ Text
+
+
+
+ Name
+ Fluff.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Fluff.h
+ Windows
+ Text
+
+
+
+ Name
+ Font.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Font.h
+ Windows
+ Text
+
+
+
+ Name
+ Glass.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Glass.h
+ Windows
+ Text
+
+
+
+ Name
+ Hud.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Hud.h
+ Windows
+ Text
+
+
+
+ Name
+ Instance.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Instance.h
+ Windows
+ Text
+
+
+
+ Name
+ Lines.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lines.h
+ Windows
+ Text
+
+
+
+ Name
+ MBlur.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MBlur.h
+ Windows
+ Text
+
+
+
+ Name
+ Occlusion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Occlusion.h
+ Windows
+ Text
+
+
+
+ Name
+ Particle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Particle.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ParticleMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ ParticleType.h
+ Windows
+ Text
+
+
+
+ Name
+ PlayerSkin.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PlayerSkin.h
+ Windows
+ Text
+
+
+
+ Name
+ PointLights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PointLights.h
+ Windows
+ Text
+
+
+
+ Name
+ RenderBuffer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RenderBuffer.h
+ Windows
+ Text
+
+
+
+ Name
+ Renderer.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Renderer.h
+ Windows
+ Text
+
+
+
+ Name
+ Rubbish.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Rubbish.h
+ Windows
+ Text
+
+
+
+ Name
+ ShadowCamera.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ShadowCamera.h
+ Windows
+ Text
+
+
+
+ Name
+ Shadows.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Shadows.h
+ Windows
+ Text
+
+
+
+ Name
+ Skidmarks.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Skidmarks.h
+ Windows
+ Text
+
+
+
+ Name
+ SpecialFX.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ SpecialFX.h
+ Windows
+ Text
+
+
+
+ Name
+ Sprite.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Sprite.h
+ Windows
+ Text
+
+
+
+ Name
+ Sprite2d.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Sprite2d.h
+ Windows
+ Text
+
+
+
+ Name
+ TexList.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexList.h
+ Windows
+ Text
+
+
+
+ Name
+ Timecycle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Timecycle.h
+ Windows
+ Text
+
+
+
+ Name
+ VarConsole.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VarConsole.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterCannon.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterCannon.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterCreatures.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterCreatures.h
+ Windows
+ Text
+
+
+
+ Name
+ WaterLevel.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WaterLevel.h
+ Windows
+ Text
+
+
+
+ Name
+ Weather.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Weather.h
+ Windows
+ Text
+
+
+
+ Name
+ WindModifiers.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WindModifiers.h
+ Windows
+ Text
+
+
+
+ Name
+ ClumpRead.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lights.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Lights.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryHeap.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryHeap.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ NodeName.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ NodeName.h
+ Windows
+ Text
+
+
+
+ Name
+ RwHelper.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RwHelper.h
+ Windows
+ Text
+
+
+
+ Name
+ RwMatFX.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ RwPS2AlphaTest.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexRead.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexturePools.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TexturePools.h
+ Windows
+ Text
+
+
+
+ Name
+ TxdStore.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ TxdStore.h
+ Windows
+ Text
+
+
+
+ Name
+ VisibilityPlugins.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ VisibilityPlugins.h
+ Windows
+ Text
+
+
+
+ Name
+ Date.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Date.h
+ Windows
+ Text
+
+
+
+ Name
+ GenericGameStorage.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ GenericGameStorage.h
+ Windows
+ Text
+
+
+
+ Name
+ MemoryCard.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ MemoryCard.h
+ Windows
+ Text
+
+
+
+ Name
+ PCSave.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ PCSave.h
+ Windows
+ Text
+
+
+
+ Name
+ crossplatform.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ crossplatform.h
+ Windows
+ Text
+
+
+
+ Name
+ events.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ events.h
+ Windows
+ Text
+
+
+
+ Name
+ platform.h
+ Windows
+ Text
+
+
+
+ Name
+ skeleton.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ skeleton.h
+ Windows
+ Text
+
+
+
+ Name
+ resource.h
+ Windows
+ Text
+
+
+
+ Name
+ win.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ win.h
+ Windows
+ Text
+
+
+
+ Name
+ win.rc
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Messages.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Messages.h
+ Windows
+ Text
+
+
+
+ Name
+ Pager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Pager.h
+ Windows
+ Text
+
+
+
+ Name
+ Text.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Text.h
+ Windows
+ Text
+
+
+
+ Name
+ Automobile.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Automobile.h
+ Windows
+ Text
+
+
+
+ Name
+ Bike.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Bike.h
+ Windows
+ Text
+
+
+
+ Name
+ Boat.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Boat.h
+ Windows
+ Text
+
+
+
+ Name
+ CarGen.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ CarGen.h
+ Windows
+ Text
+
+
+
+ Name
+ Cranes.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Cranes.h
+ Windows
+ Text
+
+
+
+ Name
+ DamageManager.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ DamageManager.h
+ Windows
+ Text
+
+
+
+ Name
+ Door.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Door.h
+ Windows
+ Text
+
+
+
+ Name
+ Floater.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Floater.h
+ Windows
+ Text
+
+
+
+ Name
+ HandlingMgr.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ HandlingMgr.h
+ Windows
+ Text
+
+
+
+ Name
+ Heli.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Heli.h
+ Windows
+ Text
+
+
+
+ Name
+ Plane.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Plane.h
+ Windows
+ Text
+
+
+
+ Name
+ Train.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Train.h
+ Windows
+ Text
+
+
+
+ Name
+ Transmission.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Transmission.h
+ Windows
+ Text
+
+
+
+ Name
+ Vehicle.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Vehicle.h
+ Windows
+ Text
+
+
+
+ Name
+ BulletInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ BulletInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Explosion.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Explosion.h
+ Windows
+ Text
+
+
+
+ Name
+ ProjectileInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ProjectileInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ ShotInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ ShotInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ Weapon.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ Weapon.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponEffects.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponEffects.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponInfo.cpp
+ Windows
+ Text
+ Debug
+
+
+ Name
+ WeaponInfo.h
+ Windows
+ Text
+
+
+
+ Name
+ WeaponType.h
+ Windows
+ Text
+
+
+
+
+
+ Name
+ AnimationId.h
+ Windows
+
+
+ Name
+ AnimBlendAssocGroup.cpp
+ Windows
+
+
+ Name
+ AnimBlendAssocGroup.h
+ Windows
+
+
+ Name
+ AnimBlendAssociation.cpp
+ Windows
+
+
+ Name
+ AnimBlendAssociation.h
+ Windows
+
+
+ Name
+ AnimBlendClumpData.cpp
+ Windows
+
+
+ Name
+ AnimBlendClumpData.h
+ Windows
+
+
+ Name
+ AnimBlendHierarchy.cpp
+ Windows
+
+
+ Name
+ AnimBlendHierarchy.h
+ Windows
+
+
+ Name
+ AnimBlendList.h
+ Windows
+
+
+ Name
+ AnimBlendNode.cpp
+ Windows
+
+
+ Name
+ AnimBlendNode.h
+ Windows
+
+
+ Name
+ AnimBlendSequence.cpp
+ Windows
+
+
+ Name
+ AnimBlendSequence.h
+ Windows
+
+
+ Name
+ AnimManager.cpp
+ Windows
+
+
+ Name
+ AnimManager.h
+ Windows
+
+
+ Name
+ Bones.cpp
+ Windows
+
+
+ Name
+ Bones.h
+ Windows
+
+
+ Name
+ CutsceneMgr.cpp
+ Windows
+
+
+ Name
+ CutsceneMgr.h
+ Windows
+
+
+ Name
+ FrameUpdate.cpp
+ Windows
+
+
+ Name
+ RpAnimBlend.cpp
+ Windows
+
+
+ Name
+ RpAnimBlend.h
+ Windows
+
+
+ Name
+ audio_enums.h
+ Windows
+
+
+ Name
+ AudioCollision.cpp
+ Windows
+
+
+ Name
+ AudioCollision.h
+ Windows
+
+
+ Name
+ AudioLogic.cpp
+ Windows
+
+
+ Name
+ AudioManager.cpp
+ Windows
+
+
+ Name
+ AudioManager.h
+ Windows
+
+
+ Name
+ AudioSamples.h
+ Windows
+
+
+ Name
+ AudioScriptObject.cpp
+ Windows
+
+
+ Name
+ AudioScriptObject.h
+ Windows
+
+
+ Name
+ DMAudio.cpp
+ Windows
+
+
+ Name
+ DMAudio.h
+ Windows
+
+
+ Name
+ MusicManager.cpp
+ Windows
+
+
+ Name
+ MusicManager.h
+ Windows
+
+
+ Name
+ PolRadio.cpp
+ Windows
+
+
+ Name
+ PolRadio.h
+ Windows
+
+
+ Name
+ sampman.h
+ Windows
+
+
+ Name
+ sampman_miles.cpp
+ Windows
+
+
+ Name
+ soundlist.h
+ Windows
+
+
+ Name
+ eax.h
+ Windows
+
+
+ Name
+ eax-util.cpp
+ Windows
+
+
+ Name
+ eax-util.h
+ Windows
+
+
+ Name
+ Building.cpp
+ Windows
+
+
+ Name
+ Building.h
+ Windows
+
+
+ Name
+ Solid.h
+ Windows
+
+
+ Name
+ Treadable.cpp
+ Windows
+
+
+ Name
+ Treadable.h
+ Windows
+
+
+ Name
+ ColBox.cpp
+ Windows
+
+
+ Name
+ ColBox.h
+ Windows
+
+
+ Name
+ ColLine.cpp
+ Windows
+
+
+ Name
+ ColLine.h
+ Windows
+
+
+ Name
+ Collision.cpp
+ Windows
+
+
+ Name
+ Collision.h
+ Windows
+
+
+ Name
+ ColModel.cpp
+ Windows
+
+
+ Name
+ ColModel.h
+ Windows
+
+
+ Name
+ ColPoint.cpp
+ Windows
+
+
+ Name
+ ColPoint.h
+ Windows
+
+
+ Name
+ ColSphere.cpp
+ Windows
+
+
+ Name
+ ColSphere.h
+ Windows
+
+
+ Name
+ ColStore.cpp
+ Windows
+
+
+ Name
+ ColStore.h
+ Windows
+
+
+ Name
+ ColTriangle.cpp
+ Windows
+
+
+ Name
+ ColTriangle.h
+ Windows
+
+
+ Name
+ CompressedVector.h
+ Windows
+
+
+ Name
+ TempColModels.cpp
+ Windows
+
+
+ Name
+ TempColModels.h
+ Windows
+
+
+ Name
+ VuCollision.cpp
+ Windows
+
+
+ Name
+ VuCollision.h
+ Windows
+
+
+ Name
+ AutoPilot.cpp
+ Windows
+
+
+ Name
+ AutoPilot.h
+ Windows
+
+
+ Name
+ Bridge.cpp
+ Windows
+
+
+ Name
+ Bridge.h
+ Windows
+
+
+ Name
+ CarAI.cpp
+ Windows
+
+
+ Name
+ CarAI.h
+ Windows
+
+
+ Name
+ CarCtrl.cpp
+ Windows
+
+
+ Name
+ CarCtrl.h
+ Windows
+
+
+ Name
+ Curves.cpp
+ Windows
+
+
+ Name
+ Curves.h
+ Windows
+
+
+ Name
+ Darkel.cpp
+ Windows
+
+
+ Name
+ Darkel.h
+ Windows
+
+
+ Name
+ GameLogic.cpp
+ Windows
+
+
+ Name
+ GameLogic.h
+ Windows
+
+
+ Name
+ Garages.cpp
+ Windows
+
+
+ Name
+ Garages.h
+ Windows
+
+
+ Name
+ NameGrid.cpp
+ Windows
+
+
+ Name
+ NameGrid.h
+ Windows
+
+
+ Name
+ OnscreenTimer.cpp
+ Windows
+
+
+ Name
+ OnscreenTimer.h
+ Windows
+
+
+ Name
+ PathFind.cpp
+ Windows
+
+
+ Name
+ PathFind.h
+ Windows
+
+
+ Name
+ Phones.cpp
+ Windows
+
+
+ Name
+ Phones.h
+ Windows
+
+
+ Name
+ Pickups.cpp
+ Windows
+
+
+ Name
+ Pickups.h
+ Windows
+
+
+ Name
+ PowerPoints.cpp
+ Windows
+
+
+ Name
+ PowerPoints.h
+ Windows
+
+
+ Name
+ Record.cpp
+ Windows
+
+
+ Name
+ Record.h
+ Windows
+
+
+ Name
+ Remote.cpp
+ Windows
+
+
+ Name
+ Remote.h
+ Windows
+
+
+ Name
+ Replay.cpp
+ Windows
+
+
+ Name
+ Replay.h
+ Windows
+
+
+ Name
+ Restart.cpp
+ Windows
+
+
+ Name
+ Restart.h
+ Windows
+
+
+ Name
+ RoadBlocks.cpp
+ Windows
+
+
+ Name
+ RoadBlocks.h
+ Windows
+
+
+ Name
+ SceneEdit.cpp
+ Windows
+
+
+ Name
+ SceneEdit.h
+ Windows
+
+
+ Name
+ Script.cpp
+ Windows
+
+
+ Name
+ Script.h
+ Windows
+
+
+ Name
+ Script2.cpp
+ Windows
+
+
+ Name
+ Script3.cpp
+ Windows
+
+
+ Name
+ Script4.cpp
+ Windows
+
+
+ Name
+ Script5.cpp
+ Windows
+
+
+ Name
+ Script6.cpp
+ Windows
+
+
+ Name
+ Script7.cpp
+ Windows
+
+
+ Name
+ Script8.cpp
+ Windows
+
+
+ Name
+ ScriptCommands.h
+ Windows
+
+
+ Name
+ SetPieces.cpp
+ Windows
+
+
+ Name
+ SetPieces.h
+ Windows
+
+
+ Name
+ TrafficLights.cpp
+ Windows
+
+
+ Name
+ TrafficLights.h
+ Windows
+
+
+ Name
+ Accident.cpp
+ Windows
+
+
+ Name
+ Accident.h
+ Windows
+
+
+ Name
+ AnimViewer.cpp
+ Windows
+
+
+ Name
+ AnimViewer.h
+ Windows
+
+
+ Name
+ Cam.cpp
+ Windows
+
+
+ Name
+ Camera.cpp
+ Windows
+
+
+ Name
+ Camera.h
+ Windows
+
+
+ Name
+ CdStream.cpp
+ Windows
+
+
+ Name
+ CdStream.h
+ Windows
+
+
+ Name
+ CdStreamPosix.cpp
+ Windows
+
+
+ Name
+ Clock.cpp
+ Windows
+
+
+ Name
+ Clock.h
+ Windows
+
+
+ Name
+ common.h
+ Windows
+
+
+ Name
+ config.h
+ Windows
+
+
+ Name
+ ControllerConfig.cpp
+ Windows
+
+
+ Name
+ ControllerConfig.h
+ Windows
+
+
+ Name
+ Crime.h
+ Windows
+
+
+ Name
+ Debug.cpp
+ Windows
+
+
+ Name
+ Debug.h
+ Windows
+
+
+ Name
+ Directory.cpp
+ Windows
+
+
+ Name
+ Directory.h
+ Windows
+
+
+ Name
+ EventList.cpp
+ Windows
+
+
+ Name
+ EventList.h
+ Windows
+
+
+ Name
+ FileLoader.cpp
+ Windows
+
+
+ Name
+ FileLoader.h
+ Windows
+
+
+ Name
+ FileMgr.cpp
+ Windows
+
+
+ Name
+ FileMgr.h
+ Windows
+
+
+ Name
+ Fire.cpp
+ Windows
+
+
+ Name
+ Fire.h
+ Windows
+
+
+ Name
+ Frontend.cpp
+ Windows
+
+
+ Name
+ Frontend.h
+ Windows
+
+
+ Name
+ Frontend_PS2.cpp
+ Windows
+
+
+ Name
+ Frontend_PS2.h
+ Windows
+
+
+ Name
+ FrontEndControls.cpp
+ Windows
+
+
+ Name
+ FrontEndControls.h
+ Windows
+
+
+ Name
+ FrontendTriggers.h
+ Windows
+
+
+ Name
+ Game.cpp
+ Windows
+
+
+ Name
+ Game.h
+ Windows
+
+
+ Name
+ General.h
+ Windows
+
+
+ Name
+ IniFile.cpp
+ Windows
+
+
+ Name
+ IniFile.h
+ Windows
+
+
+ Name
+ Lists.cpp
+ Windows
+
+
+ Name
+ Lists.h
+ Windows
+
+
+ Name
+ main.cpp
+ Windows
+
+
+ Name
+ main.h
+ Windows
+
+
+ Name
+ MenuScreens.cpp
+ Windows
+
+
+ Name
+ MenuScreensCustom.cpp
+ Windows
+
+
+ Name
+ obrstr.cpp
+ Windows
+
+
+ Name
+ obrstr.h
+ Windows
+
+
+ Name
+ Pad.cpp
+ Windows
+
+
+ Name
+ Pad.h
+ Windows
+
+
+ Name
+ Placeable.cpp
+ Windows
+
+
+ Name
+ Placeable.h
+ Windows
+
+
+ Name
+ PlayerInfo.cpp
+ Windows
+
+
+ Name
+ PlayerInfo.h
+ Windows
+
+
+ Name
+ Pools.cpp
+ Windows
+
+
+ Name
+ Pools.h
+ Windows
+
+
+ Name
+ Profile.cpp
+ Windows
+
+
+ Name
+ Profile.h
+ Windows
+
+
+ Name
+ Radar.cpp
+ Windows
+
+
+ Name
+ Radar.h
+ Windows
+
+
+ Name
+ Range2D.cpp
+ Windows
+
+
+ Name
+ Range2D.h
+ Windows
+
+
+ Name
+ Range3D.cpp
+ Windows
+
+
+ Name
+ Range3D.h
+ Windows
+
+
+ Name
+ re3.cpp
+ Windows
+
+
+ Name
+ References.cpp
+ Windows
+
+
+ Name
+ References.h
+ Windows
+
+
+ Name
+ Ropes.cpp
+ Windows
+
+
+ Name
+ Ropes.h
+ Windows
+
+
+ Name
+ Stats.cpp
+ Windows
+
+
+ Name
+ Stats.h
+ Windows
+
+
+ Name
+ Streaming.cpp
+ Windows
+
+
+ Name
+ Streaming.h
+ Windows
+
+
+ Name
+ SurfaceTable.cpp
+ Windows
+
+
+ Name
+ SurfaceTable.h
+ Windows
+
+
+ Name
+ templates.h
+ Windows
+
+
+ Name
+ timebars.cpp
+ Windows
+
+
+ Name
+ timebars.h
+ Windows
+
+
+ Name
+ Timer.cpp
+ Windows
+
+
+ Name
+ Timer.h
+ Windows
+
+
+ Name
+ TimeStep.cpp
+ Windows
+
+
+ Name
+ TimeStep.h
+ Windows
+
+
+ Name
+ User.cpp
+ Windows
+
+
+ Name
+ User.h
+ Windows
+
+
+ Name
+ Wanted.cpp
+ Windows
+
+
+ Name
+ Wanted.h
+ Windows
+
+
+ Name
+ World.cpp
+ Windows
+
+
+ Name
+ World.h
+ Windows
+
+
+ Name
+ ZoneCull.cpp
+ Windows
+
+
+ Name
+ ZoneCull.h
+ Windows
+
+
+ Name
+ Zones.cpp
+ Windows
+
+
+ Name
+ Zones.h
+ Windows
+
+
+ Name
+ Dummy.cpp
+ Windows
+
+
+ Name
+ Dummy.h
+ Windows
+
+
+ Name
+ Entity.cpp
+ Windows
+
+
+ Name
+ Entity.h
+ Windows
+
+
+ Name
+ Physical.cpp
+ Windows
+
+
+ Name
+ Physical.h
+ Windows
+
+
+ Name
+ math.cpp
+ Windows
+
+
+ Name
+ maths.h
+ Windows
+
+
+ Name
+ Matrix.cpp
+ Windows
+
+
+ Name
+ Matrix.h
+ Windows
+
+
+ Name
+ Quaternion.cpp
+ Windows
+
+
+ Name
+ Quaternion.h
+ Windows
+
+
+ Name
+ Rect.cpp
+ Windows
+
+
+ Name
+ Rect.h
+ Windows
+
+
+ Name
+ Vector.cpp
+ Windows
+
+
+ Name
+ Vector.h
+ Windows
+
+
+ Name
+ Vector2D.h
+ Windows
+
+
+ Name
+ VuVector.h
+ Windows
+
+
+ Name
+ BaseModelInfo.cpp
+ Windows
+
+
+ Name
+ BaseModelInfo.h
+ Windows
+
+
+ Name
+ ClumpModelInfo.cpp
+ Windows
+
+
+ Name
+ ClumpModelInfo.h
+ Windows
+
+
+ Name
+ ModelIndices.cpp
+ Windows
+
+
+ Name
+ ModelIndices.h
+ Windows
+
+
+ Name
+ ModelInfo.cpp
+ Windows
+
+
+ Name
+ ModelInfo.h
+ Windows
+
+
+ Name
+ PedModelInfo.cpp
+ Windows
+
+
+ Name
+ PedModelInfo.h
+ Windows
+
+
+ Name
+ SimpleModelInfo.cpp
+ Windows
+
+
+ Name
+ SimpleModelInfo.h
+ Windows
+
+
+ Name
+ TimeModelInfo.cpp
+ Windows
+
+
+ Name
+ TimeModelInfo.h
+ Windows
+
+
+ Name
+ VehicleModelInfo.cpp
+ Windows
+
+
+ Name
+ VehicleModelInfo.h
+ Windows
+
+
+ Name
+ WeaponModelInfo.cpp
+ Windows
+
+
+ Name
+ WeaponModelInfo.h
+ Windows
+
+
+ Name
+ CutsceneObject.cpp
+ Windows
+
+
+ Name
+ CutsceneObject.h
+ Windows
+
+
+ Name
+ DummyObject.cpp
+ Windows
+
+
+ Name
+ DummyObject.h
+ Windows
+
+
+ Name
+ Object.cpp
+ Windows
+
+
+ Name
+ Object.h
+ Windows
+
+
+ Name
+ ObjectData.cpp
+ Windows
+
+
+ Name
+ ObjectData.h
+ Windows
+
+
+ Name
+ ParticleObject.cpp
+ Windows
+
+
+ Name
+ ParticleObject.h
+ Windows
+
+
+ Name
+ Projectile.cpp
+ Windows
+
+
+ Name
+ Projectile.h
+ Windows
+
+
+ Name
+ Stinger.cpp
+ Windows
+
+
+ Name
+ Stinger.h
+ Windows
+
+
+ Name
+ CivilianPed.cpp
+ Windows
+
+
+ Name
+ CivilianPed.h
+ Windows
+
+
+ Name
+ CopPed.cpp
+ Windows
+
+
+ Name
+ CopPed.h
+ Windows
+
+
+ Name
+ DummyPed.h
+ Windows
+
+
+ Name
+ EmergencyPed.cpp
+ Windows
+
+
+ Name
+ EmergencyPed.h
+ Windows
+
+
+ Name
+ Gangs.cpp
+ Windows
+
+
+ Name
+ Gangs.h
+ Windows
+
+
+ Name
+ Ped.cpp
+ Windows
+
+
+ Name
+ Ped.h
+ Windows
+
+
+ Name
+ PedAI.cpp
+ Windows
+
+
+ Name
+ PedAttractor.cpp
+ Windows
+
+
+ Name
+ PedAttractor.h
+ Windows
+
+
+ Name
+ PedChat.cpp
+ Windows
+
+
+ Name
+ PedDebug.cpp
+ Windows
+
+
+ Name
+ PedFight.cpp
+ Windows
+
+
+ Name
+ PedIK.cpp
+ Windows
+
+
+ Name
+ PedIK.h
+ Windows
+
+
+ Name
+ PedPlacement.cpp
+ Windows
+
+
+ Name
+ PedPlacement.h
+ Windows
+
+
+ Name
+ PedRoutes.cpp
+ Windows
+
+
+ Name
+ PedRoutes.h
+ Windows
+
+
+ Name
+ PedType.cpp
+ Windows
+
+
+ Name
+ PedType.h
+ Windows
+
+
+ Name
+ PlayerPed.cpp
+ Windows
+
+
+ Name
+ PlayerPed.h
+ Windows
+
+
+ Name
+ Population.cpp
+ Windows
+
+
+ Name
+ Population.h
+ Windows
+
+
+ Name
+ 2dEffect.h
+ Windows
+
+
+ Name
+ Antennas.cpp
+ Windows
+
+
+ Name
+ Antennas.h
+ Windows
+
+
+ Name
+ Clouds.cpp
+ Windows
+
+
+ Name
+ Clouds.h
+ Windows
+
+
+ Name
+ Console.cpp
+ Windows
+
+
+ Name
+ Console.h
+ Windows
+
+
+ Name
+ Coronas.cpp
+ Windows
+
+
+ Name
+ Coronas.h
+ Windows
+
+
+ Name
+ Credits.cpp
+ Windows
+
+
+ Name
+ Credits.h
+ Windows
+
+
+ Name
+ CutsceneShadow.cpp
+ Windows
+
+
+ Name
+ CutsceneShadow.h
+ Windows
+
+
+ Name
+ Draw.cpp
+ Windows
+
+
+ Name
+ Draw.h
+ Windows
+
+
+ Name
+ Fluff.cpp
+ Windows
+
+
+ Name
+ Fluff.h
+ Windows
+
+
+ Name
+ Font.cpp
+ Windows
+
+
+ Name
+ Font.h
+ Windows
+
+
+ Name
+ Glass.cpp
+ Windows
+
+
+ Name
+ Glass.h
+ Windows
+
+
+ Name
+ Hud.cpp
+ Windows
+
+
+ Name
+ Hud.h
+ Windows
+
+
+ Name
+ Instance.cpp
+ Windows
+
+
+ Name
+ Instance.h
+ Windows
+
+
+ Name
+ Lines.cpp
+ Windows
+
+
+ Name
+ Lines.h
+ Windows
+
+
+ Name
+ MBlur.cpp
+ Windows
+
+
+ Name
+ MBlur.h
+ Windows
+
+
+ Name
+ Occlusion.cpp
+ Windows
+
+
+ Name
+ Occlusion.h
+ Windows
+
+
+ Name
+ Particle.cpp
+ Windows
+
+
+ Name
+ Particle.h
+ Windows
+
+
+ Name
+ ParticleMgr.cpp
+ Windows
+
+
+ Name
+ ParticleMgr.h
+ Windows
+
+
+ Name
+ ParticleType.h
+ Windows
+
+
+ Name
+ PlayerSkin.cpp
+ Windows
+
+
+ Name
+ PlayerSkin.h
+ Windows
+
+
+ Name
+ PointLights.cpp
+ Windows
+
+
+ Name
+ PointLights.h
+ Windows
+
+
+ Name
+ RenderBuffer.cpp
+ Windows
+
+
+ Name
+ RenderBuffer.h
+ Windows
+
+
+ Name
+ Renderer.cpp
+ Windows
+
+
+ Name
+ Renderer.h
+ Windows
+
+
+ Name
+ Rubbish.cpp
+ Windows
+
+
+ Name
+ Rubbish.h
+ Windows
+
+
+ Name
+ ShadowCamera.cpp
+ Windows
+
+
+ Name
+ ShadowCamera.h
+ Windows
+
+
+ Name
+ Shadows.cpp
+ Windows
+
+
+ Name
+ Shadows.h
+ Windows
+
+
+ Name
+ Skidmarks.cpp
+ Windows
+
+
+ Name
+ Skidmarks.h
+ Windows
+
+
+ Name
+ SpecialFX.cpp
+ Windows
+
+
+ Name
+ SpecialFX.h
+ Windows
+
+
+ Name
+ Sprite.cpp
+ Windows
+
+
+ Name
+ Sprite.h
+ Windows
+
+
+ Name
+ Sprite2d.cpp
+ Windows
+
+
+ Name
+ Sprite2d.h
+ Windows
+
+
+ Name
+ TexList.cpp
+ Windows
+
+
+ Name
+ TexList.h
+ Windows
+
+
+ Name
+ Timecycle.cpp
+ Windows
+
+
+ Name
+ Timecycle.h
+ Windows
+
+
+ Name
+ VarConsole.cpp
+ Windows
+
+
+ Name
+ VarConsole.h
+ Windows
+
+
+ Name
+ WaterCannon.cpp
+ Windows
+
+
+ Name
+ WaterCannon.h
+ Windows
+
+
+ Name
+ WaterCreatures.cpp
+ Windows
+
+
+ Name
+ WaterCreatures.h
+ Windows
+
+
+ Name
+ WaterLevel.cpp
+ Windows
+
+
+ Name
+ WaterLevel.h
+ Windows
+
+
+ Name
+ Weather.cpp
+ Windows
+
+
+ Name
+ Weather.h
+ Windows
+
+
+ Name
+ WindModifiers.cpp
+ Windows
+
+
+ Name
+ WindModifiers.h
+ Windows
+
+
+ Name
+ ClumpRead.cpp
+ Windows
+
+
+ Name
+ Lights.cpp
+ Windows
+
+
+ Name
+ Lights.h
+ Windows
+
+
+ Name
+ MemoryHeap.cpp
+ Windows
+
+
+ Name
+ MemoryHeap.h
+ Windows
+
+
+ Name
+ MemoryMgr.cpp
+ Windows
+
+
+ Name
+ MemoryMgr.h
+ Windows
+
+
+ Name
+ NodeName.cpp
+ Windows
+
+
+ Name
+ NodeName.h
+ Windows
+
+
+ Name
+ RwHelper.cpp
+ Windows
+
+
+ Name
+ RwHelper.h
+ Windows
+
+
+ Name
+ RwMatFX.cpp
+ Windows
+
+
+ Name
+ RwPS2AlphaTest.cpp
+ Windows
+
+
+ Name
+ TexRead.cpp
+ Windows
+
+
+ Name
+ TexturePools.cpp
+ Windows
+
+
+ Name
+ TexturePools.h
+ Windows
+
+
+ Name
+ TxdStore.cpp
+ Windows
+
+
+ Name
+ TxdStore.h
+ Windows
+
+
+ Name
+ VisibilityPlugins.cpp
+ Windows
+
+
+ Name
+ VisibilityPlugins.h
+ Windows
+
+
+ Name
+ Date.cpp
+ Windows
+
+
+ Name
+ Date.h
+ Windows
+
+
+ Name
+ GenericGameStorage.cpp
+ Windows
+
+
+ Name
+ GenericGameStorage.h
+ Windows
+
+
+ Name
+ MemoryCard.cpp
+ Windows
+
+
+ Name
+ MemoryCard.h
+ Windows
+
+
+ Name
+ PCSave.cpp
+ Windows
+
+
+ Name
+ PCSave.h
+ Windows
+
+
+ Name
+ crossplatform.cpp
+ Windows
+
+
+ Name
+ crossplatform.h
+ Windows
+
+
+ Name
+ events.cpp
+ Windows
+
+
+ Name
+ events.h
+ Windows
+
+
+ Name
+ platform.h
+ Windows
+
+
+ Name
+ skeleton.cpp
+ Windows
+
+
+ Name
+ skeleton.h
+ Windows
+
+
+ Name
+ resource.h
+ Windows
+
+
+ Name
+ win.cpp
+ Windows
+
+
+ Name
+ win.h
+ Windows
+
+
+ Name
+ win.rc
+ Windows
+
+
+ Name
+ Messages.cpp
+ Windows
+
+
+ Name
+ Messages.h
+ Windows
+
+
+ Name
+ Pager.cpp
+ Windows
+
+
+ Name
+ Pager.h
+ Windows
+
+
+ Name
+ Text.cpp
+ Windows
+
+
+ Name
+ Text.h
+ Windows
+
+
+ Name
+ Automobile.cpp
+ Windows
+
+
+ Name
+ Automobile.h
+ Windows
+
+
+ Name
+ Bike.cpp
+ Windows
+
+
+ Name
+ Bike.h
+ Windows
+
+
+ Name
+ Boat.cpp
+ Windows
+
+
+ Name
+ Boat.h
+ Windows
+
+
+ Name
+ CarGen.cpp
+ Windows
+
+
+ Name
+ CarGen.h
+ Windows
+
+
+ Name
+ Cranes.cpp
+ Windows
+
+
+ Name
+ Cranes.h
+ Windows
+
+
+ Name
+ DamageManager.cpp
+ Windows
+
+
+ Name
+ DamageManager.h
+ Windows
+
+
+ Name
+ Door.cpp
+ Windows
+
+
+ Name
+ Door.h
+ Windows
+
+
+ Name
+ Floater.cpp
+ Windows
+
+
+ Name
+ Floater.h
+ Windows
+
+
+ Name
+ HandlingMgr.cpp
+ Windows
+
+
+ Name
+ HandlingMgr.h
+ Windows
+
+
+ Name
+ Heli.cpp
+ Windows
+
+
+ Name
+ Heli.h
+ Windows
+
+
+ Name
+ Plane.cpp
+ Windows
+
+
+ Name
+ Plane.h
+ Windows
+
+
+ Name
+ Train.cpp
+ Windows
+
+
+ Name
+ Train.h
+ Windows
+
+
+ Name
+ Transmission.cpp
+ Windows
+
+
+ Name
+ Transmission.h
+ Windows
+
+
+ Name
+ Vehicle.cpp
+ Windows
+
+
+ Name
+ Vehicle.h
+ Windows
+
+
+ Name
+ BulletInfo.cpp
+ Windows
+
+
+ Name
+ BulletInfo.h
+ Windows
+
+
+ Name
+ Explosion.cpp
+ Windows
+
+
+ Name
+ Explosion.h
+ Windows
+
+
+ Name
+ ProjectileInfo.cpp
+ Windows
+
+
+ Name
+ ProjectileInfo.h
+ Windows
+
+
+ Name
+ ShotInfo.cpp
+ Windows
+
+
+ Name
+ ShotInfo.h
+ Windows
+
+
+ Name
+ Weapon.cpp
+ Windows
+
+
+ Name
+ Weapon.h
+ Windows
+
+
+ Name
+ WeaponEffects.cpp
+ Windows
+
+
+ Name
+ WeaponEffects.h
+ Windows
+
+
+ Name
+ WeaponInfo.cpp
+ Windows
+
+
+ Name
+ WeaponInfo.h
+ Windows
+
+
+ Name
+ WeaponType.h
+ Windows
+
+
+ Name
+ mss32.lib
+ Windows
+
+
+ Name
+ d3d8.lib
+ Windows
+
+
+ Name
+ ddraw.lib
+ Windows
+
+
+ Name
+ dxguid.lib
+ Windows
+
+
+ Name
+ strmiids.lib
+ Windows
+
+
+ Name
+ dinput8.lib
+ Windows
+
+
+ Name
+ winmm.lib
+ Windows
+
+
+ Name
+ rwcore.lib
+ Windows
+
+
+ Name
+ rpworld.lib
+ Windows
+
+
+ Name
+ rpmatfx.lib
+ Windows
+
+
+ Name
+ rpskin.lib
+ Windows
+
+
+ Name
+ rphanim.lib
+ Windows
+
+
+ Name
+ rtbmp.lib
+ Windows
+
+
+ Name
+ rtquat.lib
+ Windows
+
+
+ Name
+ rtcharse.lib
+ Windows
+
+
+ Name
+ rtanim.lib
+ Windows
+
+
+ Name
+ rpanisot.lib
+ Windows
+
+
+ Name
+ MSL_All_x86.lib
+ MacOS
+
+
+ Name
+ Comdlg32.lib
+ MacOS
+
+
+ Name
+ Gdi32.lib
+ MacOS
+
+
+ Name
+ Kernel32.lib
+ MacOS
+
+
+ Name
+ User32.lib
+ MacOS
+
+
+ Name
+ ole32.lib
+ Windows
+
+
+ Name
+ shell32.lib
+ Windows
+
+
+ Name
+ uuid.lib
+ Windows
+
+
+
+
+
+
+ Debug
+ Release
+
+
+
+ animation
+
+ Debug
+ Name
+ AnimationId.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendAssocGroup.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendAssocGroup.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendAssociation.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendAssociation.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendClumpData.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendClumpData.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendHierarchy.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendHierarchy.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendList.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendNode.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendNode.h
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendSequence.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimBlendSequence.h
+ Windows
+
+
+ Debug
+ Name
+ AnimManager.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimManager.h
+ Windows
+
+
+ Debug
+ Name
+ Bones.cpp
+ Windows
+
+
+ Debug
+ Name
+ Bones.h
+ Windows
+
+
+ Debug
+ Name
+ CutsceneMgr.cpp
+ Windows
+
+
+ Debug
+ Name
+ CutsceneMgr.h
+ Windows
+
+
+ Debug
+ Name
+ FrameUpdate.cpp
+ Windows
+
+
+ Debug
+ Name
+ RpAnimBlend.cpp
+ Windows
+
+
+ Debug
+ Name
+ RpAnimBlend.h
+ Windows
+
+
+ audio
+
+ Debug
+ Name
+ audio_enums.h
+ Windows
+
+
+ Debug
+ Name
+ AudioCollision.cpp
+ Windows
+
+
+ Debug
+ Name
+ AudioCollision.h
+ Windows
+
+
+ Debug
+ Name
+ AudioLogic.cpp
+ Windows
+
+
+ Debug
+ Name
+ AudioManager.cpp
+ Windows
+
+
+ Debug
+ Name
+ AudioManager.h
+ Windows
+
+
+ Debug
+ Name
+ AudioSamples.h
+ Windows
+
+
+ Debug
+ Name
+ AudioScriptObject.cpp
+ Windows
+
+
+ Debug
+ Name
+ AudioScriptObject.h
+ Windows
+
+
+ Debug
+ Name
+ DMAudio.cpp
+ Windows
+
+
+ Debug
+ Name
+ DMAudio.h
+ Windows
+
+
+ Debug
+ Name
+ MusicManager.cpp
+ Windows
+
+
+ Debug
+ Name
+ MusicManager.h
+ Windows
+
+
+ Debug
+ Name
+ PolRadio.cpp
+ Windows
+
+
+ Debug
+ Name
+ PolRadio.h
+ Windows
+
+
+ Debug
+ Name
+ sampman.h
+ Windows
+
+
+ Debug
+ Name
+ sampman_miles.cpp
+ Windows
+
+
+ Debug
+ Name
+ soundlist.h
+ Windows
+
+
+ Debug
+ Name
+ eax.h
+ Windows
+
+
+ Debug
+ Name
+ eax-util.cpp
+ Windows
+
+
+ Debug
+ Name
+ eax-util.h
+ Windows
+
+
+ buildings
+
+ Debug
+ Name
+ Building.cpp
+ Windows
+
+
+ Debug
+ Name
+ Building.h
+ Windows
+
+
+ Debug
+ Name
+ Solid.h
+ Windows
+
+
+ Debug
+ Name
+ Treadable.cpp
+ Windows
+
+
+ Debug
+ Name
+ Treadable.h
+ Windows
+
+
+ collision
+
+ Debug
+ Name
+ ColBox.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColBox.h
+ Windows
+
+
+ Debug
+ Name
+ ColLine.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColLine.h
+ Windows
+
+
+ Debug
+ Name
+ Collision.cpp
+ Windows
+
+
+ Debug
+ Name
+ Collision.h
+ Windows
+
+
+ Debug
+ Name
+ ColModel.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColModel.h
+ Windows
+
+
+ Debug
+ Name
+ ColPoint.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColPoint.h
+ Windows
+
+
+ Debug
+ Name
+ ColSphere.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColSphere.h
+ Windows
+
+
+ Debug
+ Name
+ ColStore.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColStore.h
+ Windows
+
+
+ Debug
+ Name
+ ColTriangle.cpp
+ Windows
+
+
+ Debug
+ Name
+ ColTriangle.h
+ Windows
+
+
+ Debug
+ Name
+ CompressedVector.h
+ Windows
+
+
+ Debug
+ Name
+ TempColModels.cpp
+ Windows
+
+
+ Debug
+ Name
+ TempColModels.h
+ Windows
+
+
+ Debug
+ Name
+ VuCollision.cpp
+ Windows
+
+
+ Debug
+ Name
+ VuCollision.h
+ Windows
+
+
+ control
+
+ Debug
+ Name
+ AutoPilot.cpp
+ Windows
+
+
+ Debug
+ Name
+ AutoPilot.h
+ Windows
+
+
+ Debug
+ Name
+ Bridge.cpp
+ Windows
+
+
+ Debug
+ Name
+ Bridge.h
+ Windows
+
+
+ Debug
+ Name
+ CarAI.cpp
+ Windows
+
+
+ Debug
+ Name
+ CarAI.h
+ Windows
+
+
+ Debug
+ Name
+ CarCtrl.cpp
+ Windows
+
+
+ Debug
+ Name
+ CarCtrl.h
+ Windows
+
+
+ Debug
+ Name
+ Curves.cpp
+ Windows
+
+
+ Debug
+ Name
+ Curves.h
+ Windows
+
+
+ Debug
+ Name
+ Darkel.cpp
+ Windows
+
+
+ Debug
+ Name
+ Darkel.h
+ Windows
+
+
+ Debug
+ Name
+ GameLogic.cpp
+ Windows
+
+
+ Debug
+ Name
+ GameLogic.h
+ Windows
+
+
+ Debug
+ Name
+ Garages.cpp
+ Windows
+
+
+ Debug
+ Name
+ Garages.h
+ Windows
+
+
+ Debug
+ Name
+ NameGrid.cpp
+ Windows
+
+
+ Debug
+ Name
+ NameGrid.h
+ Windows
+
+
+ Debug
+ Name
+ OnscreenTimer.cpp
+ Windows
+
+
+ Debug
+ Name
+ OnscreenTimer.h
+ Windows
+
+
+ Debug
+ Name
+ PathFind.cpp
+ Windows
+
+
+ Debug
+ Name
+ PathFind.h
+ Windows
+
+
+ Debug
+ Name
+ Phones.cpp
+ Windows
+
+
+ Debug
+ Name
+ Phones.h
+ Windows
+
+
+ Debug
+ Name
+ Pickups.cpp
+ Windows
+
+
+ Debug
+ Name
+ Pickups.h
+ Windows
+
+
+ Debug
+ Name
+ PowerPoints.cpp
+ Windows
+
+
+ Debug
+ Name
+ PowerPoints.h
+ Windows
+
+
+ Debug
+ Name
+ Record.cpp
+ Windows
+
+
+ Debug
+ Name
+ Record.h
+ Windows
+
+
+ Debug
+ Name
+ Remote.cpp
+ Windows
+
+
+ Debug
+ Name
+ Remote.h
+ Windows
+
+
+ Debug
+ Name
+ Replay.cpp
+ Windows
+
+
+ Debug
+ Name
+ Replay.h
+ Windows
+
+
+ Debug
+ Name
+ Restart.cpp
+ Windows
+
+
+ Debug
+ Name
+ Restart.h
+ Windows
+
+
+ Debug
+ Name
+ RoadBlocks.cpp
+ Windows
+
+
+ Debug
+ Name
+ RoadBlocks.h
+ Windows
+
+
+ Debug
+ Name
+ SceneEdit.cpp
+ Windows
+
+
+ Debug
+ Name
+ SceneEdit.h
+ Windows
+
+
+ Debug
+ Name
+ Script.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script.h
+ Windows
+
+
+ Debug
+ Name
+ Script2.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script3.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script4.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script5.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script6.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script7.cpp
+ Windows
+
+
+ Debug
+ Name
+ Script8.cpp
+ Windows
+
+
+ Debug
+ Name
+ ScriptCommands.h
+ Windows
+
+
+ Debug
+ Name
+ SetPieces.cpp
+ Windows
+
+
+ Debug
+ Name
+ SetPieces.h
+ Windows
+
+
+ Debug
+ Name
+ TrafficLights.cpp
+ Windows
+
+
+ Debug
+ Name
+ TrafficLights.h
+ Windows
+
+
+ core
+
+ Debug
+ Name
+ Accident.cpp
+ Windows
+
+
+ Debug
+ Name
+ Accident.h
+ Windows
+
+
+ Debug
+ Name
+ AnimViewer.cpp
+ Windows
+
+
+ Debug
+ Name
+ AnimViewer.h
+ Windows
+
+
+ Debug
+ Name
+ Cam.cpp
+ Windows
+
+
+ Debug
+ Name
+ Camera.cpp
+ Windows
+
+
+ Debug
+ Name
+ Camera.h
+ Windows
+
+
+ Debug
+ Name
+ CdStream.cpp
+ Windows
+
+
+ Debug
+ Name
+ CdStream.h
+ Windows
+
+
+ Debug
+ Name
+ CdStreamPosix.cpp
+ Windows
+
+
+ Debug
+ Name
+ Clock.cpp
+ Windows
+
+
+ Debug
+ Name
+ Clock.h
+ Windows
+
+
+ Debug
+ Name
+ common.h
+ Windows
+
+
+ Debug
+ Name
+ config.h
+ Windows
+
+
+ Debug
+ Name
+ ControllerConfig.cpp
+ Windows
+
+
+ Debug
+ Name
+ ControllerConfig.h
+ Windows
+
+
+ Debug
+ Name
+ Crime.h
+ Windows
+
+
+ Debug
+ Name
+ Debug.cpp
+ Windows
+
+
+ Debug
+ Name
+ Debug.h
+ Windows
+
+
+ Debug
+ Name
+ Directory.cpp
+ Windows
+
+
+ Debug
+ Name
+ Directory.h
+ Windows
+
+
+ Debug
+ Name
+ EventList.cpp
+ Windows
+
+
+ Debug
+ Name
+ EventList.h
+ Windows
+
+
+ Debug
+ Name
+ FileLoader.cpp
+ Windows
+
+
+ Debug
+ Name
+ FileLoader.h
+ Windows
+
+
+ Debug
+ Name
+ FileMgr.cpp
+ Windows
+
+
+ Debug
+ Name
+ FileMgr.h
+ Windows
+
+
+ Debug
+ Name
+ Fire.cpp
+ Windows
+
+
+ Debug
+ Name
+ Fire.h
+ Windows
+
+
+ Debug
+ Name
+ Frontend.cpp
+ Windows
+
+
+ Debug
+ Name
+ Frontend.h
+ Windows
+
+
+ Debug
+ Name
+ Frontend_PS2.cpp
+ Windows
+
+
+ Debug
+ Name
+ Frontend_PS2.h
+ Windows
+
+
+ Debug
+ Name
+ FrontEndControls.cpp
+ Windows
+
+
+ Debug
+ Name
+ FrontEndControls.h
+ Windows
+
+
+ Debug
+ Name
+ FrontendTriggers.h
+ Windows
+
+
+ Debug
+ Name
+ Game.cpp
+ Windows
+
+
+ Debug
+ Name
+ Game.h
+ Windows
+
+
+ Debug
+ Name
+ General.h
+ Windows
+
+
+ Debug
+ Name
+ IniFile.cpp
+ Windows
+
+
+ Debug
+ Name
+ IniFile.h
+ Windows
+
+
+ Debug
+ Name
+ Lists.cpp
+ Windows
+
+
+ Debug
+ Name
+ Lists.h
+ Windows
+
+
+ Debug
+ Name
+ main.cpp
+ Windows
+
+
+ Debug
+ Name
+ main.h
+ Windows
+
+
+ Debug
+ Name
+ MenuScreens.cpp
+ Windows
+
+
+ Debug
+ Name
+ MenuScreensCustom.cpp
+ Windows
+
+
+ Debug
+ Name
+ obrstr.cpp
+ Windows
+
+
+ Debug
+ Name
+ obrstr.h
+ Windows
+
+
+ Debug
+ Name
+ Pad.cpp
+ Windows
+
+
+ Debug
+ Name
+ Pad.h
+ Windows
+
+
+ Debug
+ Name
+ Placeable.cpp
+ Windows
+
+
+ Debug
+ Name
+ Placeable.h
+ Windows
+
+
+ Debug
+ Name
+ PlayerInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ PlayerInfo.h
+ Windows
+
+
+ Debug
+ Name
+ Pools.cpp
+ Windows
+
+
+ Debug
+ Name
+ Pools.h
+ Windows
+
+
+ Debug
+ Name
+ Profile.cpp
+ Windows
+
+
+ Debug
+ Name
+ Profile.h
+ Windows
+
+
+ Debug
+ Name
+ Radar.cpp
+ Windows
+
+
+ Debug
+ Name
+ Radar.h
+ Windows
+
+
+ Debug
+ Name
+ Range2D.cpp
+ Windows
+
+
+ Debug
+ Name
+ Range2D.h
+ Windows
+
+
+ Debug
+ Name
+ Range3D.cpp
+ Windows
+
+
+ Debug
+ Name
+ Range3D.h
+ Windows
+
+
+ Debug
+ Name
+ re3.cpp
+ Windows
+
+
+ Debug
+ Name
+ References.cpp
+ Windows
+
+
+ Debug
+ Name
+ References.h
+ Windows
+
+
+ Debug
+ Name
+ Ropes.cpp
+ Windows
+
+
+ Debug
+ Name
+ Ropes.h
+ Windows
+
+
+ Debug
+ Name
+ Stats.cpp
+ Windows
+
+
+ Debug
+ Name
+ Stats.h
+ Windows
+
+
+ Debug
+ Name
+ Streaming.cpp
+ Windows
+
+
+ Debug
+ Name
+ Streaming.h
+ Windows
+
+
+ Debug
+ Name
+ SurfaceTable.cpp
+ Windows
+
+
+ Debug
+ Name
+ SurfaceTable.h
+ Windows
+
+
+ Debug
+ Name
+ templates.h
+ Windows
+
+
+ Debug
+ Name
+ timebars.cpp
+ Windows
+
+
+ Debug
+ Name
+ timebars.h
+ Windows
+
+
+ Debug
+ Name
+ Timer.cpp
+ Windows
+
+
+ Debug
+ Name
+ Timer.h
+ Windows
+
+
+ Debug
+ Name
+ TimeStep.cpp
+ Windows
+
+
+ Debug
+ Name
+ TimeStep.h
+ Windows
+
+
+ Debug
+ Name
+ User.cpp
+ Windows
+
+
+ Debug
+ Name
+ User.h
+ Windows
+
+
+ Debug
+ Name
+ Wanted.cpp
+ Windows
+
+
+ Debug
+ Name
+ Wanted.h
+ Windows
+
+
+ Debug
+ Name
+ World.cpp
+ Windows
+
+
+ Debug
+ Name
+ World.h
+ Windows
+
+
+ Debug
+ Name
+ ZoneCull.cpp
+ Windows
+
+
+ Debug
+ Name
+ ZoneCull.h
+ Windows
+
+
+ Debug
+ Name
+ Zones.cpp
+ Windows
+
+
+ Debug
+ Name
+ Zones.h
+ Windows
+
+
+ entities
+
+ Debug
+ Name
+ Dummy.cpp
+ Windows
+
+
+ Debug
+ Name
+ Dummy.h
+ Windows
+
+
+ Debug
+ Name
+ Entity.cpp
+ Windows
+
+
+ Debug
+ Name
+ Entity.h
+ Windows
+
+
+ Debug
+ Name
+ Physical.cpp
+ Windows
+
+
+ Debug
+ Name
+ Physical.h
+ Windows
+
+
+ math
+
+ Debug
+ Name
+ math.cpp
+ Windows
+
+
+ Debug
+ Name
+ maths.h
+ Windows
+
+
+ Debug
+ Name
+ Matrix.cpp
+ Windows
+
+
+ Debug
+ Name
+ Matrix.h
+ Windows
+
+
+ Debug
+ Name
+ Quaternion.cpp
+ Windows
+
+
+ Debug
+ Name
+ Quaternion.h
+ Windows
+
+
+ Debug
+ Name
+ Rect.cpp
+ Windows
+
+
+ Debug
+ Name
+ Rect.h
+ Windows
+
+
+ Debug
+ Name
+ Vector.cpp
+ Windows
+
+
+ Debug
+ Name
+ Vector.h
+ Windows
+
+
+ Debug
+ Name
+ Vector2D.h
+ Windows
+
+
+ Debug
+ Name
+ VuVector.h
+ Windows
+
+
+ modelinfo
+
+ Debug
+ Name
+ BaseModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ BaseModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ ClumpModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ ClumpModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ ModelIndices.cpp
+ Windows
+
+
+ Debug
+ Name
+ ModelIndices.h
+ Windows
+
+
+ Debug
+ Name
+ ModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ ModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ PedModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ SimpleModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ SimpleModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ TimeModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ TimeModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ VehicleModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ VehicleModelInfo.h
+ Windows
+
+
+ Debug
+ Name
+ WeaponModelInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ WeaponModelInfo.h
+ Windows
+
+
+ objects
+
+ Debug
+ Name
+ CutsceneObject.cpp
+ Windows
+
+
+ Debug
+ Name
+ CutsceneObject.h
+ Windows
+
+
+ Debug
+ Name
+ DummyObject.cpp
+ Windows
+
+
+ Debug
+ Name
+ DummyObject.h
+ Windows
+
+
+ Debug
+ Name
+ Object.cpp
+ Windows
+
+
+ Debug
+ Name
+ Object.h
+ Windows
+
+
+ Debug
+ Name
+ ObjectData.cpp
+ Windows
+
+
+ Debug
+ Name
+ ObjectData.h
+ Windows
+
+
+ Debug
+ Name
+ ParticleObject.cpp
+ Windows
+
+
+ Debug
+ Name
+ ParticleObject.h
+ Windows
+
+
+ Debug
+ Name
+ Projectile.cpp
+ Windows
+
+
+ Debug
+ Name
+ Projectile.h
+ Windows
+
+
+ Debug
+ Name
+ Stinger.cpp
+ Windows
+
+
+ Debug
+ Name
+ Stinger.h
+ Windows
+
+
+ peds
+
+ Debug
+ Name
+ CivilianPed.cpp
+ Windows
+
+
+ Debug
+ Name
+ CivilianPed.h
+ Windows
+
+
+ Debug
+ Name
+ CopPed.cpp
+ Windows
+
+
+ Debug
+ Name
+ CopPed.h
+ Windows
+
+
+ Debug
+ Name
+ DummyPed.h
+ Windows
+
+
+ Debug
+ Name
+ EmergencyPed.cpp
+ Windows
+
+
+ Debug
+ Name
+ EmergencyPed.h
+ Windows
+
+
+ Debug
+ Name
+ Gangs.cpp
+ Windows
+
+
+ Debug
+ Name
+ Gangs.h
+ Windows
+
+
+ Debug
+ Name
+ Ped.cpp
+ Windows
+
+
+ Debug
+ Name
+ Ped.h
+ Windows
+
+
+ Debug
+ Name
+ PedAI.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedAttractor.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedAttractor.h
+ Windows
+
+
+ Debug
+ Name
+ PedChat.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedDebug.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedFight.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedIK.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedIK.h
+ Windows
+
+
+ Debug
+ Name
+ PedPlacement.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedPlacement.h
+ Windows
+
+
+ Debug
+ Name
+ PedRoutes.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedRoutes.h
+ Windows
+
+
+ Debug
+ Name
+ PedType.cpp
+ Windows
+
+
+ Debug
+ Name
+ PedType.h
+ Windows
+
+
+ Debug
+ Name
+ PlayerPed.cpp
+ Windows
+
+
+ Debug
+ Name
+ PlayerPed.h
+ Windows
+
+
+ Debug
+ Name
+ Population.cpp
+ Windows
+
+
+ Debug
+ Name
+ Population.h
+ Windows
+
+
+ render
+
+ Debug
+ Name
+ 2dEffect.h
+ Windows
+
+
+ Debug
+ Name
+ Antennas.cpp
+ Windows
+
+
+ Debug
+ Name
+ Antennas.h
+ Windows
+
+
+ Debug
+ Name
+ Clouds.cpp
+ Windows
+
+
+ Debug
+ Name
+ Clouds.h
+ Windows
+
+
+ Debug
+ Name
+ Console.cpp
+ Windows
+
+
+ Debug
+ Name
+ Console.h
+ Windows
+
+
+ Debug
+ Name
+ Coronas.cpp
+ Windows
+
+
+ Debug
+ Name
+ Coronas.h
+ Windows
+
+
+ Debug
+ Name
+ Credits.cpp
+ Windows
+
+
+ Debug
+ Name
+ Credits.h
+ Windows
+
+
+ Debug
+ Name
+ CutsceneShadow.cpp
+ Windows
+
+
+ Debug
+ Name
+ CutsceneShadow.h
+ Windows
+
+
+ Debug
+ Name
+ Draw.cpp
+ Windows
+
+
+ Debug
+ Name
+ Draw.h
+ Windows
+
+
+ Debug
+ Name
+ Fluff.cpp
+ Windows
+
+
+ Debug
+ Name
+ Fluff.h
+ Windows
+
+
+ Debug
+ Name
+ Font.cpp
+ Windows
+
+
+ Debug
+ Name
+ Font.h
+ Windows
+
+
+ Debug
+ Name
+ Glass.cpp
+ Windows
+
+
+ Debug
+ Name
+ Glass.h
+ Windows
+
+
+ Debug
+ Name
+ Hud.cpp
+ Windows
+
+
+ Debug
+ Name
+ Hud.h
+ Windows
+
+
+ Debug
+ Name
+ Instance.cpp
+ Windows
+
+
+ Debug
+ Name
+ Instance.h
+ Windows
+
+
+ Debug
+ Name
+ Lines.cpp
+ Windows
+
+
+ Debug
+ Name
+ Lines.h
+ Windows
+
+
+ Debug
+ Name
+ MBlur.cpp
+ Windows
+
+
+ Debug
+ Name
+ MBlur.h
+ Windows
+
+
+ Debug
+ Name
+ Occlusion.cpp
+ Windows
+
+
+ Debug
+ Name
+ Occlusion.h
+ Windows
+
+
+ Debug
+ Name
+ Particle.cpp
+ Windows
+
+
+ Debug
+ Name
+ Particle.h
+ Windows
+
+
+ Debug
+ Name
+ ParticleMgr.cpp
+ Windows
+
+
+ Debug
+ Name
+ ParticleMgr.h
+ Windows
+
+
+ Debug
+ Name
+ ParticleType.h
+ Windows
+
+
+ Debug
+ Name
+ PlayerSkin.cpp
+ Windows
+
+
+ Debug
+ Name
+ PlayerSkin.h
+ Windows
+
+
+ Debug
+ Name
+ PointLights.cpp
+ Windows
+
+
+ Debug
+ Name
+ PointLights.h
+ Windows
+
+
+ Debug
+ Name
+ RenderBuffer.cpp
+ Windows
+
+
+ Debug
+ Name
+ RenderBuffer.h
+ Windows
+
+
+ Debug
+ Name
+ Renderer.cpp
+ Windows
+
+
+ Debug
+ Name
+ Renderer.h
+ Windows
+
+
+ Debug
+ Name
+ Rubbish.cpp
+ Windows
+
+
+ Debug
+ Name
+ Rubbish.h
+ Windows
+
+
+ Debug
+ Name
+ ShadowCamera.cpp
+ Windows
+
+
+ Debug
+ Name
+ ShadowCamera.h
+ Windows
+
+
+ Debug
+ Name
+ Shadows.cpp
+ Windows
+
+
+ Debug
+ Name
+ Shadows.h
+ Windows
+
+
+ Debug
+ Name
+ Skidmarks.cpp
+ Windows
+
+
+ Debug
+ Name
+ Skidmarks.h
+ Windows
+
+
+ Debug
+ Name
+ SpecialFX.cpp
+ Windows
+
+
+ Debug
+ Name
+ SpecialFX.h
+ Windows
+
+
+ Debug
+ Name
+ Sprite.cpp
+ Windows
+
+
+ Debug
+ Name
+ Sprite.h
+ Windows
+
+
+ Debug
+ Name
+ Sprite2d.cpp
+ Windows
+
+
+ Debug
+ Name
+ Sprite2d.h
+ Windows
+
+
+ Debug
+ Name
+ TexList.cpp
+ Windows
+
+
+ Debug
+ Name
+ TexList.h
+ Windows
+
+
+ Debug
+ Name
+ Timecycle.cpp
+ Windows
+
+
+ Debug
+ Name
+ Timecycle.h
+ Windows
+
+
+ Debug
+ Name
+ VarConsole.cpp
+ Windows
+
+
+ Debug
+ Name
+ VarConsole.h
+ Windows
+
+
+ Debug
+ Name
+ WaterCannon.cpp
+ Windows
+
+
+ Debug
+ Name
+ WaterCannon.h
+ Windows
+
+
+ Debug
+ Name
+ WaterCreatures.cpp
+ Windows
+
+
+ Debug
+ Name
+ WaterCreatures.h
+ Windows
+
+
+ Debug
+ Name
+ WaterLevel.cpp
+ Windows
+
+
+ Debug
+ Name
+ WaterLevel.h
+ Windows
+
+
+ Debug
+ Name
+ Weather.cpp
+ Windows
+
+
+ Debug
+ Name
+ Weather.h
+ Windows
+
+
+ Debug
+ Name
+ WindModifiers.cpp
+ Windows
+
+
+ Debug
+ Name
+ WindModifiers.h
+ Windows
+
+
+ rw
+
+ Debug
+ Name
+ ClumpRead.cpp
+ Windows
+
+
+ Debug
+ Name
+ Lights.cpp
+ Windows
+
+
+ Debug
+ Name
+ Lights.h
+ Windows
+
+
+ Debug
+ Name
+ MemoryHeap.cpp
+ Windows
+
+
+ Debug
+ Name
+ MemoryHeap.h
+ Windows
+
+
+ Debug
+ Name
+ MemoryMgr.cpp
+ Windows
+
+
+ Debug
+ Name
+ MemoryMgr.h
+ Windows
+
+
+ Debug
+ Name
+ NodeName.cpp
+ Windows
+
+
+ Debug
+ Name
+ NodeName.h
+ Windows
+
+
+ Debug
+ Name
+ RwHelper.cpp
+ Windows
+
+
+ Debug
+ Name
+ RwHelper.h
+ Windows
+
+
+ Debug
+ Name
+ RwMatFX.cpp
+ Windows
+
+
+ Debug
+ Name
+ RwPS2AlphaTest.cpp
+ Windows
+
+
+ Debug
+ Name
+ TexRead.cpp
+ Windows
+
+
+ Debug
+ Name
+ TexturePools.cpp
+ Windows
+
+
+ Debug
+ Name
+ TexturePools.h
+ Windows
+
+
+ Debug
+ Name
+ TxdStore.cpp
+ Windows
+
+
+ Debug
+ Name
+ TxdStore.h
+ Windows
+
+
+ Debug
+ Name
+ VisibilityPlugins.cpp
+ Windows
+
+
+ Debug
+ Name
+ VisibilityPlugins.h
+ Windows
+
+
+ save
+
+ Debug
+ Name
+ Date.cpp
+ Windows
+
+
+ Debug
+ Name
+ Date.h
+ Windows
+
+
+ Debug
+ Name
+ GenericGameStorage.cpp
+ Windows
+
+
+ Debug
+ Name
+ GenericGameStorage.h
+ Windows
+
+
+ Debug
+ Name
+ MemoryCard.cpp
+ Windows
+
+
+ Debug
+ Name
+ MemoryCard.h
+ Windows
+
+
+ Debug
+ Name
+ PCSave.cpp
+ Windows
+
+
+ Debug
+ Name
+ PCSave.h
+ Windows
+
+
+ skel
+
+ Debug
+ Name
+ crossplatform.cpp
+ Windows
+
+
+ Debug
+ Name
+ crossplatform.h
+ Windows
+
+
+ Debug
+ Name
+ events.cpp
+ Windows
+
+
+ Debug
+ Name
+ events.h
+ Windows
+
+
+ Debug
+ Name
+ platform.h
+ Windows
+
+
+ Debug
+ Name
+ skeleton.cpp
+ Windows
+
+
+ Debug
+ Name
+ skeleton.h
+ Windows
+
+
+ Debug
+ Name
+ resource.h
+ Windows
+
+
+ Debug
+ Name
+ win.cpp
+ Windows
+
+
+ Debug
+ Name
+ win.h
+ Windows
+
+
+ Debug
+ Name
+ win.rc
+ Windows
+
+
+ text
+
+ Debug
+ Name
+ Messages.cpp
+ Windows
+
+
+ Debug
+ Name
+ Messages.h
+ Windows
+
+
+ Debug
+ Name
+ Pager.cpp
+ Windows
+
+
+ Debug
+ Name
+ Pager.h
+ Windows
+
+
+ Debug
+ Name
+ Text.cpp
+ Windows
+
+
+ Debug
+ Name
+ Text.h
+ Windows
+
+
+ vehicles
+
+ Debug
+ Name
+ Automobile.cpp
+ Windows
+
+
+ Debug
+ Name
+ Automobile.h
+ Windows
+
+
+ Debug
+ Name
+ Bike.cpp
+ Windows
+
+
+ Debug
+ Name
+ Bike.h
+ Windows
+
+
+ Debug
+ Name
+ Boat.cpp
+ Windows
+
+
+ Debug
+ Name
+ Boat.h
+ Windows
+
+
+ Debug
+ Name
+ CarGen.cpp
+ Windows
+
+
+ Debug
+ Name
+ CarGen.h
+ Windows
+
+
+ Debug
+ Name
+ Cranes.cpp
+ Windows
+
+
+ Debug
+ Name
+ Cranes.h
+ Windows
+
+
+ Debug
+ Name
+ DamageManager.cpp
+ Windows
+
+
+ Debug
+ Name
+ DamageManager.h
+ Windows
+
+
+ Debug
+ Name
+ Door.cpp
+ Windows
+
+
+ Debug
+ Name
+ Door.h
+ Windows
+
+
+ Debug
+ Name
+ Floater.cpp
+ Windows
+
+
+ Debug
+ Name
+ Floater.h
+ Windows
+
+
+ Debug
+ Name
+ HandlingMgr.cpp
+ Windows
+
+
+ Debug
+ Name
+ HandlingMgr.h
+ Windows
+
+
+ Debug
+ Name
+ Heli.cpp
+ Windows
+
+
+ Debug
+ Name
+ Heli.h
+ Windows
+
+
+ Debug
+ Name
+ Plane.cpp
+ Windows
+
+
+ Debug
+ Name
+ Plane.h
+ Windows
+
+
+ Debug
+ Name
+ Train.cpp
+ Windows
+
+
+ Debug
+ Name
+ Train.h
+ Windows
+
+
+ Debug
+ Name
+ Transmission.cpp
+ Windows
+
+
+ Debug
+ Name
+ Transmission.h
+ Windows
+
+
+ Debug
+ Name
+ Vehicle.cpp
+ Windows
+
+
+ Debug
+ Name
+ Vehicle.h
+ Windows
+
+
+ weapons
+
+ Debug
+ Name
+ BulletInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ BulletInfo.h
+ Windows
+
+
+ Debug
+ Name
+ Explosion.cpp
+ Windows
+
+
+ Debug
+ Name
+ Explosion.h
+ Windows
+
+
+ Debug
+ Name
+ ProjectileInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ ProjectileInfo.h
+ Windows
+
+
+ Debug
+ Name
+ ShotInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ ShotInfo.h
+ Windows
+
+
+ Debug
+ Name
+ Weapon.cpp
+ Windows
+
+
+ Debug
+ Name
+ Weapon.h
+ Windows
+
+
+ Debug
+ Name
+ WeaponEffects.cpp
+ Windows
+
+
+ Debug
+ Name
+ WeaponEffects.h
+ Windows
+
+
+ Debug
+ Name
+ WeaponInfo.cpp
+ Windows
+
+
+ Debug
+ Name
+ WeaponInfo.h
+ Windows
+
+
+ Debug
+ Name
+ WeaponType.h
+ Windows
+
+
+ RenderWare
+
+ Debug
+ Name
+ rwcore.lib
+ Windows
+
+
+ Debug
+ Name
+ rpworld.lib
+ Windows
+
+
+ Debug
+ Name
+ rpmatfx.lib
+ Windows
+
+
+ Debug
+ Name
+ rpskin.lib
+ Windows
+
+
+ Debug
+ Name
+ rphanim.lib
+ Windows
+
+
+ Debug
+ Name
+ rtbmp.lib
+ Windows
+
+
+ Debug
+ Name
+ rtquat.lib
+ Windows
+
+
+ Debug
+ Name
+ rtcharse.lib
+ Windows
+
+
+ Debug
+ Name
+ rtanim.lib
+ Windows
+
+
+ Debug
+ Name
+ rpanisot.lib
+ Windows
+
+
+ DirectX
+
+ Debug
+ Name
+ d3d8.lib
+ Windows
+
+
+ Debug
+ Name
+ ddraw.lib
+ Windows
+
+
+ Debug
+ Name
+ dxguid.lib
+ Windows
+
+
+ Debug
+ Name
+ strmiids.lib
+ Windows
+
+
+ Debug
+ Name
+ dinput8.lib
+ Windows
+
+
+ Miles
+
+ Debug
+ Name
+ mss32.lib
+ Windows
+
+
+ MSL ANSI Libraries
+
+ Debug
+ Name
+ MSL_All_x86_D.lib
+ MacOS
+
+
+ Release
+ Name
+ MSL_All_x86.lib
+ MacOS
+
+
+ Win32 SDK Libraries
+
+ Debug
+ Name
+ Gdi32.lib
+ MacOS
+
+
+ Debug
+ Name
+ Kernel32.lib
+ MacOS
+
+
+ Debug
+ Name
+ User32.lib
+ MacOS
+
+
+ Debug
+ Name
+ Comdlg32.lib
+ MacOS
+
+
+ Debug
+ Name
+ winmm.lib
+ Windows
+
+
+ Debug
+ Name
+ ole32.lib
+ Windows
+
+
+ Debug
+ Name
+ shell32.lib
+ Windows
+
+
+ Debug
+ Name
+ uuid.lib
+ Windows
+
+
+
+
+
diff --git a/gamefiles/TEXT/american.gxt b/gamefiles/TEXT/american.gxt
index 4db81fc6..39895b0c 100644
Binary files a/gamefiles/TEXT/american.gxt and b/gamefiles/TEXT/american.gxt differ
diff --git a/gamefiles/TEXT/french.gxt b/gamefiles/TEXT/french.gxt
index 36f4225c..d2020651 100644
Binary files a/gamefiles/TEXT/french.gxt and b/gamefiles/TEXT/french.gxt differ
diff --git a/gamefiles/TEXT/german.gxt b/gamefiles/TEXT/german.gxt
index 772865db..f96f87d5 100644
Binary files a/gamefiles/TEXT/german.gxt and b/gamefiles/TEXT/german.gxt differ
diff --git a/gamefiles/TEXT/italian.gxt b/gamefiles/TEXT/italian.gxt
index fd087c0d..407da68d 100644
Binary files a/gamefiles/TEXT/italian.gxt and b/gamefiles/TEXT/italian.gxt differ
diff --git a/gamefiles/TEXT/russian.gxt b/gamefiles/TEXT/russian.gxt
new file mode 100644
index 00000000..375323ba
Binary files /dev/null and b/gamefiles/TEXT/russian.gxt differ
diff --git a/gamefiles/TEXT/spanish.gxt b/gamefiles/TEXT/spanish.gxt
index 7a71144c..54773d07 100644
Binary files a/gamefiles/TEXT/spanish.gxt and b/gamefiles/TEXT/spanish.gxt differ
diff --git a/gamefiles/models/fonts_r.txd b/gamefiles/models/fonts_r.txd
new file mode 100644
index 00000000..b6d50ac2
Binary files /dev/null and b/gamefiles/models/fonts_r.txd differ
diff --git a/gamefiles/models/particle.txd b/gamefiles/models/particle.txd
index 4de9e4fd..b0c585f4 100644
Binary files a/gamefiles/models/particle.txd and b/gamefiles/models/particle.txd differ
diff --git a/premake5.lua b/premake5.lua
index ea1045f5..f1287011 100644
--- a/premake5.lua
+++ b/premake5.lua
@@ -28,8 +28,18 @@ newoption {
}
newoption {
- trigger = "lto",
- description = "Use link time optimization"
+ trigger = "with-lto",
+ description = "Build with link time optimization"
+}
+
+newoption {
+ trigger = "no-git-hash",
+ description = "Don't print git commit hash into binary"
+}
+
+newoption {
+ trigger = "no-full-paths",
+ description = "Don't print full paths into binary"
}
if(_OPTIONS["with-librw"]) then
@@ -58,7 +68,7 @@ end
workspace "reVC"
language "C++"
- configurations { "Debug", "Release", "Vanilla" }
+ configurations { "Debug", "Release" }
startproject "reVC"
location "build"
symbols "Full"
@@ -70,6 +80,7 @@ workspace "reVC"
end
filter { "system:windows" }
+ configurations { "Vanilla" }
platforms {
"win-x86-RW34_d3d8-mss",
"win-x86-librw_d3d9-mss",
@@ -96,7 +107,7 @@ workspace "reVC"
"bsd-arm-librw_gl3_glfw-oal",
"bsd-arm64-librw_gl3_glfw-oal"
}
-
+
filter { "system:macosx" }
platforms {
"macosx-arm64-librw_gl3_glfw-oal",
@@ -105,64 +116,67 @@ workspace "reVC"
filter "configurations:Debug"
defines { "DEBUG" }
-
+
filter "configurations:not Debug"
defines { "NDEBUG" }
optimize "Speed"
- if(_OPTIONS["lto"]) then
+ if(_OPTIONS["with-lto"]) then
flags { "LinkTimeOptimization" }
end
- filter "configurations:Vanilla"
- defines { "VANILLA_DEFINES" }
-
filter { "platforms:win*" }
system "windows"
filter { "platforms:linux*" }
system "linux"
-
+
filter { "platforms:bsd*" }
system "bsd"
filter { "platforms:macosx*" }
system "macosx"
-
+
filter { "platforms:*x86*" }
architecture "x86"
-
+
filter { "platforms:*amd64*" }
architecture "amd64"
filter { "platforms:*arm*" }
architecture "ARM"
-
- filter { "platforms:macosx-arm64-*" }
+
+ filter { "platforms:macosx-arm64-*", "files:**.cpp"}
buildoptions { "-target", "arm64-apple-macos11", "-std=gnu++14" }
- filter { "platforms:macosx-amd64-*" }
+ filter { "platforms:macosx-arm64-*", "files:**.c"}
+ buildoptions { "-target", "arm64-apple-macos11" }
+
+ filter { "platforms:macosx-amd64-*", "files:**.cpp"}
buildoptions { "-target", "x86_64-apple-macos10.12", "-std=gnu++14" }
+ filter { "platforms:macosx-amd64-*", "files:**.c"}
+ buildoptions { "-target", "x86_64-apple-macos10.12" }
+
filter { "platforms:*librw_d3d9*" }
defines { "RW_D3D9" }
if(not _OPTIONS["with-librw"]) then
libdirs { path.join(Librw, "lib/win-%{getarch(cfg.architecture)}-d3d9/%{cfg.buildcfg}") }
end
-
+
filter "platforms:*librw_gl3_glfw*"
defines { "RW_GL3" }
if(not _OPTIONS["with-librw"]) then
libdirs { path.join(Librw, "lib/%{getsys(cfg.system)}-%{getarch(cfg.architecture)}-gl3/%{cfg.buildcfg}") }
end
-
+
filter "platforms:*x86-librw_gl3_glfw*"
includedirs { path.join(_OPTIONS["glfwdir32"], "include") }
-
+
filter "platforms:*amd64-librw_gl3_glfw*"
includedirs { path.join(_OPTIONS["glfwdir64"], "include") }
filter {}
-
+
function setpaths (gamepath, exepath)
if (gamepath) then
postbuildcommands {
@@ -186,7 +200,7 @@ project "librw"
files { path.join(Librw, "src/*.*") }
files { path.join(Librw, "src/*/*.*") }
files { path.join(Librw, "src/gl/*/*.*") }
-
+
filter { "platforms:*x86*" }
architecture "x86"
@@ -202,16 +216,22 @@ project "librw"
includedirs { "/usr/local/include" }
libdirs { "/usr/local/lib" }
- filter "platforms:macosx*"
- -- Support MacPorts and Homebrew
+ -- Support MacPorts and Homebrew
+ filter "platforms:macosx-arm64-*"
+ includedirs { "/opt/local/include" }
+ includedirs {"/opt/homebrew/include" }
+ libdirs { "/opt/local/lib" }
+ libdirs { "/opt/homebrew/lib" }
+
+ filter "platforms:macosx-amd64-*"
includedirs { "/opt/local/include" }
includedirs {"/usr/local/include" }
libdirs { "/opt/local/lib" }
libdirs { "/usr/local/lib" }
-
+
filter "platforms:*gl3_glfw*"
staticruntime "off"
-
+
filter "platforms:*RW34*"
flags { "ExcludeFromBuild" }
filter {}
@@ -253,7 +273,11 @@ project "reVC"
files { addSrcFiles("src/vehicles") }
files { addSrcFiles("src/weapons") }
files { addSrcFiles("src/extras") }
- files { "src/extras/GitSHA1.cpp" } -- this won't be in repo in first build
+ if(not _OPTIONS["no-git-hash"]) then
+ files { "src/extras/GitSHA1.cpp" } -- this won't be in repo in first build
+ else
+ removefiles { "src/extras/GitSHA1.cpp" } -- but it will be everytime after
+ end
includedirs { "src" }
includedirs { "src/animation" }
@@ -278,18 +302,25 @@ project "reVC"
includedirs { "src/vehicles" }
includedirs { "src/weapons" }
includedirs { "src/extras" }
-
+
+ if(not _OPTIONS["no-git-hash"]) then
+ defines { "USE_OUR_VERSIONING" }
+ end
+
if _OPTIONS["with-opus"] then
includedirs { "vendor/ogg/include" }
includedirs { "vendor/opus/include" }
includedirs { "vendor/opusfile/include" }
end
+ filter "configurations:Vanilla"
+ defines { "VANILLA_DEFINES" }
+
filter "platforms:*mss"
defines { "AUDIO_MSS" }
includedirs { "vendor/milessdk/include" }
libdirs { "vendor/milessdk/lib" }
-
+
if _OPTIONS["with-opus"] then
filter "platforms:win*"
libdirs { "vendor/ogg/win32/VS2015/Win32/%{cfg.buildcfg}" }
@@ -298,7 +329,7 @@ project "reVC"
filter {}
defines { "AUDIO_OPUS" }
end
-
+
filter "platforms:*oal"
defines { "AUDIO_OAL" }
@@ -306,7 +337,7 @@ project "reVC"
if(os.getenv("GTA_VC_RE_DIR")) then
setpaths(os.getenv("GTA_VC_RE_DIR") .. "/", "%(cfg.buildtarget.name)")
end
-
+
filter "platforms:win*"
files { addSrcFiles("src/skel/win") }
includedirs { "src/skel/win" }
@@ -314,44 +345,58 @@ project "reVC"
linkoptions "/SAFESEH:NO"
characterset ("MBCS")
targetextension ".exe"
+ if(_OPTIONS["no-full-paths"]) then
+ usefullpaths "off"
+ linkoptions "/PDBALTPATH:%_PDB%"
+ end
if(_OPTIONS["with-librw"]) then
-- external librw is dynamic
staticruntime "on"
end
- prebuildcommands { '"%{prj.location}..\\printHash.bat" "%{prj.location}..\\src\\extras\\GitSHA1.cpp"' }
+ if(not _OPTIONS["no-git-hash"]) then
+ prebuildcommands { '"%{prj.location}..\\printHash.bat" "%{prj.location}..\\src\\extras\\GitSHA1.cpp"' }
+ end
filter "platforms:not win*"
- prebuildcommands { '"%{prj.location}/../printHash.sh" "%{prj.location}/../src/extras/GitSHA1.cpp"' }
+ if(not _OPTIONS["no-git-hash"]) then
+ prebuildcommands { '"%{prj.location}/../printHash.sh" "%{prj.location}/../src/extras/GitSHA1.cpp"' }
+ end
filter "platforms:win*glfw*"
staticruntime "off"
-
+
filter "platforms:win*oal"
includedirs { "vendor/openal-soft/include" }
includedirs { "vendor/libsndfile/include" }
includedirs { "vendor/mpg123/include" }
-
+
filter "platforms:win-x86*oal"
libdirs { "vendor/mpg123/lib/Win32" }
libdirs { "vendor/libsndfile/lib/Win32" }
libdirs { "vendor/openal-soft/libs/Win32" }
-
+
filter "platforms:win-amd64*oal"
libdirs { "vendor/mpg123/lib/Win64" }
libdirs { "vendor/libsndfile/lib/Win64" }
libdirs { "vendor/openal-soft/libs/Win64" }
filter "platforms:linux*oal"
- links { "openal", "mpg123", "sndfile", "pthread" }
-
+ links { "openal", "mpg123", "sndfile", "pthread", "X11" }
+
filter "platforms:bsd*oal"
- links { "openal", "mpg123", "sndfile", "pthread" }
+ links { "openal", "mpg123", "sndfile", "pthread", "X11" }
filter "platforms:macosx*oal"
links { "openal", "mpg123", "sndfile", "pthread" }
+
+ filter "platforms:macosx-arm64-*oal"
+ includedirs { "/opt/homebrew/opt/openal-soft/include" }
+ libdirs { "/opt/homebrew/opt/openal-soft/lib" }
+
+ filter "platforms:macosx-amd64-*oal"
includedirs { "/usr/local/opt/openal-soft/include" }
libdirs { "/usr/local/opt/openal-soft/lib" }
-
+
if _OPTIONS["with-opus"] then
filter {}
links { "libogg" }
@@ -365,7 +410,7 @@ project "reVC"
links { "rwcore", "rpworld", "rpmatfx", "rpskin", "rphanim", "rtbmp", "rtquat", "rtanim", "rtcharse", "rpanisot" }
defines { "RWLIBS" }
linkoptions "/SECTION:_rwcseg,ER!W /MERGE:_rwcseg=.text"
-
+
filter "platforms:*librw*"
defines { "LIBRW" }
files { addSrcFiles("src/fakerw") }
@@ -379,31 +424,39 @@ project "reVC"
filter "platforms:*d3d9*"
defines { "USE_D3D9" }
links { "d3d9" }
-
+
filter "platforms:*x86*d3d*"
includedirs { "sdk/dx8sdk/include" }
libdirs { "sdk/dx8sdk/lib" }
-
+
filter "platforms:win-x86*gl3_glfw*"
libdirs { path.join(_OPTIONS["glfwdir32"], "lib-" .. string.gsub(_ACTION or '', "vs", "vc")) }
links { "opengl32", "glfw3" }
-
+
filter "platforms:win-amd64*gl3_glfw*"
libdirs { path.join(_OPTIONS["glfwdir64"], "lib-" .. string.gsub(_ACTION or '', "vs", "vc")) }
links { "opengl32", "glfw3" }
filter "platforms:linux*gl3_glfw*"
links { "GL", "glfw" }
-
+
filter "platforms:bsd*gl3_glfw*"
links { "GL", "glfw", "sysinfo" }
includedirs { "/usr/local/include" }
libdirs { "/usr/local/lib" }
- filter "platforms:macosx*gl3_glfw*"
+ filter "platforms:macosx-arm64-*gl3_glfw*"
links { "glfw" }
linkoptions { "-framework OpenGL" }
includedirs { "/opt/local/include" }
- includedirs { "/usr/local/include" }
+ includedirs {"/opt/homebrew/include" }
+ libdirs { "/opt/local/lib" }
+ libdirs { "/opt/homebrew/lib" }
+
+ filter "platforms:macosx-amd64-*gl3_glfw*"
+ links { "glfw" }
+ linkoptions { "-framework OpenGL" }
+ includedirs { "/opt/local/include" }
+ includedirs {"/usr/local/include" }
libdirs { "/opt/local/lib" }
libdirs { "/usr/local/lib" }
diff --git a/printHash.sh b/printHash.sh
index e7d6f018..213d9353 100755
--- a/printHash.sh
+++ b/printHash.sh
@@ -1,12 +1,14 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
+if [ -z "${1}" ]
+ then
+ printf "%s\n" "Input the path to the file for writing the commit hash to."
+ else
+ printf "%s" "#define GIT_SHA1 \"" > $1
-> $1
+ if (command -v "git" >/dev/null) then
+ git rev-parse --short HEAD | tr -d '\n' >> $1
+ fi
-echo -n "#define GIT_SHA1 \"" > $1
-
-if (command -v "git" >/dev/null) then
-git rev-parse --short HEAD | tr -d '\n' >> $1
+ printf "%s\n" "\"" >> $1
+ printf "%s\n" "const char* g_GIT_SHA1 = GIT_SHA1;" >> $1
fi
-
-echo "\"" >> $1
-echo "const char* g_GIT_SHA1 = GIT_SHA1;" >> $1
\ No newline at end of file
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6c8ab281..28090d7e 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -50,6 +50,7 @@ if(LIBRW_PLATFORM_D3D9)
endif()
target_compile_definitions(${EXECUTABLE} PRIVATE CMAKE_BUILD)
+target_compile_definitions(${EXECUTABLE} PRIVATE USE_OUR_VERSIONING)
if(${PROJECT}_AUDIO STREQUAL "OAL")
find_package(OpenAL REQUIRED)
diff --git a/src/audio/AudioCollision.cpp b/src/audio/AudioCollision.cpp
index 250cd18e..decb73e5 100644
--- a/src/audio/AudioCollision.cpp
+++ b/src/audio/AudioCollision.cpp
@@ -158,7 +158,7 @@ cAudioManager::SetLoopingCollisionRequestedSfxFreqAndGetVol(const cAudioCollisio
void
cAudioManager::SetUpLoopingCollisionSound(const cAudioCollision &col, uint8 counter)
{
- bool distCalculated = false;
+ bool8 distCalculated = FALSE;
if(col.m_fIntensity2 > 0.0016f) {
uint8 emittingVol = SetLoopingCollisionRequestedSfxFreqAndGetVol(col);
if(emittingVol) {
@@ -168,20 +168,17 @@ cAudioManager::SetUpLoopingCollisionSound(const cAudioCollision &col, uint8 coun
m_sQueueSample.m_nCounter = counter;
m_sQueueSample.m_vecPos = col.m_vecPosition;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 7;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart =
- SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd =
- SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = CollisionSoundIntensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -311,17 +308,16 @@ cAudioManager::SetUpOneShotCollisionSound(const cAudioCollision &col)
if(counter >= 255) counter = 28;
m_sQueueSample.m_vecPos = col.m_vecPosition;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 11;
m_sQueueSample.m_nLoopCount = 1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = CollisionSoundIntensity;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -332,13 +328,12 @@ void
cAudioManager::ServiceCollisions()
{
int i, j;
- bool abRepeatedCollision1[NUMAUDIOCOLLISIONS];
- bool abRepeatedCollision2[NUMAUDIOCOLLISIONS];
+ bool8 abRepeatedCollision1[NUMAUDIOCOLLISIONS];
+ bool8 abRepeatedCollision2[NUMAUDIOCOLLISIONS];
m_sQueueSample.m_nEntityIndex = m_nCollisionEntity;
- for (int i = 0; i < NUMAUDIOCOLLISIONS; i++)
- abRepeatedCollision1[i] = abRepeatedCollision2[i] = false;
+ for (int i = 0; i < NUMAUDIOCOLLISIONS; i++) abRepeatedCollision1[i] = abRepeatedCollision2[i] = FALSE;
for (i = 0; i < m_sCollisionManager.m_bCollisionsInQueue; i++) {
for (j = 0; j < NUMAUDIOCOLLISIONS; j++) {
@@ -348,8 +343,8 @@ cAudioManager::ServiceCollisions()
&& (m_sCollisionManager.m_asCollisions1[index].m_bSurface1 == m_sCollisionManager.m_asCollisions2[j].m_bSurface1)
&& (m_sCollisionManager.m_asCollisions1[index].m_bSurface2 == m_sCollisionManager.m_asCollisions2[j].m_bSurface2)
) {
- abRepeatedCollision1[index] = true;
- abRepeatedCollision2[j] = true;
+ abRepeatedCollision1[index] = TRUE;
+ abRepeatedCollision2[j] = TRUE;
m_sCollisionManager.m_asCollisions1[index].m_nBaseVolume = ++m_sCollisionManager.m_asCollisions2[j].m_nBaseVolume;
SetUpLoopingCollisionSound(m_sCollisionManager.m_asCollisions1[index], j);
break;
diff --git a/src/audio/AudioLogic.cpp b/src/audio/AudioLogic.cpp
index 7469f579..5ee5ddd1 100644
--- a/src/audio/AudioLogic.cpp
+++ b/src/audio/AudioLogic.cpp
@@ -43,9 +43,9 @@
#include "Script.h"
#include "Wanted.h"
-const int channels = ARRAY_SIZE(AudioManager.m_asActiveSamples);
-const int policeChannel = channels + 1;
-const int allChannels = channels + 2;
+#ifndef GTA_PS2
+#define CHANNEL_PLAYER_VEHICLE_ENGINE m_nActiveSamples
+#endif
enum PLAY_STATUS { PLAY_STATUS_STOPPED = 0, PLAY_STATUS_PLAYING, PLAY_STATUS_FINISHED };
enum LOADING_STATUS { LOADING_STATUS_NOT_LOADED = 0, LOADING_STATUS_LOADED, LOADING_STATUS_FAILED };
@@ -123,62 +123,62 @@ cAudioManager::PostInitialiseGameSpecificSetup()
{
m_nFireAudioEntity = CreateEntity(AUDIOTYPE_FIRE, &gFireManager);
if (m_nFireAudioEntity >= 0)
- SetEntityStatus(m_nFireAudioEntity, true);
+ SetEntityStatus(m_nFireAudioEntity, TRUE);
m_nCollisionEntity = CreateEntity(AUDIOTYPE_COLLISION, (void *)1);
if (m_nCollisionEntity >= 0)
- SetEntityStatus(m_nCollisionEntity, true);
+ SetEntityStatus(m_nCollisionEntity, TRUE);
m_nFrontEndEntity = CreateEntity(AUDIOTYPE_FRONTEND, (void *)1);
if (m_nFrontEndEntity >= 0)
- SetEntityStatus(m_nFrontEndEntity, true);
+ SetEntityStatus(m_nFrontEndEntity, TRUE);
m_nProjectileEntity = CreateEntity(AUDIOTYPE_PROJECTILE, (void *)1);
if (m_nProjectileEntity >= 0)
- SetEntityStatus(m_nProjectileEntity, true);
+ SetEntityStatus(m_nProjectileEntity, TRUE);
m_nWaterCannonEntity = CreateEntity(AUDIOTYPE_WATERCANNON, (void *)1);
if (m_nWaterCannonEntity >= 0)
- SetEntityStatus(m_nWaterCannonEntity, true);
+ SetEntityStatus(m_nWaterCannonEntity, TRUE);
m_nPoliceChannelEntity = CreateEntity(AUDIOTYPE_POLICERADIO, (void *)1);
if (m_nPoliceChannelEntity >= 0)
- SetEntityStatus(m_nPoliceChannelEntity, true);
+ SetEntityStatus(m_nPoliceChannelEntity, TRUE);
#ifdef GTA_BRIDGE
m_nBridgeEntity = CreateEntity(AUDIOTYPE_BRIDGE, (void*)1);
if (m_nBridgeEntity >= 0)
- SetEntityStatus(m_nBridgeEntity, true);
+ SetEntityStatus(m_nBridgeEntity, TRUE);
#endif // GTA_BRIDGE
m_nEscalatorEntity = CreateEntity(AUDIOTYPE_ESCALATOR, (void*)1);
if (m_nEscalatorEntity >= 0)
- SetEntityStatus(m_nEscalatorEntity, true);
+ SetEntityStatus(m_nEscalatorEntity, TRUE);
m_nExtraSoundsEntity = CreateEntity(AUDIOTYPE_EXTRA_SOUNDS, (void*)1);
if (m_nExtraSoundsEntity >= 0)
- SetEntityStatus(m_nExtraSoundsEntity, true);
+ SetEntityStatus(m_nExtraSoundsEntity, TRUE);
m_sMissionAudio.m_nSampleIndex[0] = NO_SAMPLE;
m_sMissionAudio.m_nLoadingStatus[0] = LOADING_STATUS_NOT_LOADED;
m_sMissionAudio.m_nPlayStatus[0] = PLAY_STATUS_STOPPED;
- m_sMissionAudio.m_bIsPlaying[0] = false;
- m_sMissionAudio.m_bIsPlayed[0] = false;
- m_sMissionAudio.m_bPredefinedProperties[0] = true;
+ m_sMissionAudio.m_bIsPlaying[0] = FALSE;
+ m_sMissionAudio.m_bIsPlayed[0] = FALSE;
+ m_sMissionAudio.m_bPredefinedProperties[0] = TRUE;
m_sMissionAudio.m_nMissionAudioCounter[0] = 0;
- m_sMissionAudio.m_bIsMobile[0] = false;
+ m_sMissionAudio.m_bIsMobile[0] = FALSE;
field_5538 = 127;
m_sMissionAudio.m_nSampleIndex[1] = NO_SAMPLE;
m_sMissionAudio.m_nLoadingStatus[1] = LOADING_STATUS_NOT_LOADED;
m_sMissionAudio.m_nPlayStatus[1] = PLAY_STATUS_STOPPED;
- m_sMissionAudio.m_bIsPlaying[1] = false;
- m_sMissionAudio.m_bIsPlayed[1] = false;
- m_sMissionAudio.m_bPredefinedProperties[1] = true;
+ m_sMissionAudio.m_bIsPlaying[1] = FALSE;
+ m_sMissionAudio.m_bIsPlayed[1] = FALSE;
+ m_sMissionAudio.m_bPredefinedProperties[1] = TRUE;
m_sMissionAudio.m_nMissionAudioCounter[1] = 0;
- m_sMissionAudio.m_bIsMobile[1] = false;
+ m_sMissionAudio.m_bIsMobile[1] = FALSE;
field_5538 = 127;
ResetAudioLogicTimers(CTimer::GetTimeInMilliseconds());
- m_bIsPlayerShutUp = false;
+ m_bIsPlayerShutUp = FALSE;
m_nPlayerMood = PLAYER_MOOD_CALM;
m_nPlayerMoodTimer = 0;
}
@@ -246,23 +246,25 @@ cAudioManager::ResetAudioLogicTimers(uint32 timer)
}
ClearMissionAudio(0);
ClearMissionAudio(1);
- SampleManager.StopChannel(policeChannel);
+ SampleManager.StopChannel(CHANNEL_POLICE_RADIO);
}
void
cAudioManager::ProcessReverb() const
{
#ifdef FIX_BUGS
- const uint32 numChannels = channels;
+ const uint32 numChannels = NUM_CHANNELS_GENERIC;
#else
- const uint32 numChannels = 28;
+ const uint32 numChannels = NUM_CHANNELS_GENERIC+1;
#endif
if (SampleManager.UpdateReverb() && m_bDynamicAcousticModelingStatus) {
+#ifndef GTA_PS2
for (uint32 i = 0; i < numChannels; i++) {
if (m_asActiveSamples[i].m_bReverbFlag)
- SampleManager.SetChannelReverbFlag(i, true);
+ SampleManager.SetChannelReverbFlag(i, TRUE);
}
+#endif
}
}
@@ -274,11 +276,11 @@ cAudioManager::GetDistanceSquared(const CVector &v) const
}
void
-cAudioManager::CalculateDistance(bool &distCalculated, float dist)
+cAudioManager::CalculateDistance(bool8 &distCalculated, float dist)
{
if (!distCalculated) {
m_sQueueSample.m_fDistance = Sqrt(dist);
- distCalculated = true;
+ distCalculated = TRUE;
}
}
@@ -347,7 +349,7 @@ cAudioManager::ProcessSpecial()
if (playerPed->m_audioEntityId >= 0 && m_asAudioEntities[playerPed->m_audioEntityId].m_bIsUsed) {
if (playerPed->EnteringCar()) {
if(!playerPed->bInVehicle && CWorld::Players[CWorld::PlayerInFocus].m_pRemoteVehicle == nil)
- SampleManager.StopChannel(m_nActiveSamples);
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
}
}
}
@@ -362,56 +364,56 @@ cAudioManager::ProcessEntity(int32 id)
switch (m_asAudioEntities[id].m_nType) {
case AUDIOTYPE_PHYSICAL:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessPhysical(id);
}
break;
case AUDIOTYPE_EXPLOSION:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessExplosions(id);
}
break;
case AUDIOTYPE_FIRE:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessFires(id);
}
break;
case AUDIOTYPE_WEATHER:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
if(CGame::currArea == AREA_MAIN_MAP || CGame::currArea == AREA_EVERYWHERE)
ProcessWeather(id);
}
break;
/* case AUDIOTYPE_CRANE:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessCrane();
}
break;*/
case AUDIOTYPE_SCRIPTOBJECT:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessScriptObject(id);
}
break;
#ifdef GTA_BRIDGE
case AUDIOTYPE_BRIDGE:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessBridge();
}
break;
#endif
case AUDIOTYPE_FRONTEND:
- m_sQueueSample.m_bReverbFlag = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
ProcessFrontEnd();
break;
case AUDIOTYPE_PROJECTILE:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessProjectiles();
}
break;
@@ -421,25 +423,25 @@ cAudioManager::ProcessEntity(int32 id)
break;
case AUDIOTYPE_FIREHYDRANT:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessFireHydrant();
}
break;
case AUDIOTYPE_WATERCANNON:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessWaterCannon(id);
}
break;
case AUDIOTYPE_ESCALATOR:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessEscalators();
}
break;
case AUDIOTYPE_EXTRA_SOUNDS:
if (!m_nUserPause) {
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
ProcessExtraSounds();
}
break;
@@ -719,25 +721,25 @@ const tVehicleSampleData aVehicleSettings[MAX_CARS] = {
-bool bPlayerJustEnteredCar;
+bool8 bPlayerJustEnteredCar;
-const bool hornPatternsArray[8][44] = {
- {false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false,
- false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false},
- {false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true,
- true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false},
- {false, false, true, true, true, true, true, true, true, true, true, true, false, false, false, false, true, true, true, true, true, false,
- false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false},
- {false, false, true, true, true, true, true, false, false, true, true, true, true, true, false, false, false, true, true, true, true, true,
- true, true, true, true, true, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, false},
- {false, false, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false,
- false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
- {false, false, true, true, true, false, false, false, true, true, true, false, false, false, false, false, false, false, false, false, false, false,
- false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
- {false, false, true, true, true, true, false, false, false, false, true, true, true, false, false, true, true, true, false, false, true, true,
- true, true, true, true, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, false, false},
- {false, false, true, true, true, true, false, false, true, true, true, true, true, false, false, false, true, true, true, true, true, true,
- false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false},
+const bool8 hornPatternsArray[8][44] = {
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE,
+ FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
+ TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE,
+ FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE,
+ TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE,
+ FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE,
+ FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, TRUE,
+ TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE},
+ {FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
+ FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE},
};
void cAudioManager::ProcessVehicle(CVehicle* veh)
@@ -756,7 +758,7 @@ void cAudioManager::ProcessVehicle(CVehicle* veh)
|| CGame::currArea == AREA_MALL
|| CGame::currArea == AREA_MAIN_MAP) {
m_sQueueSample.m_vecPos = veh->GetPosition();
- params.m_bDistanceCalculated = false;
+ params.m_bDistanceCalculated = FALSE;
params.m_pVehicle = veh;
params.m_fDistance = GetDistanceSquared(m_sQueueSample.m_vecPos);
params.m_pTransmission = veh->pHandling != nil ? &veh->pHandling->Transmission : nil;
@@ -882,24 +884,23 @@ cAudioManager::ProcessRainOnVehicle(cVehicleParams& params)
veh->m_bRainSamplesCounter = 68;
m_sQueueSample.m_nSampleIndex = (m_anRandomTable[1] & 3) + SFX_CAR_RAIN_1;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 9;
m_sQueueSample.m_nFrequency = m_anRandomTable[1] % 4000 + 28000;
m_sQueueSample.m_nLoopCount = 1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
}
-bool
+bool8
cAudioManager::ProcessReverseGear(cVehicleParams& params)
{
const int reverseGearIntensity = 30;
@@ -909,10 +910,10 @@ cAudioManager::ProcessReverseGear(cVehicleParams& params)
uint8 emittingVolume;
if (params.m_fDistance >= SQR(reverseGearIntensity))
- return false;
+ return FALSE;
automobile = (CAutomobile*)params.m_pVehicle;
if (automobile->m_modelIndex == MI_CADDY)
- return true;
+ return TRUE;
if (automobile->bEngineOn && (automobile->m_fGasPedal < 0.0f || automobile->m_nCurrentGear == 0)) {
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
if (automobile->m_nDriveWheelsOnGround != 0) {
@@ -935,23 +936,22 @@ cAudioManager::ProcessReverseGear(cVehicleParams& params)
m_sQueueSample.m_nSampleIndex = SFX_REVERSE_GEAR;
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nFrequency = (6000.0f * modificator) + 7000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = reverseGearIntensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
void
@@ -966,14 +966,14 @@ cAudioManager::ProcessModelVehicle(cVehicleParams& params)
int16 acceletateState;
int16 brakeState;
uint8 volume;
- bool isPlayerVeh;
- bool vehSlowdown;
+ bool8 isPlayerVeh;
+ bool8 vehSlowdown;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
return;
if (FindPlayerVehicle() == params.m_pVehicle)
- isPlayerVeh = true;
+ isPlayerVeh = TRUE;
else
#ifdef FIX_BUGS
isPlayerVeh = CWorld::Players[CWorld::PlayerInFocus].m_pRemoteVehicle == params.m_pVehicle;
@@ -989,8 +989,8 @@ cAudioManager::ProcessModelVehicle(cVehicleParams& params)
freq = 25000;
}
if (isPlayerVeh) {
- volume = clamp2(volume, prevVolume, 7);
- freq = clamp2(freq, prevFreq, 800);
+ volume = Clamp2(volume, prevVolume, 7);
+ freq = Clamp2(freq, prevFreq, 800);
}
if (volume > 0) {
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -999,19 +999,18 @@ cAudioManager::ProcessModelVehicle(cVehicleParams& params)
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nSampleIndex = SFX_RC_REV;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = volume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_RC_REV);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_RC_REV);
+ SET_LOOP_OFFSETS(SFX_RC_REV)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -1030,17 +1029,17 @@ cAudioManager::ProcessModelVehicle(cVehicleParams& params)
if (acceletateState < brakeState)
acceletateState = brakeState;
if (acceletateState <= 0) {
- vehSlowdown = true;
+ vehSlowdown = TRUE;
volume = 127;
freq = 18000;
} else {
- vehSlowdown = false;
+ vehSlowdown = FALSE;
volume = Min(127, (127 * acceletateState / 255) * 3.0f * Abs(params.m_fVelocityChange));
freq = Min(22000, (8000 * acceletateState / 255 + 14000) * 3.0f * Abs(params.m_fVelocityChange));
}
if (isPlayerVeh && !vehSlowdown) {
- volume = clamp2(volume, prevVolume, 7);
- freq = clamp2(freq, prevFreq, 800);
+ volume = Clamp2(volume, prevVolume, 7);
+ freq = Clamp2(freq, prevFreq, 800);
}
if (!vehSlowdown)
#ifdef THIS_IS_STUPID
@@ -1064,18 +1063,17 @@ cAudioManager::ProcessModelVehicle(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeDivider = 4;
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = volume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -1096,7 +1094,7 @@ cAudioManager::ProcessModelHeliVehicle(cVehicleParams& params)
static uint32 prevFreq = 22050;
uint32 freq;
- bool isPlayerVeh;
+ bool8 isPlayerVeh;
int16 acceletateState;
int16 brakeState;
@@ -1104,7 +1102,7 @@ cAudioManager::ProcessModelHeliVehicle(cVehicleParams& params)
return;
if (FindPlayerVehicle() == params.m_pVehicle)
- isPlayerVeh = true;
+ isPlayerVeh = TRUE;
else
#ifdef FIX_BUGS
isPlayerVeh = CWorld::Players[CWorld::PlayerInFocus].m_pRemoteVehicle == params.m_pVehicle;
@@ -1120,33 +1118,32 @@ cAudioManager::ProcessModelHeliVehicle(cVehicleParams& params)
}
if (acceletateState < brakeState)
acceletateState = brakeState;
- freq = clamp2(5 * acceletateState + 22050, prevFreq, 30);
+ freq = Clamp2(5 * acceletateState + 22050, prevFreq, 30);
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
m_sQueueSample.m_nVolume = ComputeVolume(70, SOUND_INTENSITY, m_sQueueSample.m_fDistance);
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nSampleIndex = SFX_CAR_RC_HELI;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = 70;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_CAR_RC_HELI);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_CAR_RC_HELI);
+ SET_LOOP_OFFSETS(SFX_CAR_RC_HELI)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
if (isPlayerVeh)
prevFreq = freq;
}
-bool
+bool8
cAudioManager::ProcessVehicleRoadNoise(cVehicleParams& params)
{
const float SOUND_INTENSITY = 95.0f;
@@ -1159,10 +1156,10 @@ cAudioManager::ProcessVehicleRoadNoise(cVehicleParams& params)
uint8 wheelsOnGround;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
switch (params.m_VehicleType) {
case VEHICLE_TYPE_CAR:
wheelsOnGround = ((CAutomobile*)params.m_pVehicle)->m_nWheelsOnGround;
@@ -1175,7 +1172,7 @@ cAudioManager::ProcessVehicleRoadNoise(cVehicleParams& params)
break;
}
if (params.m_pTransmission == nil || wheelsOnGround == 0)
- return true;
+ return TRUE;
velocity = Abs(params.m_fVelocityChange);
if (velocity > 0.0f) {
@@ -1185,7 +1182,7 @@ cAudioManager::ProcessVehicleRoadNoise(cVehicleParams& params)
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
if (params.m_pVehicle->m_nSurfaceTouched == SURFACE_WATER) {
m_sQueueSample.m_nSampleIndex = SFX_BOAT_WATER_LOOP;
@@ -1199,22 +1196,21 @@ cAudioManager::ProcessVehicleRoadNoise(cVehicleParams& params)
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::ProcessWetRoadNoise(cVehicleParams& params)
{
const float SOUND_INTENSITY = 30.0f;
@@ -1227,7 +1223,7 @@ cAudioManager::ProcessWetRoadNoise(cVehicleParams& params)
uint8 wheelsOnGround;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
switch (params.m_VehicleType) {
case VEHICLE_TYPE_CAR:
wheelsOnGround = ((CAutomobile*)params.m_pVehicle)->m_nWheelsOnGround;
@@ -1240,7 +1236,7 @@ cAudioManager::ProcessWetRoadNoise(cVehicleParams& params)
break;
}
if (params.m_pTransmission == nil || wheelsOnGround == 0)
- return true;
+ return TRUE;
velocity = Abs(params.m_fVelocityChange);
if (velocity > 0.0f) {
@@ -1252,26 +1248,25 @@ cAudioManager::ProcessWetRoadNoise(cVehicleParams& params)
m_sQueueSample.m_nCounter = 1;
m_sQueueSample.m_nSampleIndex = SFX_ROAD_NOISE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
multiplier = (m_sQueueSample.m_fDistance / SOUND_INTENSITY) * 0.5f;
freq = SampleManager.GetSampleBaseFrequency(SFX_ROAD_NOISE);
m_sQueueSample.m_nFrequency = freq + freq * multiplier;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
void
@@ -1296,18 +1291,18 @@ cAudioManager::ProcessVehicleEngine(cVehicleParams& params)
float relativeChange;
float modificator;
float traction;
- bool isMoped;
- bool caddyBool;
+ bool8 isMoped;
+ bool8 caddyBool;
- isMoped = false;
- caddyBool = false;
+ isMoped = FALSE;
+ caddyBool = FALSE;
traction = 0.0f;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
return;
playerVeh = FindPlayerVehicle();
veh = params.m_pVehicle;
if (playerVeh == veh && veh->GetStatus() == STATUS_WRECKED) {
- SampleManager.StopChannel(m_nActiveSamples);
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
return;
}
if (!veh->bEngineOn)
@@ -1322,12 +1317,12 @@ cAudioManager::ProcessVehicleEngine(cVehicleParams& params)
switch (veh->m_modelIndex) {
case MI_PIZZABOY:
case MI_FAGGIO:
- isMoped = true;
+ isMoped = TRUE;
currentGear = transmission->nNumberOfGears;
break;
case MI_CADDY:
currentGear = transmission->nNumberOfGears;
- caddyBool = true;
+ caddyBool = TRUE;
break;
default:
currentGear = veh->m_nCurrentGear;
@@ -1354,7 +1349,7 @@ cAudioManager::ProcessVehicleEngine(cVehicleParams& params)
}
if (wheelsOnGround != 0) {
- if (!veh->bIsHandbrakeOn || isMoped && caddyBool) { //mb bug, bcs it's can't be true together
+ if (!veh->bIsHandbrakeOn || isMoped && caddyBool) { //mb bug, bcs it's can't be TRUE together
if (veh->GetStatus() == STATUS_SIMPLE || isMoped || caddyBool) {
traction = 0.0f;
} else {
@@ -1478,20 +1473,19 @@ cAudioManager::ProcessVehicleEngine(cVehicleParams& params)
m_sQueueSample.m_nFrequency = freq + 20 * m_sQueueSample.m_nBankIndex % 100;
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
if (m_sQueueSample.m_nSampleIndex == SFX_CAR_IDLE_5 || m_sQueueSample.m_nSampleIndex == SFX_CAR_REV_5)
m_sQueueSample.m_nFrequency /= 2;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 8;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -1517,7 +1511,7 @@ void
cAudioManager::PlayerJustGotInCar() const
{
if (m_bIsInitialised)
- bPlayerJustEnteredCar = true;
+ bPlayerJustEnteredCar = TRUE;
}
void
@@ -1527,7 +1521,7 @@ cAudioManager::PlayerJustLeftCar(void) const
}
void
-cAudioManager::AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sample, uint8 bank, uint8 counter, bool notLooping)
+cAudioManager::AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sample, uint8 bank, uint8 counter, bool8 notLooping)
{
m_sQueueSample.m_nVolume = ComputeVolume(emittingVolume, 50.f, m_sQueueSample.m_fDistance);
if (m_sQueueSample.m_nVolume != 0) {
@@ -1538,7 +1532,7 @@ cAudioManager::AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sampl
#else
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
#endif // GTA_PS2
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nFrequency = freq;
if (notLooping) {
@@ -1548,13 +1542,12 @@ cAudioManager::AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sampl
m_sQueueSample.m_nLoopCount = 1;
}
m_sQueueSample.m_nEmittingVolume = emittingVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 50.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -1569,19 +1562,18 @@ cAudioManager::ProcessCesna(cVehicleParams ¶ms)
m_sQueueSample.m_nCounter = 52;
m_sQueueSample.m_nSampleIndex = SFX_CESNA_IDLE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nFrequency = 12500;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nReleasingVolumeDivider = 8;
m_sQueueSample.m_nEmittingVolume = 80;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = 200.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
if(params.m_fDistance < SQR(90)) {
@@ -1590,19 +1582,18 @@ cAudioManager::ProcessCesna(cVehicleParams ¶ms)
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nSampleIndex = SFX_CESNA_REV;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nFrequency = 25000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
m_sQueueSample.m_nEmittingVolume = 80;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = 90.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -1639,41 +1630,41 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
float velocityChangeForAudio;
float relativeVelocityChange;
float time;
- bool channelUsed;
- bool lostTraction;
- bool noGearBox;
- bool stuckInSand;
- bool processedAccelSampleStopped;
- bool isMoped;
+ bool8 channelUsed;
+ bool8 lostTraction;
+ bool8 noGearBox;
+ bool8 stuckInSand;
+ bool8 processedAccelSampleStopped;
+ bool8 isMoped;
static uint32 gearSoundStartTime = CTimer::GetTimeInMilliseconds();
static int32 nCruising = 0;
static int16 LastAccel = 0;
static uint8 CurrentPretendGear = 1;
- static bool bLostTractionLastFrame = false;
- static bool bHandbrakeOnLastFrame = false;
- static bool bAccelSampleStopped = true;
+ static bool8 bLostTractionLastFrame = FALSE;
+ static bool8 bHandbrakeOnLastFrame = FALSE;
+ static bool8 bAccelSampleStopped = TRUE;
- lostTraction = false;
+ lostTraction = FALSE;
isMoped = params.m_pVehicle->m_modelIndex == MI_PIZZABOY || params.m_pVehicle->m_modelIndex == MI_FAGGIO;
- processedAccelSampleStopped = false;
+ processedAccelSampleStopped = FALSE;
if (bPlayerJustEnteredCar) {
- bAccelSampleStopped = true;
- bPlayerJustEnteredCar = false;
+ bAccelSampleStopped = TRUE;
+ bPlayerJustEnteredCar = FALSE;
nCruising = 0;
LastAccel = 0;
- bLostTractionLastFrame = false;
+ bLostTractionLastFrame = FALSE;
CurrentPretendGear = 1;
- bHandbrakeOnLastFrame = false;
+ bHandbrakeOnLastFrame = FALSE;
}
if (CReplay::IsPlayingBack()) {
- accelerateState = (255.0f * clamp(params.m_pVehicle->m_fGasPedal, 0.0f, 1.0f));
- brakeState = (255.0f * clamp(params.m_pVehicle->m_fBrakePedal, 0.0f, 1.0f));
+ accelerateState = (255.0f * Clamp(params.m_pVehicle->m_fGasPedal, 0.0f, 1.0f));
+ brakeState = (255.0f * Clamp(params.m_pVehicle->m_fBrakePedal, 0.0f, 1.0f));
} else {
accelerateState = Pads[0].GetAccelerate();
brakeState = Pads[0].GetBrake();
}
- channelUsed = SampleManager.GetChannelUsedFlag(m_nActiveSamples);
+ channelUsed = SampleManager.GetChannelUsedFlag(CHANNEL_PLAYER_VEHICLE_ENGINE);
if (isMoped) {
CurrentPretendGear = params.m_pTransmission->nNumberOfGears;
currentGear = CurrentPretendGear;
@@ -1720,26 +1711,26 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
++wheelInUseCounter;
}
if (wheelInUseCounter > 2)
- lostTraction = true;
+ lostTraction = TRUE;
}
break;
case 'F':
if (params.m_VehicleType == VEHICLE_TYPE_BIKE) {
if (wheelState[BIKEWHEEL_FRONT] != WHEEL_STATE_NORMAL)
- lostTraction = true;
+ lostTraction = TRUE;
} else {
if ((wheelState[CARWHEEL_FRONT_LEFT] != WHEEL_STATE_NORMAL || wheelState[CARWHEEL_FRONT_RIGHT] != WHEEL_STATE_NORMAL) &&
(wheelState[CARWHEEL_REAR_LEFT] != WHEEL_STATE_NORMAL || wheelState[CARWHEEL_REAR_RIGHT] != WHEEL_STATE_NORMAL))
- lostTraction = true;
+ lostTraction = TRUE;
}
break;
case 'R':
if (params.m_VehicleType == VEHICLE_TYPE_BIKE) {
if (wheelState[BIKEWHEEL_REAR] != WHEEL_STATE_NORMAL)
- lostTraction = true;
+ lostTraction = TRUE;
} else {
if (wheelState[CARWHEEL_REAR_LEFT] != WHEEL_STATE_NORMAL || wheelState[CARWHEEL_REAR_RIGHT] != WHEEL_STATE_NORMAL)
- lostTraction = true;
+ lostTraction = TRUE;
}
break;
default:
@@ -1761,7 +1752,7 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
gearSoundLength = 0;
engineSoundType = aVehicleSettings[params.m_nIndex].m_nBank;
soundOffset = 3 * (engineSoundType - CAR_SFX_BANKS_OFFSET);
- noGearBox = false;
+ noGearBox = FALSE;
switch (engineSoundType) {
case SFX_BANK_PONTIAC:
gearSoundLength = 2526;
@@ -1806,7 +1797,7 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
gearSoundLength = 2410;
break;
default:
- noGearBox = true;
+ noGearBox = TRUE;
break;
}
if (!channelUsed || nCruising || noGearBox) {
@@ -1814,12 +1805,12 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
} else {
gearSoundLength -= 1000;
if (CTimer::GetTimeInMilliseconds() - gearSoundStartTime > gearSoundLength) {
- channelUsed = false;
+ channelUsed = FALSE;
gearSoundStartTime = CTimer::GetTimeInMilliseconds();
}
}
relativeVelocityChange = 2.0f * params.m_fVelocityChange / params.m_pTransmission->fMaxVelocity;
- accelerationMultipler = clamp(relativeVelocityChange, 0.0f, 1.0f);
+ accelerationMultipler = Clamp(relativeVelocityChange, 0.0f, 1.0f);
gasPedalAudio = accelerationMultipler;
switch (engineSoundType) {
case SFX_BANK_MOPED:
@@ -1837,8 +1828,8 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
if (accelerateState <= 0) {
if (params.m_fVelocityChange < -0.001f) {
if (channelUsed) {
- SampleManager.StopChannel(m_nActiveSamples);
- bAccelSampleStopped = true;
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
+ bAccelSampleStopped = TRUE;
}
if (wheelsOnGround == 0 || params.m_pVehicle->bIsHandbrakeOn || lostTraction)
gasPedalAudio = *gasPedalAudioPtr;
@@ -1849,8 +1840,8 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
*gasPedalAudioPtr = Max(0.0f, gasPedalAudio);
} else if (LastAccel > 0) {
if (channelUsed) {
- SampleManager.StopChannel(m_nActiveSamples);
- bAccelSampleStopped = true;
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
+ bAccelSampleStopped = TRUE;
}
nCruising = 0;
if (wheelsOnGround == 0
@@ -1871,7 +1862,7 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
vol /= 4;
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
- AddPlayerCarSample(vol, freq, soundOffset + SFX_CAR_FINGER_OFF_ACCEL_1, engineSoundType, 63, false);
+ AddPlayerCarSample(vol, freq, soundOffset + SFX_CAR_FINGER_OFF_ACCEL_1, engineSoundType, 63, FALSE);
}
}
freq = (10000.f * gasPedalAudio) + 22050;
@@ -1880,7 +1871,7 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
freq /= 2;
if (params.m_pVehicle->bIsDrowning)
vol /= 4;
- AddPlayerCarSample(vol, freq, engineSoundType - CAR_SFX_BANKS_OFFSET + SFX_CAR_IDLE_1, SFX_BANK_0, 52, true);
+ AddPlayerCarSample(vol, freq, engineSoundType - CAR_SFX_BANKS_OFFSET + SFX_CAR_IDLE_1, SFX_BANK_0, 52, TRUE);
CurrentPretendGear = Max(1, currentGear);
}
@@ -1910,70 +1901,70 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
if (channelUsed) {
- SampleManager.StopChannel(m_nActiveSamples);
- bAccelSampleStopped = true;
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
+ bAccelSampleStopped = TRUE;
}
if (params.m_pVehicle->bIsDrowning)
vol /= 4;
- AddPlayerCarSample(vol, freq, engineSoundType - CAR_SFX_BANKS_OFFSET + SFX_CAR_REV_1, SFX_BANK_0, 2, true);
+ AddPlayerCarSample(vol, freq, engineSoundType - CAR_SFX_BANKS_OFFSET + SFX_CAR_REV_1, SFX_BANK_0, 2, TRUE);
} else {
TranslateEntity(&m_sQueueSample.m_vecPos, &pos);
if (bAccelSampleStopped) {
if (CurrentPretendGear != 1 || currentGear != 2)
CurrentPretendGear = Max(1, currentGear - 1);
- processedAccelSampleStopped = true;
- bAccelSampleStopped = false;
+ processedAccelSampleStopped = TRUE;
+ bAccelSampleStopped = FALSE;
}
if (channelUsed) {
- SampleManager.SetChannelEmittingVolume(m_nActiveSamples, 120);
- SampleManager.SetChannel3DPosition(m_nActiveSamples, pos.x, pos.y, pos.z);
- SampleManager.SetChannel3DDistances(m_nActiveSamples, 50.0f, 12.5f);
+ SampleManager.SetChannelEmittingVolume(CHANNEL_PLAYER_VEHICLE_ENGINE, 120);
+ SampleManager.SetChannel3DPosition(CHANNEL_PLAYER_VEHICLE_ENGINE, pos.x, pos.y, pos.z);
+ SampleManager.SetChannel3DDistances(CHANNEL_PLAYER_VEHICLE_ENGINE, 50.0f, 12.5f);
freq = (GearFreqAdj[CurrentPretendGear] + freqModifier + 22050) ;
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
- SampleManager.SetChannelFrequency(m_nActiveSamples, freq);
+ SampleManager.SetChannelFrequency(CHANNEL_PLAYER_VEHICLE_ENGINE, freq);
if (!channelUsed) {
- SampleManager.SetChannelReverbFlag(m_nActiveSamples, m_bDynamicAcousticModelingStatus != false);
- SampleManager.StartChannel(m_nActiveSamples);
+ SampleManager.SetChannelReverbFlag(CHANNEL_PLAYER_VEHICLE_ENGINE, m_bDynamicAcousticModelingStatus != FALSE);
+ SampleManager.StartChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
}
} else if (processedAccelSampleStopped) {
gearSoundStartTime = CTimer::GetTimeInMilliseconds();
- params.m_pVehicle->bAudioChangingGear = true;
- if (!SampleManager.InitialiseChannel(m_nActiveSamples, soundOffset + SFX_CAR_ACCEL_1, SFX_BANK_0))
+ params.m_pVehicle->bAudioChangingGear = TRUE;
+ if (!SampleManager.InitialiseChannel(CHANNEL_PLAYER_VEHICLE_ENGINE, soundOffset + SFX_CAR_ACCEL_1, SFX_BANK_0))
return;
- SampleManager.SetChannelLoopCount(m_nActiveSamples, 1);
- SampleManager.SetChannelLoopPoints(m_nActiveSamples, 0, -1);
+ SampleManager.SetChannelLoopCount(CHANNEL_PLAYER_VEHICLE_ENGINE, 1);
+ SampleManager.SetChannelLoopPoints(CHANNEL_PLAYER_VEHICLE_ENGINE, 0, -1);
- SampleManager.SetChannelEmittingVolume(m_nActiveSamples, 120);
- SampleManager.SetChannel3DPosition(m_nActiveSamples, pos.x, pos.y, pos.z);
- SampleManager.SetChannel3DDistances(m_nActiveSamples, 50.0f, 12.5f);
+ SampleManager.SetChannelEmittingVolume(CHANNEL_PLAYER_VEHICLE_ENGINE, 120);
+ SampleManager.SetChannel3DPosition(CHANNEL_PLAYER_VEHICLE_ENGINE, pos.x, pos.y, pos.z);
+ SampleManager.SetChannel3DDistances(CHANNEL_PLAYER_VEHICLE_ENGINE, 50.0f, 12.5f);
freq = (GearFreqAdj[CurrentPretendGear] + freqModifier + 22050);
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
- SampleManager.SetChannelFrequency(m_nActiveSamples, freq);
+ SampleManager.SetChannelFrequency(CHANNEL_PLAYER_VEHICLE_ENGINE, freq);
if (!channelUsed) {
- SampleManager.SetChannelReverbFlag(m_nActiveSamples, m_bDynamicAcousticModelingStatus != false);
- SampleManager.StartChannel(m_nActiveSamples);
+ SampleManager.SetChannelReverbFlag(CHANNEL_PLAYER_VEHICLE_ENGINE, m_bDynamicAcousticModelingStatus != FALSE);
+ SampleManager.StartChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
}
} else if (CurrentPretendGear < params.m_pTransmission->nNumberOfGears - 1) {
++CurrentPretendGear;
gearSoundStartTime = CTimer::GetTimeInMilliseconds();
- params.m_pVehicle->bAudioChangingGear = true;
- if (!SampleManager.InitialiseChannel(m_nActiveSamples, soundOffset + SFX_CAR_ACCEL_1, SFX_BANK_0))
+ params.m_pVehicle->bAudioChangingGear = TRUE;
+ if (!SampleManager.InitialiseChannel(CHANNEL_PLAYER_VEHICLE_ENGINE, soundOffset + SFX_CAR_ACCEL_1, SFX_BANK_0))
return;
- SampleManager.SetChannelLoopCount(m_nActiveSamples, 1);
- SampleManager.SetChannelLoopPoints(m_nActiveSamples, 0, -1);
+ SampleManager.SetChannelLoopCount(CHANNEL_PLAYER_VEHICLE_ENGINE, 1);
+ SampleManager.SetChannelLoopPoints(CHANNEL_PLAYER_VEHICLE_ENGINE, 0, -1);
- SampleManager.SetChannelEmittingVolume(m_nActiveSamples, 120);
- SampleManager.SetChannel3DPosition(m_nActiveSamples, pos.x, pos.y, pos.z);
- SampleManager.SetChannel3DDistances(m_nActiveSamples, 50.0f, 12.5f);
+ SampleManager.SetChannelEmittingVolume(CHANNEL_PLAYER_VEHICLE_ENGINE, 120);
+ SampleManager.SetChannel3DPosition(CHANNEL_PLAYER_VEHICLE_ENGINE, pos.x, pos.y, pos.z);
+ SampleManager.SetChannel3DDistances(CHANNEL_PLAYER_VEHICLE_ENGINE, 50.0f, 12.5f);
freq = (GearFreqAdj[CurrentPretendGear] + freqModifier + 22050);
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
- SampleManager.SetChannelFrequency(m_nActiveSamples, freq);
+ SampleManager.SetChannelFrequency(CHANNEL_PLAYER_VEHICLE_ENGINE, freq);
if (!channelUsed) {
- SampleManager.SetChannelReverbFlag(m_nActiveSamples, m_bDynamicAcousticModelingStatus != false);
- SampleManager.StartChannel(m_nActiveSamples);
+ SampleManager.SetChannelReverbFlag(CHANNEL_PLAYER_VEHICLE_ENGINE, m_bDynamicAcousticModelingStatus != FALSE);
+ SampleManager.StartChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
}
} else {
nCruising = 1;
@@ -1982,8 +1973,8 @@ cAudioManager::ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh
}
} else {
PlayCruising:
- bAccelSampleStopped = true;
- SampleManager.StopChannel(m_nActiveSamples);
+ bAccelSampleStopped = TRUE;
+ SampleManager.StopChannel(CHANNEL_PLAYER_VEHICLE_ENGINE);
if (isMoped || accelerateState >= 150 && wheelsOnGround && brakeState <= 0 && !params.m_pVehicle->bIsHandbrakeOn
&& !lostTraction && currentGear >= params.m_pTransmission->nNumberOfGears - 1) {
if (accelerateState >= 220 && params.m_fVelocityChange + 0.001f >= velocityChangeForAudio) {
@@ -1995,7 +1986,7 @@ PlayCruising:
freq = 27 * nCruising + freqModifier + 22050;
if (engineSoundType == SFX_BANK_TRUCK)
freq /= 2;
- AddPlayerCarSample(120, freq, soundOffset + SFX_CAR_AFTER_ACCEL_1, engineSoundType, 64, true);
+ AddPlayerCarSample(120, freq, soundOffset + SFX_CAR_AFTER_ACCEL_1, engineSoundType, 64, TRUE);
} else {
nCruising = 0;
}
@@ -2007,7 +1998,7 @@ PlayCruising:
return;
}
-bool
+bool8
cAudioManager::ProcessVehicleSkidding(cVehicleParams& params)
{
const float SOUND_INTENSITY = 40.0f;
@@ -2026,7 +2017,7 @@ cAudioManager::ProcessVehicleSkidding(cVehicleParams& params)
float skidVal = 0.0f;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
switch (params.m_VehicleType) {
case VEHICLE_TYPE_CAR:
automobile = (CAutomobile*)params.m_pVehicle;
@@ -2044,10 +2035,10 @@ cAudioManager::ProcessVehicleSkidding(cVehicleParams& params)
break;
default:
debug("\n * AUDIOLOG: ProcessVehicleSkidding() Unsupported vehicle type %d * \n", params.m_VehicleType);
- return true;
+ return TRUE;
}
if (wheelsOnGround == 0)
- return true;
+ return TRUE;
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
for (int32 i = 0; i < numWheels; i++) {
@@ -2089,7 +2080,7 @@ cAudioManager::ProcessVehicleSkidding(cVehicleParams& params)
m_sQueueSample.m_nFrequency = 13000.f * skidVal + 35000.f;
m_sQueueSample.m_nVolume /= 4;
if (m_sQueueSample.m_nVolume == 0)
- return true;
+ return TRUE;
break;
case SURFACE_GRAVEL:
case SURFACE_MUD_DRY:
@@ -2109,22 +2100,21 @@ cAudioManager::ProcessVehicleSkidding(cVehicleParams& params)
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 8;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
float
@@ -2173,7 +2163,7 @@ cAudioManager::GetVehicleNonDriveWheelSkidValue(CVehicle *veh, tWheelState wheel
return Max(relativeVelChange, Min(1.0f, Abs(veh->m_vecTurnSpeed.z) * 20.0f));
}
-bool
+bool8
cAudioManager::ProcessVehicleHorn(cVehicleParams& params)
{
const float SOUND_INTENSITY = 40.0f;
@@ -2182,17 +2172,17 @@ cAudioManager::ProcessVehicleHorn(cVehicleParams& params)
uint8 volume;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
veh = params.m_pVehicle;
if (veh->m_bSirenOrAlarm && UsesSirenSwitching(params))
- return true;
+ return TRUE;
if (veh->m_modelIndex == MI_MRWHOOP)
- return true;
+ return TRUE;
if (veh->IsAlarmOn())
- return true;
+ return TRUE;
if (veh->m_nCarHornTimer != 0) {
if (veh->GetStatus() != STATUS_PLAYER) {
@@ -2201,7 +2191,7 @@ cAudioManager::ProcessVehicleHorn(cVehicleParams& params)
veh->m_nCarHornPattern = (m_FrameCounter + m_sQueueSample.m_nEntityIndex) & 7;
if (!hornPatternsArray[veh->m_nCarHornPattern][44 - veh->m_nCarHornTimer])
- return true;
+ return TRUE;
}
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -2211,7 +2201,7 @@ cAudioManager::ProcessVehicleHorn(cVehicleParams& params)
m_sQueueSample.m_nCounter = 4;
m_sQueueSample.m_nSampleIndex = aVehicleSettings[params.m_nIndex].m_nHornSample;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nFrequency = aVehicleSettings[params.m_nIndex].m_nHornFrequency;
m_sQueueSample.m_nLoopCount = 0;
@@ -2220,35 +2210,34 @@ cAudioManager::ProcessVehicleHorn(cVehicleParams& params)
#else
m_sQueueSample.m_nEmittingVolume = 80;
#endif
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 5.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::UsesSiren(cVehicleParams& params) const
{
return params.m_pVehicle->UsesSiren();
}
-bool
+bool8
cAudioManager::UsesSirenSwitching(cVehicleParams& params) const
{
if (params.m_nIndex == FIRETRUK || params.m_nIndex == MRWHOOP)
- return false;
+ return FALSE;
return UsesSiren(params);
}
-bool
+bool8
cAudioManager::ProcessVehicleSirenOrAlarm(cVehicleParams& params)
{
const float SOUND_INTENSITY = 110.0f;
@@ -2257,18 +2246,18 @@ cAudioManager::ProcessVehicleSirenOrAlarm(cVehicleParams& params)
uint8 volume;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
veh = params.m_pVehicle;
if (!veh->m_bSirenOrAlarm && !veh->IsAlarmOn())
- return true;
+ return TRUE;
if (veh->IsAlarmOn()) {
if (CTimer::GetTimeInMilliseconds() > veh->m_nCarHornTimer)
veh->m_nCarHornTimer = CTimer::GetTimeInMilliseconds() + 750;
if (veh->m_nCarHornTimer < CTimer::GetTimeInMilliseconds() + 375)
- return true;
+ return TRUE;
}
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -2278,7 +2267,7 @@ cAudioManager::ProcessVehicleSirenOrAlarm(cVehicleParams& params)
m_sQueueSample.m_nCounter = 5;
if (UsesSiren(params)) {
if (params.m_pVehicle->GetStatus() == STATUS_ABANDONED)
- return true;
+ return TRUE;
if (veh->m_nCarHornTimer != 0 && params.m_nIndex != FIRETRUK && params.m_nIndex != MRWHOOP) {
m_sQueueSample.m_nSampleIndex = SFX_SIREN_FAST;
if (params.m_nIndex == FBIRANCH)
@@ -2298,30 +2287,29 @@ cAudioManager::ProcessVehicleSirenOrAlarm(cVehicleParams& params)
m_sQueueSample.m_nFrequency = aVehicleSettings[params.m_nIndex].m_nHornFrequency;
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = volume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 7.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::UsesReverseWarning(int32 model) const
{
return model == LINERUN || model == FIRETRUK || model == BUS || model == COACH || model == PACKER || model == FLATBED;
}
-bool
+bool8
cAudioManager::ProcessVehicleReverseWarning(cVehicleParams& params)
{
const float SOUND_INTENSITY = 50.0f;
@@ -2330,7 +2318,7 @@ cAudioManager::ProcessVehicleReverseWarning(cVehicleParams& params)
uint8 volume;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
if (veh->bEngineOn && veh->m_fGasPedal < 0.0f) {
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -2340,7 +2328,7 @@ cAudioManager::ProcessVehicleReverseWarning(cVehicleParams& params)
m_sQueueSample.m_nCounter = 12;
m_sQueueSample.m_nSampleIndex = SFX_REVERSE_WARNING;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nFrequency = (100 * m_sQueueSample.m_nEntityIndex & 1023) + SampleManager.GetSampleBaseFrequency(SFX_REVERSE_WARNING);
m_sQueueSample.m_nLoopCount = 0;
@@ -2349,21 +2337,20 @@ cAudioManager::ProcessVehicleReverseWarning(cVehicleParams& params)
#else
m_sQueueSample.m_nEmittingVolume = 60;
#endif
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::ProcessVehicleDoors(cVehicleParams& params)
{
const float SOUND_INTENSITY = 40.0f;
@@ -2374,7 +2361,7 @@ cAudioManager::ProcessVehicleDoors(cVehicleParams& params)
float velocity;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
automobile = (CAutomobile *)params.m_pVehicle;
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -2391,27 +2378,26 @@ cAudioManager::ProcessVehicleDoors(cVehicleParams& params)
m_sQueueSample.m_nSampleIndex = m_anRandomTable[1] % 6 + SFX_COL_CAR_PANEL_1;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex) + RandomDisplacement(1000);
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 10;
m_sQueueSample.m_nLoopCount = 1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_fSpeedMultiplier = 1.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
AddSampleToRequestedQueue();
}
}
}
}
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::ProcessAirBrakes(cVehicleParams& params)
{
const float SOUND_INTENSITY = 30.0f;
@@ -2419,14 +2405,14 @@ cAudioManager::ProcessAirBrakes(cVehicleParams& params)
uint8 volume;
if (params.m_fDistance > SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
automobile = (CAutomobile *)params.m_pVehicle;
if (!automobile->bEngineOn)
- return true;
+ return TRUE;
if ((automobile->m_fVelocityChangeForAudio < 0.025f || params.m_fVelocityChange >= 0.025f) &&
(automobile->m_fVelocityChangeForAudio > -0.025f || params.m_fVelocityChange <= 0.025f))
- return true;
+ return TRUE;
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
volume = m_anRandomTable[0] % 10 + 70;
@@ -2437,31 +2423,30 @@ cAudioManager::ProcessAirBrakes(cVehicleParams& params)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_AIR_BRAKES);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 10;
m_sQueueSample.m_nLoopCount = 1;
m_sQueueSample.m_nEmittingVolume = volume;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::HasAirBrakes(int32 model) const
{
return model == LINERUN || model == FIRETRUK || model == TRASH || model == BUS || model == BARRACKS
|| model == COACH || model == PACKER || model == FLATBED;
}
-bool
+bool8
cAudioManager::ProcessEngineDamage(cVehicleParams& params)
{
const float SOUND_INTENSITY = 40.0f;
@@ -2470,11 +2455,11 @@ cAudioManager::ProcessEngineDamage(cVehicleParams& params)
uint8 emittingVolume;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
if (params.m_pVehicle->m_modelIndex == MI_CADDY)
- return true;
+ return TRUE;
if (params.m_pVehicle->GetStatus() == STATUS_WRECKED)
- return true;
+ return TRUE;
health = params.m_pVehicle->m_fHealth;
if (health < 390.0f) {
if (health < 250.0f) {
@@ -2495,24 +2480,23 @@ cAudioManager::ProcessEngineDamage(cVehicleParams& params)
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = 28;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::ProcessCarBombTick(cVehicleParams& params)
{
const float SOUND_INTENSITY = 40.0f;
@@ -2521,7 +2505,7 @@ cAudioManager::ProcessCarBombTick(cVehicleParams& params)
uint8 bombType;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
if (params.m_pVehicle->bEngineOn) {
switch (params.m_VehicleType) {
case VEHICLE_TYPE_CAR:
@@ -2532,7 +2516,7 @@ cAudioManager::ProcessCarBombTick(cVehicleParams& params)
break;
default:
debug("\n * AUDIOLOG: ProcessCarBombTick() Unsupported vehicle type %d * \n", params.m_VehicleType);
- return true;
+ return TRUE;
break;
}
if (bombType == CARBOMB_TIMEDACTIVE) {
@@ -2542,24 +2526,23 @@ cAudioManager::ProcessCarBombTick(cVehicleParams& params)
m_sQueueSample.m_nCounter = 35;
m_sQueueSample.m_nSampleIndex = SFX_COUNTDOWN;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_COUNTDOWN);
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = EMITTING_VOLUME;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
}
- return true;
+ return TRUE;
}
void
@@ -2569,15 +2552,15 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
uint8 emittingVol;
float relVol;
float vol;
- bool noReflections;
- bool isHeli;
+ bool8 noReflections;
+ bool8 isHeli;
float maxDist;
static uint8 GunIndex = 53;
for (int i = 0; i < m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_AudioEvents; i++) {
- noReflections = false;
- isHeli = false;
- m_sQueueSample.m_bRequireReflection = false;
+ noReflections = FALSE;
+ isHeli = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
event = m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_awAudioEvent[i];
switch (event) {
case SOUND_CAR_DOOR_CLOSE_BONNET:
@@ -2620,7 +2603,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_CAR_DOOR_OPEN_BONNET:
@@ -2660,7 +2643,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_CAR_WINDSHIELD_CRACK: {
@@ -2735,7 +2718,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_CAR_LIGHT_BREAK: {
@@ -2780,7 +2763,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
m_sQueueSample.m_nReleasingVolumeDivider = 7;
- noReflections = true;
+ noReflections = TRUE;
maxDist = SQR(SOUND_INTENSITY);
emittingVol = m_anRandomTable[0] % 15 + 55;
break;
@@ -2865,7 +2848,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
emittingVol = (37.0f * vol * 625.0f / 24.0f) + 90;
maxDist = SQR(SOUND_INTENSITY);
- noReflections = true;
+ noReflections = TRUE;
break;
}
case SOUND_CAR_BOMB_TICK: {
@@ -2878,7 +2861,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
maxDist = SQR(SOUND_INTENSITY);
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVol = 60;
break;
}
@@ -2960,8 +2943,8 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
- isHeli = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ isHeli = TRUE;
break;
default:
{
@@ -3014,7 +2997,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
}
@@ -3046,7 +3029,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVol = 50;
maxDist = SQR(SOUND_INTENSITY);
break;
@@ -3060,7 +3043,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
}
/* case SOUND_PED_BODYCAST_HIT:
pedParams.m_pPed = nil;
- pedParams.m_bDistanceCalculated = false;
+ pedParams.m_bDistanceCalculated = FALSE;
pedParams.m_fDistance = 0.0f;
pedParams.m_bDistanceCalculated = params.m_bDistanceCalculated;
pedParams.m_fDistance = params.m_fDistance;
@@ -3087,7 +3070,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
maxDist = SQR(SOUND_INTENSITY);
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVol = m_anRandomTable[4] % 20 + 90;
break;
}
@@ -3105,7 +3088,7 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
maxDist = SQR(SOUND_INTENSITY);
emittingVol = m_anRandomTable[4] % 20 + 55;
CrunchOffset %= 2;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_CAR_PED_COLLISION: {
@@ -3135,18 +3118,17 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
if (m_sQueueSample.m_nVolume != 0) {
if (noReflections) {
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
} else {
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
}
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
if (isHeli) {
if (0.2f * m_sQueueSample.m_fSoundIntensity > m_sQueueSample.m_fDistance) {
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nOffset = 0;
#ifdef THIS_IS_STUPID
goto AddSample;
@@ -3157,14 +3139,14 @@ cAudioManager::ProcessVehicleOneShots(cVehicleParams& params)
m_sQueueSample.m_nCounter = GunIndex++;
if (GunIndex > 58)
GunIndex = 53;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
continue;
#endif
}
- isHeli = false;
+ isHeli = FALSE;
}
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
#ifdef THIS_IS_STUPID
AddSample:
AddSampleToRequestedQueue();
@@ -3188,7 +3170,7 @@ AddSample:
}
#ifdef GTA_TRAIN
-bool
+bool8
cAudioManager::ProcessTrainNoise(cVehicleParams& params)
{
const float SOUND_INTENSITY = 300.0f;
@@ -3198,7 +3180,7 @@ cAudioManager::ProcessTrainNoise(cVehicleParams& params)
float speedMultipler;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
- return false;
+ return FALSE;
if (params.m_fVelocityChange > 0.0f) {
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -3211,19 +3193,18 @@ cAudioManager::ProcessTrainNoise(cVehicleParams& params)
m_sQueueSample.m_nCounter = 32;
m_sQueueSample.m_nSampleIndex = SFX_TRAIN_FAR;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_TRAIN_FAR);
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3234,33 +3215,32 @@ cAudioManager::ProcessTrainNoise(cVehicleParams& params)
m_sQueueSample.m_nCounter = 33;
m_sQueueSample.m_nSampleIndex = SFX_TRAIN_NEAR;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 5;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_TRAIN_NEAR) + 100 * m_sQueueSample.m_nEntityIndex % 987;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
}
- return true;
+ return TRUE;
}
#endif
-bool
+bool8
cAudioManager::ProcessBoatEngine(cVehicleParams& params)
{
CBoat *boat;
float padRelativeAccerate;
- bool isV12 = false;
+ bool8 isV12 = FALSE;
static int32 LastFreq = 2000;
static int8 LastVol = 0;
@@ -3269,7 +3249,7 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
if (params.m_fDistance < SQR(intensity)) {
boat = (CBoat *)params.m_pVehicle;
if(boat->GetStatus() == STATUS_WRECKED)
- return true;
+ return TRUE;
float freqModificator;
float volModificator;
@@ -3291,7 +3271,7 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
case MI_JETMAX:
freqModificator = 6000.0f;
volModificator = 60.0f;
- isV12 = true;
+ isV12 = TRUE;
BaseFreq = 9000;
BaseVol = 20;
break;
@@ -3309,18 +3289,18 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
BaseFreq = 1782;
break;
default:
- return true;
+ return TRUE;
}
- bool bIsPlayerVeh;
+ bool8 bIsPlayerVeh;
if(FindPlayerVehicle() == params.m_pVehicle) {
float padAccelerate = Max(Pads[0].GetAccelerate(), Pads[0].GetBrake());
padRelativeAccerate = padAccelerate / 255.0f;
- bIsPlayerVeh = true;
+ bIsPlayerVeh = TRUE;
} else {
padRelativeAccerate = Max(params.m_pVehicle->m_fGasPedal, params.m_pVehicle->m_fBrakePedal);
- bIsPlayerVeh = false;
+ bIsPlayerVeh = FALSE;
}
int Freq = BaseFreq + (padRelativeAccerate * freqModificator);
@@ -3358,18 +3338,17 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
else
m_sQueueSample.m_nSampleIndex = SFX_BOAT_CRUISER_LOOP;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = Vol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = intensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 7;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3383,18 +3362,17 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
m_sQueueSample.m_nSampleIndex = SFX_FISHING_BOAT_IDLE;
m_sQueueSample.m_nFrequency += (m_sQueueSample.m_nEntityIndex * 65536) % 1000;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = 80;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = intensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 7;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3402,12 +3380,12 @@ cAudioManager::ProcessBoatEngine(cVehicleParams& params)
LastFreq = Freq;
LastVol = Vol;
}
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
-bool
+bool8
cAudioManager::ProcessBoatMovingOverWater(cVehicleParams& params)
{
float velocityChange;
@@ -3415,11 +3393,11 @@ cAudioManager::ProcessBoatMovingOverWater(cVehicleParams& params)
float multiplier;
if (params.m_fDistance > SQR(50))
- return false;
+ return FALSE;
velocityChange = Abs(params.m_fVelocityChange);
if (velocityChange <= 0.0005f && ((CBoat*)params.m_pVehicle)->bBoatInWater)
- return true;
+ return TRUE;
velocityChange = Min(0.75f, velocityChange);
multiplier = (velocityChange - 0.0005f) / (1499.0f / 2000.0f);
@@ -3430,23 +3408,22 @@ cAudioManager::ProcessBoatMovingOverWater(cVehicleParams& params)
m_sQueueSample.m_nCounter = 38;
m_sQueueSample.m_nSampleIndex = SFX_BOAT_WATER_LOOP;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nFrequency = (6050.f * multiplier) + 16000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = vol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = 50.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 6;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
void
@@ -3466,12 +3443,12 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
float propellerSpeed;
float freqModifier; //may be relate to angle with horison
float cameraAngle;
- bool distanceCalculatedOld;
+ bool8 distanceCalculatedOld;
float distanceOld;
CVector vecPosOld;
float volumeModifier;//TODO find better name
- bool hunterBool;
+ bool8 hunterBool;
static uint32 freqFrontPrev = 14287;
static uint32 freqPropellerPrev = 7143;
@@ -3479,7 +3456,7 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
boat = nil;
automobile = nil;
- hunterBool = false;
+ hunterBool = FALSE;
if (params.m_fDistance >= SQR(SOUND_INTENSITY))
return;
@@ -3494,7 +3471,7 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
brakeState = veh->m_fBrakePedal * 255.0f;
}
freqModifier = Abs(veh->GetUp().y);
- cameraAngle = (DotProduct(veh->m_matrix.GetForward(), TheCamera.GetForward()) + 1.0f) / 2.0f;
+ cameraAngle = (DotProduct(veh->GetMatrix().GetForward(), TheCamera.GetForward()) + 1.0f) / 2.0f;
if (veh->m_modelIndex == MI_SKIMMER) {
boat = (CBoat*)veh;
propellerSpeed = boat->m_fMovingSpeed * 50.0f / 11.0f;
@@ -3535,21 +3512,31 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
}
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
+
+ CVector backPropellerPos;
+ if (automobile != nil)
+ automobile->GetComponentWorldPosition(CAR_BOOT, backPropellerPos);
+ else if (params.m_VehicleType == VEHICLE_TYPE_HELI)
+#ifdef FIX_BUGS
+ backPropellerPos =
+#endif
+ params.m_pVehicle->GetMatrix() * CVector(0.0f, -10.0f, 0.0f);
+ else
+ backPropellerPos = m_sQueueSample.m_vecPos;
if (params.m_fDistance >= SQR(140.0f))
return;
@@ -3563,7 +3550,7 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
if (playerVeh == veh && (accelerateState > 0 || brakeState > 0) && freq < 1300)//unnesesary freqModifier alredy <= 1300
freq = 1300;
if (veh->m_modelIndex == MI_HUNTER)
- hunterBool = true;
+ hunterBool = TRUE;
}
@@ -3576,18 +3563,17 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
m_sQueueSample.m_nSampleIndex = SFX_HELI_APACHE_1;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = (volumeModifier + 1.0f) * 16000 + freq;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 140.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
} else if (boat != nil) {
m_sQueueSample.m_nSampleIndex = SFX_SEAPLANE_PRO1;
@@ -3599,38 +3585,36 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
m_sQueueSample.m_nFrequency = 14287 + Min(1.0f, freqModifier) * 3713;
if (propellerSpeed < 1.0f)
m_sQueueSample.m_nFrequency = (propellerSpeed + 1.0f) * (m_sQueueSample.m_nFrequency / 2.0f);
- m_sQueueSample.m_nFrequency = clamp2(m_sQueueSample.m_nFrequency, freqFrontPrev, 197);
+ m_sQueueSample.m_nFrequency = Clamp2(m_sQueueSample.m_nFrequency, freqFrontPrev, 197);
freqFrontPrev = m_sQueueSample.m_nFrequency;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 140.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
} else {
m_sQueueSample.m_nSampleIndex = SFX_CAR_HELI_MAI;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = (volumeModifier + 1) * 16000 + freq;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 140.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3657,25 +3641,24 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
if (propellerSpeed < 1.0f)
m_sQueueSample.m_nFrequency = (propellerSpeed + 1) * (m_sQueueSample.m_nFrequency / 2);
- m_sQueueSample.m_nFrequency = clamp2(m_sQueueSample.m_nFrequency, freqPropellerPrev, 98);
+ m_sQueueSample.m_nFrequency = Clamp2(m_sQueueSample.m_nFrequency, freqPropellerPrev, 98);
freqPropellerPrev = m_sQueueSample.m_nFrequency;
} else {
m_sQueueSample.m_nSampleIndex = SFX_CAR_HELI_MAI2;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = (volumeModifier + 1) * 16000 + freq;
}
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 140.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
@@ -3698,18 +3681,17 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
}
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nCounter = 12;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 30.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 30;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3728,24 +3710,23 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
m_sQueueSample.m_nFrequency = 14287 + Min(1.0f, freqModifier) * 3713;
if (propellerSpeed < 1.0f)
m_sQueueSample.m_nFrequency = (propellerSpeed + 1) * (m_sQueueSample.m_nFrequency / 2.0f);
- m_sQueueSample.m_nFrequency = clamp2(m_sQueueSample.m_nFrequency, freqSkimmerPrev, 197);
+ m_sQueueSample.m_nFrequency = Clamp2(m_sQueueSample.m_nFrequency, freqSkimmerPrev, 197);
freqSkimmerPrev = m_sQueueSample.m_nFrequency;
m_sQueueSample.m_nSampleIndex = SFX_SEAPLANE_PRO4;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = 12;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = propellerSpeed * 100.0f;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_SEAPLANE_PRO4);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_SEAPLANE_PRO4);
+ SET_LOOP_OFFSETS(SFX_SEAPLANE_PRO4)
m_sQueueSample.m_fSpeedMultiplier = 5.0f;
m_sQueueSample.m_fSoundIntensity = 20.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 7;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3754,13 +3735,9 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
vecPosOld = m_sQueueSample.m_vecPos;
distanceCalculatedOld = params.m_bDistanceCalculated;
distanceOld = params.m_fDistance;
-
- if (automobile != nil)
- automobile->GetComponentWorldPosition(CAR_BOOT, m_sQueueSample.m_vecPos);
- else if (params.m_VehicleType == VEHICLE_TYPE_HELI)
- m_sQueueSample.m_vecPos = CVector(0.0f, -10.0f, 0.0f); //this is from android, but for real it's not used
- params.m_bDistanceCalculated = false;
+ m_sQueueSample.m_vecPos = backPropellerPos;
+ params.m_bDistanceCalculated = FALSE;
params.m_fDistance = GetDistanceSquared(m_sQueueSample.m_vecPos);
if (params.m_fDistance < SQR(27.0f)) {
CalculateDistance(params.m_bDistanceCalculated, params.m_fDistance);
@@ -3768,20 +3745,19 @@ cAudioManager::ProcessCarHeli(cVehicleParams& params)
if (m_sQueueSample.m_nVolume) {
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nSampleIndex = hunterBool ? SFX_HELI_APACHE_3 : SFX_CAR_HELI_REA;
- m_sQueueSample.m_nBankIndex = 0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_nBankIndex = SFX_BANK_0;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = (volumeModifier + 1.0f) * 16000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = volumeModifier * 25.0f;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 6.0f;
m_sQueueSample.m_fSoundIntensity = 27.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3799,7 +3775,7 @@ cAudioManager::ProcessVehicleFlatTyre(cVehicleParams& params)
CAutomobile* automobile;
CBike* bike;
- bool wheelBurst;
+ bool8 wheelBurst;
uint8 emittingVol;
float modifier;
@@ -3810,19 +3786,19 @@ cAudioManager::ProcessVehicleFlatTyre(cVehicleParams& params)
switch (params.m_VehicleType) {
case VEHICLE_TYPE_CAR:
automobile = (CAutomobile*)params.m_pVehicle;
- wheelBurst = false;
+ wheelBurst = FALSE;
for (int i = 0; i < 4; i++)
if (automobile->Damage.GetWheelStatus(i) == WHEEL_STATUS_BURST && automobile->m_aWheelTimer[i] > 0.0f)
- wheelBurst = true;
+ wheelBurst = TRUE;
if (!wheelBurst)
return;
break;
case VEHICLE_TYPE_BIKE:
bike = (CBike*)params.m_pVehicle;
- wheelBurst = false;
+ wheelBurst = FALSE;
for(int i = 0; i < 2; i++)
if (bike->m_wheelStatus[i] == WHEEL_STATUS_BURST && bike->m_aWheelTimer[i] > 0.0f)
- wheelBurst = true;
+ wheelBurst = TRUE;
if (!wheelBurst)
return;
break;
@@ -3837,20 +3813,19 @@ cAudioManager::ProcessVehicleFlatTyre(cVehicleParams& params)
if (m_sQueueSample.m_nVolume) {
m_sQueueSample.m_nCounter = 95;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 5;
m_sQueueSample.m_nSampleIndex = SFX_TYRE_BURST_L;
m_sQueueSample.m_nFrequency = (5500.0f * modifier) + 8000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_TYRE_BURST_L);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_TYRE_BURST_L);
+ SET_LOOP_OFFSETS(SFX_TYRE_BURST_L)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -3989,12 +3964,12 @@ cAudioManager::ProcessJumboDecel(CPlane *plane)
}
}
-bool
+bool8
cAudioManager::SetupJumboTaxiSound(uint8 vol)
{
const float SOUND_INTENSITY = 180.0f;
if (m_sQueueSample.m_fDistance >= SOUND_INTENSITY)
- return false;
+ return FALSE;
uint8 emittingVol = (vol / 2) + ((vol / 2) * m_sQueueSample.m_fDistance / SOUND_INTENSITY);
@@ -4006,31 +3981,30 @@ cAudioManager::SetupJumboTaxiSound(uint8 vol)
m_sQueueSample.m_nCounter = 1;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_TAXI;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = GetJumboTaxiFreq();
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::SetupJumboWhineSound(uint8 emittingVol, uint32 freq)
{
const float SOUND_INTENSITY = 170.0f;
if (m_sQueueSample.m_fDistance >= SOUND_INTENSITY)
- return false;
+ return FALSE;
m_sQueueSample.m_nVolume = ComputeVolume(emittingVol, SOUND_INTENSITY, m_sQueueSample.m_fDistance);
@@ -4038,30 +4012,29 @@ cAudioManager::SetupJumboWhineSound(uint8 emittingVol, uint32 freq)
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_WHINE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::SetupJumboEngineSound(uint8 vol, uint32 freq)
{
const float SOUND_INTENSITY = 180.0f;
if (m_sQueueSample.m_fDistance >= SOUND_INTENSITY)
- return false;
+ return FALSE;
uint8 emittingVol = vol - gJumboVolOffsetPercentage / 100;
m_sQueueSample.m_nVolume = ComputeVolume(emittingVol, SOUND_INTENSITY, m_sQueueSample.m_fDistance);
@@ -4069,29 +4042,28 @@ cAudioManager::SetupJumboEngineSound(uint8 vol, uint32 freq)
m_sQueueSample.m_nCounter = 3;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_ENGINE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = freq;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 4;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::SetupJumboFlySound(uint8 emittingVol)
{
const float SOUND_INTENSITY = 440.0f;
- if(m_sQueueSample.m_fDistance >= SOUND_INTENSITY) return false;
+ if(m_sQueueSample.m_fDistance >= SOUND_INTENSITY) return FALSE;
int32 vol = ComputeVolume(emittingVol, SOUND_INTENSITY, m_sQueueSample.m_fDistance);
m_sQueueSample.m_nVolume = vol;
@@ -4099,30 +4071,29 @@ cAudioManager::SetupJumboFlySound(uint8 emittingVol)
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_DIST_FLY;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_JUMBO_DIST_FLY);
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false; // todo port fix to re3
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE; // todo port fix to re3
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
-bool
+bool8
cAudioManager::SetupJumboRumbleSound(uint8 emittingVol)
{
const float SOUND_INTENSITY = 240.0f;
if (m_sQueueSample.m_fDistance >= SOUND_INTENSITY)
- return false;
+ return FALSE;
m_sQueueSample.m_nVolume = ComputeVolume(emittingVol, SOUND_INTENSITY, m_sQueueSample.m_fDistance);
@@ -4130,20 +4101,19 @@ cAudioManager::SetupJumboRumbleSound(uint8 emittingVol)
m_sQueueSample.m_nCounter = 5;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_RUMBLE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_JUMBO_RUMBLE);
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 12;
m_sQueueSample.m_nOffset = 0;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
m_sQueueSample.m_nCounter = 6;
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_RUMBLE;
@@ -4151,7 +4121,7 @@ cAudioManager::SetupJumboRumbleSound(uint8 emittingVol)
m_sQueueSample.m_nOffset = MAX_VOLUME;
AddSampleToRequestedQueue();
}
- return true;
+ return TRUE;
}
int32
@@ -4172,7 +4142,7 @@ cAudioManager::ProcessPed(CPhysical *ped)
m_sQueueSample.m_vecPos = ped->GetPosition();
- params.m_bDistanceCalculated = false;
+ params.m_bDistanceCalculated = FALSE;
params.m_pPed = (CPed *)ped;
params.m_fDistance = GetDistanceSquared(m_sQueueSample.m_vecPos);
ProcessPedOneShots(params);
@@ -4186,9 +4156,9 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
CPed *ped = params.m_pPed;
- bool narrowSoundRange;
+ bool8 narrowSoundRange;
int16 sound;
- bool stereo;
+ bool8 stereo;
CWeapon *weapon;
float maxDist = 0.f; // uninitialized variable
@@ -4197,9 +4167,9 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
weapon = params.m_pPed->GetWeapon();
for (uint32 i = 0; i < m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_AudioEvents; i++) {
- stereo = false;
- narrowSoundRange = false;
- m_sQueueSample.m_bRequireReflection = false;
+ stereo = FALSE;
+ narrowSoundRange = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
sound = m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_awAudioEvent[i];
switch (sound) {
case SOUND_STEP_START:
@@ -4273,12 +4243,11 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 20.0f;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_FALL_LAND:
case SOUND_FALL_COLLAPSE:
@@ -4301,12 +4270,11 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 30.0f;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_FIGHT_37:
m_sQueueSample.m_nSampleIndex = SFX_FIGHT_1;
@@ -4388,20 +4356,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
++iSound;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 30.0f;
maxDist = SQR(30);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 26 + 100;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_WEAPON_BAT_ATTACK:
case SOUND_WEAPON_KNIFE_ATTACK:
@@ -4434,7 +4401,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_nSampleIndex = SFX_BAT_HIT_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = RandomDisplacement(2000) + 22000;
- stereo = true;
+ stereo = TRUE;
break;
}
}
@@ -4445,26 +4412,29 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
}
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 30.0f;
maxDist = SQR(30);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[2] % 20 + 100;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
- case SOUND_WEAPON_CHAINSAW_ATTACK:
+ case SOUND_WEAPON_CHAINSAW_IDLE:
if (FindVehicleOfPlayer())
continue;
- m_sQueueSample.m_nSampleIndex = SFX_CAR_ACCEL_13;
- m_sQueueSample.m_nBankIndex = SFX_BANK_0; // SFX_BANK_CAR_CHAINSAW
+ m_sQueueSample.m_nSampleIndex = SFX_CAR_CHAINSAW_IDLE;
+#ifdef GTA_PS2
+ m_sQueueSample.m_nBankIndex = SFX_BANK_CAR_CHAINSAW;
+#else
+ m_sQueueSample.m_nBankIndex = SFX_BANK_0;
+#endif
m_sQueueSample.m_nCounter = 70;
m_sQueueSample.m_nFrequency = 27000;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4473,18 +4443,21 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
maxDist = SQR(50);
m_sQueueSample.m_nLoopCount = 0;
emittingVol = 100;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_CAR_ACCEL_13);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_CAR_ACCEL_13);
+ SET_LOOP_OFFSETS(SFX_CAR_CHAINSAW_IDLE)
m_sQueueSample.m_nEmittingVolume = 100;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
break;
- case SOUND_WEAPON_CHAINSAW_IDLE:
+ case SOUND_WEAPON_CHAINSAW_ATTACK:
if (FindVehicleOfPlayer())
continue;
- m_sQueueSample.m_nSampleIndex = SFX_CAR_AFTER_ACCEL_13;
- m_sQueueSample.m_nBankIndex = SFX_BANK_0; // SFX_BANK_CAR_CHAINSAW
+ m_sQueueSample.m_nSampleIndex = SFX_CAR_CHAINSAW_ATTACK;
+#ifdef GTA_PS2
+ m_sQueueSample.m_nBankIndex = SFX_BANK_CAR_CHAINSAW;
+#else
+ m_sQueueSample.m_nBankIndex = SFX_BANK_0;
+#endif
m_sQueueSample.m_nCounter = 68;
m_sQueueSample.m_nFrequency = 27000;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
@@ -4493,11 +4466,10 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
maxDist = SQR(60);
m_sQueueSample.m_nLoopCount = 0;
emittingVol = 100;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_CAR_AFTER_ACCEL_13);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_CAR_AFTER_ACCEL_13);
+ SET_LOOP_OFFSETS(SFX_CAR_CHAINSAW_ATTACK)
m_sQueueSample.m_nEmittingVolume = 100;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
break;
case SOUND_WEAPON_CHAINSAW_MADECONTACT:
@@ -4505,8 +4477,12 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
continue;
if ((int32)m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_afVolume[i] != ENTITY_TYPE_PED)
ReportCollision(params.m_pPed, params.m_pPed, SURFACE_CAR, SURFACE_TARMAC, 0.0f, 0.09f);
- m_sQueueSample.m_nSampleIndex = SFX_CAR_AFTER_ACCEL_13;
- m_sQueueSample.m_nBankIndex = SFX_BANK_0; // SFX_BANK_CAR_CHAINSAW
+ m_sQueueSample.m_nSampleIndex = SFX_CAR_CHAINSAW_ATTACK;
+#ifdef GTA_PS2
+ m_sQueueSample.m_nBankIndex = SFX_BANK_CAR_CHAINSAW;
+#else
+ m_sQueueSample.m_nBankIndex = SFX_BANK_0;
+#endif
m_sQueueSample.m_nCounter = 68;
m_sQueueSample.m_nFrequency = RandomDisplacement(500) + 22000;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
@@ -4515,11 +4491,10 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
maxDist = SQR(60);
m_sQueueSample.m_nLoopCount = 0;
emittingVol = 100;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_CAR_AFTER_ACCEL_13);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_CAR_AFTER_ACCEL_13);
+ SET_LOOP_OFFSETS(SFX_CAR_CHAINSAW_ATTACK)
m_sQueueSample.m_nEmittingVolume = 100;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 5;
break;
case SOUND_WEAPON_SHOT_FIRED:
@@ -4532,7 +4507,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_nSampleIndex = SFX_ROCKET_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_ROCKET_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 1;
@@ -4540,20 +4515,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[0] % 20 + 80;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_COLT45:
m_sQueueSample.m_nSampleIndex = SFX_COLT45_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_COLT45_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4561,20 +4535,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[1] % 10 + 90;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_PYTHON:
m_sQueueSample.m_nSampleIndex = SFX_PYTHON_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_PYTHON_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4582,21 +4555,20 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = 127;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_SHOTGUN:
case WEAPONTYPE_STUBBY_SHOTGUN:
m_sQueueSample.m_nSampleIndex = SFX_SHOTGUN_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_SHOTGUN_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4604,20 +4576,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[2] % 10 + 100;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_SPAS12_SHOTGUN:
m_sQueueSample.m_nSampleIndex = SFX_SPAS12_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_SPAS12_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4625,40 +4596,38 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[2] % 10 + 100;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_TEC9:
m_sQueueSample.m_nSampleIndex = SFX_TEC_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = RandomDisplacement(500) + 17000;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 70;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_UZI:
case WEAPONTYPE_MINIGUN:
m_sQueueSample.m_nSampleIndex = SFX_UZI_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_UZI_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4666,38 +4635,36 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 70;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_SILENCED_INGRAM:
m_sQueueSample.m_nSampleIndex = SFX_TEC_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = RandomDisplacement(1000) + 34000;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 70;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_MP5:
m_sQueueSample.m_nSampleIndex = SFX_MP5_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_MP5_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4705,38 +4672,36 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 70;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_M4:
m_sQueueSample.m_nSampleIndex = SFX_RUGER_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = RandomDisplacement(1000) + 43150;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 90;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_RUGER:
m_sQueueSample.m_nSampleIndex = SFX_RUGER_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RUGER_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4744,20 +4709,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[3] % 15 + 90;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_SNIPERRIFLE:
case WEAPONTYPE_LASERSCOPE:
m_sQueueSample.m_nSampleIndex = SFX_SNIPER_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
if (weapon->m_eWeaponType == WEAPONTYPE_SNIPERRIFLE)
m_sQueueSample.m_nFrequency = 25472;
else
@@ -4768,14 +4732,13 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[4] % 10 + 110;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
+ stereo = TRUE;
break;
case WEAPONTYPE_FLAMETHROWER:
m_sQueueSample.m_nSampleIndex = SFX_FLAMETHROWER_LEFT;
@@ -4788,20 +4751,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 60.0f;
maxDist = SQR(60);
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_nEmittingVolume = 90;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 6;
- stereo = true;
+ stereo = TRUE;
break;
case WEAPONTYPE_M60:
case WEAPONTYPE_HELICANNON:
m_sQueueSample.m_nSampleIndex = SFX_M60_LEFT;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_M60_LEFT);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -4809,13 +4771,12 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = 127;
m_sQueueSample.m_nEmittingVolume = 127;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- stereo = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ stereo = TRUE;
break;
default:
continue;
@@ -4860,7 +4821,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
}
emittingVol = 75;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency += RandomDisplacement(300);
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nReleasingVolumeModificator = 5;
@@ -4868,12 +4829,11 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 30.0f;
maxDist = SQR(30);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_nEmittingVolume = 75;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_WEAPON_AK47_BULLET_ECHO:
{
@@ -4905,7 +4865,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
switch (weaponType) {
case WEAPONTYPE_TEC9:
m_sQueueSample.m_nFrequency = 13000;
@@ -4932,13 +4892,12 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 120.0f;
maxDist = SQR(120);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[4] % 10 + 80;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_WEAPON_FLAMETHROWER_FIRE:
@@ -4952,18 +4911,17 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 60.0f;
maxDist = SQR(60);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = 70;
m_sQueueSample.m_nEmittingVolume = 70;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
break;
case SOUND_WEAPON_HIT_PED:
m_sQueueSample.m_nSampleIndex = SFX_BULLET_PED;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_BULLET_PED);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 8);
m_sQueueSample.m_nReleasingVolumeModificator = 7;
@@ -4971,12 +4929,11 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 30.0f;
maxDist = SQR(30);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[0] % 20 + 90;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
break;
case SOUND_SPLASH:
if (m_FrameCounter <= iSplashFrame)
@@ -4985,20 +4942,19 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_nSampleIndex = SFX_SPLASH_1;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = RandomDisplacement(1400) + 20000;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = 40.0f;
maxDist = SQR(40);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
+ RESET_LOOP_OFFSETS
emittingVol = m_anRandomTable[2] % 30 + 70;
- m_sQueueSample.m_nLoopEnd = -1;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_MELEE_ATTACK_START:
{
@@ -5018,7 +4974,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound++;
- narrowSoundRange = true;
+ narrowSoundRange = TRUE;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
@@ -5030,12 +4986,11 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
emittingVol = m_anRandomTable[2] % 20 + 70;
maxDist = SQR(30);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_SKATING:
@@ -5046,7 +5001,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_nSampleIndex = (m_anRandomTable[3] & 1) + SFX_SKATE_1;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nCounter = iSound;
- stereo = true;
+ stereo = TRUE;
++iSound;
m_sQueueSample.m_nFrequency = m_anRandomTable[1] % 1000 + 17000;
if (param2 == 0)
@@ -5056,13 +5011,12 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 20.0f;
maxDist = SQR(20);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = (m_anRandomTable[2] % 20 + 70) * param1 / 127;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
}
case SOUND_WEAPON_MINIGUN_ATTACK:
@@ -5076,11 +5030,10 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
emittingVol = 127;
maxDist = SQR(150);
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_MINIGUN_FIRE_LEFT);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_MINIGUN_FIRE_LEFT);
+ SET_LOOP_OFFSETS(SFX_MINIGUN_FIRE_LEFT)
m_sQueueSample.m_nEmittingVolume = 127;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
break;
case SOUND_WEAPON_MINIGUN_2:
@@ -5094,11 +5047,10 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
emittingVol = 127.0f * m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_afVolume[i];
maxDist = SQR(150);
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_MINIGUN_FIRE_RIGHT);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_MINIGUN_FIRE_RIGHT);
+ SET_LOOP_OFFSETS(SFX_MINIGUN_FIRE_RIGHT)
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
break;
case SOUND_WEAPON_MINIGUN_3:
@@ -5111,13 +5063,12 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 150.0f;
maxDist = SQR(150);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
emittingVol = 127;
m_sQueueSample.m_nEmittingVolume = 127;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SOUND_SHIRT_WIND_FLAP:
if (params.m_pPed->IsPlayer() && params.m_pPed->m_pMyVehicle) {
@@ -5155,11 +5106,10 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
m_sQueueSample.m_fSoundIntensity = 15.0f;
maxDist = SQR(15);
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
}
}
@@ -5177,13 +5127,13 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
if (m_sQueueSample.m_nVolume != 0) {
if (stereo) {
if (m_sQueueSample.m_fDistance < 0.2f * m_sQueueSample.m_fSoundIntensity) {
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nOffset = 0;
} else {
- stereo = false;
+ stereo = FALSE;
}
}
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
AddSampleToRequestedQueue();
if (stereo) {
m_sQueueSample.m_nOffset = 127;
@@ -5204,7 +5154,7 @@ cAudioManager::ProcessPedOneShots(cPedParams ¶ms)
}
void
-cAudioManager::SetPedTalkingStatus(CPed *ped, uint8 status)
+cAudioManager::SetPedTalkingStatus(CPed *ped, bool8 status)
{
if (ped != nil)
ped->m_canTalk = status;
@@ -5232,12 +5182,12 @@ cAudioManager::SetupPedComments(cPedParams ¶ms, uint16 sound)
if(ped != nil) {
if(!ped->m_canTalk) return;
- m_bGenericSfx = false;
+ m_bGenericSfx = FALSE;
pedComment.m_nSampleIndex = GetPedCommentSfx(ped, sound);
if(pedComment.m_nSampleIndex == NO_SAMPLE) return;
soundIntensity = 40.0f;
} else {
- m_bGenericSfx = true;
+ m_bGenericSfx = TRUE;
switch(sound) {
case SOUND_PED_HELI_PLAYER_FOUND:
soundIntensity = 400.0f;
@@ -5453,23 +5403,23 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
if(m_bIsPlayerShutUp) return NO_SAMPLE;
switch(sound) {
- case SOUND_PED_DEATH: return 9796;
+ case SOUND_PED_DEATH: return SFX_PLAYER_DEATH;
case SOUND_PED_DAMAGE:
- case SOUND_PED_BULLET_HIT: GetPhrase(sfx, ped->m_lastComment, 9815, 33); break;
+ case SOUND_PED_BULLET_HIT: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_HIT_BULLET_1, 33); break;
case SOUND_PED_HIT:
- case SOUND_PED_DEFEND: GetPhrase(sfx, ped->m_lastComment, 9883, 42); break;
- case SOUND_PED_LAND: GetPhrase(sfx, ped->m_lastComment, 9848, 35); break;
- case SOUND_PED_BURNING: GetPhrase(sfx, ped->m_lastComment, 9925, 16); break;
+ case SOUND_PED_DEFEND: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_HIT_FIST_1, 42); break;
+ case SOUND_PED_LAND: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_HIT_GROUND_1, 35); break;
+ case SOUND_PED_BURNING: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ON_FIRE_1, 16); break;
case SOUND_PED_PLAYER_REACTTOCOP:
switch(m_nPlayerMood) {
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8694, 38);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_BUSTED_1, 38);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9615, 20);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_BUSTED_1, 20);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9046, 22);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_BUSTED_1, 22);
break;
}
break;
@@ -5477,16 +5427,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(8);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9586, 29);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_SHOOT_1, 29);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 9007, 39);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_SHOOT_1, 39);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9787, 9);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_SHOOT_1, 9);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9322, 35);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_SHOOT_1, 35);
break;
}
break;
@@ -5495,16 +5445,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(8);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9561, 25);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_PULL_GUN_1, 25);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8937, 52);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_PULL_GUN_1, 52);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9758, 19);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_PULL_GUN_1, 19);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9275, 39);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_PULL_GUN_1, 39);
break;
}
break;
@@ -5513,16 +5463,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9483, 36);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_JACKING_1, 36);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8876, 43);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_JACKING_1, 43);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9706, 18);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_JACKING_1, 18);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9202, 40);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_JACKING_1, 40);
break;
}
break;
@@ -5531,16 +5481,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(8);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9519, 25);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_1, 25);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8919, 12);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_PICK_UP_CASH_1, 12);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9724, 23);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_PICK_UP_CASH_1, 23);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9242, 11);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_PICK_UP_CASH_1, 11);
break;
}
break;
@@ -5549,31 +5499,31 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9462, 21);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_JACKED_1, 21);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8843, 33);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_JACKED_1, 33);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9688, 18);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_JACKED_1, 18);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9178, 24);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_JACKED_1, 24);
break;
}
break;
}
- case SOUND_PED_PLAYER_AFTERSEX: GetPhrase(sfx, ped->m_lastComment, 9797, 18); break;
+ case SOUND_PED_PLAYER_AFTERSEX: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_AFTERSEX_1, 18); break;
case SOUND_PED_PLAYER_BEFORESEX:
switch(m_nPlayerMood) {
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8989, 18);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_SEX_1, 18);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9777, 10);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_SEX_1, 10);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9314, 8);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_SEX_1, 8);
break;
}
break;
@@ -5581,13 +5531,13 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8732, 9);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_CHASED_1, 9);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9635, 7);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_CHASED_1, 7);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9068, 20);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_CHASED_1, 20);
break;
}
break;
@@ -5596,16 +5546,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9401, 61);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_FIGHT_1, 61);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8782, 61);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_FIGHT_1, 61);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9661, 27);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_FIGHT_1, 27);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9131, 47);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_FIGHT_1, 47);
break;
}
break;
@@ -5616,16 +5566,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9357, 44);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_CRASH_1, 44);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8741, 41);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_CRASH_1, 41);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9642, 19);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_CRASH_1, 19);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9088, 43);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_CRASH_1, 43);
break;
}
break;
@@ -5634,16 +5584,16 @@ cAudioManager::GetPlayerTalkSfx(CPed *ped, int16 sound)
cooldown_phrase(4);
switch(m_nPlayerMood) {
case PLAYER_MOOD_PISSED_OFF:
- GetPhrase(sfx, ped->m_lastComment, 9544, 17);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_1, 17);
break;
case PLAYER_MOOD_ANGRY:
- GetPhrase(sfx, ped->m_lastComment, 8931, 6);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_ANGRY_PICK_UP_HOOKER_1, 6);
break;
case PLAYER_MOOD_WISECRACKING:
- GetPhrase(sfx, ped->m_lastComment, 9747, 11);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_1, 11);
break;
default:
- GetPhrase(sfx, ped->m_lastComment, 9253, 22);
+ GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_CALM_PICK_UP_HOOKER_1, 22);
break;
}
break;
@@ -5659,33 +5609,38 @@ cAudioManager::GetCopTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
PedState objective;
switch(sound) {
- case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, 8469, 4); break;
- case SOUND_PED_PULLOUTWEAPON: GetPhrase(sfx, ped->m_lastComment, 8473, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 8500, 2); break;
- case SOUND_PED_COP_UNK_129: GetPhrase(sfx, ped->m_lastComment, 8510, 4); break;
- case SOUND_PED_COP_MANYCOPSAROUND: GetPhrase(sfx, ped->m_lastComment, 8508, 2); break;
- case SOUND_PED_GUNAIMEDAT2: GetPhrase(sfx, ped->m_lastComment, 8498, 2); break;
- case SOUND_PED_COP_ALONE: GetPhrase(sfx, ped->m_lastComment, 8504, 4); break;
- case SOUND_PED_GUNAIMEDAT3: GetPhrase(sfx, ped->m_lastComment, 8485, 2); break;
- case SOUND_PED_COP_REACTION: {
+ case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_ARREST_1, 4); break;
+ case SOUND_PED_PULLOUTWEAPON: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_PULLOUTWEAPON_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_SAVED_1, 2); break;
+ case SOUND_PED_COP_TARGETING: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_COP_TARGETING_1, 4); break;
+ case SOUND_PED_COP_MANYCOPSAROUND: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_COP_MANYCOPSAROUND_1, 2); break;
+ case SOUND_PED_GUNAIMEDAT2: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_GUNAIMEDAT2_1, 2); break;
+ case SOUND_PED_COP_ALONE: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_COP_ALONE_1, 4); break;
+ case SOUND_PED_GUNAIMEDAT3: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_GUNAIMEDAT2_1, 2); break;
+ case SOUND_PED_COP_ASK_FOR_ID: {
cooldown_phrase(4);
- GetPhrase(sfx, ped->m_lastComment, 8502, 2);
+ GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_COP_ASK_FOR_ID_1, 2);
break;
}
case SOUND_PED_COP_LITTLECOPSAROUND:
objective = FindPlayerPed()->m_nPedState;
if(objective == PED_ARRESTED || objective == PED_DEAD || objective == PED_DIE) return NO_SAMPLE;
- GetPhrase(sfx, ped->m_lastComment, 8481, 4);
+ GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_COP_LITTLECOPSAROUND_1, 4);
break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 8494, 4); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8491, 3); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_FIGHT_1, 4); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_DODGE_1, 3); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_CAR_CRASH_1, 4); break;
+#endif
case SOUND_PED_PED_COLLISION:
- if(FindPlayerPed()->m_pWanted->GetWantedLevel() <= 0) return NO_SAMPLE;
- GetPhrase(sfx, ped->m_lastComment, 8476, 5);
+ if(FindPlayerPed()->m_pWanted->GetWantedLevel() > 0)
+ GetPhrase(sfx, ped->m_lastComment, SFX_COP_VOICE_1_BUMP_1, 5);
+ else
+ return NO_SAMPLE;
break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 45 * (m_sQueueSample.m_nEntityIndex % 5) + sfx;
+ return (SFX_COP_VOICE_2_ARREST_1 - SFX_COP_VOICE_1_ARREST_1) * (m_sQueueSample.m_nEntityIndex % 5) + sfx;
}
uint32
@@ -5693,12 +5648,12 @@ cAudioManager::GetSwatTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
switch(sound) {
- case SOUND_PED_COP_HELIPILOTPHRASE: GetPhrase(sfx, ped->m_lastComment, 3285, 7); break;
- case SOUND_PED_COP_UNK_129: GetPhrase(sfx, ped->m_lastComment, 3292, 4); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3282, 3); break;
+ case SOUND_PED_COP_HELIPILOTPHRASE: GetPhrase(sfx, ped->m_lastComment, SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_1, 7); break;
+ case SOUND_PED_COP_TARGETING: GetPhrase(sfx, ped->m_lastComment, SFX_SWAT_VOICE_1_COP_TARGETING_1, 4); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_SWAT_VOICE_1_DODGE_1, 3); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- sfx += 14 * (m_sQueueSample.m_nEntityIndex % 3);
+ sfx += (SFX_SWAT_VOICE_2_DODGE_1 - SFX_SWAT_VOICE_1_DODGE_1) * (m_sQueueSample.m_nEntityIndex % 3);
return sfx;
}
@@ -5707,15 +5662,23 @@ cAudioManager::GetFBITalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
switch(sound) {
- case SOUND_PED_COP_UNK_129: GetPhrase(sfx, ped->m_lastComment, 3240u, 4u); break;
- case SOUND_PED_COP_MANYCOPSAROUND: GetPhrase(sfx, ped->m_lastComment, 3237u, 3u); break;
- case SOUND_PED_GUNAIMEDAT2: sfx = 3236; break;
- case SOUND_PED_GUNAIMEDAT3: GetPhrase(sfx, ped->m_lastComment, 3228u, 4u); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_COP_TARGETING: GetPhrase(sfx, ped->m_lastComment, SFX_FBI_VOICE_1_COP_TARGETING_1, 6); break;
+#else
+ case SOUND_PED_COP_TARGETING: GetPhrase(sfx, ped->m_lastComment, SFX_FBI_VOICE_1_COP_TARGETING_1, 4); break;
+#endif
+ case SOUND_PED_COP_MANYCOPSAROUND: GetPhrase(sfx, ped->m_lastComment, SFX_FBI_VOICE_1_COP_MANYCOPSAROUND_1, 3); break;
+ case SOUND_PED_GUNAIMEDAT2: sfx = SFX_FBI_VOICE_1_GUNAIMEDAT2_1; break;
+ case SOUND_PED_GUNAIMEDAT3: GetPhrase(sfx, ped->m_lastComment, SFX_FBI_VOICE_1_GUNAIMEDAT3_1, 4); break;
case SOUND_PED_CRASH_VEHICLE:
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3232u, 4u); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_FBI_VOICE_1_CAR_CRASH_1, 4); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
+#ifdef FIX_BUGS
+ sfx += (SFX_FBI_VOICE_2_GUNAIMEDAT3_1 - SFX_FBI_VOICE_1_GUNAIMEDAT3_1) * (m_sQueueSample.m_nEntityIndex % 3);
+#else
sfx += 16 * (m_sQueueSample.m_nEntityIndex % 3);
+#endif
return sfx;
}
@@ -5730,12 +5693,12 @@ cAudioManager::GetMedicTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
switch(sound) {
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 3162, 6); break;
- case SOUND_PED_HEALING: GetPhrase(sfx, ped->m_lastComment, 3178, 17); break;
- case SOUND_PED_LEAVE_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3168, 10); break; // SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_1
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_MEDIC_VOICE_1_FIGHT_1, 6); break;
+ case SOUND_PED_HEALING: GetPhrase(sfx, ped->m_lastComment, SFX_MEDIC_VOICE_1_AT_VICTIM_1, 17); break;
+ case SOUND_PED_LEAVE_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- sfx += 33 * (m_sQueueSample.m_nEntityIndex % 2);
+ sfx += (SFX_MEDIC_VOICE_2_FIGHT_1 - SFX_MEDIC_VOICE_1_FIGHT_1) * (m_sQueueSample.m_nEntityIndex % 2);
return sfx;
}
@@ -5751,22 +5714,29 @@ cAudioManager::GetDefaultTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 2033, 12); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 2045, 12); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 2075, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 2098, 4); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 2108, 5); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 2004, 16); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1979, 19); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 2079, 19); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 2020, 13); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 1939, 15); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 1898, 16); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 2070, 5); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 1998, 6); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 2102, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 1914, 25); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 1954, 25); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_GUN_PANIC_1, 12); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_JACKED_1, 12); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_JACKING_1, 13); break;
+#endif
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_MUGGED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_SAVED_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_TAXI_1, 5); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_FIGHT_1, 16); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_DODGE_1, 19); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_RUN_1, 19); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_GENERIC_CRASH_1, 13); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_CAR_CRASH_1, 15); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_BLOCKED_1, 16); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_LOST_1, 5); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_EYEING_1, 6); break;
+#else
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_EYEING_1, 6); break;
+#endif
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_SHOCKED_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_BUMP_1, 25); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_DEFAULT_VOICE_CHAT_1, 25); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -5777,20 +5747,20 @@ cAudioManager::GetHFYSTTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5736, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 5747, 4); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 5755, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5741, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5753, 2); break;
- case SOUND_PED_TAXI_WAIT: return 5759;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5722, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5712, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5729, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5695, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5678, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5751, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5685, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5703, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_JACKING_1, 4); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_MUGGING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_MUGGED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYST_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYST_CHAT_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -5802,18 +5772,18 @@ cAudioManager::GetHFOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 4382, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4388, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4398, 3); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4401, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4363, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4353, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4371, 11); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4334, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4313, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4396, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4322, 12); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4342, 11); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_GUN_COOL_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_MUGGED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_GENERIC_CRASH_1, 11); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_BLOCKED_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_BUMP_1, 12); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOST_CHAT_1, 11); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -5825,16 +5795,16 @@ cAudioManager::GetHMYSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7961, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7971;
- case SOUND_PED_TAXI_WAIT: return 7974;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7946, 6); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7967, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7954, 7); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 7952, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7972, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7922, 13); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7935, 11); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_GUN_PANIC_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HMYST_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_HMYST_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_DODGE_1, 6); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_BUMP_1, 13); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYST_CHAT_1, 11); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -5846,20 +5816,20 @@ cAudioManager::GetHMOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5820, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 5831, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5825, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5836, 2); break;
- case SOUND_PED_TAXI_WAIT: return 5838;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5805, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5795, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5813, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5777, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5760, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5834, 2); break;
- case SOUND_PED_CHAT_SEXY: return 5804;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5767, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5784, 11); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_JACKING_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_MUGGED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HMOST_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: return SFX_HMOST_EYEING_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOST_CHAT_1, 11); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -5871,19 +5841,19 @@ cAudioManager::GetHFYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6965, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6970, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6978, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6986, 2); break;
- case SOUND_PED_TAXI_WAIT: return 6991;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6948, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6982, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6958, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6940, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6923, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6976, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6988, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6931, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_MUGGED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYRI_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYRI_BUMP_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -5895,20 +5865,20 @@ cAudioManager::GetHFORITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7244, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7250, 9); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7261, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7267;
- case SOUND_PED_TAXI_WAIT: return 7270;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7229, 6); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7263, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7237, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7222, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7206, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7259, 2); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 7235, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7268, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7212, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_JACKED_1, 9); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFORI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFORI_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_DODGE_1, 6); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_BLOCKED_1, 6); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFORI_BUMP_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -5920,17 +5890,17 @@ cAudioManager::GetHMYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5890, 7); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 5905, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5897, 8); break;
- case SOUND_PED_ROBBED: return 5908;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5873, 5); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5864, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5878, 12); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5856, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5839, 7); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5909, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5846, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_GUN_PANIC_1, 7); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_JACKING_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: return SFX_HMYRI_MUGGED_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_FIGHT_1, 5); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_GENERIC_CRASH_1, 12); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_BLOCKED_1, 7); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMYRI_BUMP_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -5943,18 +5913,18 @@ cAudioManager::GetHMORITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4454, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4459, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4469, 3); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4478, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4436, 7); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 4472, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4443, 11); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4422, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4403, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4467, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4411, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4428, 8); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_MUGGED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_DODGE_1, 7); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_GENERIC_CRASH_1, 11); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMORI_CHAT_1, 8); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -5966,16 +5936,19 @@ cAudioManager::GetHFYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6897, 7); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6904, 7); break;
- case SOUND_PED_TAXI_WAIT: return 6922;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6878, 11); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6889, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6862, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6911, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6920, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6854, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 6868, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_GUN_PANIC_1, 7); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_JACKED_1, 7); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYBE_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_DODGE_1, 11); break;
+#ifdef FIX_BUGS // assumption
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_RUN_1, 7); break;
+#endif
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_CAR_CRASH_1, 6); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBE_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -5987,19 +5960,19 @@ cAudioManager::GetHFOBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 1018, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 1023, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: return 1035;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 1038, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1006, 7); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 1031, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 1013, 5); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 990, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 973, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 1029, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 1036, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 979, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 996, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_JACKED_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFOBE_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_DODGE_1, 7); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_GENERIC_CRASH_1, 5); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_BLOCKED_1, 6); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOBE_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6011,20 +5984,20 @@ cAudioManager::GetHMYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4892, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4902, 12); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4917;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 4898, 4); break;
- case SOUND_PED_TAXI_WAIT: return 4920;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4874, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4862, 7); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4882, 10); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4845, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4914, 3); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4869, 5); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 4918, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4835, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4852, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_JACKED_1, 12); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HMYBE_SAVED_1;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_INNOCENT_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HMYBE_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_DODGE_1, 7); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_GENERIC_CRASH_1, 10); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_CAR_CRASH_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_LOST_1, 3); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_EYEING_1, 5); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYBE_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6036,13 +6009,13 @@ cAudioManager::GetHMOBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4703, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4709, 6); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 4706, 3); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4690, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4672, 10); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4699, 4); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4682, 8); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_GUN_PANIC_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_JACKED_1, 6); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_INNOCENT_1, 3); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_DODGE_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_BLOCKED_1, 10); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_EYEING_1, 4); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMOBE_BUMP_1, 8); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
@@ -6056,19 +6029,19 @@ cAudioManager::GetHFYBUTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4771, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 4782, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4776, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4787, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4789;
- case SOUND_PED_TAXI_WAIT: return 4790;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4752, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4742, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4759, 12); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4734, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4715, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4785, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4723, 11); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_JACKING_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFYBU_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYBU_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_GENERIC_CRASH_1, 12); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYBU_BUMP_1, 11); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6080,14 +6053,18 @@ cAudioManager::GetHFYMDTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6014, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6019, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6021, 3); break;
- case SOUND_PED_TAXI_WAIT: return 8231;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 6005, 9); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5997, 8); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 6024, 15); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5988, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_GUN_PANIC_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_SAVED_1, 3); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYMD_TAXI_1;
+#else
+ case SOUND_PED_TAXI_WAIT: return SFX_BFOBE_TAXI_1;
+#endif
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_FIGHT_1, 9); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_DODGE_1, 8); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_SOLICIT_1, 15); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYMD_BUMP_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6099,14 +6076,18 @@ cAudioManager::GetHFYCGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4808, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4813, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4819;
- case SOUND_PED_TAXI_WAIT: return 8231;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4800, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 4815, 4); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 4820, 14); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4791, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_GUN_PANIC_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFYCG_SAVED_1;
+#ifdef FIX_BUGS
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYCG_TAXI_1;
+#else
+ case SOUND_PED_TAXI_WAIT: return SFX_BFOBE_TAXI_1;
+#endif
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_RUN_1, 4); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_SOLICIT_1, 14); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYCG_BUMP_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6118,17 +6099,17 @@ cAudioManager::GetHFYPRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5964, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5970, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5972;
- case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, 5956, 8); break;
- case SOUND_PED_TAXI_WAIT: return 5987;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5946, 10); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5934, 9); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 5973, 14); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 5943, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5912, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5922, 12); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_GUN_COOL_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFYPR_SAVED_1;
+ case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_FUCKING_1, 8); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HFYPR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_FIGHT_1, 10); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_DODGE_1, 9); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_SOLICIT_1, 14); break;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_EYEING_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFYPR_CHAT_1, 12); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6140,15 +6121,15 @@ cAudioManager::GetHFOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 4660, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4665, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4667;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4670, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4654, 6); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4646, 8); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 4668, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4623, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4634, 12); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_GUN_COOL_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_HFOTR_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_FIGHT_1, 6); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_DODGE_1, 8); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HFOTR_CHAT_1, 12); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6160,15 +6141,15 @@ cAudioManager::GetHMOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 4515, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 4521, 2); break;
- case SOUND_PED_TAXI_WAIT: return 4534;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4508, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4497, 11); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 4526, 8); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 4523, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4480, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4488, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_GUN_COOL_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HMOTR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_DODGE_1, 11); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_SOLICIT_1, 8); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOTR_CHAT_1, 9); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6180,21 +6161,21 @@ cAudioManager::GetHMYAPTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4591, 7); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 4605, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4598, 7); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4611, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 4619, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4621, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4573, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 4613, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4585, 6); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4555, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4535, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4609, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4582, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4544, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4564, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_GUN_PANIC_1, 7); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_JACKED_1, 7); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_GENERIC_CRASH_1, 6); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_BLOCKED_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_EYEING_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMYAP_CHAT_1, 9); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6206,16 +6187,16 @@ cAudioManager::GetHMOCATalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 3506, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 3521, 11); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3511, 10); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 3532, 7); break;
- case SOUND_PED_TAXI_WAIT: return 3541;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3539, 2); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3486, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3478, 8); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 3504, 2); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3494, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_JACKING_1, 11); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_JACKED_1, 10); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_MUGGED_1, 7); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_HMOCA_TAXI_1;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_RUN_1, 2); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_BLOCKED_1, 8); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_EYEING_1, 2); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HMOCA_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6227,26 +6208,27 @@ cAudioManager::GetBMODKTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6831, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6838, 9); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6847, 2); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 6835, 3); break;
- case SOUND_PED_TAXI_WAIT: return 6853;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6817, 7); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6849, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6824, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6794, 10); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6776, 8); break;
- case SOUND_PED_147:
- GetPhrase(sfx, ped->m_lastComment, 6805, 11);
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_JACKED_1, 9); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_MUGGED_1, 2); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_INNOCENT_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMODK_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_DODGE_1, 7); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_CAR_CRASH_1, 10); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_BLOCKED_1, 8); break;
+ case SOUND_PED_147: // this is some cut behaviour, the guy was selling something
+ GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_UNK_147_1, 11);
+ // what is this? some sort of censorship?
switch(sfx) {
- case 6809:
- case 6810:
- case 6811: GetPhrase(sfx, ped->m_lastComment, 6805, 4); break;
+ case SFX_BMODK_UNK_147_5:
+ case SFX_BMODK_UNK_147_6:
+ case SFX_BMODK_UNK_147_7: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_UNK_147_1, 4); break;
default: break;
}
break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6784, 10); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMODK_BUMP_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6258,20 +6240,20 @@ cAudioManager::GetBMYCRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 6578, 6); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 6594, 12); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 6609, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6588, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6606, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6615, 2); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 6584, 4); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 6563, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6553, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6571, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6544, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6521, 12); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6561, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6533, 11); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_GUN_COOL_1, 6); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_JACKING_1, 12); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_MUGGING_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_MUGGED_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_SAVED_1, 2); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_INNOCENT_1, 4); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_BLOCKED_1, 12); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYCR_BUMP_1, 11); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6283,19 +6265,19 @@ cAudioManager::GetBFYSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7184, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7188, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7195, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 7203, 2); break;
- case SOUND_PED_TAXI_WAIT: return 7205;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7167, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7197, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7176, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7149, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7132, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7193, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7140, 9); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7158, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BFYST_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_BUMP_1, 9); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYST_CHAT_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6307,19 +6289,19 @@ cAudioManager::GetBFOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7046, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7051, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7061, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 7067, 2); break;
- case SOUND_PED_TAXI_WAIT: return 7069;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7027, 11); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7063, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7038, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7009, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6992, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7059, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6999, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7017, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BFOST_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_DODGE_1, 11); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOST_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6331,19 +6313,23 @@ cAudioManager::GetBMYSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 6413, 6); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 6427, 4); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 6433, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6419, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6431, 2); break;
- case SOUND_PED_TAXI_WAIT: return 6437;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 6400, 6); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6392, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6406, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6371, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6352, 8); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6360, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 6380, 12); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_GUN_COOL_1, 6); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_JACKING_1, 4); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_MUGGING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_MUGGED_1, 2); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_TAXI_1, 2); break;
+#else
+ case SOUND_PED_TAXI_WAIT: return SFX_BMYST_TAXI_1;
+#endif
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_FIGHT_1, 6); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_BLOCKED_1, 8); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYST_CHAT_1, 12); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6355,18 +6341,18 @@ cAudioManager::GetBMOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4292, 9); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4307, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4311;
- case SOUND_PED_TAXI_WAIT: return 4312;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4272, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4258, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4279, 13); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4232, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 4301, 6); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4266, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4215, 17); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4240, 18); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_GUN_PANIC_1, 9); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_MUGGED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BMOST_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMOST_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_GENERIC_CRASH_1, 13); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_LOST_1, 6); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_EYEING_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_BUMP_1, 17); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOST_CHAT_1, 18); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6378,21 +6364,21 @@ cAudioManager::GetBFYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6161, 4); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 6173, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6165, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6179, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6188, 2); break;
- case SOUND_PED_TAXI_WAIT: return 6194;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6143, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6182, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6154, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6135, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6117, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6177, 2); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 6151, 3); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6190, 4); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6126, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_MUGGED_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BFYRI_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_BLOCKED_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_EYEING_1, 3); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_SHOCKED_1, 4); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFYRI_BUMP_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6404,19 +6390,19 @@ cAudioManager::GetBFORITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7110, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7115, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7121, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7127;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 7130, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7094, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7123, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7103, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7087, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7070, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7119, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7128, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7078, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_JACKED_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BFORI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFORI_BUMP_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6429,20 +6415,20 @@ cAudioManager::GetBMYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5430, 7); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5437, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5443, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5449;
- case SOUND_PED_TAXI_WAIT: return 5453;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5414, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 5445, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5423, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5407, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5394, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5441, 2); break;
- case SOUND_PED_CHAT_SEXY: return 5422;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5450, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5400, 7); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_GUN_PANIC_1, 7); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_JACKED_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BMYRI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMYRI_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_BLOCKED_1, 6); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: return SFX_BMYRI_EYEING_1;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYRI_BUMP_1, 7); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6454,20 +6440,28 @@ cAudioManager::GetBFYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 6255, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6261, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6273, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6284, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 6290, 3); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6233, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6278, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6247, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6207, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6195, 12); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6269, 4); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6243, 4); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6286, 4); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 6217, 16); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_GUN_COOL_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_MUGGED_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_TAXI_1, 3); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_GENERIC_CRASH_1, 8); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_CAR_CRASH_1, 10); break;
+#else
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_CAR_CRASH_1, 8); break;
+#endif
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_BLOCKED_1, 12); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_LOST_1, 4); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_EYEING_1, 4); break;
+#else
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_EYEING_1, 4); break;
+#endif
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_SHOCKED_1, 4); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYBE_CHAT_1, 16); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6479,21 +6473,21 @@ cAudioManager::GetBMYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 956, 4); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 966, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 960, 6); break;
- case SOUND_PED_ROBBED: return 970;
- case SOUND_PED_ACCIDENTREACTION1: return 971;
- case SOUND_PED_TAXI_WAIT: return 972;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 940, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 928, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 948, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 910, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 892, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 969;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 938, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 900, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 918, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_GUN_COOL_1, 4); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_JACKING_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: return SFX_BMYBE_MUGGED_1;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BMYBE_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMYBE_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_BMYBE_LOST_1;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBE_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6502,22 +6496,21 @@ cAudioManager::GetBMYBETalkSfx(CPed *ped, int16 sound)
uint32
cAudioManager::GetBFOBETalkSfx(CPed *ped, int16 sound)
{
-
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 8213, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 8223, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 8218, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 8227, 2); break;
- case SOUND_PED_TAXI_WAIT: return 8231;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8197, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 8206, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 8182, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 8166, 8); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 8229, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 8174, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 8189, 8); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_MUGGED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BFOBE_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_BLOCKED_1, 8); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOBE_CHAT_1, 8); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6529,18 +6522,18 @@ cAudioManager::GetBMOBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7611, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7616, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7622, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 7626, 3); break;
- case SOUND_PED_TAXI_WAIT: return 7632;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 7594, 10); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7583, 11); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7604, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7564, 9); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7629, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7559, 5); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7573, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_MUGGED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_SAVED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMOBE_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_FIGHT_1, 10); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_DODGE_1, 11); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_CAR_CRASH_1, 9); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_BUMP_1, 5); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOBE_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6552,20 +6545,20 @@ cAudioManager::GetBMYBUTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5500, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5507, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5513, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5515;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 5505, 2); break;
- case SOUND_PED_TAXI_WAIT: return 5518;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5488, 5); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5476, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5493, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5469, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5454, 8); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 5486, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5516, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5462, 7); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BMYBU_SAVED_1;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_INNOCENT_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMYBU_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_FIGHT_1, 5); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_BLOCKED_1, 8); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBU_BUMP_1, 7); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6577,17 +6570,17 @@ cAudioManager::GetBFYPRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5369, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5374, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5376;
- case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, 5362, 7); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 5392, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5355, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5348, 7); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 5379, 13); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5377, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5324, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5335, 13); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_GUN_COOL_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BFYPR_SAVED_1;
+ case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_FUCKING_1, 7); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_DODGE_1, 7); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_SOLICIT_1, 13); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFYPR_CHAT_1, 13); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6599,17 +6592,17 @@ cAudioManager::GetBFOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5232, 6); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 5240, 3); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5238, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5243;
- case SOUND_PED_TAXI_WAIT: return 5252;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5226, 6); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5217, 9); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 5247, 5); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5244, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5192, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5202, 15); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_GUN_COOL_1, 6); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_MUGGING_1, 3); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BFOTR_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_BFOTR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_FIGHT_1, 6); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_DODGE_1, 9); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_SOLICIT_1, 5); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BFOTR_CHAT_1, 15); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6621,16 +6614,16 @@ cAudioManager::GetBMOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 6327, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6343, 1); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 6332, 4); break;
- case SOUND_PED_TAXI_WAIT: return 6351;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6313, 11); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6336, 7); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 6344, 7); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6324, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6293, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 6303, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_GUN_COOL_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_SAVED_1, 1); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_INNOCENT_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_BMOTR_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_DODGE_1, 11); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_RUN_1, 7); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_SOLICIT_1, 7); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_EYEING_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMOTR_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6642,19 +6635,19 @@ cAudioManager::GetBMYPITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 4033, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 4044, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4038, 6); break;
- case SOUND_PED_ROBBED: return 4048;
- case SOUND_PED_ACCIDENTREACTION1: return 4049;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4050, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4012, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3998, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4020, 13); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3993, 5); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3978, 6); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4008, 4); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3984, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: return SFX_BMYPI_MUGGED_1;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_BMYPI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_GENERIC_CRASH_1, 13); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_CAR_CRASH_1, 5); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_BLOCKED_1, 6); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_EYEING_1, 4); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYPI_BUMP_1, 9); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6666,25 +6659,25 @@ cAudioManager::GetBMYBBTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 639, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 659, 9); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 691, 8); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 648, 11); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 686, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 699, 6); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 644, 4); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 711, 3); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 618, 12); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 584, 18); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 630, 9); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 554, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 524, 13); break;
- case SOUND_PED_149: GetPhrase(sfx, ped->m_lastComment, 668, 16); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 684, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 602, 16); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 705, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 537, 17); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 563, 21); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_JACKING_1, 9); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_MUGGING_1, 8); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_JACKED_1, 11); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_MUGGED_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_SAVED_1, 6); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_INNOCENT_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_TAXI_1, 3); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_FIGHT_1, 12); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_DODGE_1, 18); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_GENERIC_CRASH_1, 9); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_BLOCKED_1, 13); break;
+ case SOUND_PED_JEER: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_JEER_1, 16); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_EYEING_1, 16); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_SHOCKED_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_BUMP_1, 17); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BMYBB_CHAT_1, 21); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6696,16 +6689,16 @@ cAudioManager::GetWMYCRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5056, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 5061, 6); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 5070, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5067, 3); break;
- case SOUND_PED_TAXI_WAIT: return 5075;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5040, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5030, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5047, 9); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5021, 9); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5003, 18); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_JACKING_1, 6); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_MUGGING_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_MUGGED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMYCR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_GENERIC_CRASH_1, 9); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_CAR_CRASH_1, 9); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCR_BUMP_1, 18); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6717,21 +6710,21 @@ cAudioManager::GetWFYSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 8445, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 8456, 4); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 8463, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 8450, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 8461, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 8467;
- case SOUND_PED_TAXI_WAIT: return 8468;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 8430, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8420, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 8437, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 8402, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 8386, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 8460;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 8392, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 8410, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_JACKING_1, 4); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_MUGGING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYST_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYST_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_BLOCKED_1, 6); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_WFYST_LOST_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYST_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6743,19 +6736,19 @@ cAudioManager::GetWFOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 8354, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 8358, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 8369, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 8381, 4); break;
- case SOUND_PED_TAXI_WAIT: return 8385;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8332, 12); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 8374, 7); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 8344, 10); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 8305, 11); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 8274, 12); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 8366, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 8286, 19); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 8316, 16); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_MUGGED_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_SAVED_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFOST_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_DODGE_1, 12); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_RUN_1, 7); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_GENERIC_CRASH_1, 10); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_CAR_CRASH_1, 11); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_BLOCKED_1, 12); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_LOST_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_BUMP_1, 19); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOST_CHAT_1, 16); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6767,22 +6760,22 @@ cAudioManager::GetWMYSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 3947, 5); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 3963, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3955, 5); break;
- case SOUND_PED_ROBBED: return 3962;
- case SOUND_PED_ACCIDENTREACTION1: return 3975;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 3952, 3); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 3976, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3930, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3968, 7); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3942, 5); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3912, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3893, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 3960, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 3940, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3901, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3920, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_GUN_PANIC_1, 5); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_MUGGING_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: return SFX_WMYST_MUGGED_1;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMYST_SAVED_1;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_INNOCENT_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_RUN_1, 7); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_GENERIC_CRASH_1, 5); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYST_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6794,22 +6787,22 @@ cAudioManager::GetWMOSTTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 5170, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5178, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5188, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5190;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 5175, 3); break;
- case SOUND_PED_TAXI_WAIT: return 5191;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5155, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5145, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5163, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5129, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5111, 8); break;
- case SOUND_PED_149: GetPhrase(sfx, ped->m_lastComment, 5182, 4); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5186, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 5153, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5119, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5136, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_JACKED_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMOST_SAVED_1;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_INNOCENT_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMOST_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_BLOCKED_1, 8); break;
+ case SOUND_PED_JEER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_JEER_1, 4); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOST_CHAT_1, 9); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6821,20 +6814,20 @@ cAudioManager::GetWFYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5299, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5304, 7); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5313, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5320;
- case SOUND_PED_TAXI_WAIT: return 5323;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5280, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 5315, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5291, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5271, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5253, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5311, 2); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 5289, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5321, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5261, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_JACKED_1, 7); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYRI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYRI_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYRI_BUMP_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6846,19 +6839,19 @@ cAudioManager::GetWFORITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7825, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7831, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7839, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7842;
- case SOUND_PED_TAXI_WAIT: return 7846;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 7810, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7799, 11); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7817, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7789, 10); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7771, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7837, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7843, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7778, 11); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_MUGGED_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFORI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFORI_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_DODGE_1, 11); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_CAR_CRASH_1, 10); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFORI_BUMP_1, 11); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6870,19 +6863,22 @@ cAudioManager::GetWMYRITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4186, 8); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4194, 8); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4208;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 4213, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4163, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 4203, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4175, 11); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4144, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 4126, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 4202;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4172, 3); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 4209, 4); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4136, 8); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_GUN_PANIC_1, 8); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_JACKED_1, 8); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMYRI_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_GENERIC_CRASH_1, 11); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_BLOCKED_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_WMYRI_LOST_1;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_EYEING_1, 3); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_SHOCKED_1, 4); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_BUMP_1, 8); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYRI_CHAT_1, 10); break;
+#endif
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6894,20 +6890,20 @@ cAudioManager::GetWMORITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6668, 9); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6677, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6685, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6701, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 6707, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6647, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6689, 12); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6660, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6641, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6617, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6683, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6657, 3); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6703, 4); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6627, 14); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_GUN_PANIC_1, 9); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_MUGGED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_RUN_1, 12); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_BLOCKED_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_EYEING_1, 3); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_SHOCKED_1, 4); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMORI_BUMP_1, 14); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6919,18 +6915,18 @@ cAudioManager::GetWFYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7752, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7757, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7766;
- case SOUND_PED_TAXI_WAIT: return 7770;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7738, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7761, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7746, 6); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7722, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7704, 7); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7767, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7711, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7728, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_JACKED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYBE_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYBE_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_GENERIC_CRASH_1, 6); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_BLOCKED_1, 7); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBE_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6942,20 +6938,20 @@ cAudioManager::GetWMYBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 8127, 8); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 8142, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 8135, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8105, 12); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 8155, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 8119, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 8086, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 8063, 9); break;
- case SOUND_PED_149: GetPhrase(sfx, ped->m_lastComment, 8145, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 8152, 3); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 8117, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 8160, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 8072, 14); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 8094, 11); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_GUN_PANIC_1, 8); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_JACKING_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_JACKED_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_DODGE_1, 12); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_BLOCKED_1, 9); break;
+ case SOUND_PED_JEER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_JEER_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_LOST_1, 3); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_SHOCKED_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_BUMP_1, 14); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBE_CHAT_1, 11); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -6967,18 +6963,18 @@ cAudioManager::GetWFOBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6093, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6098, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6109, 3); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 6115, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6075, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 6102, 7); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6083, 10); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6058, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6040, 8); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 6112, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6048, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 6065, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_JACKED_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_SAVED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_RUN_1, 7); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_GENERIC_CRASH_1, 10); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_BLOCKED_1, 8); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOBE_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -6990,21 +6986,21 @@ cAudioManager::GetWMOBETalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 3759, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 3772, 4); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 3792, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3764, 8); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 3802, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3742, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3798, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3752, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3724, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3706, 6); break;
- case SOUND_PED_149: GetPhrase(sfx, ped->m_lastComment, 3776, 16); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 3750, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 3804, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3712, 12); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3732, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_JACKING_1, 4); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_MUGGING_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_JACKED_1, 8); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_SAVED_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_BLOCKED_1, 6); break;
+ case SOUND_PED_JEER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_JEER_1, 16); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_BUMP_1, 12); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7016,21 +7012,24 @@ cAudioManager::GetWMYCWTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5650, 6); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 5670, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 5659, 6); break;
- case SOUND_PED_ROBBED: return 5676;
- case SOUND_PED_TAXI_WAIT: return 5677;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5635, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5622, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 5643, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 5598, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5580, 9); break;
- case SOUND_PED_149: GetPhrase(sfx, ped->m_lastComment, 5665, 5); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5674, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 5632, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5589, 9); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5607, 15); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: return SFX_WMYCW_MUGGED_1;
+#ifdef FIX_BUGS
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_INNOCENT_1, 3); break;
+#endif
+ case SOUND_PED_TAXI_WAIT: return SFX_WMYCW_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_BLOCKED_1, 9); break;
+ case SOUND_PED_JEER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_JEER_1, 5); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_EYEING_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_BUMP_1, 9); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYCW_CHAT_1, 15); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7042,19 +7041,19 @@ cAudioManager::GetWMYGOTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7679, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7684, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7690, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7698;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 7701, 3); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7659, 11); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7692, 6); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7672, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7642, 7); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 7670, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7699, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7633, 9); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7649, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMYGO_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_TAXI_1, 3); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_DODGE_1, 11); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_RUN_1, 6); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_CAR_CRASH_1, 7); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_BUMP_1, 9); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYGO_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7066,18 +7065,18 @@ cAudioManager::GetWFOGOTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7904, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7909, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7915, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7919;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 7883, 14); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7874, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7917, 2); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7897, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7855, 8); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7920, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7847, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7863, 11); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFOGO_SAVED_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_FIGHT_1, 14); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_RUN_1, 2); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_CAR_CRASH_1, 8); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOGO_CHAT_1, 11); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7089,19 +7088,19 @@ cAudioManager::GetWMOGOTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 4982, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 4987, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4998;
- case SOUND_PED_TAXI_WAIT: return 5002;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4961, 13); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4947, 12); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 4993, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 4974, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 4929, 9); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 4959, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 4999, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4921, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4938, 9); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_GUN_PANIC_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_JACKED_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMOGO_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMOGO_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_FIGHT_1, 13); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_DODGE_1, 12); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_CAR_CRASH_1, 9); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOGO_CHAT_1, 9); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7113,13 +7112,13 @@ cAudioManager::GetWFYLGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 8267, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: return 8272;
- case SOUND_PED_TAXI_WAIT: return 8273;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 8260, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8252, 8); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 8232, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 8242, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYLG_GUN_COOL_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYLG_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYLG_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYLG_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYLG_DODGE_1, 8); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYLG_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYLG_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7131,13 +7130,13 @@ cAudioManager::GetWMYLGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 3698, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: return 3704;
- case SOUND_PED_TAXI_WAIT: return 3705;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 3691, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3682, 9); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3662, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3672, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WMYLG_GUN_COOL_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMYLG_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMYLG_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYLG_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYLG_DODGE_1, 9); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYLG_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYLG_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7149,15 +7148,15 @@ cAudioManager::GetWFYBUTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7309, 8); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 7317, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7325, 4); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 7340, 2); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7329, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 7301, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7292, 9); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7337, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7271, 21); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_GUN_PANIC_1, 8); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_MUGGED_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_TAXI_1, 2); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_RUN_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_CAR_CRASH_1, 9); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYBU_BUMP_1, 21); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7169,22 +7168,26 @@ cAudioManager::GetWMYBUTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 3862, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3870, 5); break;
- case SOUND_PED_ROBBED: return 3880;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 3884, 2); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 3868, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 3891, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3845, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3881, 3); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3857, 5); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3826, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3706, 6); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 3875, 5); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 3855, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 3886, 5); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3815, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3835, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: return SFX_WMYBU_MUGGED_1;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_SAVED_1, 2); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_INNOCENT_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_RUN_1, 3); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_GENERIC_CRASH_1, 5); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_CAR_CRASH_1, 9); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_BLOCKED_1, 9); break;
+#else
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBE_BLOCKED_1, 6); break;
+#endif
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_LOST_1, 5); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_SHOCKED_1, 5); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYBU_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7196,19 +7199,19 @@ cAudioManager::GetWMOBUTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 6753, 6); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6759, 7); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6769, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6771, 3); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 6774, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 6743, 3); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6733, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6746, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6726, 7); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6709, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 6766, 3); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6741, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6716, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_JACKED_1, 7); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_SAVED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_FIGHT_1, 3); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_CAR_CRASH_1, 7); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_LOST_1, 3); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOBU_BUMP_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7220,16 +7223,16 @@ cAudioManager::GetWFYPRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 4101, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 4107, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 4109;
- case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, 4096, 5); break;
- case SOUND_PED_TAXI_WAIT: return 4125;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 4087, 9); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 4077, 10); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 4110, 15); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 4052, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 4063, 14); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_GUN_COOL_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYPR_SAVED_1;
+ case SOUND_PED_PLAYER_BEFORESEX: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_FUCKING_1, 5); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYPR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_FIGHT_1, 9); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_DODGE_1, 10); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_SOLICIT_1, 15); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYPR_CHAT_1, 14); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7241,14 +7244,14 @@ cAudioManager::GetWFOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 7371, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7383;
- case SOUND_PED_TAXI_WAIT: return 7393;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7362, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7377, 6); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 7384, 9); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7342, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7353, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_GUN_COOL_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFOTR_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFOTR_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_RUN_1, 6); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_SOLICIT_1, 9); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOTR_CHAT_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7260,16 +7263,16 @@ cAudioManager::GetWMOTRTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 7542, 5); break;
- case SOUND_PED_ACCIDENTREACTION1: return 7547;
- case SOUND_PED_TAXI_WAIT: return 7558;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 7536, 6); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7517, 17); break;
- case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, 7551, 7); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 7534, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7548, 3); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7494, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7504, 13); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_GUN_COOL_1, 5); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMOTR_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMOTR_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_FIGHT_1, 6); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_DODGE_1, 17); break;
+ case SOUND_PED_SOLICIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_SOLICIT_1, 7); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_SHOCKED_1, 3); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMOTR_CHAT_1, 13); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7281,20 +7284,24 @@ cAudioManager::GetWMYPITalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 6496, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 6509, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 6503, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 6513, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 6515, 2); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 6501, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 6517, 4); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 6479, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 6465, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 6488, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 6457, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 6439, 8); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 6473, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 6447, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_SAVED_1, 2); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_INNOCENT_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_TAXI_1, 4); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_FIGHT_1, 9); break;
+#else
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_FIGHT_1, 7); break;
+#endif
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_BLOCKED_1, 8); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_EYEING_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYPI_BUMP_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7306,19 +7313,19 @@ cAudioManager::GetWMOCATalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 8032, 6); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 8048, 11); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 8038, 10); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 8059, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 8061;
- case SOUND_PED_TAXI_WAIT: return 8062;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 8015, 8); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 8003, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 8023, 9); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 7993, 10); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 7975, 12); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 8013, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7987, 6); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_GUN_PANIC_1, 6); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_JACKING_1, 11); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_JACKED_1, 10); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMOCA_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMOCA_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_FIGHT_1, 8); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_GENERIC_CRASH_1, 9); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_CAR_CRASH_1, 10); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_BLOCKED_1, 12); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMOCA_BUMP_1, 6); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7329,12 +7336,12 @@ cAudioManager::GetWFYJGTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 7414, 4); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 7424; break;
- case SOUND_PED_TAXI_WAIT: sfx = 7425; break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7406, 8); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7418, 6); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7394, 12); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYJG_GUN_PANIC_1, 4); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_WFYJG_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: sfx = SFX_WFYJG_TAXI_1; break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYJG_DODGE_1, 8); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYJG_RUN_1, 6); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYJG_BUMP_1, 12); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7346,14 +7353,14 @@ cAudioManager::GetWMYJGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5098, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5102, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 5109;
- case SOUND_PED_TAXI_WAIT: return 5110;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 5104, 5); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 5076, 10); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 5096, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5086, 10); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_GUN_PANIC_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WMYJG_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMYJG_TAXI_1;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_RUN_1, 5); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_BLOCKED_1, 10); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYJG_BUMP_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7365,14 +7372,14 @@ cAudioManager::GetWFYSKTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 3652, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 3657, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 3659, 2); break;
- case SOUND_PED_TAXI_WAIT: return 3661;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 3641, 11); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3632, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3603, 11); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3614, 18); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_GUN_PANIC_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYSK_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_FIGHT_1, 11); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_DODGE_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_BLOCKED_1, 11); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSK_BUMP_1, 18); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7384,18 +7391,18 @@ cAudioManager::GetWMYSKTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 5563, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 5573, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 5575, 2); break;
- case SOUND_PED_UNK_126: GetPhrase(sfx, ped->m_lastComment, 5568, 3); break;
- case SOUND_PED_TAXI_WAIT: return 5579;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 5558, 5); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 5546, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 5571, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 5556, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 5577, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 5519, 14); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 5533, 13); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_GUN_PANIC_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_SAVED_1, 2); break;
+ case SOUND_PED_INNOCENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_INNOCENT_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WMYSK_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_FIGHT_1, 5); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_DODGE_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_BUMP_1, 14); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WMYSK_CHAT_1, 13); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7407,16 +7414,16 @@ cAudioManager::GetWFYSHTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 7459, 9); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 7470, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 7483, 4); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 7492, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 7448, 11); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 7472, 11); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 7468, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 7487, 5); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 7426, 12); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 7438, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_GUN_COOL_1, 9); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_SAVED_1, 4); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_DODGE_1, 11); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_RUN_1, 11); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_SHOCKED_1, 5); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_BUMP_1, 12); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYSH_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7428,16 +7435,16 @@ cAudioManager::GetWFOSHTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 3571, 10); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 3583, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 3594, 3); break;
- case SOUND_PED_TAXI_WAIT: return 3602;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3561, 10); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3585, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 3581, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 3597, 5); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3542, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3552, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_GUN_COOL_1, 10); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_SAVED_1, 3); break;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFOSH_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_DODGE_1, 10); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_RUN_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_LOST_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_SHOCKED_1, 5); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFOSH_CHAT_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7449,20 +7456,20 @@ cAudioManager::GetJFOTOTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 811, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 815, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 821, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 828, 2); break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 831, 2); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 796, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 823, 5); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 805, 6); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 775, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 757, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 820;
- case SOUND_PED_CHAT_EVENT: return 830;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 765, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 783, 13); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_SAVED_1, 2); break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_TAXI_1, 2); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_RUN_1, 5); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_GENERIC_CRASH_1, 6); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_JFOTO_LOST_1;
+ case SOUND_PED_CHAT_EVENT: return SFX_JFOTO_SHOCKED_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_JFOTO_CHAT_1, 13); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7474,20 +7481,20 @@ cAudioManager::GetJMOTOTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, 874, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 878, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 883, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 889;
- case SOUND_PED_TAXI_WAIT: return 891;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 862, 6); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 885, 4); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 868, 6); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 849, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 833, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 882;
- case SOUND_PED_CHAT_EVENT: return 890;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 841, 8); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 855, 7); break;
+ case SOUND_PED_HANDS_COWER: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_GUN_PANIC_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_JACKED_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_JMOTO_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_JMOTO_TAXI_1;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_DODGE_1, 6); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_RUN_1, 4); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_GENERIC_CRASH_1, 6); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_JMOTO_LOST_1;
+ case SOUND_PED_CHAT_EVENT: return SFX_JMOTO_SHOCKED_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_BUMP_1, 8); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_JMOTO_CHAT_1, 7); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
return sfx;
@@ -7499,24 +7506,24 @@ cAudioManager::GetCBTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 2178, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 2187, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 2183, 4); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 2194, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 2196; break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 2197, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 2161, 9); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 2150, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 2170, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 2132, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 2113, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 2192, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 2159, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 2121, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 2140, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_JACKING_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_JACKED_1, 4); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_CUBAN_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_FIGHT_1, 9); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_CAR_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_GANG_1_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 86 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_CUBAN_GANG_2_BLOCKED_1 - SFX_CUBAN_GANG_1_BLOCKED_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7525,24 +7532,24 @@ cAudioManager::GetHNTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 2692, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 2703, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 2697, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 2711, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 2714; break;
- case SOUND_PED_TAXI_WAIT: sfx = 2715; break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 2673, 10); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 2661, 10); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 2683, 9); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 2638, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 2617, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 2707, 4); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 2671, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 2626, 12); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 2647, 14); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_MUGGED_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_HAITIAN_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: sfx = SFX_HAITIAN_GANG_1_TAXI_1; break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_FIGHT_1, 10); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_DODGE_1, 10); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_GENERIC_CRASH_1, 9); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_BLOCKED_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_LOST_1, 4); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_BUMP_1, 12); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_HAITIAN_GANG_1_CHAT_1, 14); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 99 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_HAITIAN_GANG_2_BLOCKED_1 - SFX_HAITIAN_GANG_1_BLOCKED_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7551,26 +7558,26 @@ cAudioManager::GetSGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 1104, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 1114, 5); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 1124, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 1109, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 1121, 3); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 1129; break;
- case SOUND_PED_TAXI_WAIT: sfx = 1132; break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 1088, 10); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1076, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 1098, 6); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 1058, 6); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 1040, 8); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 1119, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 1085, 3); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 1130, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 1048, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 1064, 12); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_JACKING_1, 5); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_MUGGING_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_MUGGED_1, 3); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_STREET_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: sfx = SFX_STREET_GANG_1_TAXI_1; break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_FIGHT_1, 10); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_GENERIC_CRASH_1, 6); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_CAR_CRASH_1, 6); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_BLOCKED_1, 8); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_EYEING_1, 3); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_STREET_GANG_1_CHAT_1, 12); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- if(ped->GetModelIndex() == MI_SGB) sfx += 93;
+ if(ped->GetModelIndex() == MI_SGB) sfx += (SFX_STREET_GANG_2_BLOCKED_1 - SFX_STREET_GANG_1_BLOCKED_1);
return sfx;
}
@@ -7580,24 +7587,24 @@ cAudioManager::GetCLTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 1299, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 1310, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 1304, 6); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 1317, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 1319; break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 1320, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 1281, 10); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1266, 13); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 1291, 8); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 1246, 10); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 1226, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 1315, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 1279, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 1236, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 1256, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_JACKING_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_JACKED_1, 6); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_CUBAN_LORD_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_FIGHT_1, 10); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_DODGE_1, 13); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_CAR_CRASH_1, 10); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_BLOCKED_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_EYEING_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_CUBAN_LORD_GANG_1_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 96 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_CUBAN_LORD_GANG_2_BLOCKED_1 - SFX_CUBAN_LORD_GANG_1_BLOCKED_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7606,18 +7613,18 @@ cAudioManager::GetGDTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 1762, 6); break;
- case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, 1770, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 1755, 7); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1744, 9); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 1768, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 1753, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 1772, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 1724, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 1734, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_GUN_COOL_1, 6); break;
+ case SOUND_PED_ACCIDENTREACTION1: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_SAVED_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_FIGHT_1, 7); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_DODGE_1, 9); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_GUARD_DUTY_1_CHAT_1, 10); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 50 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_GUARD_DUTY_2_BUMP_1 - SFX_GUARD_DUTY_1_BUMP_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7626,22 +7633,22 @@ cAudioManager::GetBKTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 2429, 5); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 2442, 4); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 2434, 8); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 2448, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 2450; break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 2451, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 2412, 9); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 2403, 9); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 2421, 8); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 2371, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 2446, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 2381, 10); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 2391, 12); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_GUN_COOL_1, 5); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_JACKING_1, 4); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_JACKED_1, 8); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_BIKER_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_FIGHT_1, 9); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_DODGE_1, 9); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_GENERIC_CRASH_1, 8); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_BLOCKED_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_LOST_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_BUMP_1, 10); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_BIKER_GANG_1_CHAT_1, 12); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 82 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_BIKER_GANG_2_BLOCKED_1 - SFX_BIKER_GANG_1_BLOCKED_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7650,25 +7657,25 @@ cAudioManager::GetPGTalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 1561, 4); break;
- case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, 1570, 5); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 1565, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 1577, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: sfx = 1579; break;
- case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, 1582, 2); break;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 1551, 5); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 1542, 7); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 1556, 5); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 1529, 5); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 1514, 10); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 1575, 2); break;
- case SOUND_PED_CHAT_SEXY: GetPhrase(sfx, ped->m_lastComment, 1549, 2); break;
- case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, 1580, 2); break;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 1524, 5); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 1534, 8); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_GUN_COOL_1, 4); break;
+ case SOUND_PED_CAR_JACKING: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_JACKING_1, 5); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: sfx = SFX_PLAYER_GANG_1_SAVED_1; break;
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_TAXI_1, 2); break;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_FIGHT_1, 5); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_DODGE_1, 7); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_GENERIC_CRASH_1, 5); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_CAR_CRASH_1, 5); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_BLOCKED_1, 10); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_LOST_1, 2); break;
+ case SOUND_PED_CHAT_SEXY_MALE: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_SHOCKED_1, 2); break;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_BUMP_1, 5); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_PLAYER_GANG_1_CHAT_1, 8); break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- return 70 * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
+ return (SFX_PLAYER_GANG_2_BLOCKED_1 - SFX_PLAYER_GANG_1_BLOCKED_1) * (m_sQueueSample.m_nEntityIndex % 3) + sfx;
}
uint32
@@ -7678,18 +7685,18 @@ cAudioManager::GetVICETalkSfx(CPed *ped, int16 sound, int16 model)
if(model == MI_VICE6) {
switch(sound) {
- case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, 1894, 3); break;
- case SOUND_PED_MIAMIVICE_EXITING_CAR: return 1897;
+ case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, SFX_VICE_VOICE_6_ARREST_1, 3); break;
+ case SOUND_PED_MIAMIVICE_EXITING_CAR: return SFX_VICE_VOICE_6_MIAMIVICE_EXITING_CAR_1;
default: return GetGenericMaleTalkSfx(ped, sound);
}
}
switch(sound) {
- case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, 1874, 3); break;
- case SOUND_PED_MIAMIVICE_EXITING_CAR: sfx = 1877; break;
+ case SOUND_PED_ARREST_COP: GetPhrase(sfx, ped->m_lastComment, SFX_VICE_VOICE_1_ARREST_1, 3); break;
+ case SOUND_PED_MIAMIVICE_EXITING_CAR: sfx = SFX_VICE_VOICE_1_MIAMIVICE_EXITING_CAR_1; break;
default: return GetGenericMaleTalkSfx(ped, sound);
}
- sfx += 4 * (m_sQueueSample.m_nEntityIndex % 5);
+ sfx += (SFX_VICE_VOICE_2_ARREST_1-SFX_VICE_VOICE_1_ARREST_1) * (m_sQueueSample.m_nEntityIndex % 5);
return sfx;
}
@@ -7699,23 +7706,23 @@ cAudioManager::GetWFYG1TalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 3383, 6); break;
- case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, 3399, 2); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3389, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 3397, 2); break;
- case SOUND_PED_ACCIDENTREACTION1: return 3403;
- case SOUND_PED_TAXI_WAIT: return 3405;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 3372, 4); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3361, 9); break;
- case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, 3401, 2); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3376, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3342, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3324, 7); break;
- case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, 3394, 3); break;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 3370, 2); break;
- case SOUND_PED_CHAT_EVENT: return 3404;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3331, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3351, 10); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_GUN_COOL_1, 6); break;
+ case SOUND_PED_MUGGING: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_MUGGING_1, 2); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_MUGGED_1, 2); break;
+ case SOUND_PED_ACCIDENTREACTION1: return SFX_WFYG1_SAVED_1;
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYG1_TAXI_1;
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_FIGHT_1, 4); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_DODGE_1, 9); break;
+ case SOUND_PED_FLEE_RUN: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_RUN_1, 2); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_BLOCKED_1, 7); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_LOST_1, 3); break;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_EYEING_1, 2); break;
+ case SOUND_PED_CHAT_EVENT: return SFX_WFYG1_SHOCKED_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG1_CHAT_1, 10); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
return sfx;
@@ -7727,20 +7734,24 @@ cAudioManager::GetWFYG2TalkSfx(CPed *ped, int16 sound)
uint32 sfx;
switch(sound) {
- case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, 3464, 3); break;
- case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, 3467, 5); break;
- case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, 3473, 2); break;
- case SOUND_PED_TAXI_WAIT: return 3476;
- case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, 3452, 5); break;
- case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, 3440, 8); break;
- case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, 3457, 7); break;
- case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, 3422, 9); break;
- case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, 3406, 5); break;
- case SOUND_PED_WAIT_DOUBLEBACK: return 3472;
- case SOUND_153: GetPhrase(sfx, ped->m_lastComment, 3448, 4); break;
- case SOUND_PED_CHAT_EVENT: return 3475;
- case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, 3411, 11); break;
- case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, 3431, 9); break;
+ case SOUND_PED_HANDS_UP: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_GUN_COOL_1, 3); break;
+ case SOUND_PED_CAR_JACKED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_JACKED_1, 5); break;
+ case SOUND_PED_ROBBED: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_MUGGED_1, 2); break;
+#ifdef FIX_BUGS
+ case SOUND_PED_TAXI_WAIT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_TAXI_1, 2); break;
+#else
+ case SOUND_PED_TAXI_WAIT: return SFX_WFYG2_TAXI_1;
+#endif
+ case SOUND_PED_ATTACK: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_FIGHT_1, 5); break;
+ case SOUND_PED_EVADE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_DODGE_1, 8); break;
+ case SOUND_PED_CRASH_VEHICLE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_GENERIC_CRASH_1, 7); break;
+ case SOUND_PED_CRASH_CAR: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_CAR_CRASH_1, 9); break;
+ case SOUND_PED_ANNOYED_DRIVER: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_BLOCKED_1, 5); break;
+ case SOUND_PED_WAIT_DOUBLEBACK: return SFX_WFYG2_LOST_1;
+ case SOUND_PED_CHAT_SEXY_FEMALE: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_EYEING_1, 4); break;
+ case SOUND_PED_CHAT_EVENT: return SFX_WFYG2_SHOCKED_1;
+ case SOUND_PED_PED_COLLISION: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_BUMP_1, 11); break;
+ case SOUND_PED_CHAT: GetPhrase(sfx, ped->m_lastComment, SFX_WFYG2_CHAT_1, 9); break;
default: return GetGenericFemaleTalkSfx(ped, sound);
}
@@ -7752,7 +7763,7 @@ cAudioManager::GetGenericMaleTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
- m_bGenericSfx = true;
+ m_bGenericSfx = TRUE;
switch(sound) {
case SOUND_PED_DEATH: GetPhrase(sfx, ped->m_lastComment, SFX_GENERIC_MALE_DEATH_1, 41); break;
case SOUND_PED_BULLET_HIT:
@@ -7768,13 +7779,13 @@ uint32
cAudioManager::GetGenericFemaleTalkSfx(CPed *ped, int16 sound)
{
uint32 sfx;
- m_bGenericSfx = true;
+ m_bGenericSfx = TRUE;
switch(sound) {
- case SOUND_PED_DEATH: GetPhrase(sfx, ped->m_lastComment, 2931, 22); break;
+ case SOUND_PED_DEATH: GetPhrase(sfx, ped->m_lastComment, SFX_GENERIC_FEMALE_DEATH_1, 22); break;
case SOUND_PED_BULLET_HIT:
- case SOUND_PED_DEFEND: GetPhrase(sfx, ped->m_lastComment, 2953, 33); break;
- case SOUND_PED_BURNING: GetPhrase(sfx, ped->m_lastComment, 2914, 17); break;
- case SOUND_PED_FLEE_SPRINT: GetPhrase(sfx, ped->m_lastComment, 2986, 27); break;
+ case SOUND_PED_DEFEND: GetPhrase(sfx, ped->m_lastComment, SFX_GENERIC_FEMALE_GRUNT_1, 33); break;
+ case SOUND_PED_BURNING: GetPhrase(sfx, ped->m_lastComment, SFX_GENERIC_FEMALE_FIRE_1, 17); break;
+ case SOUND_PED_FLEE_SPRINT: GetPhrase(sfx, ped->m_lastComment, SFX_GENERIC_FEMALE_PANIC_1, 27); break;
default: return NO_SAMPLE;
}
return sfx;
@@ -7816,7 +7827,7 @@ cPedComments::Process()
uint32 sampleIndex;
uint8 actualUsedBank;
tPedComment *comment;
- bool prevUsed = false;
+ bool8 prevUsed = FALSE;
static uint8 counter = 0;
static int32 prevSamples[10];
@@ -7827,7 +7838,7 @@ cPedComments::Process()
if(m_asPedComments[m_nActiveBank][m_nIndexMap[m_nActiveBank][0]].m_nSampleIndex ==
prevSamples[(counter + 1 + i) % ARRAY_SIZE(prevSamples)]) {
m_asPedComments[m_nActiveBank][m_nIndexMap[m_nActiveBank][0]].m_nProcess = -1;
- prevUsed = true;
+ prevUsed = TRUE;
break;
}
}
@@ -7847,19 +7858,21 @@ cPedComments::Process()
AudioManager.m_sQueueSample.m_nVolume = m_asPedComments[m_nActiveBank][m_nIndexMap[m_nActiveBank][0]].m_bVolume;
AudioManager.m_sQueueSample.m_fDistance = m_asPedComments[m_nActiveBank][m_nIndexMap[m_nActiveBank][0]].m_fDistance;
AudioManager.m_sQueueSample.m_nLoopCount = 1;
+#ifndef GTA_PS2
AudioManager.m_sQueueSample.m_nLoopStart = 0;
AudioManager.m_sQueueSample.m_nLoopEnd = -1;
+#endif
AudioManager.m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
AudioManager.m_sQueueSample.m_fSpeedMultiplier = 3.0f;
AudioManager.m_sQueueSample.m_fSoundIntensity = 40.0f;
- AudioManager.m_sQueueSample.m_bReleasingSoundFlag = true;
+ AudioManager.m_sQueueSample.m_bReleasingSoundFlag = TRUE;
AudioManager.m_sQueueSample.m_vecPos = m_asPedComments[m_nActiveBank][m_nIndexMap[m_nActiveBank][0]].m_vecPos;
- AudioManager.m_sQueueSample.m_bReverbFlag = true;
- AudioManager.m_sQueueSample.m_bRequireReflection = true;
- AudioManager.m_sQueueSample.m_bIs2D = false;
+ AudioManager.m_sQueueSample.m_bReverbFlag = TRUE;
+ AudioManager.m_sQueueSample.m_bRequireReflection = TRUE;
+ AudioManager.m_sQueueSample.m_bIs2D = FALSE;
#ifdef FIX_BUGS
- if (sampleIndex >= 8694 && sampleIndex < TOTAL_AUDIO_SAMPLES) { // check if player sfx, TODO: enum
- AudioManager.m_sQueueSample.m_bIs2D = true;
+ if (sampleIndex >= SFX_PLAYER_ANGRY_BUSTED_1 && sampleIndex < TOTAL_AUDIO_SAMPLES) { // check if player sfx
+ AudioManager.m_sQueueSample.m_bIs2D = TRUE;
AudioManager.m_sQueueSample.m_nOffset = 63;
}
#endif // FIX_BUGS
@@ -7872,19 +7885,19 @@ cPedComments::Process()
AudioManager.AddSampleToRequestedQueue();
#if defined(GTA_PC) && !defined(FIX_BUGS)
m_nDelayTimer = CTimer::GetTimeInMilliseconds();
- m_bDelay = true;
+ m_bDelay = TRUE;
#endif
}
}
}
// Switch bank
- if (m_nActiveBank) {
- actualUsedBank = SFX_BANK_PED_COMMENTS;
- m_nActiveBank = SFX_BANK_0;
+ if (m_nActiveBank == 0) {
+ actualUsedBank = 0;
+ m_nActiveBank = 1;
} else {
- actualUsedBank = SFX_BANK_0;
- m_nActiveBank = SFX_BANK_PED_COMMENTS;
+ actualUsedBank = 1;
+ m_nActiveBank = 0;
}
comment = m_asPedComments[actualUsedBank];
for (uint32 i = 0; i < m_nCommentsInBank[actualUsedBank]; i++) {
@@ -7900,7 +7913,7 @@ cPedComments::Process()
m_nCommentsInBank[actualUsedBank] = 0;
#if defined(GTA_PC) && !defined(FIX_BUGS)
if(m_bDelay)
- if(CTimer::GetTimeInMilliseconds() - m_nDelayTimer > 6000) m_bDelay = false;
+ if(CTimer::GetTimeInMilliseconds() - m_nDelayTimer > 6000) m_bDelay = FALSE;
#endif
}
@@ -7930,7 +7943,7 @@ cAudioManager::ProcessExplosions(int32 explosion)
m_sQueueSample.m_nFrequency = RandomDisplacement(1000) + 19000;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case EXPLOSION_MOLOTOV:
m_sQueueSample.m_fSoundIntensity = 150.0f;
@@ -7938,7 +7951,7 @@ cAudioManager::ProcessExplosions(int32 explosion)
m_sQueueSample.m_nFrequency = RandomDisplacement(1000) + 19000;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
break;
case EXPLOSION_MINE:
case EXPLOSION_HELI_BOMB:
@@ -7947,7 +7960,7 @@ cAudioManager::ProcessExplosions(int32 explosion)
m_sQueueSample.m_nFrequency = RandomDisplacement(1000) + 12347;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
default:
m_sQueueSample.m_fSoundIntensity = 200.0f;
@@ -7967,13 +7980,12 @@ cAudioManager::ProcessExplosions(int32 explosion)
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = i;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
- m_sQueueSample.m_bReverbFlag = true;
+ RESET_LOOP_OFFSETS
+ m_sQueueSample.m_bReverbFlag = TRUE;
AddSampleToRequestedQueue();
}
}
@@ -8034,19 +8046,18 @@ cAudioManager::ProcessFires(int32)
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_nReleasingVolumeDivider = 10;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
if (gFireManager.m_aFires[i].m_bExtinguishedWithWater) {
- gFireManager.m_aFires[i].m_bExtinguishedWithWater = false;
+ gFireManager.m_aFires[i].m_bExtinguishedWithWater = FALSE;
emittingVol = 100.0f * gFireManager.m_aFires[i].m_fWaterExtinguishCountdown;
m_sQueueSample.m_nVolume = ComputeVolume(emittingVol, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
if (m_sQueueSample.m_nVolume != 0) {
@@ -8058,14 +8069,13 @@ cAudioManager::ProcessFires(int32)
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_nReleasingVolumeDivider = 10;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -8094,14 +8104,13 @@ cAudioManager::ProcessWaterCannon(int32)
m_sQueueSample.m_nCounter = i;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_nReleasingVolumeDivider = 8;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nEmittingVolume = 50;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -8131,17 +8140,16 @@ cAudioManager::ProcessExtraSounds()
m_sQueueSample.m_nSampleIndex = SFX_ARCADE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_ARCADE);
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 4;
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
m_sQueueSample.m_nEmittingVolume = EMITTING_VOLUME;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_ARCADE);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_ARCADE);
- m_sQueueSample.m_bReverbFlag = true;
+ SET_LOOP_OFFSETS(SFX_ARCADE)
+ m_sQueueSample.m_bReverbFlag = TRUE;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
AddSampleToRequestedQueue();
}
@@ -8174,14 +8182,13 @@ cAudioManager::ProcessEscalators()
m_sQueueSample.m_nReleasingVolumeDivider = 5;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
m_sQueueSample.m_nCounter = i;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = EMITTING_VOLUME;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_BOAT_V12_LOOP);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_BOAT_V12_LOOP);
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(SFX_BOAT_V12_LOOP)
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -8226,8 +8233,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
emittingVolume = 60;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SCRIPT_SOUND_GARAGE_DOOR_CLUNK:
m_sQueueSample.m_fSoundIntensity = 80.0f;
@@ -8238,8 +8245,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 4;
emittingVolume = 60;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SCRIPT_SOUND_SHOOTING_RANGE_TARGET_HIT:
case SCRIPT_SOUND_BULLET_HIT_GROUND_1:
@@ -8252,7 +8259,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 32);
m_sQueueSample.m_nReleasingVolumeModificator = 9;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
emittingVolume = m_anRandomTable[2] % 20 + 90;
break;
case SCRIPT_SOUND_WILLIE_CARD_SWIPE:
@@ -8263,8 +8270,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = 20159;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_fSpeedMultiplier = 1.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
break;
case SCRIPT_SOUND_MALE_AMBULANCE_OUCH:
{
@@ -8288,8 +8295,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CAR_HORN_JEEP); // BUG?
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bIs2D = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
break;
case SCRIPT_SOUND_PAYPHONE_RINGING:
m_sQueueSample.m_fSoundIntensity = 80.0f;
@@ -8299,8 +8306,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_PHONE_RING);
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
break;
case SCRIPT_SOUND_GLASS_BREAK_L:
m_sQueueSample.m_fSoundIntensity = 60.0f;
@@ -8310,7 +8317,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_GLASS_SMASH);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_GLASS_BREAK_S:
m_sQueueSample.m_fSoundIntensity = 60.0f;
@@ -8320,7 +8327,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_GLASS_SMASH);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_GLASS_CRACK:
m_sQueueSample.m_fSoundIntensity = 60.0f;
@@ -8330,8 +8337,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_GLASS_CRACK);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
break;
case SCRIPT_SOUND_GLASS_LIGHT_BREAK:
m_sQueueSample.m_fSoundIntensity = 55.0f;
@@ -8340,7 +8347,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = RandomDisplacement(2000) + 19000;
m_sQueueSample.m_nReleasingVolumeModificator = 9;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
emittingVolume = RandomDisplacement(11) + 25;
break;
case SCRIPT_SOUND_BOX_DESTROYED_1:
@@ -8350,8 +8357,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = RandomDisplacement(1500) + 18600;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVolume = m_anRandomTable[2] % 20 + 80;
break;
case SCRIPT_SOUND_BOX_DESTROYED_2:
@@ -8361,8 +8368,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency = RandomDisplacement(1500) + 18600;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVolume = m_anRandomTable[2] % 20 + 80;
break;
case SCRIPT_SOUND_METAL_COLLISION:
@@ -8373,8 +8380,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVolume = m_anRandomTable[2] % 30 + 70;
break;
case SCRIPT_SOUND_TIRE_COLLISION:
@@ -8385,8 +8392,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVolume = m_anRandomTable[2] % 30 + 60;
break;
case SCRIPT_SOUND_HIT_BALL:
@@ -8397,8 +8404,8 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nReleasingVolumeModificator = 5;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
emittingVolume = m_anRandomTable[2] % 30 + 60;
break;
case SCRIPT_SOUND_GUNSHELL_DROP:
@@ -8434,7 +8441,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_fSoundIntensity = 20.0f;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
emittingVolume = m_anRandomTable[2] % 20 + 30;
break;
case SCRIPT_SOUND_GUNSHELL_DROP_SOFT:
@@ -8444,7 +8451,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
m_sQueueSample.m_fSoundIntensity = 20.0f;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
emittingVolume = m_anRandomTable[2] % 20 + 30;
break;
default:
@@ -8458,11 +8465,10 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = iSound++;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nEmittingVolume = emittingVolume;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
- m_sQueueSample.m_bReverbFlag = true;
+ RESET_LOOP_OFFSETS
+ m_sQueueSample.m_bReverbFlag = TRUE;
AddSampleToRequestedQueue();
}
}
@@ -8484,7 +8490,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_POLICE_CELL_DOOR_SLIDING_LOOP:
case SCRIPT_SOUND_GARAGE_DOOR_SLIDING_LOOP:
@@ -8496,7 +8502,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_SNORING_LOOP:
m_sQueueSample.m_fSoundIntensity = 6.0f;
@@ -8507,7 +8513,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 6;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
m_sQueueSample.m_fSpeedMultiplier = 3.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_SHOOTING_RANGE_TARGET_MOVING_LOOP:
m_sQueueSample.m_fSoundIntensity = 40.0f;
@@ -8518,7 +8524,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 4;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_BAR_1:
m_sQueueSample.m_nSampleIndex = SFX_BUILDING_BAR_1;
@@ -8529,7 +8535,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_BAR_2:
m_sQueueSample.m_nSampleIndex = SFX_BUILDING_BAR_2;
@@ -8540,7 +8546,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_BAR_3:
m_sQueueSample.m_nSampleIndex = SFX_BUILDING_BAR_3;
@@ -8551,7 +8557,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_BAR_4:
m_sQueueSample.m_nSampleIndex = SFX_BUILDING_BAR_4;
@@ -8562,7 +8568,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_MALIBU_1:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_MALIBU_AMBIENT) return;
@@ -8575,7 +8581,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_MALIBU_2:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_MALIBU_AMBIENT) return;
@@ -8588,7 +8594,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_MALIBU_3:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_MALIBU_AMBIENT) return;
@@ -8601,7 +8607,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_STRIP_1:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_STRIPCLUB_AMBIENT) return;
@@ -8614,7 +8620,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_STRIP_2:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_STRIPCLUB_AMBIENT) return;
@@ -8627,7 +8633,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_STRIP_3:
if(MusicManager.m_nPlayingTrack == STREAMED_SOUND_STRIPCLUB_AMBIENT) return;
@@ -8640,7 +8646,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_BUILDING_CHURCH:
m_sQueueSample.m_nSampleIndex = SFX_BUILDING_CHURCH;
@@ -8651,7 +8657,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nReleasingVolumeDivider = 15;
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
case SCRIPT_SOUND_NEW_WATERFALL:
emittingVolume = 30;
@@ -8662,7 +8668,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nReleasingVolumeModificator = 4;
m_sQueueSample.m_nReleasingVolumeDivider = 9;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
break;
default: return;
}
@@ -8673,14 +8679,13 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
m_sQueueSample.m_nVolume = ComputeVolume(emittingVolume, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
if(m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = 0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
m_sQueueSample.m_nEmittingVolume = emittingVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -8718,14 +8723,13 @@ cAudioManager::ProcessWeather(int32 id)
m_sQueueSample.m_nCounter = iSound++;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nOffset = (m_anRandomTable[2] & 15) + 55;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nEmittingVolume = m_sQueueSample.m_nVolume;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
- m_sQueueSample.m_bReverbFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ RESET_LOOP_OFFSETS
+ m_sQueueSample.m_bReverbFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
if (CWeather::Rain > 0.0f && (!CCullZones::CamNoRain() || !CCullZones::PlayerNoRain())) {
@@ -8736,15 +8740,14 @@ cAudioManager::ProcessWeather(int32 id)
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
m_sQueueSample.m_nOffset = 63;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 30;
- m_sQueueSample.m_bReverbFlag = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
m_sQueueSample.m_nEmittingVolume = m_sQueueSample.m_nVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
x = 0.0f;
@@ -8761,15 +8764,14 @@ cAudioManager::ProcessWeather(int32 id)
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nOffset = 63;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 7;
- m_sQueueSample.m_bReverbFlag = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
m_sQueueSample.m_nEmittingVolume = m_sQueueSample.m_nVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
CObject::fDistToNearestTree = 999999.9f;
}
@@ -8778,11 +8780,11 @@ cAudioManager::ProcessWeather(int32 id)
void
cAudioManager::ProcessFrontEnd()
{
- bool stereo;
- bool processedPickup;
- bool processedMission;
- bool staticFreq;
- bool center;
+ bool8 stereo;
+ bool8 processedPickup;
+ bool8 processedMission;
+ bool8 staticFreq;
+ bool8 center;
int16 sample;
static uint8 iSound = 0;
@@ -8791,11 +8793,11 @@ cAudioManager::ProcessFrontEnd()
static uint32 radioDial = SFX_RADIO_DIAL_1;
for (uint32 i = 0; i < m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_AudioEvents; i++) {
- staticFreq = false;
- processedPickup = false;
- center = false;
- processedMission = false;
- stereo = false;
+ staticFreq = FALSE;
+ processedPickup = FALSE;
+ center = FALSE;
+ processedMission = FALSE;
+ stereo = FALSE;
switch (m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_awAudioEvent[i]) {
case SOUND_WEAPON_SNIPER_SHOT_NO_ZOOM:
m_sQueueSample.m_nSampleIndex = SFX_ERROR_FIRE_RIFLE;
@@ -8807,9 +8809,9 @@ cAudioManager::ProcessFrontEnd()
case SOUND_GARAGE_BAD_VEHICLE:
case SOUND_GARAGE_BOMB_ALREADY_SET:
m_sQueueSample.m_nSampleIndex = SFX_WEAPON_LEFT;
- stereo = true;
- staticFreq = true;
- center = true;
+ stereo = TRUE;
+ staticFreq = TRUE;
+ center = TRUE;
break;
case SOUND_GARAGE_OPENING:
case SOUND_71: //case SOUND_41:
@@ -8817,8 +8819,8 @@ cAudioManager::ProcessFrontEnd()
case SOUND_GARAGE_VEHICLE_ACCEPTED:
case SOUND_EVIDENCE_PICKUP:
case SOUND_UNLOAD_GOLD:
- stereo = true;
- processedPickup = true;
+ stereo = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_MONEY_LEFT;
break;
case SOUND_GARAGE_BOMB1_SET:
@@ -8826,60 +8828,60 @@ cAudioManager::ProcessFrontEnd()
case SOUND_GARAGE_BOMB3_SET:
case SOUND_PICKUP_WEAPON_BOUGHT:
case SOUND_PICKUP_WEAPON:
- center = true;
- processedPickup = true;
+ center = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_WEAPON_LEFT;
- stereo = true;
+ stereo = TRUE;
break;
case SOUND_PICKUP_HEALTH:
case SOUND_81: //case SOUND_4B:
case SOUND_PICKUP_ADRENALINE:
case SOUND_PICKUP_ARMOUR:
- stereo = true;
- processedPickup = true;
+ stereo = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_MONEY_LEFT;
break;
case SOUND_80:
- stereo = true;
- processedPickup = true;
+ stereo = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_WEAPON_LEFT;
- center = true;
- staticFreq = true;
+ center = TRUE;
+ staticFreq = TRUE;
break;
case SOUND_PICKUP_BONUS:
case SOUND_FRONTEND_MENU_STARTING:
case SOUND_HUD:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_INFO_LEFT;
- center = true;
+ center = TRUE;
break;
case SOUND_PICKUP_MONEY:
- stereo = true;
- processedPickup = true;
+ stereo = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_MONEY_LEFT;
break;
case SOUND_PICKUP_HIDDEN_PACKAGE:
case SOUND_PICKUP_PACMAN_PILL:
case SOUND_PICKUP_PACMAN_PACKAGE:
case SOUND_PICKUP_FLOAT_PACKAGE:
- center = true;
- processedPickup = true;
+ center = TRUE;
+ processedPickup = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_PART_MISSION_COMPLETE_LEFT;
- stereo = true;
+ stereo = TRUE;
break;
case SOUND_RACE_START_3:
case SOUND_RACE_START_2:
case SOUND_RACE_START_1:
case SOUND_PART_MISSION_COMPLETE:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_PART_MISSION_COMPLETE_LEFT;
- processedMission = true;
- center = true;
+ processedMission = TRUE;
+ center = TRUE;
break;
case SOUND_RACE_START_GO:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_GO_LEFT;
- center = true;
+ center = TRUE;
break;
case SOUND_CLOCK_TICK:
m_sQueueSample.m_nSampleIndex = SFX_TIMER;
@@ -8905,19 +8907,19 @@ cAudioManager::ProcessFrontEnd()
radioDial = m_sQueueSample.m_nSampleIndex;
break;
case SOUND_FRONTEND_HIGHLIGHT_OPTION:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_FE_HIGHLIGHT_LEFT;
break;
case SOUND_FRONTEND_ENTER_OR_ADJUST:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_FE_SELECT_LEFT;
break;
case SOUND_FRONTEND_BACK:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_FE_BACK_LEFT;
break;
case SOUND_FRONTEND_FAIL:
- stereo = true;
+ stereo = TRUE;
m_sQueueSample.m_nSampleIndex = SFX_FE_ERROR_LEFT;
break;
case SOUND_FRONTEND_AUDIO_TEST:
@@ -8956,34 +8958,34 @@ cAudioManager::ProcessFrontEnd()
m_sQueueSample.m_nVolume = (CWeather::Wind - 1.0f) * m_sQueueSample.m_nVolume;
m_sQueueSample.m_nCounter = iSound++;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nBankIndex = SFX_BANK_FRONT_END_MENU;
m_sQueueSample.m_nReleasingVolumeModificator = 0;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nEmittingVolume = m_sQueueSample.m_nVolume;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
- m_sQueueSample.m_fDistance = 1.0f;
- if (stereo)
+ RESET_LOOP_OFFSETS
+ if (stereo) {
m_sQueueSample.m_nOffset = 0;
- else {
+ m_sQueueSample.m_fDistance = 1.0f;
+ } else {
sample = m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_awAudioEvent[i];
if (sample == SOUND_BULLETTRACE_1) {
m_sQueueSample.m_nOffset = 20;
m_sQueueSample.m_nVolume = m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_afVolume[i];
m_sQueueSample.m_nReleasingVolumeModificator = 10;
m_sQueueSample.m_fDistance = 100.0f;
- }
- if (sample == SOUND_BULLETTRACE_2) {
+ } else if (sample == SOUND_BULLETTRACE_2) {
m_sQueueSample.m_nOffset = 107;
m_sQueueSample.m_nVolume = m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_afVolume[i];
m_sQueueSample.m_nReleasingVolumeModificator = 10;
m_sQueueSample.m_fDistance = 100.0f;
+ } else {
+ m_sQueueSample.m_nOffset = 63;
+ m_sQueueSample.m_fDistance = 1.0f;
}
- m_sQueueSample.m_nOffset = 63;
}
- m_sQueueSample.m_bReverbFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
if (stereo) {
++m_sQueueSample.m_nSampleIndex;
@@ -9006,7 +9008,7 @@ cAudioManager::ProcessCrane()
{
CCrane *crane = (CCrane *)m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_pEntity;
float distSquared;
- bool distCalculated = false;
+ bool8 distCalculated = FALSE;
static const int intensity = 80;
if (crane) {
@@ -9021,19 +9023,18 @@ cAudioManager::ProcessCrane()
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nSampleIndex = SFX_CRANE_MAGNET;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 2;
m_sQueueSample.m_nFrequency = 6000;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = 100;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 4.0f;
m_sQueueSample.m_fSoundIntensity = intensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
if (m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_AudioEvents) {
@@ -9041,9 +9042,9 @@ cAudioManager::ProcessCrane()
m_sQueueSample.m_nSampleIndex = SFX_COL_CAR_2;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_COL_CAR_2);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = TRUE;
AddSampleToRequestedQueue();
}
}
@@ -9097,14 +9098,13 @@ cAudioManager::ProcessProjectiles()
m_sQueueSample.m_nVolume = ComputeVolume(emittingVol, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = i;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = emittingVol;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -9122,7 +9122,7 @@ cAudioManager::ProcessGarages()
uint32 sampleIndex;
uint8 j;
float distSquared;
- bool distCalculated;
+ bool8 distCalculated;
static uint8 iSound = 32;
@@ -9133,7 +9133,7 @@ cAudioManager::ProcessGarages()
if (entity == nil)
continue;
m_sQueueSample.m_vecPos = entity->GetPosition();
- distCalculated = false;
+ distCalculated = FALSE;
distSquared = GetDistanceSquared(m_sQueueSample.m_vecPos);
if (distSquared < SQR(SOUND_INTENSITY)) {
state = CGarages::aGarages[i].m_eGarageState;
@@ -9153,7 +9153,7 @@ cAudioManager::ProcessGarages()
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex) / 2;
m_sQueueSample.m_nFrequency += RandomDisplacement(m_sQueueSample.m_nFrequency / 16);
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nCounter = iSound++;
if (iSound < 32)
iSound = 32;
@@ -9165,7 +9165,7 @@ cAudioManager::ProcessGarages()
m_sQueueSample.m_nCounter = i;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
}
} else {
m_sQueueSample.m_nSampleIndex = SFX_GARAGE_DOOR_LOOP;
@@ -9174,19 +9174,18 @@ cAudioManager::ProcessGarages()
m_sQueueSample.m_nCounter = i;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
}
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 3;
m_sQueueSample.m_nEmittingVolume = 90;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
break;
@@ -9215,16 +9214,15 @@ cAudioManager::ProcessGarages()
m_sQueueSample.m_nEmittingVolume = 60;
m_sQueueSample.m_fSpeedMultiplier = 0.0f;
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReverbFlag = true;
- m_sQueueSample.m_bIs2D = false;
- m_sQueueSample.m_bReleasingSoundFlag = true;
+ m_sQueueSample.m_bReverbFlag = TRUE;
+ m_sQueueSample.m_bIs2D = FALSE;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
m_sQueueSample.m_nLoopCount = 1;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_nCounter = iSound++;
if (iSound < 32)
iSound = 32;
- m_sQueueSample.m_bRequireReflection = true;
+ m_sQueueSample.m_bRequireReflection = TRUE;
AddSampleToRequestedQueue();
}
}
@@ -9242,7 +9240,7 @@ cAudioManager::ProcessFireHydrant()
const float SOUND_INTENSITY = 35;
float distSquared;
- bool distCalculated = false;
+ bool8 distCalculated = FALSE;
m_sQueueSample.m_vecPos = ((CEntity *)m_asAudioEntities[m_sQueueSample.m_nEntityIndex].m_pEntity)->GetPosition();
distSquared = GetDistanceSquared(m_sQueueSample.m_vecPos);
@@ -9256,13 +9254,12 @@ cAudioManager::ProcessFireHydrant()
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nEmittingVolume = 40;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nLoopCount = 0;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSoundIntensity = SOUND_INTENSITY;
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
AddSampleToRequestedQueue();
@@ -9277,7 +9274,7 @@ void
cAudioManager::ProcessBridge()
{
float dist;
- bool distCalculated = false;
+ bool8 distCalculated = FALSE;
if (CBridge::pLiftRoad) {
m_sQueueSample.m_vecPos = CBridge::pLiftRoad->GetPosition();
@@ -9312,19 +9309,18 @@ cAudioManager::ProcessBridgeWarning()
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nSampleIndex = SFX_BRIDGE_OPEN_WARNING;
m_sQueueSample.m_nBankIndex = SAMPLEBANK_EXTRAS;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_BRIDGE_OPEN_WARNING);
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = 100;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = 450.0f;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 8;
- m_sQueueSample.m_bReverbFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -9339,18 +9335,17 @@ cAudioManager::ProcessBridgeMotor()
m_sQueueSample.m_nCounter = 1;
m_sQueueSample.m_nSampleIndex = SFX_FISHING_BOAT_IDLE; // todo check sfx name
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = 5500;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
+ SET_LOOP_OFFSETS(m_sQueueSample.m_nSampleIndex)
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = bridgeIntensity;
- m_sQueueSample.m_bReleasingSoundFlag = false;
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bReverbFlag = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -9374,18 +9369,17 @@ cAudioManager::ProcessBridgeOneShots()
if (m_sQueueSample.m_nVolume != 0) {
m_sQueueSample.m_nCounter = 2;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = false;
+ m_sQueueSample.m_bIs2D = FALSE;
m_sQueueSample.m_nReleasingVolumeModificator = 1;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
m_sQueueSample.m_nLoopCount = 1;
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
- m_sQueueSample.m_nLoopStart = 0;
- m_sQueueSample.m_nLoopEnd = -1;
+ RESET_LOOP_OFFSETS
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
m_sQueueSample.m_fSoundIntensity = bridgeIntensity;
- m_sQueueSample.m_bReleasingSoundFlag = true;
- m_sQueueSample.m_bReverbFlag = false;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bReleasingSoundFlag = TRUE;
+ m_sQueueSample.m_bReverbFlag = FALSE;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
}
@@ -9394,7 +9388,7 @@ cAudioManager::ProcessBridgeOneShots()
#endif
#pragma region MISSION_AUDIO
-bool g_bMissionAudioLoadFailed[MISSION_AUDIO_SLOTS];
+bool8 g_bMissionAudioLoadFailed[MISSION_AUDIO_SLOTS];
struct MissionAudioData {
const char *m_pName;
@@ -9789,10 +9783,10 @@ FindMissionAudioSfx(const char *name)
return NO_SAMPLE;
}
-bool
+bool8
cAudioManager::MissionScriptAudioUsesPoliceChannel(int32 soundMission) const
{
- return false;
+ return FALSE;
}
void
@@ -9804,12 +9798,12 @@ cAudioManager::PreloadMissionAudio(uint8 slot, Const char *name)
m_sMissionAudio.m_nSampleIndex[slot] = missionAudioSfx;
m_sMissionAudio.m_nLoadingStatus[slot] = LOADING_STATUS_NOT_LOADED;
m_sMissionAudio.m_nPlayStatus[slot] = PLAY_STATUS_STOPPED;
- m_sMissionAudio.m_bIsPlaying[slot] = false;
+ m_sMissionAudio.m_bIsPlaying[slot] = FALSE;
m_sMissionAudio.m_nMissionAudioCounter[slot] = m_nTimeSpent * SampleManager.GetStreamedFileLength(missionAudioSfx) / 1000;
m_sMissionAudio.m_nMissionAudioCounter[slot] *= 4;
- m_sMissionAudio.m_bIsPlayed[slot] = false;
- m_sMissionAudio.m_bPredefinedProperties[slot] = true;
- g_bMissionAudioLoadFailed[slot] = false;
+ m_sMissionAudio.m_bIsPlayed[slot] = FALSE;
+ m_sMissionAudio.m_bPredefinedProperties[slot] = TRUE;
+ g_bMissionAudioLoadFailed[slot] = FALSE;
}
}
}
@@ -9827,7 +9821,7 @@ void
cAudioManager::SetMissionAudioLocation(uint8 slot, float x, float y, float z)
{
if (m_bIsInitialised && slot < MISSION_AUDIO_SLOTS) {
- m_sMissionAudio.m_bPredefinedProperties[slot] = false;
+ m_sMissionAudio.m_bPredefinedProperties[slot] = FALSE;
m_sMissionAudio.m_vecPos[slot] = CVector(x, y, z);
}
}
@@ -9837,25 +9831,25 @@ cAudioManager::PlayLoadedMissionAudio(uint8 slot)
{
if (m_bIsInitialised && slot < MISSION_AUDIO_SLOTS && m_sMissionAudio.m_nSampleIndex[slot] != NO_SAMPLE && m_sMissionAudio.m_nLoadingStatus[slot] == LOADING_STATUS_LOADED &&
m_sMissionAudio.m_nPlayStatus[slot] == PLAY_STATUS_STOPPED)
- m_sMissionAudio.m_bIsPlayed[slot] = true;
+ m_sMissionAudio.m_bIsPlayed[slot] = TRUE;
}
-bool
+bool8
cAudioManager::ShouldDuckMissionAudio(uint8 slot) const
{
if (IsMissionAudioSamplePlaying(slot))
return m_sMissionAudio.m_nSampleIndex[slot] != STREAMED_SOUND_MISSION_ROK2_01;
- return false;
+ return FALSE;
}
-bool
+bool8
cAudioManager::IsMissionAudioSamplePlaying(uint8 slot) const
{
if (m_bIsInitialised) {
if (slot < MISSION_AUDIO_SLOTS)
return m_sMissionAudio.m_nPlayStatus[slot] == PLAY_STATUS_PLAYING;
else
- return true;
+ return TRUE;
} else {
static int32 cPretendFrame[MISSION_AUDIO_SLOTS] = { 1, 1 };
@@ -9863,14 +9857,14 @@ cAudioManager::IsMissionAudioSamplePlaying(uint8 slot) const
}
}
-bool
+bool8
cAudioManager::IsMissionAudioSampleFinished(uint8 slot)
{
if (m_bIsInitialised) {
if (slot < MISSION_AUDIO_SLOTS)
return m_sMissionAudio.m_nPlayStatus[slot] == PLAY_STATUS_FINISHED;
else
- return true;
+ return TRUE;
}
static int32 cPretendFrame[MISSION_AUDIO_SLOTS] = { 1, 1 };
@@ -9885,11 +9879,11 @@ cAudioManager::ClearMissionAudio(uint8 slot)
m_sMissionAudio.m_nSampleIndex[slot] = NO_SAMPLE;
m_sMissionAudio.m_nLoadingStatus[slot] = LOADING_STATUS_NOT_LOADED;
m_sMissionAudio.m_nPlayStatus[slot] = PLAY_STATUS_STOPPED;
- m_sMissionAudio.m_bIsPlaying[slot] = false;
- m_sMissionAudio.m_bIsPlayed[slot] = false;
- m_sMissionAudio.m_bPredefinedProperties[slot] = true;
+ m_sMissionAudio.m_bIsPlaying[slot] = FALSE;
+ m_sMissionAudio.m_bIsPlayed[slot] = FALSE;
+ m_sMissionAudio.m_bPredefinedProperties[slot] = TRUE;
m_sMissionAudio.m_nMissionAudioCounter[slot] = 0;
- m_sMissionAudio.m_bIsMobile[slot] = false;
+ m_sMissionAudio.m_bIsMobile[slot] = FALSE;
SampleManager.StopStreamedFile(slot + 1);
}
}
@@ -9941,14 +9935,14 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
SetMissionScriptPoliceAudio(m_sMissionAudio.m_nSampleIndex[slot]);
} else {
if (m_nUserPause)
- SampleManager.PauseStream(1, slot + 1);
+ SampleManager.PauseStream(TRUE, slot + 1);
if (m_sMissionAudio.m_bPredefinedProperties[slot]) {
if (m_sMissionAudio.m_nSampleIndex[slot] == STREAMED_SOUND_MISSION_CAMERAL)
- SampleManager.SetStreamedVolumeAndPan(80, 0, 1, slot + 1);
+ SampleManager.SetStreamedVolumeAndPan(80, 0, TRUE, slot + 1);
else if (m_sMissionAudio.m_nSampleIndex[slot] == STREAMED_SOUND_MISSION_CAMERAR)
- SampleManager.SetStreamedVolumeAndPan(80, 127, 1, slot + 1);
+ SampleManager.SetStreamedVolumeAndPan(80, 127, TRUE, slot + 1);
else
- SampleManager.SetStreamedVolumeAndPan(80, 63, 1, slot + 1);
+ SampleManager.SetStreamedVolumeAndPan(80, 63, TRUE, slot + 1);
} else {
distSquared = GetDistanceSquared(m_sMissionAudio.m_vecPos[slot]);
if (distSquared >= SQR(80.0f)) {
@@ -9963,14 +9957,14 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
TranslateEntity(&m_sMissionAudio.m_vecPos[slot], &vec);
pan = ComputePan(80.f, &vec);
}
- SampleManager.SetStreamedVolumeAndPan(emittingVol, pan, 1, slot + 1);
+ SampleManager.SetStreamedVolumeAndPan(emittingVol, pan, TRUE, slot + 1);
}
SampleManager.StartPreloadedStreamedFile(slot + 1);
}
m_sMissionAudio.m_nPlayStatus[slot] = PLAY_STATUS_PLAYING;
nCheckPlayingDelay[slot] = 30;
if (m_sMissionAudio.m_nSampleIndex[slot] >= STREAMED_SOUND_MISSION_MOB_01A && m_sMissionAudio.m_nSampleIndex[slot] <= STREAMED_SOUND_MISSION_MOB_99A)
- m_sMissionAudio.m_bIsMobile[slot] = true;
+ m_sMissionAudio.m_bIsMobile[slot] = TRUE;
break;
case PLAY_STATUS_PLAYING:
if (m_bTimerJustReset) {
@@ -9982,8 +9976,10 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
if (!m_nUserPause) {
if (nCheckPlayingDelay[slot]) {
--nCheckPlayingDelay[slot];
- } else if (GetMissionScriptPoliceAudioPlayingStatus() == PLAY_STATUS_FINISHED || m_sMissionAudio.m_nMissionAudioCounter[slot]-- == 0) {
+ } else if ((g_bMissionAudioLoadFailed[slot] && m_sMissionAudio.m_nMissionAudioCounter[slot]-- == 0) || GetMissionScriptPoliceAudioPlayingStatus() == PLAY_STATUS_FINISHED) {
m_sMissionAudio.m_nPlayStatus[slot] = PLAY_STATUS_FINISHED;
+ if (m_sMissionAudio.m_nSampleIndex[slot] >= STREAMED_SOUND_MISSION_MOB_01A && m_sMissionAudio.m_nSampleIndex[slot] <= STREAMED_SOUND_MISSION_MOB_99A)
+ m_sMissionAudio.m_bIsMobile[slot] = FALSE;
m_sMissionAudio.m_nSampleIndex[slot] = NO_SAMPLE;
SampleManager.StopStreamedFile(slot + 1);
m_sMissionAudio.m_nMissionAudioCounter[slot] = 0;
@@ -9992,10 +9988,10 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
} else if (m_sMissionAudio.m_bIsPlaying[slot]) {
if (SampleManager.IsStreamPlaying(slot + 1) || m_nUserPause || m_nPreviousUserPause) {
if (m_nUserPause)
- SampleManager.PauseStream(1, slot + 1);
+ SampleManager.PauseStream(TRUE, slot + 1);
else
{
- SampleManager.PauseStream(0, slot + 1);
+ SampleManager.PauseStream(FALSE, slot + 1);
if (!m_sMissionAudio.m_bPredefinedProperties[slot]) {
distSquared = GetDistanceSquared(m_sMissionAudio.m_vecPos[slot]);
if (distSquared >= SQR(80.0f)) {
@@ -10010,7 +10006,7 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
TranslateEntity(&m_sMissionAudio.m_vecPos[slot], &vec);
pan = ComputePan(80.f, &vec);
}
- SampleManager.SetStreamedVolumeAndPan(emittingVol, pan, 1, slot + 1);
+ SampleManager.SetStreamedVolumeAndPan(emittingVol, pan, TRUE, slot + 1);
}
}
} else if (m_sMissionAudio.m_nSampleIndex[slot] == STREAMED_SOUND_MISSION_ROK2_01) {
@@ -10018,7 +10014,7 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
} else {
m_sMissionAudio.m_nPlayStatus[slot] = PLAY_STATUS_FINISHED;
if (m_sMissionAudio.m_nSampleIndex[slot] >= STREAMED_SOUND_MISSION_MOB_01A && m_sMissionAudio.m_nSampleIndex[slot] <= STREAMED_SOUND_MISSION_MOB_99A)
- m_sMissionAudio.m_bIsMobile[slot] = false;
+ m_sMissionAudio.m_bIsMobile[slot] = FALSE;
m_sMissionAudio.m_nSampleIndex[slot] = NO_SAMPLE;
SampleManager.StopStreamedFile(slot + 1);
m_sMissionAudio.m_nMissionAudioCounter[slot] = 0;
@@ -10031,7 +10027,7 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
break;
nCheckPlayingDelay[slot] = 0;
}
- m_sMissionAudio.m_bIsPlaying[slot] = true;
+ m_sMissionAudio.m_bIsPlaying[slot] = TRUE;
}
break;
default:
@@ -10041,7 +10037,7 @@ cAudioManager::ProcessMissionAudioSlot(uint8 slot)
case LOADING_STATUS_FAILED:
if (++nFramesUntilFailedLoad[slot] >= 120) {
nFramesForPretendPlaying[slot] = 0;
- g_bMissionAudioLoadFailed[slot] = true;
+ g_bMissionAudioLoadFailed[slot] = TRUE;
nFramesUntilFailedLoad[slot] = 0;
m_sMissionAudio.m_nLoadingStatus[slot] = LOADING_STATUS_LOADED;
}
diff --git a/src/audio/AudioManager.cpp b/src/audio/AudioManager.cpp
index 2304b4c4..131704dc 100644
--- a/src/audio/AudioManager.cpp
+++ b/src/audio/AudioManager.cpp
@@ -14,21 +14,17 @@
cAudioManager AudioManager;
-const int channels = ARRAY_SIZE(AudioManager.m_asActiveSamples);
-const int policeChannel = channels + 1;
-const int allChannels = channels + 2;
-
#define SPEED_OF_SOUND 343.f
#define TIME_SPENT 40
cAudioManager::cAudioManager()
{
- m_bIsInitialised = false;
- m_bReverb = true;
+ m_bIsInitialised = FALSE;
+ m_bReverb = TRUE;
field_6 = 0;
m_fSpeedOfSound = SPEED_OF_SOUND / TIME_SPENT;
m_nTimeSpent = TIME_SPENT;
- m_nActiveSamples = NUM_SOUNDS_SAMPLES_SLOTS;
+ m_nActiveSamples = NUM_CHANNELS_GENERIC;
m_nActiveSampleQueue = 1;
ClearRequestedQueue();
m_nActiveSampleQueue = 0;
@@ -36,16 +32,16 @@ cAudioManager::cAudioManager()
ClearActiveSamples();
GenerateIntegerRandomNumberTable();
field_4 = 0;
- m_bDynamicAcousticModelingStatus = true;
+ m_bDynamicAcousticModelingStatus = TRUE;
for (int i = 0; i < NUM_AUDIOENTITIES; i++) {
- m_asAudioEntities[i].m_bIsUsed = false;
+ m_asAudioEntities[i].m_bIsUsed = FALSE;
m_anAudioEntityIndices[i] = NUM_AUDIOENTITIES;
}
m_nAudioEntitiesTotal = 0;
m_FrameCounter = 0;
- m_bFifthFrameFlag = false;
- m_bTimerJustReset = false;
+ m_bFifthFrameFlag = FALSE;
+ m_bTimerJustReset = FALSE;
m_nTimer = 0;
}
@@ -83,7 +79,7 @@ cAudioManager::Terminate()
MusicManager.Terminate();
for (uint32 i = 0; i < NUM_AUDIOENTITIES; i++) {
- m_asAudioEntities[i].m_bIsUsed = false;
+ m_asAudioEntities[i].m_bIsUsed = FALSE;
m_anAudioEntityIndices[i] = ARRAY_SIZE(m_anAudioEntityIndices);
}
@@ -98,7 +94,7 @@ cAudioManager::Terminate()
SampleManager.Terminate();
- m_bIsInitialised = false;
+ m_bIsInitialised = FALSE;
PostTerminateGameSpecificShutdown();
}
}
@@ -110,7 +106,7 @@ cAudioManager::Service()
if (m_bTimerJustReset) {
ResetAudioLogicTimers(m_nTimer);
MusicManager.ResetTimers(m_nTimer);
- m_bTimerJustReset = false;
+ m_bTimerJustReset = FALSE;
}
if (m_bIsInitialised) {
m_nPreviousUserPause = m_nUserPause;
@@ -132,8 +128,8 @@ cAudioManager::CreateEntity(eAudioType type, void *entity)
return AEHANDLE_ERROR_BADAUDIOTYPE;
for (uint32 i = 0; i < ARRAY_SIZE(m_asAudioEntities); i++) {
if (!m_asAudioEntities[i].m_bIsUsed) {
- m_asAudioEntities[i].m_bIsUsed = true;
- m_asAudioEntities[i].m_bStatus = false;
+ m_asAudioEntities[i].m_bIsUsed = TRUE;
+ m_asAudioEntities[i].m_bStatus = FALSE;
m_asAudioEntities[i].m_nType = type;
m_asAudioEntities[i].m_pEntity = entity;
m_asAudioEntities[i].m_awAudioEvent[0] = SOUND_NO_SOUND;
@@ -152,7 +148,7 @@ void
cAudioManager::DestroyEntity(int32 id)
{
if (m_bIsInitialised && id >= 0 && id < NUM_AUDIOENTITIES && m_asAudioEntities[id].m_bIsUsed) {
- m_asAudioEntities[id].m_bIsUsed = false;
+ m_asAudioEntities[id].m_bIsUsed = FALSE;
for (int32 i = 0; i < m_nAudioEntitiesTotal; ++i) {
if (id == m_anAudioEntityIndices[i]) {
if (i < NUM_AUDIOENTITIES - 1)
@@ -165,7 +161,7 @@ cAudioManager::DestroyEntity(int32 id)
}
void
-cAudioManager::SetEntityStatus(int32 id, uint8 status)
+cAudioManager::SetEntityStatus(int32 id, bool8 status)
{
if (m_bIsInitialised && id >= 0 && id < NUM_AUDIOENTITIES && m_asAudioEntities[id].m_bIsUsed)
m_asAudioEntities[id].m_bStatus = status;
@@ -193,7 +189,7 @@ cAudioManager::PlayOneShot(int32 index, uint16 sound, float vol)
}
} else {
int32 i = 0;
- while (true) {
+ while (TRUE) {
if (i >= entity.m_AudioEvents) {
if (entity.m_AudioEvents < ARRAY_SIZE(entity.m_awAudioEvent)) {
entity.m_awAudioEvent[i] = sound;
@@ -246,7 +242,7 @@ cAudioManager::SetEffectsFadeVol(uint8 volume) const
}
void
-cAudioManager::SetMonoMode(uint8 mono)
+cAudioManager::SetMonoMode(bool8 mono)
{
SampleManager.SetMonoMode(mono);
}
@@ -261,7 +257,7 @@ void
cAudioManager::ResetTimers(uint32 time)
{
if (m_bIsInitialised) {
- m_bTimerJustReset = true;
+ m_bTimerJustReset = TRUE;
m_nTimer = time;
ClearRequestedQueue();
if (m_nActiveSampleQueue) {
@@ -276,11 +272,11 @@ cAudioManager::ResetTimers(uint32 time)
ClearActiveSamples();
ClearMissionAudio(0);
ClearMissionAudio(1);
- SampleManager.StopChannel(policeChannel);
+ SampleManager.StopChannel(CHANNEL_POLICE_RADIO);
SampleManager.SetEffectsFadeVolume(0);
SampleManager.SetMusicFadeVolume(0);
MusicManager.ResetMusicAfterReload();
- m_bIsPlayerShutUp = false;
+ m_bIsPlayerShutUp = FALSE;
#ifdef AUDIO_OAL
SampleManager.Service();
#endif
@@ -335,7 +331,7 @@ cAudioManager::Get3DProviderName(uint8 id) const
if (!m_bIsInitialised)
return nil;
#ifdef AUDIO_OAL
- id = clamp(id, 0, SampleManager.GetNum3DProvidersAvailable() - 1);
+ id = Clamp(id, 0, SampleManager.GetNum3DProvidersAvailable() - 1);
#else
// We don't want that either since it will crash the game, but skipping for now
if (id >= SampleManager.GetNum3DProvidersAvailable())
@@ -391,13 +387,13 @@ cAudioManager::SetSpeakerConfig(int32 conf) const
SampleManager.SetSpeakerConfig(conf);
}
-bool
+bool8
cAudioManager::IsMP3RadioChannelAvailable() const
{
if (m_bIsInitialised)
return SampleManager.IsMP3RadioChannelAvailable();
- return false;
+ return FALSE;
}
void
@@ -417,25 +413,25 @@ cAudioManager::ReacquireDigitalHandle() const
}
void
-cAudioManager::SetDynamicAcousticModelingStatus(uint8 status)
+cAudioManager::SetDynamicAcousticModelingStatus(bool8 status)
{
- m_bDynamicAcousticModelingStatus = status!=0;
+ m_bDynamicAcousticModelingStatus = status;
}
-bool
+bool8
cAudioManager::CheckForAnAudioFileOnCD() const
{
return SampleManager.CheckForAnAudioFileOnCD();
}
-uint8
+char
cAudioManager::GetCDAudioDriveLetter() const
{
if(m_bIsInitialised) return SampleManager.GetCDAudioDriveLetter();
- return 0;
+ return '\0';
}
-bool
+bool8
cAudioManager::IsAudioInitialised() const
{
return m_bIsInitialised;
@@ -444,9 +440,12 @@ cAudioManager::IsAudioInitialised() const
void
cAudioManager::ServiceSoundEffects()
{
+#ifdef FIX_BUGS
+ if(CTimer::GetLogicalFramesPassed() != 0)
+#endif
m_bFifthFrameFlag = (m_FrameCounter++ % 5) == 0;
if (m_nUserPause && !m_nPreviousUserPause) {
- for (int32 i = 0; i < allChannels; i++)
+ for (int32 i = 0; i < NUM_CHANNELS; i++)
SampleManager.StopChannel(i);
ClearRequestedQueue();
@@ -532,7 +531,7 @@ cAudioManager::ComputeDopplerEffectedFrequency(uint32 oldFreq, float position1,
if (dist != 0.0f) {
float speedOfSource = (dist / m_nTimeSpent) * speedMultiplier;
if (m_fSpeedOfSound > Abs(speedOfSource)) {
- speedOfSource = clamp2(speedOfSource, 0.0f, 1.5f);
+ speedOfSource = Clamp2(speedOfSource, 0.0f, 1.5f);
newFreq = (oldFreq * m_fSpeedOfSound) / (speedOfSource + m_fSpeedOfSound);
}
}
@@ -545,7 +544,7 @@ cAudioManager::RandomDisplacement(uint32 seed) const
{
int32 value;
- static bool bPos = true;
+ static bool8 bPos = TRUE;
static uint32 Adjustment = 0;
if (!seed)
@@ -576,7 +575,7 @@ cAudioManager::AddSampleToRequestedQueue()
{
int32 calculatedVolume;
uint8 sampleIndex;
- bool bReflections;
+ bool8 bReflections;
if (m_sQueueSample.m_nSampleIndex < TOTAL_AUDIO_SAMPLES) {
calculatedVolume = m_sQueueSample.m_nReleasingVolumeModificator * (MAX_VOLUME - m_sQueueSample.m_nVolume);
@@ -589,24 +588,24 @@ cAudioManager::AddSampleToRequestedQueue()
++m_SampleRequestQueuesStatus[m_nActiveSampleQueue];
}
m_sQueueSample.m_nCalculatedVolume = calculatedVolume;
- m_sQueueSample.m_bLoopEnded = false;
+ m_sQueueSample.m_bLoopEnded = FALSE;
if (m_sQueueSample.m_bIs2D || CCullZones::InRoomForAudio()) {
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
m_sQueueSample.m_nLoopsRemaining = 0;
}
if (m_bDynamicAcousticModelingStatus && m_sQueueSample.m_nLoopCount) {
bReflections = m_sQueueSample.m_bRequireReflection;
} else {
- bReflections = false;
+ bReflections = FALSE;
m_sQueueSample.m_nLoopsRemaining = 0;
}
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
if ( m_bReverb && m_sQueueSample.m_bIs2D )
m_sQueueSample.field_4C = 30;
if (!m_bDynamicAcousticModelingStatus)
- m_sQueueSample.m_bReverbFlag = false;
+ m_sQueueSample.m_bReverbFlag = FALSE;
m_asSamples[m_nActiveSampleQueue][sampleIndex] = m_sQueueSample;
@@ -773,7 +772,12 @@ cAudioManager::UpdateReflections()
void
cAudioManager::AddReleasingSounds()
{
- bool toProcess[44]; // why not 27?
+ // in case someone would want to increase it
+#ifdef FIX_BUGS
+ bool8 toProcess[NUM_CHANNELS_GENERIC];
+#else
+ bool8 toProcess[44];
+#endif
int8 queue = m_nActiveSampleQueue == 0 ? 1 : 0;
@@ -782,19 +786,19 @@ cAudioManager::AddReleasingSounds()
if (sample.m_bLoopEnded)
continue;
- toProcess[i] = false;
+ toProcess[i] = FALSE;
for (int32 j = 0; j < m_SampleRequestQueuesStatus[m_nActiveSampleQueue]; j++) {
if (sample.m_nEntityIndex == m_asSamples[m_nActiveSampleQueue][m_abSampleQueueIndexTable[m_nActiveSampleQueue][j]].m_nEntityIndex &&
sample.m_nCounter == m_asSamples[m_nActiveSampleQueue][m_abSampleQueueIndexTable[m_nActiveSampleQueue][j]].m_nCounter) {
- toProcess[i] = true;
+ toProcess[i] = TRUE;
break;
}
}
if (!toProcess[i]) {
if (sample.m_nCounter <= 255 || !sample.m_nLoopsRemaining) {
- if (!sample.m_nReleasingVolumeDivider)
+ if (sample.m_nReleasingVolumeDivider == 0)
continue;
- if (!sample.m_nLoopCount) {
+ if (sample.m_nLoopCount == 0) {
if (sample.m_nVolumeChange == -1) {
sample.m_nVolumeChange = sample.m_nVolume / sample.m_nReleasingVolumeDivider;
if (sample.m_nVolumeChange <= 0)
@@ -806,12 +810,15 @@ cAudioManager::AddReleasingSounds()
}
sample.m_nVolume -= sample.m_nVolumeChange;
}
+#ifdef FIX_BUGS
+ if(CTimer::GetLogicalFramesPassed() != 0)
+#endif
--sample.m_nReleasingVolumeDivider;
if (m_bFifthFrameFlag) {
if (sample.m_nReleasingVolumeModificator < 20)
++sample.m_nReleasingVolumeModificator;
}
- sample.m_bReleasingSoundFlag = false;
+ sample.m_bReleasingSoundFlag = FALSE;
}
memcpy(&m_sQueueSample, &sample, sizeof(tSound));
AddSampleToRequestedQueue();
@@ -829,12 +836,12 @@ cAudioManager::ProcessActiveQueues()
uint8 vol;
uint8 offset;
float x;
- bool flag;
- bool missionState;
+ bool8 flag;
+ bool8 missionState;
for (int32 i = 0; i < m_nActiveSamples; i++) {
- m_asSamples[m_nActiveSampleQueue][i].m_bIsProcessed = false;
- m_asActiveSamples[i].m_bIsProcessed = false;
+ m_asSamples[m_nActiveSampleQueue][i].m_bIsProcessed = FALSE;
+ m_asActiveSamples[i].m_bIsProcessed = FALSE;
}
for (int32 i = 0; i < m_SampleRequestQueuesStatus[m_nActiveSampleQueue]; i++) {
tSound& sample = m_asSamples[m_nActiveSampleQueue][m_abSampleQueueIndexTable[m_nActiveSampleQueue][i]];
@@ -847,19 +854,19 @@ cAudioManager::ProcessActiveQueues()
if (m_FrameCounter & 1) {
if (!(j & 1)) {
- flag = false;
+ flag = FALSE;
} else {
- flag = true;
+ flag = TRUE;
}
} else if (j & 1) {
- flag = false;
+ flag = FALSE;
} else {
- flag = true;
+ flag = TRUE;
}
if (flag && !SampleManager.GetChannelUsedFlag(j)) {
- sample.m_bLoopEnded = true;
- m_asActiveSamples[j].m_bLoopEnded = true;
+ sample.m_bLoopEnded = TRUE;
+ m_asActiveSamples[j].m_bLoopEnded = TRUE;
m_asActiveSamples[j].m_nSampleIndex = NO_SAMPLE;
m_asActiveSamples[j].m_nEntityIndex = AEHANDLE_NONE;
continue;
@@ -867,8 +874,8 @@ cAudioManager::ProcessActiveQueues()
if (!sample.m_nReleasingVolumeDivider)
sample.m_nReleasingVolumeDivider = 1;
}
- sample.m_bIsProcessed = true;
- m_asActiveSamples[j].m_bIsProcessed = true;
+ sample.m_bIsProcessed = TRUE;
+ m_asActiveSamples[j].m_bIsProcessed = TRUE;
sample.m_nVolumeChange = -1;
if (!sample.m_bReleasingSoundFlag) {
if (sample.m_bIs2D) {
@@ -888,11 +895,11 @@ cAudioManager::ProcessActiveQueues()
sample.m_fSpeedMultiplier);
if (sample.m_nFrequency != m_asActiveSamples[j].m_nFrequency) {
- m_asActiveSamples[j].m_nFrequency = clamp2((int32)sample.m_nFrequency, (int32)m_asActiveSamples[j].m_nFrequency, 6000);
+ m_asActiveSamples[j].m_nFrequency = Clamp2((int32)sample.m_nFrequency, (int32)m_asActiveSamples[j].m_nFrequency, 6000);
SampleManager.SetChannelFrequency(j, m_asActiveSamples[j].m_nFrequency);
}
if (sample.m_nEmittingVolume != m_asActiveSamples[j].m_nEmittingVolume) {
- vol = clamp2((int8)sample.m_nEmittingVolume, (int8)m_asActiveSamples[j].m_nEmittingVolume, 10);
+ vol = Clamp2((int8)sample.m_nEmittingVolume, (int8)m_asActiveSamples[j].m_nEmittingVolume, 10);
if (field_4) {
emittingVol = 2 * Min(63, vol);
@@ -900,10 +907,10 @@ cAudioManager::ProcessActiveQueues()
emittingVol = vol;
}
- missionState = false;
+ missionState = FALSE;
for (int32 k = 0; k < ARRAY_SIZE(m_sMissionAudio.m_bIsMobile); k++) {
if (m_sMissionAudio.m_bIsMobile[k]) {
- missionState = true;
+ missionState = TRUE;
break;
}
}
@@ -924,8 +931,8 @@ cAudioManager::ProcessActiveQueues()
SampleManager.SetChannelReverbFlag(j, sample.m_bReverbFlag);
break; //continue for i
}
- sample.m_bIsProcessed = false;
- m_asActiveSamples[j].m_bIsProcessed = false;
+ sample.m_bIsProcessed = FALSE;
+ m_asActiveSamples[j].m_bIsProcessed = FALSE;
//continue for j
}
}
@@ -966,10 +973,10 @@ cAudioManager::ProcessActiveQueues()
}
if (SampleManager.InitialiseChannel(k, m_asActiveSamples[k].m_nSampleIndex, m_asActiveSamples[k].m_nBankIndex)) {
SampleManager.SetChannelFrequency(k, m_asActiveSamples[k].m_nFrequency);
- bool isMobile = false;
+ bool8 isMobile = FALSE;
for (int32 l = 0; l < ARRAY_SIZE(m_sMissionAudio.m_bIsMobile); l++) {
if (m_sMissionAudio.m_bIsMobile[l]) {
- isMobile = true;
+ isMobile = TRUE;
break;
}
}
@@ -1000,8 +1007,8 @@ cAudioManager::ProcessActiveQueues()
SampleManager.SetChannel3DDistances(k, m_asActiveSamples[k].m_fSoundIntensity, 0.25f * m_asActiveSamples[k].m_fSoundIntensity);
SampleManager.StartChannel(k);
}
- m_asActiveSamples[k].m_bIsProcessed = true;
- sample.m_bIsProcessed = true;
+ m_asActiveSamples[k].m_bIsProcessed = TRUE;
+ sample.m_bIsProcessed = TRUE;
sample.m_nVolumeChange = -1;
break;
}
@@ -1029,28 +1036,30 @@ cAudioManager::ClearActiveSamples()
m_asActiveSamples[i].m_nCounter = 0;
m_asActiveSamples[i].m_nSampleIndex = NO_SAMPLE;
m_asActiveSamples[i].m_nBankIndex = INVALID_SFX_BANK;
- m_asActiveSamples[i].m_bIs2D = false;
+ m_asActiveSamples[i].m_bIs2D = FALSE;
m_asActiveSamples[i].m_nReleasingVolumeModificator = 5;
m_asActiveSamples[i].m_nFrequency = 0;
m_asActiveSamples[i].m_nVolume = 0;
m_asActiveSamples[i].m_nEmittingVolume = 0;
m_asActiveSamples[i].m_fDistance = 0.0f;
- m_asActiveSamples[i].m_bIsProcessed = false;
- m_asActiveSamples[i].m_bLoopEnded = false;
+ m_asActiveSamples[i].m_bIsProcessed = FALSE;
+ m_asActiveSamples[i].m_bLoopEnded = FALSE;
m_asActiveSamples[i].m_nLoopCount = 1;
+#ifndef GTA_PS2
m_asActiveSamples[i].m_nLoopStart = 0;
m_asActiveSamples[i].m_nLoopEnd = -1;
+#endif
m_asActiveSamples[i].m_fSpeedMultiplier = 0.0f;
m_asActiveSamples[i].m_fSoundIntensity = 200.0f;
m_asActiveSamples[i].m_nOffset = 63;
- m_asActiveSamples[i].m_bReleasingSoundFlag = false;
+ m_asActiveSamples[i].m_bReleasingSoundFlag = FALSE;
m_asActiveSamples[i].m_nCalculatedVolume = 0;
m_asActiveSamples[i].m_nReleasingVolumeDivider = 0;
m_asActiveSamples[i].m_nVolumeChange = -1;
m_asActiveSamples[i].m_vecPos = CVector(0.0f, 0.0f, 0.0f);
- m_asActiveSamples[i].m_bReverbFlag = false;
+ m_asActiveSamples[i].m_bReverbFlag = FALSE;
m_asActiveSamples[i].m_nLoopsRemaining = 0;
- m_asActiveSamples[i].m_bRequireReflection = false;
+ m_asActiveSamples[i].m_bRequireReflection = FALSE;
}
}
@@ -1067,7 +1076,7 @@ void
cAudioManager::AdjustSamplesVolume()
{
for (int i = 0; i < m_SampleRequestQueuesStatus[m_nActiveSampleQueue]; i++) {
- tSound *pSample = &m_asSamples[m_nActiveSampleQueue][m_abSampleQueueIndexTable[m_nActiveSampleQueue][i] + 1];
+ tSound *pSample = &m_asSamples[m_nActiveSampleQueue][m_abSampleQueueIndexTable[m_nActiveSampleQueue][i]];
if (!pSample->m_bIs2D)
pSample->m_nEmittingVolume = ComputeEmittingVolume(pSample->m_nEmittingVolume, pSample->m_fSoundIntensity, pSample->m_fDistance);
diff --git a/src/audio/AudioManager.h b/src/audio/AudioManager.h
index 14eacda5..bba4b0d7 100644
--- a/src/audio/AudioManager.h
+++ b/src/audio/AudioManager.h
@@ -2,7 +2,7 @@
#include "audio_enums.h"
#include "AudioCollision.h"
-#include "PoliceRadio.h"
+#include "PolRadio.h"
#include "VehicleModelInfo.h"
#include "Vehicle.h"
@@ -13,27 +13,29 @@ public:
int32 m_nCounter;
int32 m_nSampleIndex;
uint8 m_nBankIndex;
- bool m_bIs2D;
+ bool8 m_bIs2D;
int32 m_nReleasingVolumeModificator;
uint32 m_nFrequency;
uint8 m_nVolume;
float m_fDistance;
int32 m_nLoopCount;
+#ifndef GTA_PS2
int32 m_nLoopStart;
int32 m_nLoopEnd;
+#endif
uint8 m_nEmittingVolume;
float m_fSpeedMultiplier;
float m_fSoundIntensity;
- bool m_bReleasingSoundFlag;
+ bool8 m_bReleasingSoundFlag;
CVector m_vecPos;
- bool m_bReverbFlag;
+ bool8 m_bReverbFlag;
uint8 m_nLoopsRemaining;
- bool m_bRequireReflection; // Used for oneshots
+ bool8 m_bRequireReflection; // Used for oneshots
uint8 m_nOffset;
uint8 field_4C;
int32 m_nReleasingVolumeDivider;
- bool m_bIsProcessed;
- bool m_bLoopEnded;
+ bool8 m_bIsProcessed;
+ bool8 m_bLoopEnded;
int32 m_nCalculatedVolume;
int8 m_nVolumeChange;
};
@@ -48,7 +50,7 @@ class tAudioEntity
public:
eAudioType m_nType;
void *m_pEntity;
- bool m_bIsUsed;
+ bool8 m_bIsUsed;
uint8 m_bStatus;
int16 m_awAudioEvent[NUM_AUDIOENTITY_EVENTS];
float m_afVolume[NUM_AUDIOENTITY_EVENTS];
@@ -78,7 +80,7 @@ public:
uint8 m_nCommentsInBank[NUM_PED_COMMENTS_BANKS];
uint8 m_nActiveBank;
#ifdef GTA_PC
- bool m_bDelay;
+ bool8 m_bDelay;
uint32 m_nDelayTimer;
#endif
@@ -94,8 +96,8 @@ public:
m_nCommentsInBank[i] = 0;
m_nActiveBank = 0;
}
- void Add(tPedComment *com); // done
- void Process(); // done
+ void Add(tPedComment *com);
+ void Process();
};
VALIDATE_SIZE(cPedComments, 0x490);
@@ -110,14 +112,14 @@ class cMissionAudio
{
public:
CVector m_vecPos[MISSION_AUDIO_SLOTS];
- bool m_bPredefinedProperties[MISSION_AUDIO_SLOTS];
+ bool8 m_bPredefinedProperties[MISSION_AUDIO_SLOTS];
int32 m_nSampleIndex[MISSION_AUDIO_SLOTS];
uint8 m_nLoadingStatus[MISSION_AUDIO_SLOTS];
uint8 m_nPlayStatus[MISSION_AUDIO_SLOTS];
- bool m_bIsPlaying[MISSION_AUDIO_SLOTS];
+ bool8 m_bIsPlaying[MISSION_AUDIO_SLOTS];
int32 m_nMissionAudioCounter[MISSION_AUDIO_SLOTS];
- bool m_bIsPlayed[MISSION_AUDIO_SLOTS];
- bool m_bIsMobile[MISSION_AUDIO_SLOTS];
+ bool8 m_bIsPlayed[MISSION_AUDIO_SLOTS];
+ bool8 m_bIsMobile[MISSION_AUDIO_SLOTS];
};
VALIDATE_SIZE(cMissionAudio, 0x38);
@@ -141,7 +143,7 @@ class CPed;
class cPedParams
{
public:
- bool m_bDistanceCalculated;
+ bool8 m_bDistanceCalculated;
float m_fDistance;
CPed *m_pPed;
@@ -157,7 +159,7 @@ class cVehicleParams
{
public:
int32 m_VehicleType;
- bool m_bDistanceCalculated;
+ bool8 m_bDistanceCalculated;
float m_fDistance;
CVehicle *m_pVehicle;
cTransmission *m_pTransmission;
@@ -193,22 +195,22 @@ enum {
class cAudioManager
{
public:
- bool m_bIsInitialised;
+ bool8 m_bIsInitialised;
uint8 m_bReverb; // unused
- bool m_bFifthFrameFlag;
+ bool8 m_bFifthFrameFlag;
uint8 m_nActiveSamples;
uint8 field_4; // unused
- bool m_bDynamicAcousticModelingStatus;
+ bool8 m_bDynamicAcousticModelingStatus;
int8 field_6;
float m_fSpeedOfSound;
- bool m_bTimerJustReset;
+ bool8 m_bTimerJustReset;
int32 m_nTimer;
tSound m_sQueueSample;
uint8 m_nActiveSampleQueue;
- tSound m_asSamples[NUM_SOUNDS_SAMPLES_BANKS][NUM_SOUNDS_SAMPLES_SLOTS];
- uint8 m_abSampleQueueIndexTable[NUM_SOUNDS_SAMPLES_BANKS][NUM_SOUNDS_SAMPLES_SLOTS];
+ tSound m_asSamples[NUM_SOUNDS_SAMPLES_BANKS][NUM_CHANNELS_GENERIC];
+ uint8 m_abSampleQueueIndexTable[NUM_SOUNDS_SAMPLES_BANKS][NUM_CHANNELS_GENERIC];
uint8 m_SampleRequestQueuesStatus[NUM_SOUNDS_SAMPLES_BANKS];
- tSound m_asActiveSamples[NUM_SOUNDS_SAMPLES_SLOTS];
+ tSound m_asActiveSamples[NUM_CHANNELS_GENERIC];
tAudioEntity m_asAudioEntities[NUM_AUDIOENTITIES];
int32 m_anAudioEntityIndices[NUM_AUDIOENTITIES];
int32 m_nAudioEntitiesTotal;
@@ -217,11 +219,11 @@ public:
cAudioScriptObjectManager m_sAudioScriptObjectManager;
// miami
- uint8 m_bIsPlayerShutUp;
+ bool8 m_bIsPlayerShutUp;
uint8 m_nPlayerMood;
uint32 m_nPlayerMoodTimer;
uint8 field_rest[4];
- bool m_bGenericSfx;
+ bool8 m_bGenericSfx;
cPedComments m_sPedComments;
int32 m_nFireAudioEntity;
@@ -249,34 +251,34 @@ public:
~cAudioManager();
// getters
- uint32 GetFrameCounter() const { return m_FrameCounter; } // done
- float GetReflectionsDistance(int32 idx) const { return m_afReflectionsDistances[idx]; } // done
+ uint32 GetFrameCounter() const { return m_FrameCounter; }
+ float GetReflectionsDistance(int32 idx) const { return m_afReflectionsDistances[idx]; }
int32 GetRandomNumber(int32 idx) const { return m_anRandomTable[idx]; }
int32 GetRandomNumberInRange(int32 idx, int32 low, int32 high) const { return (m_anRandomTable[idx] % (high - low + 1)) + low; }
- bool IsMissionAudioSamplePlaying(uint8 slot) const; // { return m_sMissionAudio.m_nPlayStatus == 1; }
- bool ShouldDuckMissionAudio(uint8 slot) const;
+ bool8 IsMissionAudioSamplePlaying(uint8 slot) const; // { return m_sMissionAudio.m_nPlayStatus == 1; }
+ bool8 ShouldDuckMissionAudio(uint8 slot) const;
// "Should" be in alphabetic order, except "getXTalkSfx"
- void AddDetailsToRequestedOrderList(uint8 sample); // done (inlined in vc)
- void AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sample, uint8 bank, uint8 counter, bool notLooping); // done
- void AddReflectionsToRequestedQueue(); // done
- void AddReleasingSounds(); // done
- void AddSampleToRequestedQueue(); // done
- void AgeCrimes(); // done (inlined in vc)
+ void AddDetailsToRequestedOrderList(uint8 sample); // inlined in vc
+ void AddPlayerCarSample(uint8 emittingVolume, int32 freq, uint32 sample, uint8 bank, uint8 counter, bool8 notLooping);
+ void AddReflectionsToRequestedQueue();
+ void AddReleasingSounds();
+ void AddSampleToRequestedQueue();
+ void AgeCrimes(); // inlined in vc
- void CalculateDistance(bool &condition, float dist); // done
- bool CheckForAnAudioFileOnCD() const; // done
- void ClearActiveSamples(); // done
- void ClearMissionAudio(uint8 slot); // done (inlined in vc)
- void ClearRequestedQueue(); // done (inlined in vc)
- uint32 ComputeDopplerEffectedFrequency(uint32 oldFreq, float position1, float position2, float speedMultiplier) const; // done
- int32 ComputePan(float, CVector *); // done
- uint8 ComputeVolume(uint8 emittingVolume, float soundIntensity, float distance) const; // done
- int32 CreateEntity(eAudioType type, void *entity); // done
+ void CalculateDistance(bool8 &condition, float dist);
+ bool8 CheckForAnAudioFileOnCD() const;
+ void ClearActiveSamples();
+ void ClearMissionAudio(uint8 slot); // inlined in vc
+ void ClearRequestedQueue(); // inlined in vc
+ uint32 ComputeDopplerEffectedFrequency(uint32 oldFreq, float position1, float position2, float speedMultiplier) const;
+ int32 ComputePan(float, CVector *);
+ uint8 ComputeVolume(uint8 emittingVolume, float soundIntensity, float distance) const;
+ int32 CreateEntity(eAudioType type, void *entity);
- void DestroyAllGameCreatedEntities(); // done
- void DestroyEntity(int32 id); // done (inlined in vc)
- void DoPoliceRadioCrackle(); // done
+ void DestroyAllGameCreatedEntities();
+ void DestroyEntity(int32 id); // inlined in vc
+ void DoPoliceRadioCrackle();
// functions returning talk sfx,
// order from GetPedCommentSfx
@@ -293,8 +295,8 @@ public:
uint32 GetHMYSTTalkSfx(CPed *ped, int16 sound);
uint32 GetHMOSTTalkSfx(CPed *ped, int16 sound);
uint32 GetHFYRITalkSfx(CPed *ped, int16 sound);
- uint32 GetHFORITalkSfx(CPed *ped, int16 sound);
- uint32 GetHMYRITalkSfx(CPed *ped, int16 sound);
+ uint32 GetHFORITalkSfx(CPed *ped, int16 sound);
+ uint32 GetHMYRITalkSfx(CPed *ped, int16 sound);
uint32 GetHMORITalkSfx(CPed *ped, int16 sound);
uint32 GetHFYBETalkSfx(CPed *ped, int16 sound);
uint32 GetHFOBETalkSfx(CPed *ped, int16 sound);
@@ -377,174 +379,191 @@ public:
uint32 GetGenericFemaleTalkSfx(CPed *ped, int16 sound); // todo names (inlined in vc)
// end of functions returning talk sfx
- void GenerateIntegerRandomNumberTable(); // done
- char *Get3DProviderName(uint8 id) const; // done
- uint8 GetCDAudioDriveLetter() const; // done
- int8 GetCurrent3DProviderIndex() const; // done
- int8 AutoDetect3DProviders() const; // done
- float GetCollisionLoopingRatio(uint32 a, uint32 b, float c) const; // not used
- float GetCollisionOneShotRatio(int32 a, float b) const; // done
- float GetCollisionRatio(float a, float b, float c, float d) const; // done (inlined in vc)
- float GetDistanceSquared(const CVector &v) const; // done (inlined in vc)
- int32 GetJumboTaxiFreq() const; // done (inlined in vc)
- uint8 GetMissionAudioLoadingStatus(uint8 slot) const; // done
- int8 GetMissionScriptPoliceAudioPlayingStatus() const; // done
- uint8 GetNum3DProvidersAvailable() const; // done
- uint32 GetPedCommentSfx(CPed *ped, int32 sound); // done
- void GetPhrase(uint32 &phrase, uint32 &prevPhrase, uint32 sample, uint32 maxOffset) const; // done
+ void GenerateIntegerRandomNumberTable();
+ char *Get3DProviderName(uint8 id) const;
+ char GetCDAudioDriveLetter() const;
+ int8 GetCurrent3DProviderIndex() const;
+ int8 AutoDetect3DProviders() const;
+ float GetCollisionLoopingRatio(uint32 a, uint32 b, float c) const; // not used
+ float GetCollisionOneShotRatio(int32 a, float b) const;
+ float GetCollisionRatio(float a, float b, float c, float d) const; // inlined in vc
+ float GetDistanceSquared(const CVector &v) const; // inlined in vc
+ int32 GetJumboTaxiFreq() const; // inlined in vc
+ uint8 GetMissionAudioLoadingStatus(uint8 slot) const;
+ int8 GetMissionScriptPoliceAudioPlayingStatus() const;
+ uint8 GetNum3DProvidersAvailable() const;
+ uint32 GetPedCommentSfx(CPed *ped, int32 sound);
+ void GetPhrase(uint32 &phrase, uint32 &prevPhrase, uint32 sample, uint32 maxOffset) const;
float GetVehicleDriveWheelSkidValue(CVehicle *veh, tWheelState wheelState, float gasPedalAudio, cTransmission *transmission,
- float velocityChange); // done
- float GetVehicleNonDriveWheelSkidValue(CVehicle *veh, tWheelState wheelState, cTransmission *transmission, float velocityChange); // done
+ float velocityChange);
+ float GetVehicleNonDriveWheelSkidValue(CVehicle *veh, tWheelState wheelState, cTransmission *transmission, float velocityChange);
- bool HasAirBrakes(int32 model) const; // done
+ bool8 HasAirBrakes(int32 model) const;
- void Initialise(); // done
- void InitialisePoliceRadio(); // done
- void InitialisePoliceRadioZones(); // done
- void InterrogateAudioEntities(); // done (inlined)
- bool IsAudioInitialised() const; // done
- bool IsMissionAudioSampleFinished(uint8 slot); // done
- bool IsMP3RadioChannelAvailable() const; // done
+ void Initialise();
+ void InitialisePoliceRadio();
+ void InitialisePoliceRadioZones();
+ void InterrogateAudioEntities(); // inlined
+ bool8 IsAudioInitialised() const;
+ bool8 IsMissionAudioSampleFinished(uint8 slot);
+ bool8 IsMP3RadioChannelAvailable() const;
- bool MissionScriptAudioUsesPoliceChannel(int32 soundMission) const; //done
+ bool8 MissionScriptAudioUsesPoliceChannel(int32 soundMission) const;
- void PlayLoadedMissionAudio(uint8 slot); // done
- void PlayOneShot(int32 index, uint16 sound, float vol); // done
- void PlaySuspectLastSeen(float x, float y, float z); // done
- void PlayerJustGotInCar() const; // done
- void PlayerJustLeftCar() const; // done
- void PostInitialiseGameSpecificSetup(); // done
- void PostTerminateGameSpecificShutdown(); // done
- void PreInitialiseGameSpecificSetup() const; // done
- void PreloadMissionAudio(uint8 slot, Const char *name); // done
- void PreTerminateGameSpecificShutdown(); // done
+ void PlayLoadedMissionAudio(uint8 slot);
+ void PlayOneShot(int32 index, uint16 sound, float vol);
+ void PlaySuspectLastSeen(float x, float y, float z);
+ void PlayerJustGotInCar() const;
+ void PlayerJustLeftCar() const;
+ void PostInitialiseGameSpecificSetup();
+ void PostTerminateGameSpecificShutdown();
+ void PreInitialiseGameSpecificSetup() const;
+ void PreloadMissionAudio(uint8 slot, Const char *name);
+ void PreTerminateGameSpecificShutdown();
/// processX - main logic of adding new sounds
- void ProcessActiveQueues(); // done
- bool ProcessAirBrakes(cVehicleParams& params); // done
- bool ProcessBoatEngine(cVehicleParams& params);
- bool ProcessBoatMovingOverWater(cVehicleParams& params); //done
+ void ProcessActiveQueues();
+ bool8 ProcessAirBrakes(cVehicleParams& params);
+ bool8 ProcessBoatEngine(cVehicleParams& params);
+ bool8 ProcessBoatMovingOverWater(cVehicleParams& params);
#ifdef GTA_BRIDGE
- void ProcessBridge(); // done(bcs not exists in VC)
- void ProcessBridgeMotor(); // done(bcs not exists in VC)
- void ProcessBridgeOneShots(); // done(bcs not exists in VC)
- void ProcessBridgeWarning(); // done(bcs not exists in VC)
+ void ProcessBridge();
+ void ProcessBridgeMotor();
+ void ProcessBridgeOneShots();
+ void ProcessBridgeWarning();
#endif
- bool ProcessCarBombTick(cVehicleParams& params); // done
- void ProcessCarHeli(cVehicleParams& params); // done
- void ProcessCesna(cVehicleParams& params); // done
- //void ProcessCrane(); // done(bcs not exists in VC)
- bool ProcessEngineDamage(cVehicleParams& params); // done
- void ProcessEntity(int32 sound); // done
- void ProcessExplosions(int32 explosion); // done
- void ProcessFireHydrant(); // done
- void ProcessFires(int32 entity); // done
- void ProcessFrontEnd(); // done
- void ProcessGarages(); // done
- void ProcessJumbo(cVehicleParams& params); // done
- void ProcessJumboAccel(CPlane *plane); // done
- void ProcessJumboDecel(CPlane *plane); // done
- void ProcessJumboFlying(); // done
- void ProcessJumboLanding(CPlane *plane); // done
- void ProcessJumboTakeOff(CPlane *plane); // done
- void ProcessJumboTaxi(); // done
- void ProcessLoopingScriptObject(uint8 sound); // done
- void ProcessMissionAudio(); // done
- void ProcessMissionAudioSlot(uint8 slot); // done
- void ProcessModelHeliVehicle(cVehicleParams& params); // done
- void ProcessModelVehicle(cVehicleParams& params); // done
- void ProcessOneShotScriptObject(uint8 sound); //
- void ProcessPed(CPhysical *ped); // done
- void ProcessPedOneShots(cPedParams ¶ms); //
- void ProcessPhysical(int32 id); // done
- void ProcessPlane(cVehicleParams& params); // done
- void ProcessPlayerMood(); // done
- void ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh); // done
- void ProcessProjectiles(); // done
- void ProcessRainOnVehicle(cVehicleParams& params); // done
- void ProcessReverb() const; // done
- bool ProcessReverseGear(cVehicleParams& params); // done
- void ProcessScriptObject(int32 id); // done
- void ProcessSpecial(); // done
+ bool8 ProcessCarBombTick(cVehicleParams& params);
+ void ProcessCarHeli(cVehicleParams& params);
+ void ProcessCesna(cVehicleParams& params);
+ //void ProcessCrane();
+ bool8 ProcessEngineDamage(cVehicleParams& params);
+ void ProcessEntity(int32 sound);
+ void ProcessExplosions(int32 explosion);
+ void ProcessFireHydrant();
+ void ProcessFires(int32 entity);
+ void ProcessFrontEnd();
+ void ProcessGarages();
+ void ProcessJumbo(cVehicleParams& params);
+ void ProcessJumboAccel(CPlane *plane);
+ void ProcessJumboDecel(CPlane *plane);
+ void ProcessJumboFlying();
+ void ProcessJumboLanding(CPlane *plane);
+ void ProcessJumboTakeOff(CPlane *plane);
+ void ProcessJumboTaxi();
+ void ProcessLoopingScriptObject(uint8 sound);
+ void ProcessMissionAudio();
+ void ProcessMissionAudioSlot(uint8 slot);
+ void ProcessModelHeliVehicle(cVehicleParams& params);
+ void ProcessModelVehicle(cVehicleParams& params);
+ void ProcessOneShotScriptObject(uint8 sound);
+ void ProcessPed(CPhysical *ped);
+ void ProcessPedOneShots(cPedParams ¶ms);
+ void ProcessPhysical(int32 id);
+ void ProcessPlane(cVehicleParams& params);
+ void ProcessPlayerMood();
+ void ProcessPlayersVehicleEngine(cVehicleParams& params, CVehicle* veh);
+ void ProcessProjectiles();
+ void ProcessRainOnVehicle(cVehicleParams& params);
+ void ProcessReverb() const;
+ bool8 ProcessReverseGear(cVehicleParams& params);
+ void ProcessScriptObject(int32 id);
+ void ProcessSpecial();
#ifdef GTA_TRAIN
- bool ProcessTrainNoise(cVehicleParams *params); //done(bcs not exists in VC)
+ bool8 ProcessTrainNoise(cVehicleParams *params);
#endif
- void ProcessVehicle(CVehicle *vehicle); // done
- bool ProcessVehicleDoors(cVehicleParams ¶ms); // done
- void ProcessVehicleEngine(cVehicleParams ¶ms); // done
- void ProcessVehicleFlatTyre(cVehicleParams ¶ms); // done
- bool ProcessVehicleHorn(cVehicleParams ¶ms); // done
- void ProcessVehicleOneShots(cVehicleParams ¶ms); // done
- bool ProcessVehicleReverseWarning(cVehicleParams ¶ms); // done
- bool ProcessVehicleRoadNoise(cVehicleParams ¶ms); // done
- bool ProcessVehicleSirenOrAlarm(cVehicleParams ¶ms); // done
- bool ProcessVehicleSkidding(cVehicleParams ¶ms); // done
- void ProcessWaterCannon(int32); // done
- void ProcessWeather(int32 id); // done
- bool ProcessWetRoadNoise(cVehicleParams& params); // done
- void ProcessEscalators(); // done
- void ProcessExtraSounds(); // done
+ void ProcessVehicle(CVehicle *vehicle);
+ bool8 ProcessVehicleDoors(cVehicleParams ¶ms);
+ void ProcessVehicleEngine(cVehicleParams ¶ms);
+ void ProcessVehicleFlatTyre(cVehicleParams ¶ms);
+ bool8 ProcessVehicleHorn(cVehicleParams ¶ms);
+ void ProcessVehicleOneShots(cVehicleParams ¶ms);
+ bool8 ProcessVehicleReverseWarning(cVehicleParams ¶ms);
+ bool8 ProcessVehicleRoadNoise(cVehicleParams ¶ms);
+ bool8 ProcessVehicleSirenOrAlarm(cVehicleParams ¶ms);
+ bool8 ProcessVehicleSkidding(cVehicleParams ¶ms);
+ void ProcessWaterCannon(int32);
+ void ProcessWeather(int32 id);
+ bool8 ProcessWetRoadNoise(cVehicleParams& params);
+ void ProcessEscalators();
+ void ProcessExtraSounds();
- int32 RandomDisplacement(uint32 seed) const; // done
- void ReacquireDigitalHandle() const; // done
- void ReleaseDigitalHandle() const; // done
- void ReportCollision(CEntity *entity1, CEntity *entity2, uint8 surface1, uint8 surface2, float collisionPower, float intensity2); // done
- void ReportCrime(eCrimeType crime, const CVector &pos); // done
- void ResetAudioLogicTimers(uint32 timer); // done
- void ResetPoliceRadio(); // done
- void ResetTimers(uint32 time); // done
+ int32 RandomDisplacement(uint32 seed) const;
+ void ReacquireDigitalHandle() const;
+ void ReleaseDigitalHandle() const;
+ void ReportCollision(CEntity *entity1, CEntity *entity2, uint8 surface1, uint8 surface2, float collisionPower, float intensity2);
+ void ReportCrime(eCrimeType crime, const CVector &pos);
+ void ResetAudioLogicTimers(uint32 timer);
+ void ResetPoliceRadio();
+ void ResetTimers(uint32 time);
- void Service(); // done
- void ServiceCollisions(); // done
- void ServicePoliceRadio(); // done
- void ServicePoliceRadioChannel(uint8 wantedLevel); // done
- void ServiceSoundEffects(); // done
- int8 SetCurrent3DProvider(uint8 which); // done
- void SetDynamicAcousticModelingStatus(uint8 status); // done
- void SetEffectsFadeVol(uint8 volume) const; // done
- void SetEffectsMasterVolume(uint8 volume) const; // done
- void SetMP3BoostVolume(uint8 volume) const; // done
- void SetEntityStatus(int32 id, uint8 status); // done
- uint32 SetLoopingCollisionRequestedSfxFreqAndGetVol(const cAudioCollision &audioCollision); // done
- void SetMissionAudioLocation(uint8 slot, float x, float y, float z); // done
- void SetMissionScriptPoliceAudio(int32 sfx) const; // inlined and optimized
- void SetMonoMode(uint8 mono); // done
- void SetMusicFadeVol(uint8 volume) const; // done
- void SetMusicMasterVolume(uint8 volume) const; // done
- void SetSpeakerConfig(int32 conf) const; // done
- void SetUpLoopingCollisionSound(const cAudioCollision &col, uint8 counter); // done
- void SetUpOneShotCollisionSound(const cAudioCollision &col); // done
- bool SetupCrimeReport(); // done
- bool SetupJumboEngineSound(uint8 vol, uint32 freq); // done
- bool SetupJumboFlySound(uint8 emittingVol); // done
- bool SetupJumboRumbleSound(uint8 emittingVol); // done
- bool SetupJumboTaxiSound(uint8 vol); // done
- bool SetupJumboWhineSound(uint8 emittingVol, uint32 freq); // done
- void SetupPedComments(cPedParams ¶ms, uint16 sound); // done
+ void Service();
+ void ServiceCollisions();
+ void ServicePoliceRadio();
+ void ServicePoliceRadioChannel(uint8 wantedLevel);
+ void ServiceSoundEffects();
+ int8 SetCurrent3DProvider(uint8 which);
+ void SetDynamicAcousticModelingStatus(bool8 status);
+ void SetEffectsFadeVol(uint8 volume) const;
+ void SetEffectsMasterVolume(uint8 volume) const;
+ void SetMP3BoostVolume(uint8 volume) const;
+ void SetEntityStatus(int32 id, bool8 status);
+ uint32 SetLoopingCollisionRequestedSfxFreqAndGetVol(const cAudioCollision &audioCollision);
+ void SetMissionAudioLocation(uint8 slot, float x, float y, float z);
+ void SetMissionScriptPoliceAudio(int32 sfx) const; // inlined and optimized
+ void SetMonoMode(bool8 mono);
+ void SetMusicFadeVol(uint8 volume) const;
+ void SetMusicMasterVolume(uint8 volume) const;
+ void SetSpeakerConfig(int32 conf) const;
+ void SetUpLoopingCollisionSound(const cAudioCollision &col, uint8 counter);
+ void SetUpOneShotCollisionSound(const cAudioCollision &col);
+ bool8 SetupCrimeReport();
+ bool8 SetupJumboEngineSound(uint8 vol, uint32 freq);
+ bool8 SetupJumboFlySound(uint8 emittingVol);
+ bool8 SetupJumboRumbleSound(uint8 emittingVol);
+ bool8 SetupJumboTaxiSound(uint8 vol);
+ bool8 SetupJumboWhineSound(uint8 emittingVol, uint32 freq);
+ void SetupPedComments(cPedParams ¶ms, uint16 sound);
void SetupSuspectLastSeenReport();
- void Terminate(); // done
- void TranslateEntity(Const CVector *v1, CVector *v2) const; // done
+ void Terminate();
+ void TranslateEntity(Const CVector *v1, CVector *v2) const;
- void UpdateGasPedalAudio(CVehicle *veh, int vehType); // done
- void UpdateReflections(); // done
- bool UsesReverseWarning(int32 model) const; // done
- bool UsesSiren(cVehicleParams ¶ms) const; // done
- bool UsesSirenSwitching(cVehicleParams ¶ms) const; // done
+ void UpdateGasPedalAudio(CVehicle *veh, int vehType);
+ void UpdateReflections();
+ bool8 UsesReverseWarning(int32 model) const;
+ bool8 UsesSiren(cVehicleParams ¶ms) const;
+ bool8 UsesSirenSwitching(cVehicleParams ¶ms) const;
- CVehicle *FindVehicleOfPlayer(); // done
- void SetPedTalkingStatus(CPed *ped, uint8 status); // done
- void SetPlayersMood(uint8 mood, uint32 time); // done
+ CVehicle *FindVehicleOfPlayer();
+ void SetPedTalkingStatus(CPed *ped, bool8 status);
+ void SetPlayersMood(uint8 mood, uint32 time);
float Sqrt(float v) const { return v <= 0.0f ? 0.0f : ::Sqrt(v); }
#ifdef GTA_PC
// only used in pc
- void AdjustSamplesVolume(); // done (inlined)
- uint8 ComputeEmittingVolume(uint8 emittingVolume, float intensity, float dist); // done (inlined)
+ void AdjustSamplesVolume(); // inlined
+ uint8 ComputeEmittingVolume(uint8 emittingVolume, float intensity, float dist); // inlined
#endif
};
-#ifdef AUDIO_MSS
+/*
+ Manual loop points are not on PS2 so let's have these macros to avoid massive ifndefs.
+ Setting these manually was pointless anyway since they never change from sdt values.
+ What were they thinking?
+*/
+#ifndef GTA_PS2
+#define RESET_LOOP_OFFSETS \
+ m_sQueueSample.m_nLoopStart = 0; \
+ m_sQueueSample.m_nLoopEnd = -1;
+#define SET_LOOP_OFFSETS(sample) \
+ m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(sample); \
+ m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(sample);
+#else
+#define RESET_LOOP_OFFSETS
+#define SET_LOOP_OFFSETS(sample)
+#endif
+
+#if defined(AUDIO_MSS) && !defined(PS2_AUDIO_CHANNELS)
static_assert(sizeof(cAudioManager) == 0x5558, "cAudioManager: error");
#endif
diff --git a/src/audio/AudioSamples.h b/src/audio/AudioSamples.h
index 5c5d857d..b98bfd7c 100644
--- a/src/audio/AudioSamples.h
+++ b/src/audio/AudioSamples.h
@@ -225,8 +225,8 @@ enum eSfxSample
SFX_POLICE_RADIO_WASHINGTON_BEACH,
SFX_POLICE_RADIO_VICE_POINT,
SFX_POLICE_RADIO_LEAF_LINKS,
- SFX_POLICE_RADIO_STRAFISH_ISLAND, //???????????
- SFX_POLICE_RADIO_VICE_PORT,
+ SFX_POLICE_RADIO_STARFISH_ISLAND, //???????????
+ SFX_POLICE_RADIO_VICEPORT,
SFX_POLICE_RADIO_LITTLE_HAVANA,
SFX_POLICE_RADIO_LITTLE_HAITI,
SFX_POLICE_RADIO_PRAWN_ISLAND, //??????????? IS THAT HOW SHE PRONOUNCES ISLAND?
@@ -243,7 +243,7 @@ enum eSfxSample
SFX_POLICE_RADIO_GREEN,
SFX_POLICE_RADIO_SILVER,
SFX_POLICE_RADIO_AMBULANCE,
- SFX_POLICE_RADIO_2_DOOR,
+ SFX_POLICE_RADIO_TUDOOR,
SFX_POLICE_RADIO_TRUCK,
SFX_POLICE_RADIO_FIRE_TRUCK,
SFX_POLICE_RADIO_PICKUP,
@@ -446,12 +446,9 @@ enum eSfxSample
SFX_CAR_FINGER_OFF_ACCEL_12,
// some CHAINSAW STUFF
- // SFX_CAR_CHAINSAW, //10973
- // SFX_CAR_CHAINSAW, //10974
- // SFX_CAR_CHAINSAW, //10975
- SFX_CAR_ACCEL_13,
- SFX_CAR_AFTER_ACCEL_13,
- SFX_CAR_FINGER_OFF_ACCEL_13,
+ SFX_CAR_CHAINSAW_IDLE,
+ SFX_CAR_CHAINSAW_ATTACK,
+ SFX_CAR_CHAINSAW_EMPTY, // unused
SFX_RC_IDLE, // 10976
SFX_RC_REV, // 10977
@@ -575,8 +572,200 @@ enum eSfxSample
SFX_FOOTSTEP_SAND_3,
SFX_FOOTSTEP_SAND_4,
- // TODO: miami ped comments... THERE'S OVER 9000
- SFX_POLICE_BOAT_1 = 714,
+ // ped comments
+
+ SFX_BMYBB_BLOCKED_1,
+ SFX_BMYBB_BLOCKED_2,
+ SFX_BMYBB_BLOCKED_3,
+ SFX_BMYBB_BLOCKED_4,
+ SFX_BMYBB_BLOCKED_5,
+ SFX_BMYBB_BLOCKED_6,
+ SFX_BMYBB_BLOCKED_7,
+ SFX_BMYBB_BLOCKED_8,
+ SFX_BMYBB_BLOCKED_9,
+ SFX_BMYBB_BLOCKED_10,
+ SFX_BMYBB_BLOCKED_11,
+ SFX_BMYBB_BLOCKED_12,
+ SFX_BMYBB_BLOCKED_13,
+ SFX_BMYBB_BUMP_1,
+ SFX_BMYBB_BUMP_2,
+ SFX_BMYBB_BUMP_3,
+ SFX_BMYBB_BUMP_4,
+ SFX_BMYBB_BUMP_5,
+ SFX_BMYBB_BUMP_6,
+ SFX_BMYBB_BUMP_7,
+ SFX_BMYBB_BUMP_8,
+ SFX_BMYBB_BUMP_9,
+ SFX_BMYBB_BUMP_10,
+ SFX_BMYBB_BUMP_11,
+ SFX_BMYBB_BUMP_12,
+ SFX_BMYBB_BUMP_13,
+ SFX_BMYBB_BUMP_14,
+ SFX_BMYBB_BUMP_15,
+ SFX_BMYBB_BUMP_16,
+ SFX_BMYBB_BUMP_17,
+ SFX_BMYBB_CAR_CRASH_1,
+ SFX_BMYBB_CAR_CRASH_2,
+ SFX_BMYBB_CAR_CRASH_3,
+ SFX_BMYBB_CAR_CRASH_4,
+ SFX_BMYBB_CAR_CRASH_5,
+ SFX_BMYBB_CAR_CRASH_6,
+ SFX_BMYBB_CAR_CRASH_7,
+ SFX_BMYBB_CAR_CRASH_8,
+ SFX_BMYBB_CAR_CRASH_9,
+ SFX_BMYBB_CHAT_1,
+ SFX_BMYBB_CHAT_2,
+ SFX_BMYBB_CHAT_3,
+ SFX_BMYBB_CHAT_4,
+ SFX_BMYBB_CHAT_5,
+ SFX_BMYBB_CHAT_6,
+ SFX_BMYBB_CHAT_7,
+ SFX_BMYBB_CHAT_8,
+ SFX_BMYBB_CHAT_9,
+ SFX_BMYBB_CHAT_10,
+ SFX_BMYBB_CHAT_11,
+ SFX_BMYBB_CHAT_12,
+ SFX_BMYBB_CHAT_13,
+ SFX_BMYBB_CHAT_14,
+ SFX_BMYBB_CHAT_15,
+ SFX_BMYBB_CHAT_16,
+ SFX_BMYBB_CHAT_17,
+ SFX_BMYBB_CHAT_18,
+ SFX_BMYBB_CHAT_19,
+ SFX_BMYBB_CHAT_20,
+ SFX_BMYBB_CHAT_21,
+ SFX_BMYBB_DODGE_1,
+ SFX_BMYBB_DODGE_2,
+ SFX_BMYBB_DODGE_3,
+ SFX_BMYBB_DODGE_4,
+ SFX_BMYBB_DODGE_5,
+ SFX_BMYBB_DODGE_6,
+ SFX_BMYBB_DODGE_7,
+ SFX_BMYBB_DODGE_8,
+ SFX_BMYBB_DODGE_9,
+ SFX_BMYBB_DODGE_10,
+ SFX_BMYBB_DODGE_11,
+ SFX_BMYBB_DODGE_12,
+ SFX_BMYBB_DODGE_13,
+ SFX_BMYBB_DODGE_14,
+ SFX_BMYBB_DODGE_15,
+ SFX_BMYBB_DODGE_16,
+ SFX_BMYBB_DODGE_17,
+ SFX_BMYBB_DODGE_18,
+ SFX_BMYBB_EYEING_1,
+ SFX_BMYBB_EYEING_2,
+ SFX_BMYBB_EYEING_3,
+ SFX_BMYBB_EYEING_4,
+ SFX_BMYBB_EYEING_5,
+ SFX_BMYBB_EYEING_6,
+ SFX_BMYBB_EYEING_7,
+ SFX_BMYBB_EYEING_8,
+ SFX_BMYBB_EYEING_9,
+ SFX_BMYBB_EYEING_10,
+ SFX_BMYBB_EYEING_11,
+ SFX_BMYBB_EYEING_12,
+ SFX_BMYBB_EYEING_13,
+ SFX_BMYBB_EYEING_14,
+ SFX_BMYBB_EYEING_15,
+ SFX_BMYBB_EYEING_16,
+ SFX_BMYBB_FIGHT_1,
+ SFX_BMYBB_FIGHT_2,
+ SFX_BMYBB_FIGHT_3,
+ SFX_BMYBB_FIGHT_4,
+ SFX_BMYBB_FIGHT_5,
+ SFX_BMYBB_FIGHT_6,
+ SFX_BMYBB_FIGHT_7,
+ SFX_BMYBB_FIGHT_8,
+ SFX_BMYBB_FIGHT_9,
+ SFX_BMYBB_FIGHT_10,
+ SFX_BMYBB_FIGHT_11,
+ SFX_BMYBB_FIGHT_12,
+ SFX_BMYBB_GENERIC_CRASH_1,
+ SFX_BMYBB_GENERIC_CRASH_2,
+ SFX_BMYBB_GENERIC_CRASH_3,
+ SFX_BMYBB_GENERIC_CRASH_4,
+ SFX_BMYBB_GENERIC_CRASH_5,
+ SFX_BMYBB_GENERIC_CRASH_6,
+ SFX_BMYBB_GENERIC_CRASH_7,
+ SFX_BMYBB_GENERIC_CRASH_8,
+ SFX_BMYBB_GENERIC_CRASH_9,
+ SFX_BMYBB_GUN_COOL_1,
+ SFX_BMYBB_GUN_COOL_2,
+ SFX_BMYBB_GUN_COOL_3,
+ SFX_BMYBB_GUN_COOL_4,
+ SFX_BMYBB_GUN_COOL_5,
+ SFX_BMYBB_INNOCENT_1,
+ SFX_BMYBB_INNOCENT_2,
+ SFX_BMYBB_INNOCENT_3,
+ SFX_BMYBB_INNOCENT_4,
+ SFX_BMYBB_JACKED_1,
+ SFX_BMYBB_JACKED_2,
+ SFX_BMYBB_JACKED_3,
+ SFX_BMYBB_JACKED_4,
+ SFX_BMYBB_JACKED_5,
+ SFX_BMYBB_JACKED_6,
+ SFX_BMYBB_JACKED_7,
+ SFX_BMYBB_JACKED_8,
+ SFX_BMYBB_JACKED_9,
+ SFX_BMYBB_JACKED_10,
+ SFX_BMYBB_JACKED_11,
+ SFX_BMYBB_JACKING_1,
+ SFX_BMYBB_JACKING_2,
+ SFX_BMYBB_JACKING_3,
+ SFX_BMYBB_JACKING_4,
+ SFX_BMYBB_JACKING_5,
+ SFX_BMYBB_JACKING_6,
+ SFX_BMYBB_JACKING_7,
+ SFX_BMYBB_JACKING_8,
+ SFX_BMYBB_JACKING_9,
+ SFX_BMYBB_JEER_1,
+ SFX_BMYBB_JEER_2,
+ SFX_BMYBB_JEER_3,
+ SFX_BMYBB_JEER_4,
+ SFX_BMYBB_JEER_5,
+ SFX_BMYBB_JEER_6,
+ SFX_BMYBB_JEER_7,
+ SFX_BMYBB_JEER_8,
+ SFX_BMYBB_JEER_9,
+ SFX_BMYBB_JEER_10,
+ SFX_BMYBB_JEER_11,
+ SFX_BMYBB_JEER_12,
+ SFX_BMYBB_JEER_13,
+ SFX_BMYBB_JEER_14,
+ SFX_BMYBB_JEER_15,
+ SFX_BMYBB_JEER_16,
+ SFX_BMYBB_LOST_1,
+ SFX_BMYBB_LOST_2,
+ SFX_BMYBB_MUGGED_1,
+ SFX_BMYBB_MUGGED_2,
+ SFX_BMYBB_MUGGED_3,
+ SFX_BMYBB_MUGGED_4,
+ SFX_BMYBB_MUGGED_5,
+ SFX_BMYBB_MUGGING_1,
+ SFX_BMYBB_MUGGING_2,
+ SFX_BMYBB_MUGGING_3,
+ SFX_BMYBB_MUGGING_4,
+ SFX_BMYBB_MUGGING_5,
+ SFX_BMYBB_MUGGING_6,
+ SFX_BMYBB_MUGGING_7,
+ SFX_BMYBB_MUGGING_8,
+ SFX_BMYBB_SAVED_1,
+ SFX_BMYBB_SAVED_2,
+ SFX_BMYBB_SAVED_3,
+ SFX_BMYBB_SAVED_4,
+ SFX_BMYBB_SAVED_5,
+ SFX_BMYBB_SAVED_6,
+ SFX_BMYBB_SHOCKED_1,
+ SFX_BMYBB_SHOCKED_2,
+ SFX_BMYBB_SHOCKED_3,
+ SFX_BMYBB_SHOCKED_4,
+ SFX_BMYBB_SHOCKED_5,
+ SFX_BMYBB_SHOCKED_6,
+ SFX_BMYBB_TAXI_1,
+ SFX_BMYBB_TAXI_2,
+ SFX_BMYBB_TAXI_3,
+
+ SFX_POLICE_BOAT_1,
SFX_POLICE_BOAT_2,
SFX_POLICE_BOAT_3,
SFX_POLICE_BOAT_4,
@@ -621,190 +810,9311 @@ enum eSfxSample
SFX_POLICE_HELI_19,
SFX_POLICE_HELI_20,
- SFX_GENERIC_FEMALE_GRUNT_1 = 2953,
- SFX_GENERIC_FEMALE_GRUNT_2 = 2954,
- SFX_GENERIC_FEMALE_GRUNT_3 = 2955,
- SFX_GENERIC_FEMALE_GRUNT_4 = 2956,
- SFX_GENERIC_FEMALE_GRUNT_5 = 2957,
- SFX_GENERIC_FEMALE_GRUNT_6 = 2958,
- SFX_GENERIC_FEMALE_GRUNT_7 = 2959,
- SFX_GENERIC_FEMALE_GRUNT_8 = 2960,
- SFX_GENERIC_FEMALE_GRUNT_9 = 2961,
- SFX_GENERIC_FEMALE_GRUNT_10 = 2962,
- SFX_GENERIC_FEMALE_GRUNT_11 = 2963,
- SFX_GENERIC_FEMALE_GRUNT_12 = 2964,
- SFX_GENERIC_FEMALE_GRUNT_13 = 2965,
- SFX_GENERIC_FEMALE_GRUNT_14 = 2966,
- SFX_GENERIC_FEMALE_GRUNT_15 = 2967,
- SFX_GENERIC_FEMALE_GRUNT_16 = 2968,
- SFX_GENERIC_FEMALE_GRUNT_17 = 2969,
- SFX_GENERIC_FEMALE_GRUNT_18 = 2970,
- SFX_GENERIC_FEMALE_GRUNT_19 = 2971,
- SFX_GENERIC_FEMALE_GRUNT_20 = 2972,
- SFX_GENERIC_FEMALE_GRUNT_21 = 2973,
- SFX_GENERIC_FEMALE_GRUNT_22 = 2974,
- SFX_GENERIC_FEMALE_GRUNT_23 = 2975,
- SFX_GENERIC_FEMALE_GRUNT_24 = 2976,
- SFX_GENERIC_FEMALE_GRUNT_25 = 2977,
- SFX_GENERIC_FEMALE_GRUNT_26 = 2978,
- SFX_GENERIC_FEMALE_GRUNT_27 = 2979,
- SFX_GENERIC_FEMALE_GRUNT_28 = 2980,
- SFX_GENERIC_FEMALE_GRUNT_29 = 2981,
- SFX_GENERIC_FEMALE_GRUNT_30 = 2982,
- SFX_GENERIC_FEMALE_GRUNT_31 = 2983,
- SFX_GENERIC_FEMALE_GRUNT_32 = 2984,
- SFX_GENERIC_FEMALE_GRUNT_33 = 2985,
- SFX_GENERIC_MALE_FIRE_1 = 3013,
- SFX_GENERIC_MALE_FIRE_2 = 3014,
- SFX_GENERIC_MALE_FIRE_3 = 3015,
- SFX_GENERIC_MALE_FIRE_4 = 3016,
- SFX_GENERIC_MALE_FIRE_5 = 3017,
- SFX_GENERIC_MALE_FIRE_6 = 3018,
- SFX_GENERIC_MALE_FIRE_7 = 3019,
- SFX_GENERIC_MALE_FIRE_8 = 3020,
- SFX_GENERIC_MALE_FIRE_9 = 3021,
- SFX_GENERIC_MALE_FIRE_10 = 3022,
- SFX_GENERIC_MALE_FIRE_11 = 3023,
- SFX_GENERIC_MALE_FIRE_12 = 3024,
- SFX_GENERIC_MALE_FIRE_13 = 3025,
- SFX_GENERIC_MALE_FIRE_14 = 3026,
- SFX_GENERIC_MALE_FIRE_15 = 3027,
- SFX_GENERIC_MALE_FIRE_16 = 3028,
- SFX_GENERIC_MALE_FIRE_17 = 3029,
- SFX_GENERIC_MALE_FIRE_18 = 3030,
- SFX_GENERIC_MALE_FIRE_19 = 3031,
- SFX_GENERIC_MALE_FIRE_20 = 3032,
- SFX_GENERIC_MALE_FIRE_21 = 3033,
- SFX_GENERIC_MALE_FIRE_22 = 3034,
- SFX_GENERIC_MALE_FIRE_23 = 3035,
- SFX_GENERIC_MALE_FIRE_24 = 3036,
- SFX_GENERIC_MALE_FIRE_25 = 3037,
- SFX_GENERIC_MALE_FIRE_26 = 3038,
- SFX_GENERIC_MALE_FIRE_27 = 3039,
- SFX_GENERIC_MALE_FIRE_28 = 3040,
- SFX_GENERIC_MALE_FIRE_29 = 3041,
- SFX_GENERIC_MALE_FIRE_30 = 3042,
- SFX_GENERIC_MALE_FIRE_31 = 3043,
- SFX_GENERIC_MALE_FIRE_32 = 3044,
- SFX_GENERIC_MALE_DEATH_1 = 3045,
- SFX_GENERIC_MALE_DEATH_2 = 3046,
- SFX_GENERIC_MALE_DEATH_3 = 3047,
- SFX_GENERIC_MALE_DEATH_4 = 3048,
- SFX_GENERIC_MALE_DEATH_5 = 3049,
- SFX_GENERIC_MALE_DEATH_6 = 3050,
- SFX_GENERIC_MALE_DEATH_7 = 3051,
- SFX_GENERIC_MALE_DEATH_8 = 3052,
- SFX_GENERIC_MALE_DEATH_9 = 3053,
- SFX_GENERIC_MALE_DEATH_10 = 3054,
- SFX_GENERIC_MALE_DEATH_11 = 3055,
- SFX_GENERIC_MALE_DEATH_12 = 3056,
- SFX_GENERIC_MALE_DEATH_13 = 3057,
- SFX_GENERIC_MALE_DEATH_14 = 3058,
- SFX_GENERIC_MALE_DEATH_15 = 3059,
- SFX_GENERIC_MALE_DEATH_16 = 3060,
- SFX_GENERIC_MALE_DEATH_17 = 3061,
- SFX_GENERIC_MALE_DEATH_18 = 3062,
- SFX_GENERIC_MALE_DEATH_19 = 3063,
- SFX_GENERIC_MALE_DEATH_20 = 3064,
- SFX_GENERIC_MALE_DEATH_21 = 3065,
- SFX_GENERIC_MALE_DEATH_22 = 3066,
- SFX_GENERIC_MALE_DEATH_23 = 3067,
- SFX_GENERIC_MALE_DEATH_24 = 3068,
- SFX_GENERIC_MALE_DEATH_25 = 3069,
- SFX_GENERIC_MALE_DEATH_26 = 3070,
- SFX_GENERIC_MALE_DEATH_27 = 3071,
- SFX_GENERIC_MALE_DEATH_28 = 3072,
- SFX_GENERIC_MALE_DEATH_29 = 3073,
- SFX_GENERIC_MALE_DEATH_30 = 3074,
- SFX_GENERIC_MALE_DEATH_31 = 3075,
- SFX_GENERIC_MALE_DEATH_32 = 3076,
- SFX_GENERIC_MALE_DEATH_33 = 3077,
- SFX_GENERIC_MALE_DEATH_34 = 3078,
- SFX_GENERIC_MALE_DEATH_35 = 3079,
- SFX_GENERIC_MALE_DEATH_36 = 3080,
- SFX_GENERIC_MALE_DEATH_37 = 3081,
- SFX_GENERIC_MALE_DEATH_38 = 3082,
- SFX_GENERIC_MALE_DEATH_39 = 3083,
- SFX_GENERIC_MALE_DEATH_40 = 3084,
- SFX_GENERIC_MALE_DEATH_41 = 3085,
- SFX_GENERIC_MALE_GRUNT_1 = 3086,
- SFX_GENERIC_MALE_GRUNT_2 = 3087,
- SFX_GENERIC_MALE_GRUNT_3 = 3088,
- SFX_GENERIC_MALE_GRUNT_4 = 3089,
- SFX_GENERIC_MALE_GRUNT_5 = 3090,
- SFX_GENERIC_MALE_GRUNT_6 = 3091,
- SFX_GENERIC_MALE_GRUNT_7 = 3092,
- SFX_GENERIC_MALE_GRUNT_8 = 3093,
- SFX_GENERIC_MALE_GRUNT_9 = 3094,
- SFX_GENERIC_MALE_GRUNT_10 = 3095,
- SFX_GENERIC_MALE_GRUNT_11 = 3096,
- SFX_GENERIC_MALE_GRUNT_12 = 3097,
- SFX_GENERIC_MALE_GRUNT_13 = 3098,
- SFX_GENERIC_MALE_GRUNT_14 = 3099,
- SFX_GENERIC_MALE_GRUNT_15 = 3100,
- SFX_GENERIC_MALE_GRUNT_16 = 3101,
- SFX_GENERIC_MALE_GRUNT_17 = 3102,
- SFX_GENERIC_MALE_GRUNT_18 = 3103,
- SFX_GENERIC_MALE_GRUNT_19 = 3104,
- SFX_GENERIC_MALE_GRUNT_20 = 3105,
- SFX_GENERIC_MALE_GRUNT_21 = 3106,
- SFX_GENERIC_MALE_GRUNT_22 = 3107,
- SFX_GENERIC_MALE_GRUNT_23 = 3108,
- SFX_GENERIC_MALE_GRUNT_24 = 3109,
- SFX_GENERIC_MALE_GRUNT_25 = 3110,
- SFX_GENERIC_MALE_GRUNT_26 = 3111,
- SFX_GENERIC_MALE_GRUNT_27 = 3112,
- SFX_GENERIC_MALE_GRUNT_28 = 3113,
- SFX_GENERIC_MALE_GRUNT_29 = 3114,
- SFX_GENERIC_MALE_GRUNT_30 = 3115,
- SFX_GENERIC_MALE_GRUNT_31 = 3116,
- SFX_GENERIC_MALE_GRUNT_32 = 3117,
- SFX_GENERIC_MALE_GRUNT_33 = 3118,
- SFX_GENERIC_MALE_GRUNT_34 = 3119,
- SFX_GENERIC_MALE_GRUNT_35 = 3120,
- SFX_GENERIC_MALE_GRUNT_36 = 3121,
- SFX_GENERIC_MALE_GRUNT_37 = 3122,
- SFX_GENERIC_MALE_GRUNT_38 = 3123,
- SFX_GENERIC_MALE_GRUNT_39 = 3124,
- SFX_GENERIC_MALE_GRUNT_40 = 3125,
- SFX_GENERIC_MALE_GRUNT_41 = 3126,
- SFX_GENERIC_MALE_PANIC_1 = 3127,
- SFX_GENERIC_MALE_PANIC_2 = 3128,
- SFX_GENERIC_MALE_PANIC_3 = 3129,
- SFX_GENERIC_MALE_PANIC_4 = 3130,
- SFX_GENERIC_MALE_PANIC_5 = 3131,
- SFX_GENERIC_MALE_PANIC_6 = 3132,
- SFX_GENERIC_MALE_PANIC_7 = 3133,
- SFX_GENERIC_MALE_PANIC_8 = 3134,
- SFX_GENERIC_MALE_PANIC_9 = 3135,
- SFX_GENERIC_MALE_PANIC_10 = 3136,
- SFX_GENERIC_MALE_PANIC_11 = 3137,
- SFX_GENERIC_MALE_PANIC_12 = 3138,
- SFX_GENERIC_MALE_PANIC_13 = 3139,
- SFX_GENERIC_MALE_PANIC_14 = 3140,
- SFX_GENERIC_MALE_PANIC_15 = 3141,
- SFX_GENERIC_MALE_PANIC_16 = 3142,
- SFX_GENERIC_MALE_PANIC_17 = 3143,
- SFX_GENERIC_MALE_PANIC_18 = 3144,
- SFX_GENERIC_MALE_PANIC_19 = 3145,
- SFX_GENERIC_MALE_PANIC_20 = 3146,
- SFX_GENERIC_MALE_PANIC_21 = 3147,
- SFX_GENERIC_MALE_PANIC_22 = 3148,
- SFX_GENERIC_MALE_PANIC_23 = 3149,
- SFX_GENERIC_MALE_PANIC_24 = 3150,
- SFX_GENERIC_MALE_PANIC_25 = 3151,
- SFX_GENERIC_MALE_PANIC_26 = 3152,
- SFX_GENERIC_MALE_PANIC_27 = 3153,
- SFX_GENERIC_MALE_PANIC_28 = 3154,
- SFX_GENERIC_MALE_PANIC_29 = 3155,
- SFX_GENERIC_MALE_PANIC_30 = 3156,
- SFX_GENERIC_MALE_PANIC_31 = 3157,
- SFX_GENERIC_MALE_PANIC_32 = 3158,
- SFX_GENERIC_MALE_PANIC_33 = 3159,
- SFX_GENERIC_MALE_PANIC_34 = 3160,
- SFX_GENERIC_MALE_PANIC_35 = 3161,
+ SFX_JFOTO_BLOCKED_1,
+ SFX_JFOTO_BLOCKED_2,
+ SFX_JFOTO_BLOCKED_3,
+ SFX_JFOTO_BLOCKED_4,
+ SFX_JFOTO_BLOCKED_5,
+ SFX_JFOTO_BLOCKED_6,
+ SFX_JFOTO_BLOCKED_7,
+ SFX_JFOTO_BLOCKED_8,
- TOTAL_AUDIO_SAMPLES = 9941,
+ SFX_JFOTO_BUMP_1,
+ SFX_JFOTO_BUMP_2,
+ SFX_JFOTO_BUMP_3,
+ SFX_JFOTO_BUMP_4,
+ SFX_JFOTO_BUMP_5,
+ SFX_JFOTO_BUMP_6,
+ SFX_JFOTO_BUMP_7,
+ SFX_JFOTO_BUMP_8,
+ SFX_JFOTO_BUMP_9,
+ SFX_JFOTO_BUMP_10,
+
+ SFX_JFOTO_CAR_CRASH_1,
+ SFX_JFOTO_CAR_CRASH_2,
+ SFX_JFOTO_CAR_CRASH_3,
+ SFX_JFOTO_CAR_CRASH_4,
+ SFX_JFOTO_CAR_CRASH_5,
+ SFX_JFOTO_CAR_CRASH_6,
+ SFX_JFOTO_CAR_CRASH_7,
+ SFX_JFOTO_CAR_CRASH_8,
+
+ SFX_JFOTO_CHAT_1,
+ SFX_JFOTO_CHAT_2,
+ SFX_JFOTO_CHAT_3,
+ SFX_JFOTO_CHAT_4,
+ SFX_JFOTO_CHAT_5,
+ SFX_JFOTO_CHAT_6,
+ SFX_JFOTO_CHAT_7,
+ SFX_JFOTO_CHAT_8,
+ SFX_JFOTO_CHAT_9,
+ SFX_JFOTO_CHAT_10,
+ SFX_JFOTO_CHAT_11,
+ SFX_JFOTO_CHAT_12,
+ SFX_JFOTO_CHAT_13,
+
+ SFX_JFOTO_DODGE_1,
+ SFX_JFOTO_DODGE_2,
+ SFX_JFOTO_DODGE_3,
+ SFX_JFOTO_DODGE_4,
+ SFX_JFOTO_DODGE_5,
+ SFX_JFOTO_DODGE_6,
+ SFX_JFOTO_DODGE_7,
+ SFX_JFOTO_DODGE_8,
+ SFX_JFOTO_DODGE_9,
+
+ SFX_JFOTO_GENERIC_CRASH_1,
+ SFX_JFOTO_GENERIC_CRASH_2,
+ SFX_JFOTO_GENERIC_CRASH_3,
+ SFX_JFOTO_GENERIC_CRASH_4,
+ SFX_JFOTO_GENERIC_CRASH_5,
+ SFX_JFOTO_GENERIC_CRASH_6,
+ SFX_JFOTO_GUN_PANIC_1,
+ SFX_JFOTO_GUN_PANIC_2,
+ SFX_JFOTO_GUN_PANIC_3,
+ SFX_JFOTO_GUN_PANIC_4,
+ SFX_JFOTO_JACKED_1,
+ SFX_JFOTO_JACKED_2,
+ SFX_JFOTO_JACKED_3,
+ SFX_JFOTO_JACKED_4,
+ SFX_JFOTO_JACKED_5,
+ SFX_JFOTO_LOST_1,
+ SFX_JFOTO_MUGGED_1,
+ SFX_JFOTO_MUGGED_2,
+ SFX_JFOTO_RUN_1,
+ SFX_JFOTO_RUN_2,
+ SFX_JFOTO_RUN_3,
+ SFX_JFOTO_RUN_4,
+ SFX_JFOTO_RUN_5,
+ SFX_JFOTO_SAVED_1,
+ SFX_JFOTO_SAVED_2,
+ SFX_JFOTO_SHOCKED_1,
+ SFX_JFOTO_TAXI_1,
+ SFX_JFOTO_TAXI_2,
+
+ SFX_JMOTO_BLOCKED_1,
+ SFX_JMOTO_BLOCKED_2,
+ SFX_JMOTO_BLOCKED_3,
+ SFX_JMOTO_BLOCKED_4,
+ SFX_JMOTO_BLOCKED_5,
+ SFX_JMOTO_BLOCKED_6,
+ SFX_JMOTO_BLOCKED_7,
+ SFX_JMOTO_BLOCKED_8,
+ SFX_JMOTO_BUMP_1,
+ SFX_JMOTO_BUMP_2,
+ SFX_JMOTO_BUMP_3,
+ SFX_JMOTO_BUMP_4,
+ SFX_JMOTO_BUMP_5,
+ SFX_JMOTO_BUMP_6,
+ SFX_JMOTO_BUMP_7,
+ SFX_JMOTO_BUMP_8,
+ SFX_JMOTO_CAR_CRASH_1,
+ SFX_JMOTO_CAR_CRASH_2,
+ SFX_JMOTO_CAR_CRASH_3,
+ SFX_JMOTO_CAR_CRASH_4,
+ SFX_JMOTO_CAR_CRASH_5,
+ SFX_JMOTO_CAR_CRASH_6,
+ SFX_JMOTO_CHAT_1,
+ SFX_JMOTO_CHAT_2,
+ SFX_JMOTO_CHAT_3,
+ SFX_JMOTO_CHAT_4,
+ SFX_JMOTO_CHAT_5,
+ SFX_JMOTO_CHAT_6,
+ SFX_JMOTO_CHAT_7,
+ SFX_JMOTO_DODGE_1,
+ SFX_JMOTO_DODGE_2,
+ SFX_JMOTO_DODGE_3,
+ SFX_JMOTO_DODGE_4,
+ SFX_JMOTO_DODGE_5,
+ SFX_JMOTO_DODGE_6,
+ SFX_JMOTO_GENERIC_CRASH_1,
+ SFX_JMOTO_GENERIC_CRASH_2,
+ SFX_JMOTO_GENERIC_CRASH_3,
+ SFX_JMOTO_GENERIC_CRASH_4,
+ SFX_JMOTO_GENERIC_CRASH_5,
+ SFX_JMOTO_GENERIC_CRASH_6,
+ SFX_JMOTO_GUN_PANIC_1,
+ SFX_JMOTO_GUN_PANIC_2,
+ SFX_JMOTO_GUN_PANIC_3,
+ SFX_JMOTO_GUN_PANIC_4,
+ SFX_JMOTO_JACKED_1,
+ SFX_JMOTO_JACKED_2,
+ SFX_JMOTO_JACKED_3,
+ SFX_JMOTO_JACKED_4,
+ SFX_JMOTO_LOST_1,
+ SFX_JMOTO_MUGGED_1,
+ SFX_JMOTO_MUGGED_2,
+ SFX_JMOTO_RUN_1,
+ SFX_JMOTO_RUN_2,
+ SFX_JMOTO_RUN_3,
+ SFX_JMOTO_RUN_4,
+ SFX_JMOTO_SAVED_1,
+ SFX_JMOTO_SHOCKED_1,
+ SFX_JMOTO_TAXI_1,
+
+ SFX_BMYBE_BLOCKED_1,
+ SFX_BMYBE_BLOCKED_2,
+ SFX_BMYBE_BLOCKED_3,
+ SFX_BMYBE_BLOCKED_4,
+ SFX_BMYBE_BLOCKED_5,
+ SFX_BMYBE_BLOCKED_6,
+ SFX_BMYBE_BLOCKED_7,
+ SFX_BMYBE_BLOCKED_8,
+ SFX_BMYBE_BUMP_1,
+ SFX_BMYBE_BUMP_2,
+ SFX_BMYBE_BUMP_3,
+ SFX_BMYBE_BUMP_4,
+ SFX_BMYBE_BUMP_5,
+ SFX_BMYBE_BUMP_6,
+ SFX_BMYBE_BUMP_7,
+ SFX_BMYBE_BUMP_8,
+ SFX_BMYBE_BUMP_9,
+ SFX_BMYBE_BUMP_10,
+ SFX_BMYBE_CAR_CRASH_1,
+ SFX_BMYBE_CAR_CRASH_2,
+ SFX_BMYBE_CAR_CRASH_3,
+ SFX_BMYBE_CAR_CRASH_4,
+ SFX_BMYBE_CAR_CRASH_5,
+ SFX_BMYBE_CAR_CRASH_6,
+ SFX_BMYBE_CAR_CRASH_7,
+ SFX_BMYBE_CAR_CRASH_8,
+ SFX_BMYBE_CHAT_1,
+ SFX_BMYBE_CHAT_2,
+ SFX_BMYBE_CHAT_3,
+ SFX_BMYBE_CHAT_4,
+ SFX_BMYBE_CHAT_5,
+ SFX_BMYBE_CHAT_6,
+ SFX_BMYBE_CHAT_7,
+ SFX_BMYBE_CHAT_8,
+ SFX_BMYBE_CHAT_9,
+ SFX_BMYBE_CHAT_10,
+ SFX_BMYBE_DODGE_1,
+ SFX_BMYBE_DODGE_2,
+ SFX_BMYBE_DODGE_3,
+ SFX_BMYBE_DODGE_4,
+ SFX_BMYBE_DODGE_5,
+ SFX_BMYBE_DODGE_6,
+ SFX_BMYBE_DODGE_7,
+ SFX_BMYBE_DODGE_8,
+ SFX_BMYBE_DODGE_9,
+ SFX_BMYBE_DODGE_10,
+ SFX_BMYBE_EYEING_1,
+ SFX_BMYBE_EYEING_2,
+ SFX_BMYBE_FIGHT_1,
+ SFX_BMYBE_FIGHT_2,
+ SFX_BMYBE_FIGHT_3,
+ SFX_BMYBE_FIGHT_4,
+ SFX_BMYBE_FIGHT_5,
+ SFX_BMYBE_FIGHT_6,
+ SFX_BMYBE_FIGHT_7,
+ SFX_BMYBE_FIGHT_8,
+ SFX_BMYBE_GENERIC_CRASH_1,
+ SFX_BMYBE_GENERIC_CRASH_2,
+ SFX_BMYBE_GENERIC_CRASH_3,
+ SFX_BMYBE_GENERIC_CRASH_4,
+ SFX_BMYBE_GENERIC_CRASH_5,
+ SFX_BMYBE_GENERIC_CRASH_6,
+ SFX_BMYBE_GENERIC_CRASH_7,
+ SFX_BMYBE_GENERIC_CRASH_8,
+ SFX_BMYBE_GUN_COOL_1,
+ SFX_BMYBE_GUN_COOL_2,
+ SFX_BMYBE_GUN_COOL_3,
+ SFX_BMYBE_GUN_COOL_4,
+ SFX_BMYBE_JACKED_1,
+ SFX_BMYBE_JACKED_2,
+ SFX_BMYBE_JACKED_3,
+ SFX_BMYBE_JACKED_4,
+ SFX_BMYBE_JACKED_5,
+ SFX_BMYBE_JACKED_6,
+ SFX_BMYBE_JACKING_1,
+ SFX_BMYBE_JACKING_2,
+ SFX_BMYBE_JACKING_3,
+ SFX_BMYBE_LOST_1,
+ SFX_BMYBE_MUGGED_1,
+ SFX_BMYBE_SAVED_1,
+ SFX_BMYBE_TAXI_1,
+
+ SFX_HFOBE_BLOCKED_1,
+ SFX_HFOBE_BLOCKED_2,
+ SFX_HFOBE_BLOCKED_3,
+ SFX_HFOBE_BLOCKED_4,
+ SFX_HFOBE_BLOCKED_5,
+ SFX_HFOBE_BLOCKED_6,
+ SFX_HFOBE_BUMP_1,
+ SFX_HFOBE_BUMP_2,
+ SFX_HFOBE_BUMP_3,
+ SFX_HFOBE_BUMP_4,
+ SFX_HFOBE_BUMP_5,
+ SFX_HFOBE_BUMP_6,
+ SFX_HFOBE_BUMP_7,
+ SFX_HFOBE_BUMP_8,
+ SFX_HFOBE_BUMP_9,
+ SFX_HFOBE_BUMP_10,
+ SFX_HFOBE_BUMP_11,
+ SFX_HFOBE_CAR_CRASH_1,
+ SFX_HFOBE_CAR_CRASH_2,
+ SFX_HFOBE_CAR_CRASH_3,
+ SFX_HFOBE_CAR_CRASH_4,
+ SFX_HFOBE_CAR_CRASH_5,
+ SFX_HFOBE_CAR_CRASH_6,
+ SFX_HFOBE_CHAT_1,
+ SFX_HFOBE_CHAT_2,
+ SFX_HFOBE_CHAT_3,
+ SFX_HFOBE_CHAT_4,
+ SFX_HFOBE_CHAT_5,
+ SFX_HFOBE_CHAT_6,
+ SFX_HFOBE_CHAT_7,
+ SFX_HFOBE_CHAT_8,
+ SFX_HFOBE_CHAT_9,
+ SFX_HFOBE_CHAT_10,
+ SFX_HFOBE_DODGE_1,
+ SFX_HFOBE_DODGE_2,
+ SFX_HFOBE_DODGE_3,
+ SFX_HFOBE_DODGE_4,
+ SFX_HFOBE_DODGE_5,
+ SFX_HFOBE_DODGE_6,
+ SFX_HFOBE_DODGE_7,
+ SFX_HFOBE_GENERIC_CRASH_1,
+ SFX_HFOBE_GENERIC_CRASH_2,
+ SFX_HFOBE_GENERIC_CRASH_3,
+ SFX_HFOBE_GENERIC_CRASH_4,
+ SFX_HFOBE_GENERIC_CRASH_5,
+ SFX_HFOBE_GUN_PANIC_1,
+ SFX_HFOBE_GUN_PANIC_2,
+ SFX_HFOBE_GUN_PANIC_3,
+ SFX_HFOBE_GUN_PANIC_4,
+ SFX_HFOBE_GUN_PANIC_5,
+ SFX_HFOBE_JACKED_1,
+ SFX_HFOBE_JACKED_2,
+ SFX_HFOBE_JACKED_3,
+ SFX_HFOBE_JACKED_4,
+ SFX_HFOBE_JACKED_5,
+ SFX_HFOBE_JACKED_6,
+ SFX_HFOBE_LOST_1,
+ SFX_HFOBE_LOST_2,
+ SFX_HFOBE_RUN_1,
+ SFX_HFOBE_RUN_2,
+ SFX_HFOBE_RUN_3,
+ SFX_HFOBE_RUN_4,
+ SFX_HFOBE_SAVED_1,
+ SFX_HFOBE_SHOCKED_1,
+ SFX_HFOBE_SHOCKED_2,
+ SFX_HFOBE_TAXI_1,
+ SFX_HFOBE_TAXI_2,
+
+ SFX_STREET_GANG_1_BLOCKED_1,
+ SFX_STREET_GANG_1_BLOCKED_2,
+ SFX_STREET_GANG_1_BLOCKED_3,
+ SFX_STREET_GANG_1_BLOCKED_4,
+ SFX_STREET_GANG_1_BLOCKED_5,
+ SFX_STREET_GANG_1_BLOCKED_6,
+ SFX_STREET_GANG_1_BLOCKED_7,
+ SFX_STREET_GANG_1_BLOCKED_8,
+ SFX_STREET_GANG_1_BUMP_1,
+ SFX_STREET_GANG_1_BUMP_2,
+ SFX_STREET_GANG_1_BUMP_3,
+ SFX_STREET_GANG_1_BUMP_4,
+ SFX_STREET_GANG_1_BUMP_5,
+ SFX_STREET_GANG_1_BUMP_6,
+ SFX_STREET_GANG_1_BUMP_7,
+ SFX_STREET_GANG_1_BUMP_8,
+ SFX_STREET_GANG_1_BUMP_9,
+ SFX_STREET_GANG_1_BUMP_10,
+ SFX_STREET_GANG_1_CAR_CRASH_1,
+ SFX_STREET_GANG_1_CAR_CRASH_2,
+ SFX_STREET_GANG_1_CAR_CRASH_3,
+ SFX_STREET_GANG_1_CAR_CRASH_4,
+ SFX_STREET_GANG_1_CAR_CRASH_5,
+ SFX_STREET_GANG_1_CAR_CRASH_6,
+ SFX_STREET_GANG_1_CHAT_1,
+ SFX_STREET_GANG_1_CHAT_2,
+ SFX_STREET_GANG_1_CHAT_3,
+ SFX_STREET_GANG_1_CHAT_4,
+ SFX_STREET_GANG_1_CHAT_5,
+ SFX_STREET_GANG_1_CHAT_6,
+ SFX_STREET_GANG_1_CHAT_7,
+ SFX_STREET_GANG_1_CHAT_8,
+ SFX_STREET_GANG_1_CHAT_9,
+ SFX_STREET_GANG_1_CHAT_10,
+ SFX_STREET_GANG_1_CHAT_11,
+ SFX_STREET_GANG_1_CHAT_12,
+ SFX_STREET_GANG_1_DODGE_1,
+ SFX_STREET_GANG_1_DODGE_2,
+ SFX_STREET_GANG_1_DODGE_3,
+ SFX_STREET_GANG_1_DODGE_4,
+ SFX_STREET_GANG_1_DODGE_5,
+ SFX_STREET_GANG_1_DODGE_6,
+ SFX_STREET_GANG_1_DODGE_7,
+ SFX_STREET_GANG_1_DODGE_8,
+ SFX_STREET_GANG_1_DODGE_9,
+ SFX_STREET_GANG_1_EYEING_1,
+ SFX_STREET_GANG_1_EYEING_2,
+ SFX_STREET_GANG_1_EYEING_3,
+ SFX_STREET_GANG_1_FIGHT_1,
+ SFX_STREET_GANG_1_FIGHT_2,
+ SFX_STREET_GANG_1_FIGHT_3,
+ SFX_STREET_GANG_1_FIGHT_4,
+ SFX_STREET_GANG_1_FIGHT_5,
+ SFX_STREET_GANG_1_FIGHT_6,
+ SFX_STREET_GANG_1_FIGHT_7,
+ SFX_STREET_GANG_1_FIGHT_8,
+ SFX_STREET_GANG_1_FIGHT_9,
+ SFX_STREET_GANG_1_FIGHT_10,
+ SFX_STREET_GANG_1_GENERIC_CRASH_1,
+ SFX_STREET_GANG_1_GENERIC_CRASH_2,
+ SFX_STREET_GANG_1_GENERIC_CRASH_3,
+ SFX_STREET_GANG_1_GENERIC_CRASH_4,
+ SFX_STREET_GANG_1_GENERIC_CRASH_5,
+ SFX_STREET_GANG_1_GENERIC_CRASH_6,
+ SFX_STREET_GANG_1_GUN_COOL_1,
+ SFX_STREET_GANG_1_GUN_COOL_2,
+ SFX_STREET_GANG_1_GUN_COOL_3,
+ SFX_STREET_GANG_1_GUN_COOL_4,
+ SFX_STREET_GANG_1_GUN_COOL_5,
+ SFX_STREET_GANG_1_JACKED_1,
+ SFX_STREET_GANG_1_JACKED_2,
+ SFX_STREET_GANG_1_JACKED_3,
+ SFX_STREET_GANG_1_JACKED_4,
+ SFX_STREET_GANG_1_JACKED_5,
+ SFX_STREET_GANG_1_JACKING_1,
+ SFX_STREET_GANG_1_JACKING_2,
+ SFX_STREET_GANG_1_JACKING_3,
+ SFX_STREET_GANG_1_JACKING_4,
+ SFX_STREET_GANG_1_JACKING_5,
+ SFX_STREET_GANG_1_LOST_1,
+ SFX_STREET_GANG_1_LOST_2,
+ SFX_STREET_GANG_1_MUGGED_1,
+ SFX_STREET_GANG_1_MUGGED_2,
+ SFX_STREET_GANG_1_MUGGED_3,
+ SFX_STREET_GANG_1_MUGGING_1,
+ SFX_STREET_GANG_1_MUGGING_2,
+ SFX_STREET_GANG_1_MUGGING_3,
+ SFX_STREET_GANG_1_MUGGING_4,
+ SFX_STREET_GANG_1_MUGGING_5,
+ SFX_STREET_GANG_1_SAVED_1,
+ SFX_STREET_GANG_1_SHOCKED_1,
+ SFX_STREET_GANG_1_SHOCKED_2,
+ SFX_STREET_GANG_1_TAXI_1,
+
+ SFX_STREET_GANG_2_BLOCKED_1,
+ SFX_STREET_GANG_2_BLOCKED_2,
+ SFX_STREET_GANG_2_BLOCKED_3,
+ SFX_STREET_GANG_2_BLOCKED_4,
+ SFX_STREET_GANG_2_BLOCKED_5,
+ SFX_STREET_GANG_2_BLOCKED_6,
+ SFX_STREET_GANG_2_BLOCKED_7,
+ SFX_STREET_GANG_2_BLOCKED_8,
+ SFX_STREET_GANG_2_BUMP_1,
+ SFX_STREET_GANG_2_BUMP_2,
+ SFX_STREET_GANG_2_BUMP_3,
+ SFX_STREET_GANG_2_BUMP_4,
+ SFX_STREET_GANG_2_BUMP_5,
+ SFX_STREET_GANG_2_BUMP_6,
+ SFX_STREET_GANG_2_BUMP_7,
+ SFX_STREET_GANG_2_BUMP_8,
+ SFX_STREET_GANG_2_BUMP_9,
+ SFX_STREET_GANG_2_BUMP_10,
+ SFX_STREET_GANG_2_CAR_CRASH_1,
+ SFX_STREET_GANG_2_CAR_CRASH_2,
+ SFX_STREET_GANG_2_CAR_CRASH_3,
+ SFX_STREET_GANG_2_CAR_CRASH_4,
+ SFX_STREET_GANG_2_CAR_CRASH_5,
+ SFX_STREET_GANG_2_CAR_CRASH_6,
+ SFX_STREET_GANG_2_CHAT_1,
+ SFX_STREET_GANG_2_CHAT_2,
+ SFX_STREET_GANG_2_CHAT_3,
+ SFX_STREET_GANG_2_CHAT_4,
+ SFX_STREET_GANG_2_CHAT_5,
+ SFX_STREET_GANG_2_CHAT_6,
+ SFX_STREET_GANG_2_CHAT_7,
+ SFX_STREET_GANG_2_CHAT_8,
+ SFX_STREET_GANG_2_CHAT_9,
+ SFX_STREET_GANG_2_CHAT_10,
+ SFX_STREET_GANG_2_CHAT_11,
+ SFX_STREET_GANG_2_CHAT_12,
+ SFX_STREET_GANG_2_DODGE_1,
+ SFX_STREET_GANG_2_DODGE_2,
+ SFX_STREET_GANG_2_DODGE_3,
+ SFX_STREET_GANG_2_DODGE_4,
+ SFX_STREET_GANG_2_DODGE_5,
+ SFX_STREET_GANG_2_DODGE_6,
+ SFX_STREET_GANG_2_DODGE_7,
+ SFX_STREET_GANG_2_DODGE_8,
+ SFX_STREET_GANG_2_DODGE_9,
+ SFX_STREET_GANG_2_EYEING_1,
+ SFX_STREET_GANG_2_EYEING_2,
+ SFX_STREET_GANG_2_EYEING_3,
+ SFX_STREET_GANG_2_FIGHT_1,
+ SFX_STREET_GANG_2_FIGHT_2,
+ SFX_STREET_GANG_2_FIGHT_3,
+ SFX_STREET_GANG_2_FIGHT_4,
+ SFX_STREET_GANG_2_FIGHT_5,
+ SFX_STREET_GANG_2_FIGHT_6,
+ SFX_STREET_GANG_2_FIGHT_7,
+ SFX_STREET_GANG_2_FIGHT_8,
+ SFX_STREET_GANG_2_FIGHT_9,
+ SFX_STREET_GANG_2_FIGHT_10,
+ SFX_STREET_GANG_2_GENERIC_CRASH_1,
+ SFX_STREET_GANG_2_GENERIC_CRASH_2,
+ SFX_STREET_GANG_2_GENERIC_CRASH_3,
+ SFX_STREET_GANG_2_GENERIC_CRASH_4,
+ SFX_STREET_GANG_2_GENERIC_CRASH_5,
+ SFX_STREET_GANG_2_GENERIC_CRASH_6,
+ SFX_STREET_GANG_2_GUN_COOL_1,
+ SFX_STREET_GANG_2_GUN_COOL_2,
+ SFX_STREET_GANG_2_GUN_COOL_3,
+ SFX_STREET_GANG_2_GUN_COOL_4,
+ SFX_STREET_GANG_2_GUN_COOL_5,
+ SFX_STREET_GANG_2_JACKED_1,
+ SFX_STREET_GANG_2_JACKED_2,
+ SFX_STREET_GANG_2_JACKED_3,
+ SFX_STREET_GANG_2_JACKED_4,
+ SFX_STREET_GANG_2_JACKED_5,
+ SFX_STREET_GANG_2_JACKING_1,
+ SFX_STREET_GANG_2_JACKING_2,
+ SFX_STREET_GANG_2_JACKING_3,
+ SFX_STREET_GANG_2_JACKING_4,
+ SFX_STREET_GANG_2_JACKING_5,
+ SFX_STREET_GANG_2_LOST_1,
+ SFX_STREET_GANG_2_LOST_2,
+ SFX_STREET_GANG_2_MUGGED_1,
+ SFX_STREET_GANG_2_MUGGED_2,
+ SFX_STREET_GANG_2_MUGGED_3,
+ SFX_STREET_GANG_2_MUGGING_1,
+ SFX_STREET_GANG_2_MUGGING_2,
+ SFX_STREET_GANG_2_MUGGING_3,
+ SFX_STREET_GANG_2_MUGGING_4,
+ SFX_STREET_GANG_2_MUGGING_5,
+ SFX_STREET_GANG_2_SAVED_1,
+ SFX_STREET_GANG_2_SHOCKED_1,
+ SFX_STREET_GANG_2_SHOCKED_2,
+ SFX_STREET_GANG_2_TAXI_1,
+
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_1,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_2,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_3,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_4,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_5,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_6,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_7,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_8,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_9,
+ SFX_CUBAN_LORD_GANG_1_BLOCKED_10,
+ SFX_CUBAN_LORD_GANG_1_BUMP_1,
+ SFX_CUBAN_LORD_GANG_1_BUMP_2,
+ SFX_CUBAN_LORD_GANG_1_BUMP_3,
+ SFX_CUBAN_LORD_GANG_1_BUMP_4,
+ SFX_CUBAN_LORD_GANG_1_BUMP_5,
+ SFX_CUBAN_LORD_GANG_1_BUMP_6,
+ SFX_CUBAN_LORD_GANG_1_BUMP_7,
+ SFX_CUBAN_LORD_GANG_1_BUMP_8,
+ SFX_CUBAN_LORD_GANG_1_BUMP_9,
+ SFX_CUBAN_LORD_GANG_1_BUMP_10,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_1,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_2,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_3,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_4,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_5,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_6,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_7,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_8,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_9,
+ SFX_CUBAN_LORD_GANG_1_CAR_CRASH_10,
+ SFX_CUBAN_LORD_GANG_1_CHAT_1,
+ SFX_CUBAN_LORD_GANG_1_CHAT_2,
+ SFX_CUBAN_LORD_GANG_1_CHAT_3,
+ SFX_CUBAN_LORD_GANG_1_CHAT_4,
+ SFX_CUBAN_LORD_GANG_1_CHAT_5,
+ SFX_CUBAN_LORD_GANG_1_CHAT_6,
+ SFX_CUBAN_LORD_GANG_1_CHAT_7,
+ SFX_CUBAN_LORD_GANG_1_CHAT_8,
+ SFX_CUBAN_LORD_GANG_1_CHAT_9,
+ SFX_CUBAN_LORD_GANG_1_CHAT_10,
+ SFX_CUBAN_LORD_GANG_1_DODGE_1,
+ SFX_CUBAN_LORD_GANG_1_DODGE_2,
+ SFX_CUBAN_LORD_GANG_1_DODGE_3,
+ SFX_CUBAN_LORD_GANG_1_DODGE_4,
+ SFX_CUBAN_LORD_GANG_1_DODGE_5,
+ SFX_CUBAN_LORD_GANG_1_DODGE_6,
+ SFX_CUBAN_LORD_GANG_1_DODGE_7,
+ SFX_CUBAN_LORD_GANG_1_DODGE_8,
+ SFX_CUBAN_LORD_GANG_1_DODGE_9,
+ SFX_CUBAN_LORD_GANG_1_DODGE_10,
+ SFX_CUBAN_LORD_GANG_1_DODGE_11,
+ SFX_CUBAN_LORD_GANG_1_DODGE_12,
+ SFX_CUBAN_LORD_GANG_1_DODGE_13,
+ SFX_CUBAN_LORD_GANG_1_EYEING_1,
+ SFX_CUBAN_LORD_GANG_1_EYEING_2,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_1,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_2,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_3,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_4,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_5,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_6,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_7,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_8,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_9,
+ SFX_CUBAN_LORD_GANG_1_FIGHT_10,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_1,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_2,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_3,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_4,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_5,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_6,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_7,
+ SFX_CUBAN_LORD_GANG_1_GENERIC_CRASH_8,
+ SFX_CUBAN_LORD_GANG_1_GUN_COOL_1,
+ SFX_CUBAN_LORD_GANG_1_GUN_COOL_2,
+ SFX_CUBAN_LORD_GANG_1_GUN_COOL_3,
+ SFX_CUBAN_LORD_GANG_1_GUN_COOL_4,
+ SFX_CUBAN_LORD_GANG_1_GUN_COOL_5,
+ SFX_CUBAN_LORD_GANG_1_JACKED_1,
+ SFX_CUBAN_LORD_GANG_1_JACKED_2,
+ SFX_CUBAN_LORD_GANG_1_JACKED_3,
+ SFX_CUBAN_LORD_GANG_1_JACKED_4,
+ SFX_CUBAN_LORD_GANG_1_JACKED_5,
+ SFX_CUBAN_LORD_GANG_1_JACKED_6,
+ SFX_CUBAN_LORD_GANG_1_JACKING_1,
+ SFX_CUBAN_LORD_GANG_1_JACKING_2,
+ SFX_CUBAN_LORD_GANG_1_JACKING_3,
+ SFX_CUBAN_LORD_GANG_1_JACKING_4,
+ SFX_CUBAN_LORD_GANG_1_JACKING_5,
+ SFX_CUBAN_LORD_GANG_1_LOST_1,
+ SFX_CUBAN_LORD_GANG_1_LOST_2,
+ SFX_CUBAN_LORD_GANG_1_MUGGED_1,
+ SFX_CUBAN_LORD_GANG_1_MUGGED_2,
+ SFX_CUBAN_LORD_GANG_1_SAVED_1,
+ SFX_CUBAN_LORD_GANG_1_TAXI_1,
+ SFX_CUBAN_LORD_GANG_1_TAXI_2,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_1,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_2,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_3,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_4,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_5,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_6,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_7,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_8,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_9,
+ SFX_CUBAN_LORD_GANG_2_BLOCKED_10,
+ SFX_CUBAN_LORD_GANG_2_BUMP_1,
+ SFX_CUBAN_LORD_GANG_2_BUMP_2,
+ SFX_CUBAN_LORD_GANG_2_BUMP_3,
+ SFX_CUBAN_LORD_GANG_2_BUMP_4,
+ SFX_CUBAN_LORD_GANG_2_BUMP_5,
+ SFX_CUBAN_LORD_GANG_2_BUMP_6,
+ SFX_CUBAN_LORD_GANG_2_BUMP_7,
+ SFX_CUBAN_LORD_GANG_2_BUMP_8,
+ SFX_CUBAN_LORD_GANG_2_BUMP_9,
+ SFX_CUBAN_LORD_GANG_2_BUMP_10,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_1,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_2,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_3,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_4,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_5,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_6,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_7,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_8,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_9,
+ SFX_CUBAN_LORD_GANG_2_CAR_CRASH_10,
+ SFX_CUBAN_LORD_GANG_2_CHAT_1,
+ SFX_CUBAN_LORD_GANG_2_CHAT_2,
+ SFX_CUBAN_LORD_GANG_2_CHAT_3,
+ SFX_CUBAN_LORD_GANG_2_CHAT_4,
+ SFX_CUBAN_LORD_GANG_2_CHAT_5,
+ SFX_CUBAN_LORD_GANG_2_CHAT_6,
+ SFX_CUBAN_LORD_GANG_2_CHAT_7,
+ SFX_CUBAN_LORD_GANG_2_CHAT_8,
+ SFX_CUBAN_LORD_GANG_2_CHAT_9,
+ SFX_CUBAN_LORD_GANG_2_CHAT_10,
+ SFX_CUBAN_LORD_GANG_2_DODGE_1,
+ SFX_CUBAN_LORD_GANG_2_DODGE_2,
+ SFX_CUBAN_LORD_GANG_2_DODGE_3,
+ SFX_CUBAN_LORD_GANG_2_DODGE_4,
+ SFX_CUBAN_LORD_GANG_2_DODGE_5,
+ SFX_CUBAN_LORD_GANG_2_DODGE_6,
+ SFX_CUBAN_LORD_GANG_2_DODGE_7,
+ SFX_CUBAN_LORD_GANG_2_DODGE_8,
+ SFX_CUBAN_LORD_GANG_2_DODGE_9,
+ SFX_CUBAN_LORD_GANG_2_DODGE_10,
+ SFX_CUBAN_LORD_GANG_2_DODGE_11,
+ SFX_CUBAN_LORD_GANG_2_DODGE_12,
+ SFX_CUBAN_LORD_GANG_2_DODGE_13,
+ SFX_CUBAN_LORD_GANG_2_EYEING_1,
+ SFX_CUBAN_LORD_GANG_2_EYEING_2,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_1,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_2,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_3,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_4,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_5,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_6,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_7,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_8,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_9,
+ SFX_CUBAN_LORD_GANG_2_FIGHT_10,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_1,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_2,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_3,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_4,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_5,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_6,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_7,
+ SFX_CUBAN_LORD_GANG_2_GENERIC_CRASH_8,
+ SFX_CUBAN_LORD_GANG_2_GUN_COOL_1,
+ SFX_CUBAN_LORD_GANG_2_GUN_COOL_2,
+ SFX_CUBAN_LORD_GANG_2_GUN_COOL_3,
+ SFX_CUBAN_LORD_GANG_2_GUN_COOL_4,
+ SFX_CUBAN_LORD_GANG_2_GUN_COOL_5,
+ SFX_CUBAN_LORD_GANG_2_JACKED_1,
+ SFX_CUBAN_LORD_GANG_2_JACKED_2,
+ SFX_CUBAN_LORD_GANG_2_JACKED_3,
+ SFX_CUBAN_LORD_GANG_2_JACKED_4,
+ SFX_CUBAN_LORD_GANG_2_JACKED_5,
+ SFX_CUBAN_LORD_GANG_2_JACKED_6,
+ SFX_CUBAN_LORD_GANG_2_JACKING_1,
+ SFX_CUBAN_LORD_GANG_2_JACKING_2,
+ SFX_CUBAN_LORD_GANG_2_JACKING_3,
+ SFX_CUBAN_LORD_GANG_2_JACKING_4,
+ SFX_CUBAN_LORD_GANG_2_JACKING_5,
+ SFX_CUBAN_LORD_GANG_2_LOST_1,
+ SFX_CUBAN_LORD_GANG_2_LOST_2,
+ SFX_CUBAN_LORD_GANG_2_MUGGED_1,
+ SFX_CUBAN_LORD_GANG_2_MUGGED_2,
+ SFX_CUBAN_LORD_GANG_2_SAVED_1,
+ SFX_CUBAN_LORD_GANG_2_TAXI_1,
+ SFX_CUBAN_LORD_GANG_2_TAXI_2,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_1,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_2,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_3,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_4,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_5,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_6,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_7,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_8,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_9,
+ SFX_CUBAN_LORD_GANG_3_BLOCKED_10,
+ SFX_CUBAN_LORD_GANG_3_BUMP_1,
+ SFX_CUBAN_LORD_GANG_3_BUMP_2,
+ SFX_CUBAN_LORD_GANG_3_BUMP_3,
+ SFX_CUBAN_LORD_GANG_3_BUMP_4,
+ SFX_CUBAN_LORD_GANG_3_BUMP_5,
+ SFX_CUBAN_LORD_GANG_3_BUMP_6,
+ SFX_CUBAN_LORD_GANG_3_BUMP_7,
+ SFX_CUBAN_LORD_GANG_3_BUMP_8,
+ SFX_CUBAN_LORD_GANG_3_BUMP_9,
+ SFX_CUBAN_LORD_GANG_3_BUMP_10,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_1,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_2,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_3,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_4,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_5,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_6,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_7,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_8,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_9,
+ SFX_CUBAN_LORD_GANG_3_CAR_CRASH_10,
+ SFX_CUBAN_LORD_GANG_3_CHAT_1,
+ SFX_CUBAN_LORD_GANG_3_CHAT_2,
+ SFX_CUBAN_LORD_GANG_3_CHAT_3,
+ SFX_CUBAN_LORD_GANG_3_CHAT_4,
+ SFX_CUBAN_LORD_GANG_3_CHAT_5,
+ SFX_CUBAN_LORD_GANG_3_CHAT_6,
+ SFX_CUBAN_LORD_GANG_3_CHAT_7,
+ SFX_CUBAN_LORD_GANG_3_CHAT_8,
+ SFX_CUBAN_LORD_GANG_3_CHAT_9,
+ SFX_CUBAN_LORD_GANG_3_CHAT_10,
+ SFX_CUBAN_LORD_GANG_3_DODGE_1,
+ SFX_CUBAN_LORD_GANG_3_DODGE_2,
+ SFX_CUBAN_LORD_GANG_3_DODGE_3,
+ SFX_CUBAN_LORD_GANG_3_DODGE_4,
+ SFX_CUBAN_LORD_GANG_3_DODGE_5,
+ SFX_CUBAN_LORD_GANG_3_DODGE_6,
+ SFX_CUBAN_LORD_GANG_3_DODGE_7,
+ SFX_CUBAN_LORD_GANG_3_DODGE_8,
+ SFX_CUBAN_LORD_GANG_3_DODGE_9,
+ SFX_CUBAN_LORD_GANG_3_DODGE_10,
+ SFX_CUBAN_LORD_GANG_3_DODGE_11,
+ SFX_CUBAN_LORD_GANG_3_DODGE_12,
+ SFX_CUBAN_LORD_GANG_3_DODGE_13,
+ SFX_CUBAN_LORD_GANG_3_EYEING_1,
+ SFX_CUBAN_LORD_GANG_3_EYEING_2,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_1,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_2,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_3,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_4,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_5,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_6,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_7,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_8,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_9,
+ SFX_CUBAN_LORD_GANG_3_FIGHT_10,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_1,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_2,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_3,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_4,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_5,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_6,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_7,
+ SFX_CUBAN_LORD_GANG_3_GENERIC_CRASH_8,
+ SFX_CUBAN_LORD_GANG_3_GUN_COOL_1,
+ SFX_CUBAN_LORD_GANG_3_GUN_COOL_2,
+ SFX_CUBAN_LORD_GANG_3_GUN_COOL_3,
+ SFX_CUBAN_LORD_GANG_3_GUN_COOL_4,
+ SFX_CUBAN_LORD_GANG_3_GUN_COOL_5,
+ SFX_CUBAN_LORD_GANG_3_JACKED_1,
+ SFX_CUBAN_LORD_GANG_3_JACKED_2,
+ SFX_CUBAN_LORD_GANG_3_JACKED_3,
+ SFX_CUBAN_LORD_GANG_3_JACKED_4,
+ SFX_CUBAN_LORD_GANG_3_JACKED_5,
+ SFX_CUBAN_LORD_GANG_3_JACKED_6,
+ SFX_CUBAN_LORD_GANG_3_JACKING_1,
+ SFX_CUBAN_LORD_GANG_3_JACKING_2,
+ SFX_CUBAN_LORD_GANG_3_JACKING_3,
+ SFX_CUBAN_LORD_GANG_3_JACKING_4,
+ SFX_CUBAN_LORD_GANG_3_JACKING_5,
+ SFX_CUBAN_LORD_GANG_3_LOST_1,
+ SFX_CUBAN_LORD_GANG_3_LOST_2,
+ SFX_CUBAN_LORD_GANG_3_MUGGED_1,
+ SFX_CUBAN_LORD_GANG_3_MUGGED_2,
+ SFX_CUBAN_LORD_GANG_3_SAVED_1,
+ SFX_CUBAN_LORD_GANG_3_TAXI_1,
+ SFX_CUBAN_LORD_GANG_3_TAXI_2,
+
+ SFX_PLAYER_GANG_1_BLOCKED_1,
+ SFX_PLAYER_GANG_1_BLOCKED_2,
+ SFX_PLAYER_GANG_1_BLOCKED_3,
+ SFX_PLAYER_GANG_1_BLOCKED_4,
+ SFX_PLAYER_GANG_1_BLOCKED_5,
+ SFX_PLAYER_GANG_1_BLOCKED_6,
+ SFX_PLAYER_GANG_1_BLOCKED_7,
+ SFX_PLAYER_GANG_1_BLOCKED_8,
+ SFX_PLAYER_GANG_1_BLOCKED_9,
+ SFX_PLAYER_GANG_1_BLOCKED_10,
+ SFX_PLAYER_GANG_1_BUMP_1,
+ SFX_PLAYER_GANG_1_BUMP_2,
+ SFX_PLAYER_GANG_1_BUMP_3,
+ SFX_PLAYER_GANG_1_BUMP_4,
+ SFX_PLAYER_GANG_1_BUMP_5,
+ SFX_PLAYER_GANG_1_CAR_CRASH_1,
+ SFX_PLAYER_GANG_1_CAR_CRASH_2,
+ SFX_PLAYER_GANG_1_CAR_CRASH_3,
+ SFX_PLAYER_GANG_1_CAR_CRASH_4,
+ SFX_PLAYER_GANG_1_CAR_CRASH_5,
+ SFX_PLAYER_GANG_1_CHAT_1,
+ SFX_PLAYER_GANG_1_CHAT_2,
+ SFX_PLAYER_GANG_1_CHAT_3,
+ SFX_PLAYER_GANG_1_CHAT_4,
+ SFX_PLAYER_GANG_1_CHAT_5,
+ SFX_PLAYER_GANG_1_CHAT_6,
+ SFX_PLAYER_GANG_1_CHAT_7,
+ SFX_PLAYER_GANG_1_CHAT_8,
+ SFX_PLAYER_GANG_1_DODGE_1,
+ SFX_PLAYER_GANG_1_DODGE_2,
+ SFX_PLAYER_GANG_1_DODGE_3,
+ SFX_PLAYER_GANG_1_DODGE_4,
+ SFX_PLAYER_GANG_1_DODGE_5,
+ SFX_PLAYER_GANG_1_DODGE_6,
+ SFX_PLAYER_GANG_1_DODGE_7,
+ SFX_PLAYER_GANG_1_EYEING_1,
+ SFX_PLAYER_GANG_1_EYEING_2,
+ SFX_PLAYER_GANG_1_FIGHT_1,
+ SFX_PLAYER_GANG_1_FIGHT_2,
+ SFX_PLAYER_GANG_1_FIGHT_3,
+ SFX_PLAYER_GANG_1_FIGHT_4,
+ SFX_PLAYER_GANG_1_FIGHT_5,
+ SFX_PLAYER_GANG_1_GENERIC_CRASH_1,
+ SFX_PLAYER_GANG_1_GENERIC_CRASH_2,
+ SFX_PLAYER_GANG_1_GENERIC_CRASH_3,
+ SFX_PLAYER_GANG_1_GENERIC_CRASH_4,
+ SFX_PLAYER_GANG_1_GENERIC_CRASH_5,
+ SFX_PLAYER_GANG_1_GUN_COOL_1,
+ SFX_PLAYER_GANG_1_GUN_COOL_2,
+ SFX_PLAYER_GANG_1_GUN_COOL_3,
+ SFX_PLAYER_GANG_1_GUN_COOL_4,
+ SFX_PLAYER_GANG_1_JACKED_1,
+ SFX_PLAYER_GANG_1_JACKED_2,
+ SFX_PLAYER_GANG_1_JACKED_3,
+ SFX_PLAYER_GANG_1_JACKED_4,
+ SFX_PLAYER_GANG_1_JACKED_5,
+ SFX_PLAYER_GANG_1_JACKING_1,
+ SFX_PLAYER_GANG_1_JACKING_2,
+ SFX_PLAYER_GANG_1_JACKING_3,
+ SFX_PLAYER_GANG_1_JACKING_4,
+ SFX_PLAYER_GANG_1_JACKING_5,
+ SFX_PLAYER_GANG_1_LOST_1,
+ SFX_PLAYER_GANG_1_LOST_2,
+ SFX_PLAYER_GANG_1_MUGGED_1,
+ SFX_PLAYER_GANG_1_MUGGED_2,
+ SFX_PLAYER_GANG_1_SAVED_1,
+ SFX_PLAYER_GANG_1_SHOCKED_1,
+ SFX_PLAYER_GANG_1_SHOCKED_2,
+ SFX_PLAYER_GANG_1_TAXI_1,
+ SFX_PLAYER_GANG_1_TAXI_2,
+ SFX_PLAYER_GANG_2_BLOCKED_1,
+ SFX_PLAYER_GANG_2_BLOCKED_2,
+ SFX_PLAYER_GANG_2_BLOCKED_3,
+ SFX_PLAYER_GANG_2_BLOCKED_4,
+ SFX_PLAYER_GANG_2_BLOCKED_5,
+ SFX_PLAYER_GANG_2_BLOCKED_6,
+ SFX_PLAYER_GANG_2_BLOCKED_7,
+ SFX_PLAYER_GANG_2_BLOCKED_8,
+ SFX_PLAYER_GANG_2_BLOCKED_9,
+ SFX_PLAYER_GANG_2_BLOCKED_10,
+ SFX_PLAYER_GANG_2_BUMP_1,
+ SFX_PLAYER_GANG_2_BUMP_2,
+ SFX_PLAYER_GANG_2_BUMP_3,
+ SFX_PLAYER_GANG_2_BUMP_4,
+ SFX_PLAYER_GANG_2_BUMP_5,
+ SFX_PLAYER_GANG_2_CAR_CRASH_1,
+ SFX_PLAYER_GANG_2_CAR_CRASH_2,
+ SFX_PLAYER_GANG_2_CAR_CRASH_3,
+ SFX_PLAYER_GANG_2_CAR_CRASH_4,
+ SFX_PLAYER_GANG_2_CAR_CRASH_5,
+ SFX_PLAYER_GANG_2_CHAT_1,
+ SFX_PLAYER_GANG_2_CHAT_2,
+ SFX_PLAYER_GANG_2_CHAT_3,
+ SFX_PLAYER_GANG_2_CHAT_4,
+ SFX_PLAYER_GANG_2_CHAT_5,
+ SFX_PLAYER_GANG_2_CHAT_6,
+ SFX_PLAYER_GANG_2_CHAT_7,
+ SFX_PLAYER_GANG_2_CHAT_8,
+ SFX_PLAYER_GANG_2_DODGE_1,
+ SFX_PLAYER_GANG_2_DODGE_2,
+ SFX_PLAYER_GANG_2_DODGE_3,
+ SFX_PLAYER_GANG_2_DODGE_4,
+ SFX_PLAYER_GANG_2_DODGE_5,
+ SFX_PLAYER_GANG_2_DODGE_6,
+ SFX_PLAYER_GANG_2_DODGE_7,
+ SFX_PLAYER_GANG_2_EYEING_1,
+ SFX_PLAYER_GANG_2_EYEING_2,
+ SFX_PLAYER_GANG_2_FIGHT_1,
+ SFX_PLAYER_GANG_2_FIGHT_2,
+ SFX_PLAYER_GANG_2_FIGHT_3,
+ SFX_PLAYER_GANG_2_FIGHT_4,
+ SFX_PLAYER_GANG_2_FIGHT_5,
+ SFX_PLAYER_GANG_2_GENERIC_CRASH_1,
+ SFX_PLAYER_GANG_2_GENERIC_CRASH_2,
+ SFX_PLAYER_GANG_2_GENERIC_CRASH_3,
+ SFX_PLAYER_GANG_2_GENERIC_CRASH_4,
+ SFX_PLAYER_GANG_2_GENERIC_CRASH_5,
+ SFX_PLAYER_GANG_2_GUN_COOL_1,
+ SFX_PLAYER_GANG_2_GUN_COOL_2,
+ SFX_PLAYER_GANG_2_GUN_COOL_3,
+ SFX_PLAYER_GANG_2_GUN_COOL_4,
+ SFX_PLAYER_GANG_2_JACKED_1,
+ SFX_PLAYER_GANG_2_JACKED_2,
+ SFX_PLAYER_GANG_2_JACKED_3,
+ SFX_PLAYER_GANG_2_JACKED_4,
+ SFX_PLAYER_GANG_2_JACKED_5,
+ SFX_PLAYER_GANG_2_JACKING_1,
+ SFX_PLAYER_GANG_2_JACKING_2,
+ SFX_PLAYER_GANG_2_JACKING_3,
+ SFX_PLAYER_GANG_2_JACKING_4,
+ SFX_PLAYER_GANG_2_JACKING_5,
+ SFX_PLAYER_GANG_2_LOST_1,
+ SFX_PLAYER_GANG_2_LOST_2,
+ SFX_PLAYER_GANG_2_MUGGED_1,
+ SFX_PLAYER_GANG_2_MUGGED_2,
+ SFX_PLAYER_GANG_2_SAVED_1,
+ SFX_PLAYER_GANG_2_SHOCKED_1,
+ SFX_PLAYER_GANG_2_SHOCKED_2,
+ SFX_PLAYER_GANG_2_TAXI_1,
+ SFX_PLAYER_GANG_2_TAXI_2,
+ SFX_PLAYER_GANG_3_BLOCKED_1,
+ SFX_PLAYER_GANG_3_BLOCKED_2,
+ SFX_PLAYER_GANG_3_BLOCKED_3,
+ SFX_PLAYER_GANG_3_BLOCKED_4,
+ SFX_PLAYER_GANG_3_BLOCKED_5,
+ SFX_PLAYER_GANG_3_BLOCKED_6,
+ SFX_PLAYER_GANG_3_BLOCKED_7,
+ SFX_PLAYER_GANG_3_BLOCKED_8,
+ SFX_PLAYER_GANG_3_BLOCKED_9,
+ SFX_PLAYER_GANG_3_BLOCKED_10,
+ SFX_PLAYER_GANG_3_BUMP_1,
+ SFX_PLAYER_GANG_3_BUMP_2,
+ SFX_PLAYER_GANG_3_BUMP_3,
+ SFX_PLAYER_GANG_3_BUMP_4,
+ SFX_PLAYER_GANG_3_BUMP_5,
+ SFX_PLAYER_GANG_3_CAR_CRASH_1,
+ SFX_PLAYER_GANG_3_CAR_CRASH_2,
+ SFX_PLAYER_GANG_3_CAR_CRASH_3,
+ SFX_PLAYER_GANG_3_CAR_CRASH_4,
+ SFX_PLAYER_GANG_3_CAR_CRASH_5,
+ SFX_PLAYER_GANG_3_CHAT_1,
+ SFX_PLAYER_GANG_3_CHAT_2,
+ SFX_PLAYER_GANG_3_CHAT_3,
+ SFX_PLAYER_GANG_3_CHAT_4,
+ SFX_PLAYER_GANG_3_CHAT_5,
+ SFX_PLAYER_GANG_3_CHAT_6,
+ SFX_PLAYER_GANG_3_CHAT_7,
+ SFX_PLAYER_GANG_3_CHAT_8,
+ SFX_PLAYER_GANG_3_DODGE_1,
+ SFX_PLAYER_GANG_3_DODGE_2,
+ SFX_PLAYER_GANG_3_DODGE_3,
+ SFX_PLAYER_GANG_3_DODGE_4,
+ SFX_PLAYER_GANG_3_DODGE_5,
+ SFX_PLAYER_GANG_3_DODGE_6,
+ SFX_PLAYER_GANG_3_DODGE_7,
+ SFX_PLAYER_GANG_3_EYEING_1,
+ SFX_PLAYER_GANG_3_EYEING_2,
+ SFX_PLAYER_GANG_3_FIGHT_1,
+ SFX_PLAYER_GANG_3_FIGHT_2,
+ SFX_PLAYER_GANG_3_FIGHT_3,
+ SFX_PLAYER_GANG_3_FIGHT_4,
+ SFX_PLAYER_GANG_3_FIGHT_5,
+ SFX_PLAYER_GANG_3_GENERIC_CRASH_1,
+ SFX_PLAYER_GANG_3_GENERIC_CRASH_2,
+ SFX_PLAYER_GANG_3_GENERIC_CRASH_3,
+ SFX_PLAYER_GANG_3_GENERIC_CRASH_4,
+ SFX_PLAYER_GANG_3_GENERIC_CRASH_5,
+ SFX_PLAYER_GANG_3_GUN_COOL_1,
+ SFX_PLAYER_GANG_3_GUN_COOL_2,
+ SFX_PLAYER_GANG_3_GUN_COOL_3,
+ SFX_PLAYER_GANG_3_GUN_COOL_4,
+ SFX_PLAYER_GANG_3_JACKED_1,
+ SFX_PLAYER_GANG_3_JACKED_2,
+ SFX_PLAYER_GANG_3_JACKED_3,
+ SFX_PLAYER_GANG_3_JACKED_4,
+ SFX_PLAYER_GANG_3_JACKED_5,
+ SFX_PLAYER_GANG_3_JACKING_1,
+ SFX_PLAYER_GANG_3_JACKING_2,
+ SFX_PLAYER_GANG_3_JACKING_3,
+ SFX_PLAYER_GANG_3_JACKING_4,
+ SFX_PLAYER_GANG_3_JACKING_5,
+ SFX_PLAYER_GANG_3_LOST_1,
+ SFX_PLAYER_GANG_3_LOST_2,
+ SFX_PLAYER_GANG_3_MUGGED_1,
+ SFX_PLAYER_GANG_3_MUGGED_2,
+ SFX_PLAYER_GANG_3_SAVED_1,
+ SFX_PLAYER_GANG_3_SHOCKED_1,
+ SFX_PLAYER_GANG_3_SHOCKED_2,
+ SFX_PLAYER_GANG_3_TAXI_1,
+ SFX_PLAYER_GANG_3_TAXI_2,
+
+ SFX_GUARD_DUTY_1_BUMP_1,
+ SFX_GUARD_DUTY_1_BUMP_2,
+ SFX_GUARD_DUTY_1_BUMP_3,
+ SFX_GUARD_DUTY_1_BUMP_4,
+ SFX_GUARD_DUTY_1_BUMP_5,
+ SFX_GUARD_DUTY_1_BUMP_6,
+ SFX_GUARD_DUTY_1_BUMP_7,
+ SFX_GUARD_DUTY_1_BUMP_8,
+ SFX_GUARD_DUTY_1_BUMP_9,
+ SFX_GUARD_DUTY_1_BUMP_10,
+ SFX_GUARD_DUTY_1_CHAT_1,
+ SFX_GUARD_DUTY_1_CHAT_2,
+ SFX_GUARD_DUTY_1_CHAT_3,
+ SFX_GUARD_DUTY_1_CHAT_4,
+ SFX_GUARD_DUTY_1_CHAT_5,
+ SFX_GUARD_DUTY_1_CHAT_6,
+ SFX_GUARD_DUTY_1_CHAT_7,
+ SFX_GUARD_DUTY_1_CHAT_8,
+ SFX_GUARD_DUTY_1_CHAT_9,
+ SFX_GUARD_DUTY_1_CHAT_10,
+ SFX_GUARD_DUTY_1_DODGE_1,
+ SFX_GUARD_DUTY_1_DODGE_2,
+ SFX_GUARD_DUTY_1_DODGE_3,
+ SFX_GUARD_DUTY_1_DODGE_4,
+ SFX_GUARD_DUTY_1_DODGE_5,
+ SFX_GUARD_DUTY_1_DODGE_6,
+ SFX_GUARD_DUTY_1_DODGE_7,
+ SFX_GUARD_DUTY_1_DODGE_8,
+ SFX_GUARD_DUTY_1_DODGE_9,
+ SFX_GUARD_DUTY_1_EYEING_1,
+ SFX_GUARD_DUTY_1_EYEING_2,
+ SFX_GUARD_DUTY_1_FIGHT_1,
+ SFX_GUARD_DUTY_1_FIGHT_2,
+ SFX_GUARD_DUTY_1_FIGHT_3,
+ SFX_GUARD_DUTY_1_FIGHT_4,
+ SFX_GUARD_DUTY_1_FIGHT_5,
+ SFX_GUARD_DUTY_1_FIGHT_6,
+ SFX_GUARD_DUTY_1_FIGHT_7,
+ SFX_GUARD_DUTY_1_GUN_COOL_1,
+ SFX_GUARD_DUTY_1_GUN_COOL_2,
+ SFX_GUARD_DUTY_1_GUN_COOL_3,
+ SFX_GUARD_DUTY_1_GUN_COOL_4,
+ SFX_GUARD_DUTY_1_GUN_COOL_5,
+ SFX_GUARD_DUTY_1_GUN_COOL_6,
+ SFX_GUARD_DUTY_1_LOST_1,
+ SFX_GUARD_DUTY_1_LOST_2,
+ SFX_GUARD_DUTY_1_SAVED_1,
+ SFX_GUARD_DUTY_1_SAVED_2,
+ SFX_GUARD_DUTY_1_SHOCKED_1,
+ SFX_GUARD_DUTY_1_SHOCKED_2,
+
+ SFX_GUARD_DUTY_2_BUMP_1,
+ SFX_GUARD_DUTY_2_BUMP_2,
+ SFX_GUARD_DUTY_2_BUMP_3,
+ SFX_GUARD_DUTY_2_BUMP_4,
+ SFX_GUARD_DUTY_2_BUMP_5,
+ SFX_GUARD_DUTY_2_BUMP_6,
+ SFX_GUARD_DUTY_2_BUMP_7,
+ SFX_GUARD_DUTY_2_BUMP_8,
+ SFX_GUARD_DUTY_2_BUMP_9,
+ SFX_GUARD_DUTY_2_BUMP_10,
+ SFX_GUARD_DUTY_2_CHAT_1,
+ SFX_GUARD_DUTY_2_CHAT_2,
+ SFX_GUARD_DUTY_2_CHAT_3,
+ SFX_GUARD_DUTY_2_CHAT_4,
+ SFX_GUARD_DUTY_2_CHAT_5,
+ SFX_GUARD_DUTY_2_CHAT_6,
+ SFX_GUARD_DUTY_2_CHAT_7,
+ SFX_GUARD_DUTY_2_CHAT_8,
+ SFX_GUARD_DUTY_2_CHAT_9,
+ SFX_GUARD_DUTY_2_CHAT_10,
+ SFX_GUARD_DUTY_2_DODGE_1,
+ SFX_GUARD_DUTY_2_DODGE_2,
+ SFX_GUARD_DUTY_2_DODGE_3,
+ SFX_GUARD_DUTY_2_DODGE_4,
+ SFX_GUARD_DUTY_2_DODGE_5,
+ SFX_GUARD_DUTY_2_DODGE_6,
+ SFX_GUARD_DUTY_2_DODGE_7,
+ SFX_GUARD_DUTY_2_DODGE_8,
+ SFX_GUARD_DUTY_2_DODGE_9,
+ SFX_GUARD_DUTY_2_EYEING_1,
+ SFX_GUARD_DUTY_2_EYEING_2,
+ SFX_GUARD_DUTY_2_FIGHT_1,
+ SFX_GUARD_DUTY_2_FIGHT_2,
+ SFX_GUARD_DUTY_2_FIGHT_3,
+ SFX_GUARD_DUTY_2_FIGHT_4,
+ SFX_GUARD_DUTY_2_FIGHT_5,
+ SFX_GUARD_DUTY_2_FIGHT_6,
+ SFX_GUARD_DUTY_2_FIGHT_7,
+ SFX_GUARD_DUTY_2_GUN_COOL_1,
+ SFX_GUARD_DUTY_2_GUN_COOL_2,
+ SFX_GUARD_DUTY_2_GUN_COOL_3,
+ SFX_GUARD_DUTY_2_GUN_COOL_4,
+ SFX_GUARD_DUTY_2_GUN_COOL_5,
+ SFX_GUARD_DUTY_2_GUN_COOL_6,
+ SFX_GUARD_DUTY_2_LOST_1,
+ SFX_GUARD_DUTY_2_LOST_2,
+ SFX_GUARD_DUTY_2_SAVED_1,
+ SFX_GUARD_DUTY_2_SAVED_2,
+ SFX_GUARD_DUTY_2_SHOCKED_1,
+ SFX_GUARD_DUTY_2_SHOCKED_2,
+
+ SFX_GUARD_DUTY_3_BUMP_1,
+ SFX_GUARD_DUTY_3_BUMP_2,
+ SFX_GUARD_DUTY_3_BUMP_3,
+ SFX_GUARD_DUTY_3_BUMP_4,
+ SFX_GUARD_DUTY_3_BUMP_5,
+ SFX_GUARD_DUTY_3_BUMP_6,
+ SFX_GUARD_DUTY_3_BUMP_7,
+ SFX_GUARD_DUTY_3_BUMP_8,
+ SFX_GUARD_DUTY_3_BUMP_9,
+ SFX_GUARD_DUTY_3_BUMP_10,
+ SFX_GUARD_DUTY_3_CHAT_1,
+ SFX_GUARD_DUTY_3_CHAT_2,
+ SFX_GUARD_DUTY_3_CHAT_3,
+ SFX_GUARD_DUTY_3_CHAT_4,
+ SFX_GUARD_DUTY_3_CHAT_5,
+ SFX_GUARD_DUTY_3_CHAT_6,
+ SFX_GUARD_DUTY_3_CHAT_7,
+ SFX_GUARD_DUTY_3_CHAT_8,
+ SFX_GUARD_DUTY_3_CHAT_9,
+ SFX_GUARD_DUTY_3_CHAT_10,
+ SFX_GUARD_DUTY_3_DODGE_1,
+ SFX_GUARD_DUTY_3_DODGE_2,
+ SFX_GUARD_DUTY_3_DODGE_3,
+ SFX_GUARD_DUTY_3_DODGE_4,
+ SFX_GUARD_DUTY_3_DODGE_5,
+ SFX_GUARD_DUTY_3_DODGE_6,
+ SFX_GUARD_DUTY_3_DODGE_7,
+ SFX_GUARD_DUTY_3_DODGE_8,
+ SFX_GUARD_DUTY_3_DODGE_9,
+ SFX_GUARD_DUTY_3_EYEING_1,
+ SFX_GUARD_DUTY_3_EYEING_2,
+ SFX_GUARD_DUTY_3_FIGHT_1,
+ SFX_GUARD_DUTY_3_FIGHT_2,
+ SFX_GUARD_DUTY_3_FIGHT_3,
+ SFX_GUARD_DUTY_3_FIGHT_4,
+ SFX_GUARD_DUTY_3_FIGHT_5,
+ SFX_GUARD_DUTY_3_FIGHT_6,
+ SFX_GUARD_DUTY_3_FIGHT_7,
+ SFX_GUARD_DUTY_3_GUN_COOL_1,
+ SFX_GUARD_DUTY_3_GUN_COOL_2,
+ SFX_GUARD_DUTY_3_GUN_COOL_3,
+ SFX_GUARD_DUTY_3_GUN_COOL_4,
+ SFX_GUARD_DUTY_3_GUN_COOL_5,
+ SFX_GUARD_DUTY_3_GUN_COOL_6,
+ SFX_GUARD_DUTY_3_LOST_1,
+ SFX_GUARD_DUTY_3_LOST_2,
+ SFX_GUARD_DUTY_3_SAVED_1,
+ SFX_GUARD_DUTY_3_SAVED_2,
+ SFX_GUARD_DUTY_3_SHOCKED_1,
+ SFX_GUARD_DUTY_3_SHOCKED_2,
+
+ SFX_VICE_VOICE_1_ARREST_1,
+ SFX_VICE_VOICE_1_ARREST_2,
+ SFX_VICE_VOICE_1_ARREST_3,
+ SFX_VICE_VOICE_1_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_VICE_VOICE_2_ARREST_1,
+ SFX_VICE_VOICE_2_ARREST_2,
+ SFX_VICE_VOICE_2_ARREST_3,
+ SFX_VICE_VOICE_2_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_VICE_VOICE_3_ARREST_1,
+ SFX_VICE_VOICE_3_ARREST_2,
+ SFX_VICE_VOICE_3_ARREST_3,
+ SFX_VICE_VOICE_3_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_VICE_VOICE_4_ARREST_1,
+ SFX_VICE_VOICE_4_ARREST_2,
+ SFX_VICE_VOICE_4_ARREST_3,
+ SFX_VICE_VOICE_4_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_VICE_VOICE_5_ARREST_1,
+ SFX_VICE_VOICE_5_ARREST_2,
+ SFX_VICE_VOICE_5_ARREST_3,
+ SFX_VICE_VOICE_5_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_VICE_VOICE_6_ARREST_1,
+ SFX_VICE_VOICE_6_ARREST_2,
+ SFX_VICE_VOICE_6_ARREST_3,
+ SFX_VICE_VOICE_6_MIAMIVICE_EXITING_CAR_1,
+
+ SFX_DEFAULT_VOICE_BLOCKED_1,
+ SFX_DEFAULT_VOICE_BLOCKED_2,
+ SFX_DEFAULT_VOICE_BLOCKED_3,
+ SFX_DEFAULT_VOICE_BLOCKED_4,
+ SFX_DEFAULT_VOICE_BLOCKED_5,
+ SFX_DEFAULT_VOICE_BLOCKED_6,
+ SFX_DEFAULT_VOICE_BLOCKED_7,
+ SFX_DEFAULT_VOICE_BLOCKED_8,
+ SFX_DEFAULT_VOICE_BLOCKED_9,
+ SFX_DEFAULT_VOICE_BLOCKED_10,
+ SFX_DEFAULT_VOICE_BLOCKED_11,
+ SFX_DEFAULT_VOICE_BLOCKED_12,
+ SFX_DEFAULT_VOICE_BLOCKED_13,
+ SFX_DEFAULT_VOICE_BLOCKED_14,
+ SFX_DEFAULT_VOICE_BLOCKED_15,
+ SFX_DEFAULT_VOICE_BLOCKED_16,
+ SFX_DEFAULT_VOICE_BUMP_1,
+ SFX_DEFAULT_VOICE_BUMP_2,
+ SFX_DEFAULT_VOICE_BUMP_3,
+ SFX_DEFAULT_VOICE_BUMP_4,
+ SFX_DEFAULT_VOICE_BUMP_5,
+ SFX_DEFAULT_VOICE_BUMP_6,
+ SFX_DEFAULT_VOICE_BUMP_7,
+ SFX_DEFAULT_VOICE_BUMP_8,
+ SFX_DEFAULT_VOICE_BUMP_9,
+ SFX_DEFAULT_VOICE_BUMP_10,
+ SFX_DEFAULT_VOICE_BUMP_11,
+ SFX_DEFAULT_VOICE_BUMP_12,
+ SFX_DEFAULT_VOICE_BUMP_13,
+ SFX_DEFAULT_VOICE_BUMP_14,
+ SFX_DEFAULT_VOICE_BUMP_15,
+ SFX_DEFAULT_VOICE_BUMP_16,
+ SFX_DEFAULT_VOICE_BUMP_17,
+ SFX_DEFAULT_VOICE_BUMP_18,
+ SFX_DEFAULT_VOICE_BUMP_19,
+ SFX_DEFAULT_VOICE_BUMP_20,
+ SFX_DEFAULT_VOICE_BUMP_21,
+ SFX_DEFAULT_VOICE_BUMP_22,
+ SFX_DEFAULT_VOICE_BUMP_23,
+ SFX_DEFAULT_VOICE_BUMP_24,
+ SFX_DEFAULT_VOICE_BUMP_25,
+ SFX_DEFAULT_VOICE_CAR_CRASH_1,
+ SFX_DEFAULT_VOICE_CAR_CRASH_2,
+ SFX_DEFAULT_VOICE_CAR_CRASH_3,
+ SFX_DEFAULT_VOICE_CAR_CRASH_4,
+ SFX_DEFAULT_VOICE_CAR_CRASH_5,
+ SFX_DEFAULT_VOICE_CAR_CRASH_6,
+ SFX_DEFAULT_VOICE_CAR_CRASH_7,
+ SFX_DEFAULT_VOICE_CAR_CRASH_8,
+ SFX_DEFAULT_VOICE_CAR_CRASH_9,
+ SFX_DEFAULT_VOICE_CAR_CRASH_10,
+ SFX_DEFAULT_VOICE_CAR_CRASH_11,
+ SFX_DEFAULT_VOICE_CAR_CRASH_12,
+ SFX_DEFAULT_VOICE_CAR_CRASH_13,
+ SFX_DEFAULT_VOICE_CAR_CRASH_14,
+ SFX_DEFAULT_VOICE_CAR_CRASH_15,
+ SFX_DEFAULT_VOICE_CHAT_1,
+ SFX_DEFAULT_VOICE_CHAT_2,
+ SFX_DEFAULT_VOICE_CHAT_3,
+ SFX_DEFAULT_VOICE_CHAT_4,
+ SFX_DEFAULT_VOICE_CHAT_5,
+ SFX_DEFAULT_VOICE_CHAT_6,
+ SFX_DEFAULT_VOICE_CHAT_7,
+ SFX_DEFAULT_VOICE_CHAT_8,
+ SFX_DEFAULT_VOICE_CHAT_9,
+ SFX_DEFAULT_VOICE_CHAT_10,
+ SFX_DEFAULT_VOICE_CHAT_11,
+ SFX_DEFAULT_VOICE_CHAT_12,
+ SFX_DEFAULT_VOICE_CHAT_13,
+ SFX_DEFAULT_VOICE_CHAT_14,
+ SFX_DEFAULT_VOICE_CHAT_15,
+ SFX_DEFAULT_VOICE_CHAT_16,
+ SFX_DEFAULT_VOICE_CHAT_17,
+ SFX_DEFAULT_VOICE_CHAT_18,
+ SFX_DEFAULT_VOICE_CHAT_19,
+ SFX_DEFAULT_VOICE_CHAT_20,
+ SFX_DEFAULT_VOICE_CHAT_21,
+ SFX_DEFAULT_VOICE_CHAT_22,
+ SFX_DEFAULT_VOICE_CHAT_23,
+ SFX_DEFAULT_VOICE_CHAT_24,
+ SFX_DEFAULT_VOICE_CHAT_25,
+ SFX_DEFAULT_VOICE_DODGE_1,
+ SFX_DEFAULT_VOICE_DODGE_2,
+ SFX_DEFAULT_VOICE_DODGE_3,
+ SFX_DEFAULT_VOICE_DODGE_4,
+ SFX_DEFAULT_VOICE_DODGE_5,
+ SFX_DEFAULT_VOICE_DODGE_6,
+ SFX_DEFAULT_VOICE_DODGE_7,
+ SFX_DEFAULT_VOICE_DODGE_8,
+ SFX_DEFAULT_VOICE_DODGE_9,
+ SFX_DEFAULT_VOICE_DODGE_10,
+ SFX_DEFAULT_VOICE_DODGE_11,
+ SFX_DEFAULT_VOICE_DODGE_12,
+ SFX_DEFAULT_VOICE_DODGE_13,
+ SFX_DEFAULT_VOICE_DODGE_14,
+ SFX_DEFAULT_VOICE_DODGE_15,
+ SFX_DEFAULT_VOICE_DODGE_16,
+ SFX_DEFAULT_VOICE_DODGE_17,
+ SFX_DEFAULT_VOICE_DODGE_18,
+ SFX_DEFAULT_VOICE_DODGE_19,
+ SFX_DEFAULT_VOICE_EYEING_1,
+ SFX_DEFAULT_VOICE_EYEING_2,
+ SFX_DEFAULT_VOICE_EYEING_3,
+ SFX_DEFAULT_VOICE_EYEING_4,
+ SFX_DEFAULT_VOICE_EYEING_5,
+ SFX_DEFAULT_VOICE_EYEING_6,
+ SFX_DEFAULT_VOICE_FIGHT_1,
+ SFX_DEFAULT_VOICE_FIGHT_2,
+ SFX_DEFAULT_VOICE_FIGHT_3,
+ SFX_DEFAULT_VOICE_FIGHT_4,
+ SFX_DEFAULT_VOICE_FIGHT_5,
+ SFX_DEFAULT_VOICE_FIGHT_6,
+ SFX_DEFAULT_VOICE_FIGHT_7,
+ SFX_DEFAULT_VOICE_FIGHT_8,
+ SFX_DEFAULT_VOICE_FIGHT_9,
+ SFX_DEFAULT_VOICE_FIGHT_10,
+ SFX_DEFAULT_VOICE_FIGHT_11,
+ SFX_DEFAULT_VOICE_FIGHT_12,
+ SFX_DEFAULT_VOICE_FIGHT_13,
+ SFX_DEFAULT_VOICE_FIGHT_14,
+ SFX_DEFAULT_VOICE_FIGHT_15,
+ SFX_DEFAULT_VOICE_FIGHT_16,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_1,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_2,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_3,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_4,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_5,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_6,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_7,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_8,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_9,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_10,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_11,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_12,
+ SFX_DEFAULT_VOICE_GENERIC_CRASH_13,
+ SFX_DEFAULT_VOICE_GUN_PANIC_1,
+ SFX_DEFAULT_VOICE_GUN_PANIC_2,
+ SFX_DEFAULT_VOICE_GUN_PANIC_3,
+ SFX_DEFAULT_VOICE_GUN_PANIC_4,
+ SFX_DEFAULT_VOICE_GUN_PANIC_5,
+ SFX_DEFAULT_VOICE_GUN_PANIC_6,
+ SFX_DEFAULT_VOICE_GUN_PANIC_7,
+ SFX_DEFAULT_VOICE_GUN_PANIC_8,
+ SFX_DEFAULT_VOICE_GUN_PANIC_9,
+ SFX_DEFAULT_VOICE_GUN_PANIC_10,
+ SFX_DEFAULT_VOICE_GUN_PANIC_11,
+ SFX_DEFAULT_VOICE_GUN_PANIC_12,
+ SFX_DEFAULT_VOICE_JACKED_1,
+ SFX_DEFAULT_VOICE_JACKED_2,
+ SFX_DEFAULT_VOICE_JACKED_3,
+ SFX_DEFAULT_VOICE_JACKED_4,
+ SFX_DEFAULT_VOICE_JACKED_5,
+ SFX_DEFAULT_VOICE_JACKED_6,
+ SFX_DEFAULT_VOICE_JACKED_7,
+ SFX_DEFAULT_VOICE_JACKED_8,
+ SFX_DEFAULT_VOICE_JACKED_9,
+ SFX_DEFAULT_VOICE_JACKED_10,
+ SFX_DEFAULT_VOICE_JACKED_11,
+ SFX_DEFAULT_VOICE_JACKED_12,
+ SFX_DEFAULT_VOICE_JACKING_1,
+ SFX_DEFAULT_VOICE_JACKING_2,
+ SFX_DEFAULT_VOICE_JACKING_3,
+ SFX_DEFAULT_VOICE_JACKING_4,
+ SFX_DEFAULT_VOICE_JACKING_5,
+ SFX_DEFAULT_VOICE_JACKING_6,
+ SFX_DEFAULT_VOICE_JACKING_7,
+ SFX_DEFAULT_VOICE_JACKING_8,
+ SFX_DEFAULT_VOICE_JACKING_9,
+ SFX_DEFAULT_VOICE_JACKING_10,
+ SFX_DEFAULT_VOICE_JACKING_11,
+ SFX_DEFAULT_VOICE_JACKING_12,
+ SFX_DEFAULT_VOICE_JACKING_13,
+ SFX_DEFAULT_VOICE_LOST_1,
+ SFX_DEFAULT_VOICE_LOST_2,
+ SFX_DEFAULT_VOICE_LOST_3,
+ SFX_DEFAULT_VOICE_LOST_4,
+ SFX_DEFAULT_VOICE_LOST_5,
+ SFX_DEFAULT_VOICE_MUGGED_1,
+ SFX_DEFAULT_VOICE_MUGGED_2,
+ SFX_DEFAULT_VOICE_MUGGED_3,
+ SFX_DEFAULT_VOICE_MUGGED_4,
+ SFX_DEFAULT_VOICE_RUN_1,
+ SFX_DEFAULT_VOICE_RUN_2,
+ SFX_DEFAULT_VOICE_RUN_3,
+ SFX_DEFAULT_VOICE_RUN_4,
+ SFX_DEFAULT_VOICE_RUN_5,
+ SFX_DEFAULT_VOICE_RUN_6,
+ SFX_DEFAULT_VOICE_RUN_7,
+ SFX_DEFAULT_VOICE_RUN_8,
+ SFX_DEFAULT_VOICE_RUN_9,
+ SFX_DEFAULT_VOICE_RUN_10,
+ SFX_DEFAULT_VOICE_RUN_11,
+ SFX_DEFAULT_VOICE_RUN_12,
+ SFX_DEFAULT_VOICE_RUN_13,
+ SFX_DEFAULT_VOICE_RUN_14,
+ SFX_DEFAULT_VOICE_RUN_15,
+ SFX_DEFAULT_VOICE_RUN_16,
+ SFX_DEFAULT_VOICE_RUN_17,
+ SFX_DEFAULT_VOICE_RUN_18,
+ SFX_DEFAULT_VOICE_RUN_19,
+ SFX_DEFAULT_VOICE_SAVED_1,
+ SFX_DEFAULT_VOICE_SAVED_2,
+ SFX_DEFAULT_VOICE_SAVED_3,
+ SFX_DEFAULT_VOICE_SAVED_4,
+ SFX_DEFAULT_VOICE_SHOCKED_1,
+ SFX_DEFAULT_VOICE_SHOCKED_2,
+ SFX_DEFAULT_VOICE_SHOCKED_3,
+ SFX_DEFAULT_VOICE_SHOCKED_4,
+ SFX_DEFAULT_VOICE_SHOCKED_5,
+ SFX_DEFAULT_VOICE_SHOCKED_6,
+ SFX_DEFAULT_VOICE_TAXI_1,
+ SFX_DEFAULT_VOICE_TAXI_2,
+ SFX_DEFAULT_VOICE_TAXI_3,
+ SFX_DEFAULT_VOICE_TAXI_4,
+ SFX_DEFAULT_VOICE_TAXI_5,
+
+ SFX_CUBAN_GANG_1_BLOCKED_1,
+ SFX_CUBAN_GANG_1_BLOCKED_2,
+ SFX_CUBAN_GANG_1_BLOCKED_3,
+ SFX_CUBAN_GANG_1_BLOCKED_4,
+ SFX_CUBAN_GANG_1_BLOCKED_5,
+ SFX_CUBAN_GANG_1_BLOCKED_6,
+ SFX_CUBAN_GANG_1_BLOCKED_7,
+ SFX_CUBAN_GANG_1_BLOCKED_8,
+ SFX_CUBAN_GANG_1_BUMP_1,
+ SFX_CUBAN_GANG_1_BUMP_2,
+ SFX_CUBAN_GANG_1_BUMP_3,
+ SFX_CUBAN_GANG_1_BUMP_4,
+ SFX_CUBAN_GANG_1_BUMP_5,
+ SFX_CUBAN_GANG_1_BUMP_6,
+ SFX_CUBAN_GANG_1_BUMP_7,
+ SFX_CUBAN_GANG_1_BUMP_8,
+ SFX_CUBAN_GANG_1_BUMP_9,
+ SFX_CUBAN_GANG_1_BUMP_10,
+ SFX_CUBAN_GANG_1_BUMP_11,
+ SFX_CUBAN_GANG_1_CAR_CRASH_1,
+ SFX_CUBAN_GANG_1_CAR_CRASH_2,
+ SFX_CUBAN_GANG_1_CAR_CRASH_3,
+ SFX_CUBAN_GANG_1_CAR_CRASH_4,
+ SFX_CUBAN_GANG_1_CAR_CRASH_5,
+ SFX_CUBAN_GANG_1_CAR_CRASH_6,
+ SFX_CUBAN_GANG_1_CAR_CRASH_7,
+ SFX_CUBAN_GANG_1_CAR_CRASH_8,
+ SFX_CUBAN_GANG_1_CHAT_1,
+ SFX_CUBAN_GANG_1_CHAT_2,
+ SFX_CUBAN_GANG_1_CHAT_3,
+ SFX_CUBAN_GANG_1_CHAT_4,
+ SFX_CUBAN_GANG_1_CHAT_5,
+ SFX_CUBAN_GANG_1_CHAT_6,
+ SFX_CUBAN_GANG_1_CHAT_7,
+ SFX_CUBAN_GANG_1_CHAT_8,
+ SFX_CUBAN_GANG_1_CHAT_9,
+ SFX_CUBAN_GANG_1_CHAT_10,
+ SFX_CUBAN_GANG_1_DODGE_1,
+ SFX_CUBAN_GANG_1_DODGE_2,
+ SFX_CUBAN_GANG_1_DODGE_3,
+ SFX_CUBAN_GANG_1_DODGE_4,
+ SFX_CUBAN_GANG_1_DODGE_5,
+ SFX_CUBAN_GANG_1_DODGE_6,
+ SFX_CUBAN_GANG_1_DODGE_7,
+ SFX_CUBAN_GANG_1_DODGE_8,
+ SFX_CUBAN_GANG_1_DODGE_9,
+ SFX_CUBAN_GANG_1_EYEING_1,
+ SFX_CUBAN_GANG_1_EYEING_2,
+ SFX_CUBAN_GANG_1_FIGHT_1,
+ SFX_CUBAN_GANG_1_FIGHT_2,
+ SFX_CUBAN_GANG_1_FIGHT_3,
+ SFX_CUBAN_GANG_1_FIGHT_4,
+ SFX_CUBAN_GANG_1_FIGHT_5,
+ SFX_CUBAN_GANG_1_FIGHT_6,
+ SFX_CUBAN_GANG_1_FIGHT_7,
+ SFX_CUBAN_GANG_1_FIGHT_8,
+ SFX_CUBAN_GANG_1_FIGHT_9,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_1,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_2,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_3,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_4,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_5,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_6,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_7,
+ SFX_CUBAN_GANG_1_GENERIC_CRASH_8,
+ SFX_CUBAN_GANG_1_GUN_COOL_1,
+ SFX_CUBAN_GANG_1_GUN_COOL_2,
+ SFX_CUBAN_GANG_1_GUN_COOL_3,
+ SFX_CUBAN_GANG_1_GUN_COOL_4,
+ SFX_CUBAN_GANG_1_GUN_COOL_5,
+ SFX_CUBAN_GANG_1_JACKED_1,
+ SFX_CUBAN_GANG_1_JACKED_2,
+ SFX_CUBAN_GANG_1_JACKED_3,
+ SFX_CUBAN_GANG_1_JACKED_4,
+ SFX_CUBAN_GANG_1_JACKING_1,
+ SFX_CUBAN_GANG_1_JACKING_2,
+ SFX_CUBAN_GANG_1_JACKING_3,
+ SFX_CUBAN_GANG_1_JACKING_4,
+ SFX_CUBAN_GANG_1_JACKING_5,
+ SFX_CUBAN_GANG_1_LOST_1,
+ SFX_CUBAN_GANG_1_LOST_2,
+ SFX_CUBAN_GANG_1_MUGGED_1,
+ SFX_CUBAN_GANG_1_MUGGED_2,
+ SFX_CUBAN_GANG_1_SAVED_1,
+ SFX_CUBAN_GANG_1_TAXI_1,
+ SFX_CUBAN_GANG_1_TAXI_2,
+ SFX_CUBAN_GANG_2_BLOCKED_1,
+ SFX_CUBAN_GANG_2_BLOCKED_2,
+ SFX_CUBAN_GANG_2_BLOCKED_3,
+ SFX_CUBAN_GANG_2_BLOCKED_4,
+ SFX_CUBAN_GANG_2_BLOCKED_5,
+ SFX_CUBAN_GANG_2_BLOCKED_6,
+ SFX_CUBAN_GANG_2_BLOCKED_7,
+ SFX_CUBAN_GANG_2_BLOCKED_8,
+ SFX_CUBAN_GANG_2_BUMP_1,
+ SFX_CUBAN_GANG_2_BUMP_2,
+ SFX_CUBAN_GANG_2_BUMP_3,
+ SFX_CUBAN_GANG_2_BUMP_4,
+ SFX_CUBAN_GANG_2_BUMP_5,
+ SFX_CUBAN_GANG_2_BUMP_6,
+ SFX_CUBAN_GANG_2_BUMP_7,
+ SFX_CUBAN_GANG_2_BUMP_8,
+ SFX_CUBAN_GANG_2_BUMP_9,
+ SFX_CUBAN_GANG_2_BUMP_10,
+ SFX_CUBAN_GANG_2_BUMP_11,
+ SFX_CUBAN_GANG_2_CAR_CRASH_1,
+ SFX_CUBAN_GANG_2_CAR_CRASH_2,
+ SFX_CUBAN_GANG_2_CAR_CRASH_3,
+ SFX_CUBAN_GANG_2_CAR_CRASH_4,
+ SFX_CUBAN_GANG_2_CAR_CRASH_5,
+ SFX_CUBAN_GANG_2_CAR_CRASH_6,
+ SFX_CUBAN_GANG_2_CAR_CRASH_7,
+ SFX_CUBAN_GANG_2_CAR_CRASH_8,
+ SFX_CUBAN_GANG_2_CHAT_1,
+ SFX_CUBAN_GANG_2_CHAT_2,
+ SFX_CUBAN_GANG_2_CHAT_3,
+ SFX_CUBAN_GANG_2_CHAT_4,
+ SFX_CUBAN_GANG_2_CHAT_5,
+ SFX_CUBAN_GANG_2_CHAT_6,
+ SFX_CUBAN_GANG_2_CHAT_7,
+ SFX_CUBAN_GANG_2_CHAT_8,
+ SFX_CUBAN_GANG_2_CHAT_9,
+ SFX_CUBAN_GANG_2_CHAT_10,
+ SFX_CUBAN_GANG_2_DODGE_1,
+ SFX_CUBAN_GANG_2_DODGE_2,
+ SFX_CUBAN_GANG_2_DODGE_3,
+ SFX_CUBAN_GANG_2_DODGE_4,
+ SFX_CUBAN_GANG_2_DODGE_5,
+ SFX_CUBAN_GANG_2_DODGE_6,
+ SFX_CUBAN_GANG_2_DODGE_7,
+ SFX_CUBAN_GANG_2_DODGE_8,
+ SFX_CUBAN_GANG_2_DODGE_9,
+ SFX_CUBAN_GANG_2_EYEING_1,
+ SFX_CUBAN_GANG_2_EYEING_2,
+ SFX_CUBAN_GANG_2_FIGHT_1,
+ SFX_CUBAN_GANG_2_FIGHT_2,
+ SFX_CUBAN_GANG_2_FIGHT_3,
+ SFX_CUBAN_GANG_2_FIGHT_4,
+ SFX_CUBAN_GANG_2_FIGHT_5,
+ SFX_CUBAN_GANG_2_FIGHT_6,
+ SFX_CUBAN_GANG_2_FIGHT_7,
+ SFX_CUBAN_GANG_2_FIGHT_8,
+ SFX_CUBAN_GANG_2_FIGHT_9,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_1,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_2,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_3,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_4,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_5,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_6,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_7,
+ SFX_CUBAN_GANG_2_GENERIC_CRASH_8,
+ SFX_CUBAN_GANG_2_GUN_COOL_1,
+ SFX_CUBAN_GANG_2_GUN_COOL_2,
+ SFX_CUBAN_GANG_2_GUN_COOL_3,
+ SFX_CUBAN_GANG_2_GUN_COOL_4,
+ SFX_CUBAN_GANG_2_GUN_COOL_5,
+ SFX_CUBAN_GANG_2_JACKED_1,
+ SFX_CUBAN_GANG_2_JACKED_2,
+ SFX_CUBAN_GANG_2_JACKED_3,
+ SFX_CUBAN_GANG_2_JACKED_4,
+ SFX_CUBAN_GANG_2_JACKING_1,
+ SFX_CUBAN_GANG_2_JACKING_2,
+ SFX_CUBAN_GANG_2_JACKING_3,
+ SFX_CUBAN_GANG_2_JACKING_4,
+ SFX_CUBAN_GANG_2_JACKING_5,
+ SFX_CUBAN_GANG_2_LOST_1,
+ SFX_CUBAN_GANG_2_LOST_2,
+ SFX_CUBAN_GANG_2_MUGGED_1,
+ SFX_CUBAN_GANG_2_MUGGED_2,
+ SFX_CUBAN_GANG_2_SAVED_1,
+ SFX_CUBAN_GANG_2_TAXI_1,
+ SFX_CUBAN_GANG_2_TAXI_2,
+ SFX_CUBAN_GANG_3_BLOCKED_1,
+ SFX_CUBAN_GANG_3_BLOCKED_2,
+ SFX_CUBAN_GANG_3_BLOCKED_3,
+ SFX_CUBAN_GANG_3_BLOCKED_4,
+ SFX_CUBAN_GANG_3_BLOCKED_5,
+ SFX_CUBAN_GANG_3_BLOCKED_6,
+ SFX_CUBAN_GANG_3_BLOCKED_7,
+ SFX_CUBAN_GANG_3_BLOCKED_8,
+ SFX_CUBAN_GANG_3_BUMP_1,
+ SFX_CUBAN_GANG_3_BUMP_2,
+ SFX_CUBAN_GANG_3_BUMP_3,
+ SFX_CUBAN_GANG_3_BUMP_4,
+ SFX_CUBAN_GANG_3_BUMP_5,
+ SFX_CUBAN_GANG_3_BUMP_6,
+ SFX_CUBAN_GANG_3_BUMP_7,
+ SFX_CUBAN_GANG_3_BUMP_8,
+ SFX_CUBAN_GANG_3_BUMP_9,
+ SFX_CUBAN_GANG_3_BUMP_10,
+ SFX_CUBAN_GANG_3_BUMP_11,
+ SFX_CUBAN_GANG_3_CAR_CRASH_1,
+ SFX_CUBAN_GANG_3_CAR_CRASH_2,
+ SFX_CUBAN_GANG_3_CAR_CRASH_3,
+ SFX_CUBAN_GANG_3_CAR_CRASH_4,
+ SFX_CUBAN_GANG_3_CAR_CRASH_5,
+ SFX_CUBAN_GANG_3_CAR_CRASH_6,
+ SFX_CUBAN_GANG_3_CAR_CRASH_7,
+ SFX_CUBAN_GANG_3_CAR_CRASH_8,
+ SFX_CUBAN_GANG_3_CHAT_1,
+ SFX_CUBAN_GANG_3_CHAT_2,
+ SFX_CUBAN_GANG_3_CHAT_3,
+ SFX_CUBAN_GANG_3_CHAT_4,
+ SFX_CUBAN_GANG_3_CHAT_5,
+ SFX_CUBAN_GANG_3_CHAT_6,
+ SFX_CUBAN_GANG_3_CHAT_7,
+ SFX_CUBAN_GANG_3_CHAT_8,
+ SFX_CUBAN_GANG_3_CHAT_9,
+ SFX_CUBAN_GANG_3_CHAT_10,
+ SFX_CUBAN_GANG_3_DODGE_1,
+ SFX_CUBAN_GANG_3_DODGE_2,
+ SFX_CUBAN_GANG_3_DODGE_3,
+ SFX_CUBAN_GANG_3_DODGE_4,
+ SFX_CUBAN_GANG_3_DODGE_5,
+ SFX_CUBAN_GANG_3_DODGE_6,
+ SFX_CUBAN_GANG_3_DODGE_7,
+ SFX_CUBAN_GANG_3_DODGE_8,
+ SFX_CUBAN_GANG_3_DODGE_9,
+ SFX_CUBAN_GANG_3_EYEING_1,
+ SFX_CUBAN_GANG_3_EYEING_2,
+ SFX_CUBAN_GANG_3_FIGHT_1,
+ SFX_CUBAN_GANG_3_FIGHT_2,
+ SFX_CUBAN_GANG_3_FIGHT_3,
+ SFX_CUBAN_GANG_3_FIGHT_4,
+ SFX_CUBAN_GANG_3_FIGHT_5,
+ SFX_CUBAN_GANG_3_FIGHT_6,
+ SFX_CUBAN_GANG_3_FIGHT_7,
+ SFX_CUBAN_GANG_3_FIGHT_8,
+ SFX_CUBAN_GANG_3_FIGHT_9,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_1,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_2,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_3,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_4,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_5,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_6,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_7,
+ SFX_CUBAN_GANG_3_GENERIC_CRASH_8,
+ SFX_CUBAN_GANG_3_GUN_COOL_1,
+ SFX_CUBAN_GANG_3_GUN_COOL_2,
+ SFX_CUBAN_GANG_3_GUN_COOL_3,
+ SFX_CUBAN_GANG_3_GUN_COOL_4,
+ SFX_CUBAN_GANG_3_GUN_COOL_5,
+ SFX_CUBAN_GANG_3_JACKED_1,
+ SFX_CUBAN_GANG_3_JACKED_2,
+ SFX_CUBAN_GANG_3_JACKED_3,
+ SFX_CUBAN_GANG_3_JACKED_4,
+ SFX_CUBAN_GANG_3_JACKING_1,
+ SFX_CUBAN_GANG_3_JACKING_2,
+ SFX_CUBAN_GANG_3_JACKING_3,
+ SFX_CUBAN_GANG_3_JACKING_4,
+ SFX_CUBAN_GANG_3_JACKING_5,
+ SFX_CUBAN_GANG_3_LOST_1,
+ SFX_CUBAN_GANG_3_LOST_2,
+ SFX_CUBAN_GANG_3_MUGGED_1,
+ SFX_CUBAN_GANG_3_MUGGED_2,
+ SFX_CUBAN_GANG_3_SAVED_1,
+ SFX_CUBAN_GANG_3_TAXI_1,
+ SFX_CUBAN_GANG_3_TAXI_2,
+
+ SFX_BIKER_GANG_1_BLOCKED_1,
+ SFX_BIKER_GANG_1_BLOCKED_2,
+ SFX_BIKER_GANG_1_BLOCKED_3,
+ SFX_BIKER_GANG_1_BLOCKED_4,
+ SFX_BIKER_GANG_1_BLOCKED_5,
+ SFX_BIKER_GANG_1_BLOCKED_6,
+ SFX_BIKER_GANG_1_BLOCKED_7,
+ SFX_BIKER_GANG_1_BLOCKED_8,
+ SFX_BIKER_GANG_1_BLOCKED_9,
+ SFX_BIKER_GANG_1_BLOCKED_10,
+ SFX_BIKER_GANG_1_BUMP_1,
+ SFX_BIKER_GANG_1_BUMP_2,
+ SFX_BIKER_GANG_1_BUMP_3,
+ SFX_BIKER_GANG_1_BUMP_4,
+ SFX_BIKER_GANG_1_BUMP_5,
+ SFX_BIKER_GANG_1_BUMP_6,
+ SFX_BIKER_GANG_1_BUMP_7,
+ SFX_BIKER_GANG_1_BUMP_8,
+ SFX_BIKER_GANG_1_BUMP_9,
+ SFX_BIKER_GANG_1_BUMP_10,
+ SFX_BIKER_GANG_1_CHAT_1,
+ SFX_BIKER_GANG_1_CHAT_2,
+ SFX_BIKER_GANG_1_CHAT_3,
+ SFX_BIKER_GANG_1_CHAT_4,
+ SFX_BIKER_GANG_1_CHAT_5,
+ SFX_BIKER_GANG_1_CHAT_6,
+ SFX_BIKER_GANG_1_CHAT_7,
+ SFX_BIKER_GANG_1_CHAT_8,
+ SFX_BIKER_GANG_1_CHAT_9,
+ SFX_BIKER_GANG_1_CHAT_10,
+ SFX_BIKER_GANG_1_CHAT_11,
+ SFX_BIKER_GANG_1_CHAT_12,
+ SFX_BIKER_GANG_1_DODGE_1,
+ SFX_BIKER_GANG_1_DODGE_2,
+ SFX_BIKER_GANG_1_DODGE_3,
+ SFX_BIKER_GANG_1_DODGE_4,
+ SFX_BIKER_GANG_1_DODGE_5,
+ SFX_BIKER_GANG_1_DODGE_6,
+ SFX_BIKER_GANG_1_DODGE_7,
+ SFX_BIKER_GANG_1_DODGE_8,
+ SFX_BIKER_GANG_1_DODGE_9,
+ SFX_BIKER_GANG_1_FIGHT_1,
+ SFX_BIKER_GANG_1_FIGHT_2,
+ SFX_BIKER_GANG_1_FIGHT_3,
+ SFX_BIKER_GANG_1_FIGHT_4,
+ SFX_BIKER_GANG_1_FIGHT_5,
+ SFX_BIKER_GANG_1_FIGHT_6,
+ SFX_BIKER_GANG_1_FIGHT_7,
+ SFX_BIKER_GANG_1_FIGHT_8,
+ SFX_BIKER_GANG_1_FIGHT_9,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_1,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_2,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_3,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_4,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_5,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_6,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_7,
+ SFX_BIKER_GANG_1_GENERIC_CRASH_8,
+ SFX_BIKER_GANG_1_GUN_COOL_1,
+ SFX_BIKER_GANG_1_GUN_COOL_2,
+ SFX_BIKER_GANG_1_GUN_COOL_3,
+ SFX_BIKER_GANG_1_GUN_COOL_4,
+ SFX_BIKER_GANG_1_GUN_COOL_5,
+ SFX_BIKER_GANG_1_JACKED_1,
+ SFX_BIKER_GANG_1_JACKED_2,
+ SFX_BIKER_GANG_1_JACKED_3,
+ SFX_BIKER_GANG_1_JACKED_4,
+ SFX_BIKER_GANG_1_JACKED_5,
+ SFX_BIKER_GANG_1_JACKED_6,
+ SFX_BIKER_GANG_1_JACKED_7,
+ SFX_BIKER_GANG_1_JACKED_8,
+ SFX_BIKER_GANG_1_JACKING_1,
+ SFX_BIKER_GANG_1_JACKING_2,
+ SFX_BIKER_GANG_1_JACKING_3,
+ SFX_BIKER_GANG_1_JACKING_4,
+ SFX_BIKER_GANG_1_LOST_1,
+ SFX_BIKER_GANG_1_LOST_2,
+ SFX_BIKER_GANG_1_MUGGED_1,
+ SFX_BIKER_GANG_1_MUGGED_2,
+ SFX_BIKER_GANG_1_SAVED_1,
+ SFX_BIKER_GANG_1_TAXI_1,
+ SFX_BIKER_GANG_1_TAXI_2,
+
+ SFX_BIKER_GANG_2_BLOCKED_1,
+ SFX_BIKER_GANG_2_BLOCKED_2,
+ SFX_BIKER_GANG_2_BLOCKED_3,
+ SFX_BIKER_GANG_2_BLOCKED_4,
+ SFX_BIKER_GANG_2_BLOCKED_5,
+ SFX_BIKER_GANG_2_BLOCKED_6,
+ SFX_BIKER_GANG_2_BLOCKED_7,
+ SFX_BIKER_GANG_2_BLOCKED_8,
+ SFX_BIKER_GANG_2_BLOCKED_9,
+ SFX_BIKER_GANG_2_BLOCKED_10,
+ SFX_BIKER_GANG_2_BUMP_1,
+ SFX_BIKER_GANG_2_BUMP_2,
+ SFX_BIKER_GANG_2_BUMP_3,
+ SFX_BIKER_GANG_2_BUMP_4,
+ SFX_BIKER_GANG_2_BUMP_5,
+ SFX_BIKER_GANG_2_BUMP_6,
+ SFX_BIKER_GANG_2_BUMP_7,
+ SFX_BIKER_GANG_2_BUMP_8,
+ SFX_BIKER_GANG_2_BUMP_9,
+ SFX_BIKER_GANG_2_BUMP_10,
+ SFX_BIKER_GANG_2_CHAT_1,
+ SFX_BIKER_GANG_2_CHAT_2,
+ SFX_BIKER_GANG_2_CHAT_3,
+ SFX_BIKER_GANG_2_CHAT_4,
+ SFX_BIKER_GANG_2_CHAT_5,
+ SFX_BIKER_GANG_2_CHAT_6,
+ SFX_BIKER_GANG_2_CHAT_7,
+ SFX_BIKER_GANG_2_CHAT_8,
+ SFX_BIKER_GANG_2_CHAT_9,
+ SFX_BIKER_GANG_2_CHAT_10,
+ SFX_BIKER_GANG_2_CHAT_11,
+ SFX_BIKER_GANG_2_CHAT_12,
+ SFX_BIKER_GANG_2_DODGE_1,
+ SFX_BIKER_GANG_2_DODGE_2,
+ SFX_BIKER_GANG_2_DODGE_3,
+ SFX_BIKER_GANG_2_DODGE_4,
+ SFX_BIKER_GANG_2_DODGE_5,
+ SFX_BIKER_GANG_2_DODGE_6,
+ SFX_BIKER_GANG_2_DODGE_7,
+ SFX_BIKER_GANG_2_DODGE_8,
+ SFX_BIKER_GANG_2_DODGE_9,
+ SFX_BIKER_GANG_2_FIGHT_1,
+ SFX_BIKER_GANG_2_FIGHT_2,
+ SFX_BIKER_GANG_2_FIGHT_3,
+ SFX_BIKER_GANG_2_FIGHT_4,
+ SFX_BIKER_GANG_2_FIGHT_5,
+ SFX_BIKER_GANG_2_FIGHT_6,
+ SFX_BIKER_GANG_2_FIGHT_7,
+ SFX_BIKER_GANG_2_FIGHT_8,
+ SFX_BIKER_GANG_2_FIGHT_9,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_1,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_2,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_3,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_4,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_5,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_6,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_7,
+ SFX_BIKER_GANG_2_GENERIC_CRASH_8,
+ SFX_BIKER_GANG_2_GUN_COOL_1,
+ SFX_BIKER_GANG_2_GUN_COOL_2,
+ SFX_BIKER_GANG_2_GUN_COOL_3,
+ SFX_BIKER_GANG_2_GUN_COOL_4,
+ SFX_BIKER_GANG_2_GUN_COOL_5,
+ SFX_BIKER_GANG_2_JACKED_1,
+ SFX_BIKER_GANG_2_JACKED_2,
+ SFX_BIKER_GANG_2_JACKED_3,
+ SFX_BIKER_GANG_2_JACKED_4,
+ SFX_BIKER_GANG_2_JACKED_5,
+ SFX_BIKER_GANG_2_JACKED_6,
+ SFX_BIKER_GANG_2_JACKED_7,
+ SFX_BIKER_GANG_2_JACKED_8,
+ SFX_BIKER_GANG_2_JACKING_1,
+ SFX_BIKER_GANG_2_JACKING_2,
+ SFX_BIKER_GANG_2_JACKING_3,
+ SFX_BIKER_GANG_2_JACKING_4,
+ SFX_BIKER_GANG_2_LOST_1,
+ SFX_BIKER_GANG_2_LOST_2,
+ SFX_BIKER_GANG_2_MUGGED_1,
+ SFX_BIKER_GANG_2_MUGGED_2,
+ SFX_BIKER_GANG_2_SAVED_1,
+ SFX_BIKER_GANG_2_TAXI_1,
+ SFX_BIKER_GANG_2_TAXI_2,
+
+ SFX_BIKER_GANG_3_BLOCKED_1,
+ SFX_BIKER_GANG_3_BLOCKED_2,
+ SFX_BIKER_GANG_3_BLOCKED_3,
+ SFX_BIKER_GANG_3_BLOCKED_4,
+ SFX_BIKER_GANG_3_BLOCKED_5,
+ SFX_BIKER_GANG_3_BLOCKED_6,
+ SFX_BIKER_GANG_3_BLOCKED_7,
+ SFX_BIKER_GANG_3_BLOCKED_8,
+ SFX_BIKER_GANG_3_BLOCKED_9,
+ SFX_BIKER_GANG_3_BLOCKED_10,
+ SFX_BIKER_GANG_3_BUMP_1,
+ SFX_BIKER_GANG_3_BUMP_2,
+ SFX_BIKER_GANG_3_BUMP_3,
+ SFX_BIKER_GANG_3_BUMP_4,
+ SFX_BIKER_GANG_3_BUMP_5,
+ SFX_BIKER_GANG_3_BUMP_6,
+ SFX_BIKER_GANG_3_BUMP_7,
+ SFX_BIKER_GANG_3_BUMP_8,
+ SFX_BIKER_GANG_3_BUMP_9,
+ SFX_BIKER_GANG_3_BUMP_10,
+ SFX_BIKER_GANG_3_CHAT_1,
+ SFX_BIKER_GANG_3_CHAT_2,
+ SFX_BIKER_GANG_3_CHAT_3,
+ SFX_BIKER_GANG_3_CHAT_4,
+ SFX_BIKER_GANG_3_CHAT_5,
+ SFX_BIKER_GANG_3_CHAT_6,
+ SFX_BIKER_GANG_3_CHAT_7,
+ SFX_BIKER_GANG_3_CHAT_8,
+ SFX_BIKER_GANG_3_CHAT_9,
+ SFX_BIKER_GANG_3_CHAT_10,
+ SFX_BIKER_GANG_3_CHAT_11,
+ SFX_BIKER_GANG_3_CHAT_12,
+ SFX_BIKER_GANG_3_DODGE_1,
+ SFX_BIKER_GANG_3_DODGE_2,
+ SFX_BIKER_GANG_3_DODGE_3,
+ SFX_BIKER_GANG_3_DODGE_4,
+ SFX_BIKER_GANG_3_DODGE_5,
+ SFX_BIKER_GANG_3_DODGE_6,
+ SFX_BIKER_GANG_3_DODGE_7,
+ SFX_BIKER_GANG_3_DODGE_8,
+ SFX_BIKER_GANG_3_DODGE_9,
+ SFX_BIKER_GANG_3_FIGHT_1,
+ SFX_BIKER_GANG_3_FIGHT_2,
+ SFX_BIKER_GANG_3_FIGHT_3,
+ SFX_BIKER_GANG_3_FIGHT_4,
+ SFX_BIKER_GANG_3_FIGHT_5,
+ SFX_BIKER_GANG_3_FIGHT_6,
+ SFX_BIKER_GANG_3_FIGHT_7,
+ SFX_BIKER_GANG_3_FIGHT_8,
+ SFX_BIKER_GANG_3_FIGHT_9,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_1,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_2,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_3,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_4,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_5,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_6,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_7,
+ SFX_BIKER_GANG_3_GENERIC_CRASH_8,
+ SFX_BIKER_GANG_3_GUN_COOL_1,
+ SFX_BIKER_GANG_3_GUN_COOL_2,
+ SFX_BIKER_GANG_3_GUN_COOL_3,
+ SFX_BIKER_GANG_3_GUN_COOL_4,
+ SFX_BIKER_GANG_3_GUN_COOL_5,
+ SFX_BIKER_GANG_3_JACKED_1,
+ SFX_BIKER_GANG_3_JACKED_2,
+ SFX_BIKER_GANG_3_JACKED_3,
+ SFX_BIKER_GANG_3_JACKED_4,
+ SFX_BIKER_GANG_3_JACKED_5,
+ SFX_BIKER_GANG_3_JACKED_6,
+ SFX_BIKER_GANG_3_JACKED_7,
+ SFX_BIKER_GANG_3_JACKED_8,
+ SFX_BIKER_GANG_3_JACKING_1,
+ SFX_BIKER_GANG_3_JACKING_2,
+ SFX_BIKER_GANG_3_JACKING_3,
+ SFX_BIKER_GANG_3_JACKING_4,
+ SFX_BIKER_GANG_3_LOST_1,
+ SFX_BIKER_GANG_3_LOST_2,
+ SFX_BIKER_GANG_3_MUGGED_1,
+ SFX_BIKER_GANG_3_MUGGED_2,
+ SFX_BIKER_GANG_3_SAVED_1,
+ SFX_BIKER_GANG_3_TAXI_1,
+ SFX_BIKER_GANG_3_TAXI_2,
+
+ SFX_HAITIAN_GANG_1_BLOCKED_1,
+ SFX_HAITIAN_GANG_1_BLOCKED_2,
+ SFX_HAITIAN_GANG_1_BLOCKED_3,
+ SFX_HAITIAN_GANG_1_BLOCKED_4,
+ SFX_HAITIAN_GANG_1_BLOCKED_5,
+ SFX_HAITIAN_GANG_1_BLOCKED_6,
+ SFX_HAITIAN_GANG_1_BLOCKED_7,
+ SFX_HAITIAN_GANG_1_BLOCKED_8,
+ SFX_HAITIAN_GANG_1_BLOCKED_9,
+ SFX_HAITIAN_GANG_1_BUMP_1,
+ SFX_HAITIAN_GANG_1_BUMP_2,
+ SFX_HAITIAN_GANG_1_BUMP_3,
+ SFX_HAITIAN_GANG_1_BUMP_4,
+ SFX_HAITIAN_GANG_1_BUMP_5,
+ SFX_HAITIAN_GANG_1_BUMP_6,
+ SFX_HAITIAN_GANG_1_BUMP_7,
+ SFX_HAITIAN_GANG_1_BUMP_8,
+ SFX_HAITIAN_GANG_1_BUMP_9,
+ SFX_HAITIAN_GANG_1_BUMP_10,
+ SFX_HAITIAN_GANG_1_BUMP_11,
+ SFX_HAITIAN_GANG_1_BUMP_12,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_1,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_2,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_3,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_4,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_5,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_6,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_7,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_8,
+ SFX_HAITIAN_GANG_1_CAR_CRASH_9,
+ SFX_HAITIAN_GANG_1_CHAT_1,
+ SFX_HAITIAN_GANG_1_CHAT_2,
+ SFX_HAITIAN_GANG_1_CHAT_3,
+ SFX_HAITIAN_GANG_1_CHAT_4,
+ SFX_HAITIAN_GANG_1_CHAT_5,
+ SFX_HAITIAN_GANG_1_CHAT_6,
+ SFX_HAITIAN_GANG_1_CHAT_7,
+ SFX_HAITIAN_GANG_1_CHAT_8,
+ SFX_HAITIAN_GANG_1_CHAT_9,
+ SFX_HAITIAN_GANG_1_CHAT_10,
+ SFX_HAITIAN_GANG_1_CHAT_11,
+ SFX_HAITIAN_GANG_1_CHAT_12,
+ SFX_HAITIAN_GANG_1_CHAT_13,
+ SFX_HAITIAN_GANG_1_CHAT_14,
+ SFX_HAITIAN_GANG_1_DODGE_1,
+ SFX_HAITIAN_GANG_1_DODGE_2,
+ SFX_HAITIAN_GANG_1_DODGE_3,
+ SFX_HAITIAN_GANG_1_DODGE_4,
+ SFX_HAITIAN_GANG_1_DODGE_5,
+ SFX_HAITIAN_GANG_1_DODGE_6,
+ SFX_HAITIAN_GANG_1_DODGE_7,
+ SFX_HAITIAN_GANG_1_DODGE_8,
+ SFX_HAITIAN_GANG_1_DODGE_9,
+ SFX_HAITIAN_GANG_1_DODGE_10,
+ SFX_HAITIAN_GANG_1_EYEING_1,
+ SFX_HAITIAN_GANG_1_EYEING_2,
+ SFX_HAITIAN_GANG_1_FIGHT_1,
+ SFX_HAITIAN_GANG_1_FIGHT_2,
+ SFX_HAITIAN_GANG_1_FIGHT_3,
+ SFX_HAITIAN_GANG_1_FIGHT_4,
+ SFX_HAITIAN_GANG_1_FIGHT_5,
+ SFX_HAITIAN_GANG_1_FIGHT_6,
+ SFX_HAITIAN_GANG_1_FIGHT_7,
+ SFX_HAITIAN_GANG_1_FIGHT_8,
+ SFX_HAITIAN_GANG_1_FIGHT_9,
+ SFX_HAITIAN_GANG_1_FIGHT_10,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_1,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_2,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_3,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_4,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_5,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_6,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_7,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_8,
+ SFX_HAITIAN_GANG_1_GENERIC_CRASH_9,
+ SFX_HAITIAN_GANG_1_GUN_COOL_1,
+ SFX_HAITIAN_GANG_1_GUN_COOL_2,
+ SFX_HAITIAN_GANG_1_GUN_COOL_3,
+ SFX_HAITIAN_GANG_1_GUN_COOL_4,
+ SFX_HAITIAN_GANG_1_GUN_COOL_5,
+ SFX_HAITIAN_GANG_1_JACKED_1,
+ SFX_HAITIAN_GANG_1_JACKED_2,
+ SFX_HAITIAN_GANG_1_JACKED_3,
+ SFX_HAITIAN_GANG_1_JACKED_4,
+ SFX_HAITIAN_GANG_1_JACKED_5,
+ SFX_HAITIAN_GANG_1_JACKED_6,
+ SFX_HAITIAN_GANG_1_JACKING_1,
+ SFX_HAITIAN_GANG_1_JACKING_2,
+ SFX_HAITIAN_GANG_1_JACKING_3,
+ SFX_HAITIAN_GANG_1_JACKING_4,
+ SFX_HAITIAN_GANG_1_LOST_1,
+ SFX_HAITIAN_GANG_1_LOST_2,
+ SFX_HAITIAN_GANG_1_LOST_3,
+ SFX_HAITIAN_GANG_1_LOST_4,
+ SFX_HAITIAN_GANG_1_MUGGED_1,
+ SFX_HAITIAN_GANG_1_MUGGED_2,
+ SFX_HAITIAN_GANG_1_MUGGED_3,
+ SFX_HAITIAN_GANG_1_SAVED_1,
+ SFX_HAITIAN_GANG_1_TAXI_1,
+
+
+ SFX_HAITIAN_GANG_2_BLOCKED_1,
+ SFX_HAITIAN_GANG_2_BLOCKED_2,
+ SFX_HAITIAN_GANG_2_BLOCKED_3,
+ SFX_HAITIAN_GANG_2_BLOCKED_4,
+ SFX_HAITIAN_GANG_2_BLOCKED_5,
+ SFX_HAITIAN_GANG_2_BLOCKED_6,
+ SFX_HAITIAN_GANG_2_BLOCKED_7,
+ SFX_HAITIAN_GANG_2_BLOCKED_8,
+ SFX_HAITIAN_GANG_2_BLOCKED_9,
+ SFX_HAITIAN_GANG_2_BUMP_1,
+ SFX_HAITIAN_GANG_2_BUMP_2,
+ SFX_HAITIAN_GANG_2_BUMP_3,
+ SFX_HAITIAN_GANG_2_BUMP_4,
+ SFX_HAITIAN_GANG_2_BUMP_5,
+ SFX_HAITIAN_GANG_2_BUMP_6,
+ SFX_HAITIAN_GANG_2_BUMP_7,
+ SFX_HAITIAN_GANG_2_BUMP_8,
+ SFX_HAITIAN_GANG_2_BUMP_9,
+ SFX_HAITIAN_GANG_2_BUMP_10,
+ SFX_HAITIAN_GANG_2_BUMP_11,
+ SFX_HAITIAN_GANG_2_BUMP_12,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_1,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_2,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_3,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_4,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_5,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_6,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_7,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_8,
+ SFX_HAITIAN_GANG_2_CAR_CRASH_9,
+ SFX_HAITIAN_GANG_2_CHAT_1,
+ SFX_HAITIAN_GANG_2_CHAT_2,
+ SFX_HAITIAN_GANG_2_CHAT_3,
+ SFX_HAITIAN_GANG_2_CHAT_4,
+ SFX_HAITIAN_GANG_2_CHAT_5,
+ SFX_HAITIAN_GANG_2_CHAT_6,
+ SFX_HAITIAN_GANG_2_CHAT_7,
+ SFX_HAITIAN_GANG_2_CHAT_8,
+ SFX_HAITIAN_GANG_2_CHAT_9,
+ SFX_HAITIAN_GANG_2_CHAT_10,
+ SFX_HAITIAN_GANG_2_CHAT_11,
+ SFX_HAITIAN_GANG_2_CHAT_12,
+ SFX_HAITIAN_GANG_2_CHAT_13,
+ SFX_HAITIAN_GANG_2_CHAT_14,
+ SFX_HAITIAN_GANG_2_DODGE_1,
+ SFX_HAITIAN_GANG_2_DODGE_2,
+ SFX_HAITIAN_GANG_2_DODGE_3,
+ SFX_HAITIAN_GANG_2_DODGE_4,
+ SFX_HAITIAN_GANG_2_DODGE_5,
+ SFX_HAITIAN_GANG_2_DODGE_6,
+ SFX_HAITIAN_GANG_2_DODGE_7,
+ SFX_HAITIAN_GANG_2_DODGE_8,
+ SFX_HAITIAN_GANG_2_DODGE_9,
+ SFX_HAITIAN_GANG_2_DODGE_10,
+ SFX_HAITIAN_GANG_2_EYEING_1,
+ SFX_HAITIAN_GANG_2_EYEING_2,
+ SFX_HAITIAN_GANG_2_FIGHT_1,
+ SFX_HAITIAN_GANG_2_FIGHT_2,
+ SFX_HAITIAN_GANG_2_FIGHT_3,
+ SFX_HAITIAN_GANG_2_FIGHT_4,
+ SFX_HAITIAN_GANG_2_FIGHT_5,
+ SFX_HAITIAN_GANG_2_FIGHT_6,
+ SFX_HAITIAN_GANG_2_FIGHT_7,
+ SFX_HAITIAN_GANG_2_FIGHT_8,
+ SFX_HAITIAN_GANG_2_FIGHT_9,
+ SFX_HAITIAN_GANG_2_FIGHT_10,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_1,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_2,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_3,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_4,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_5,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_6,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_7,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_8,
+ SFX_HAITIAN_GANG_2_GENERIC_CRASH_9,
+ SFX_HAITIAN_GANG_2_GUN_COOL_1,
+ SFX_HAITIAN_GANG_2_GUN_COOL_2,
+ SFX_HAITIAN_GANG_2_GUN_COOL_3,
+ SFX_HAITIAN_GANG_2_GUN_COOL_4,
+ SFX_HAITIAN_GANG_2_GUN_COOL_5,
+ SFX_HAITIAN_GANG_2_JACKED_1,
+ SFX_HAITIAN_GANG_2_JACKED_2,
+ SFX_HAITIAN_GANG_2_JACKED_3,
+ SFX_HAITIAN_GANG_2_JACKED_4,
+ SFX_HAITIAN_GANG_2_JACKED_5,
+ SFX_HAITIAN_GANG_2_JACKED_6,
+ SFX_HAITIAN_GANG_2_JACKING_1,
+ SFX_HAITIAN_GANG_2_JACKING_2,
+ SFX_HAITIAN_GANG_2_JACKING_3,
+ SFX_HAITIAN_GANG_2_JACKING_4,
+ SFX_HAITIAN_GANG_2_LOST_1,
+ SFX_HAITIAN_GANG_2_LOST_2,
+ SFX_HAITIAN_GANG_2_LOST_3,
+ SFX_HAITIAN_GANG_2_LOST_4,
+ SFX_HAITIAN_GANG_2_MUGGED_1,
+ SFX_HAITIAN_GANG_2_MUGGED_2,
+ SFX_HAITIAN_GANG_2_MUGGED_3,
+ SFX_HAITIAN_GANG_2_SAVED_1,
+ SFX_HAITIAN_GANG_2_TAXI_1,
+
+ SFX_HAITIAN_GANG_3_BLOCKED_1,
+ SFX_HAITIAN_GANG_3_BLOCKED_2,
+ SFX_HAITIAN_GANG_3_BLOCKED_3,
+ SFX_HAITIAN_GANG_3_BLOCKED_4,
+ SFX_HAITIAN_GANG_3_BLOCKED_5,
+ SFX_HAITIAN_GANG_3_BLOCKED_6,
+ SFX_HAITIAN_GANG_3_BLOCKED_7,
+ SFX_HAITIAN_GANG_3_BLOCKED_8,
+ SFX_HAITIAN_GANG_3_BLOCKED_9,
+ SFX_HAITIAN_GANG_3_BUMP_1,
+ SFX_HAITIAN_GANG_3_BUMP_2,
+ SFX_HAITIAN_GANG_3_BUMP_3,
+ SFX_HAITIAN_GANG_3_BUMP_4,
+ SFX_HAITIAN_GANG_3_BUMP_5,
+ SFX_HAITIAN_GANG_3_BUMP_6,
+ SFX_HAITIAN_GANG_3_BUMP_7,
+ SFX_HAITIAN_GANG_3_BUMP_8,
+ SFX_HAITIAN_GANG_3_BUMP_9,
+ SFX_HAITIAN_GANG_3_BUMP_10,
+ SFX_HAITIAN_GANG_3_BUMP_11,
+ SFX_HAITIAN_GANG_3_BUMP_12,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_1,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_2,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_3,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_4,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_5,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_6,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_7,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_8,
+ SFX_HAITIAN_GANG_3_CAR_CRASH_9,
+ SFX_HAITIAN_GANG_3_CHAT_1,
+ SFX_HAITIAN_GANG_3_CHAT_2,
+ SFX_HAITIAN_GANG_3_CHAT_3,
+ SFX_HAITIAN_GANG_3_CHAT_4,
+ SFX_HAITIAN_GANG_3_CHAT_5,
+ SFX_HAITIAN_GANG_3_CHAT_6,
+ SFX_HAITIAN_GANG_3_CHAT_7,
+ SFX_HAITIAN_GANG_3_CHAT_8,
+ SFX_HAITIAN_GANG_3_CHAT_9,
+ SFX_HAITIAN_GANG_3_CHAT_10,
+ SFX_HAITIAN_GANG_3_CHAT_11,
+ SFX_HAITIAN_GANG_3_CHAT_12,
+ SFX_HAITIAN_GANG_3_CHAT_13,
+ SFX_HAITIAN_GANG_3_CHAT_14,
+ SFX_HAITIAN_GANG_3_DODGE_1,
+ SFX_HAITIAN_GANG_3_DODGE_2,
+ SFX_HAITIAN_GANG_3_DODGE_3,
+ SFX_HAITIAN_GANG_3_DODGE_4,
+ SFX_HAITIAN_GANG_3_DODGE_5,
+ SFX_HAITIAN_GANG_3_DODGE_6,
+ SFX_HAITIAN_GANG_3_DODGE_7,
+ SFX_HAITIAN_GANG_3_DODGE_8,
+ SFX_HAITIAN_GANG_3_DODGE_9,
+ SFX_HAITIAN_GANG_3_DODGE_10,
+ SFX_HAITIAN_GANG_3_EYEING_1,
+ SFX_HAITIAN_GANG_3_EYEING_2,
+ SFX_HAITIAN_GANG_3_FIGHT_1,
+ SFX_HAITIAN_GANG_3_FIGHT_2,
+ SFX_HAITIAN_GANG_3_FIGHT_3,
+ SFX_HAITIAN_GANG_3_FIGHT_4,
+ SFX_HAITIAN_GANG_3_FIGHT_5,
+ SFX_HAITIAN_GANG_3_FIGHT_6,
+ SFX_HAITIAN_GANG_3_FIGHT_7,
+ SFX_HAITIAN_GANG_3_FIGHT_8,
+ SFX_HAITIAN_GANG_3_FIGHT_9,
+ SFX_HAITIAN_GANG_3_FIGHT_10,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_1,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_2,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_3,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_4,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_5,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_6,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_7,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_8,
+ SFX_HAITIAN_GANG_3_GENERIC_CRASH_9,
+ SFX_HAITIAN_GANG_3_GUN_COOL_1,
+ SFX_HAITIAN_GANG_3_GUN_COOL_2,
+ SFX_HAITIAN_GANG_3_GUN_COOL_3,
+ SFX_HAITIAN_GANG_3_GUN_COOL_4,
+ SFX_HAITIAN_GANG_3_GUN_COOL_5,
+ SFX_HAITIAN_GANG_3_JACKED_1,
+ SFX_HAITIAN_GANG_3_JACKED_2,
+ SFX_HAITIAN_GANG_3_JACKED_3,
+ SFX_HAITIAN_GANG_3_JACKED_4,
+ SFX_HAITIAN_GANG_3_JACKED_5,
+ SFX_HAITIAN_GANG_3_JACKED_6,
+ SFX_HAITIAN_GANG_3_JACKING_1,
+ SFX_HAITIAN_GANG_3_JACKING_2,
+ SFX_HAITIAN_GANG_3_JACKING_3,
+ SFX_HAITIAN_GANG_3_JACKING_4,
+ SFX_HAITIAN_GANG_3_LOST_1,
+ SFX_HAITIAN_GANG_3_LOST_2,
+ SFX_HAITIAN_GANG_3_LOST_3,
+ SFX_HAITIAN_GANG_3_LOST_4,
+ SFX_HAITIAN_GANG_3_MUGGED_1,
+ SFX_HAITIAN_GANG_3_MUGGED_2,
+ SFX_HAITIAN_GANG_3_MUGGED_3,
+ SFX_HAITIAN_GANG_3_SAVED_1,
+ SFX_HAITIAN_GANG_3_TAXI_1,
+
+ SFX_GENERIC_FEMALE_FIRE_1,
+ SFX_GENERIC_FEMALE_FIRE_2,
+ SFX_GENERIC_FEMALE_FIRE_3,
+ SFX_GENERIC_FEMALE_FIRE_4,
+ SFX_GENERIC_FEMALE_FIRE_5,
+ SFX_GENERIC_FEMALE_FIRE_6,
+ SFX_GENERIC_FEMALE_FIRE_7,
+ SFX_GENERIC_FEMALE_FIRE_8,
+ SFX_GENERIC_FEMALE_FIRE_9,
+ SFX_GENERIC_FEMALE_FIRE_10,
+ SFX_GENERIC_FEMALE_FIRE_11,
+ SFX_GENERIC_FEMALE_FIRE_12,
+ SFX_GENERIC_FEMALE_FIRE_13,
+ SFX_GENERIC_FEMALE_FIRE_14,
+ SFX_GENERIC_FEMALE_FIRE_15,
+ SFX_GENERIC_FEMALE_FIRE_16,
+ SFX_GENERIC_FEMALE_FIRE_17,
+ SFX_GENERIC_FEMALE_DEATH_1,
+ SFX_GENERIC_FEMALE_DEATH_2,
+ SFX_GENERIC_FEMALE_DEATH_3,
+ SFX_GENERIC_FEMALE_DEATH_4,
+ SFX_GENERIC_FEMALE_DEATH_5,
+ SFX_GENERIC_FEMALE_DEATH_6,
+ SFX_GENERIC_FEMALE_DEATH_7,
+ SFX_GENERIC_FEMALE_DEATH_8,
+ SFX_GENERIC_FEMALE_DEATH_9,
+ SFX_GENERIC_FEMALE_DEATH_10,
+ SFX_GENERIC_FEMALE_DEATH_11,
+ SFX_GENERIC_FEMALE_DEATH_12,
+ SFX_GENERIC_FEMALE_DEATH_13,
+ SFX_GENERIC_FEMALE_DEATH_14,
+ SFX_GENERIC_FEMALE_DEATH_15,
+ SFX_GENERIC_FEMALE_DEATH_16,
+ SFX_GENERIC_FEMALE_DEATH_17,
+ SFX_GENERIC_FEMALE_DEATH_18,
+ SFX_GENERIC_FEMALE_DEATH_19,
+ SFX_GENERIC_FEMALE_DEATH_20,
+ SFX_GENERIC_FEMALE_DEATH_21,
+ SFX_GENERIC_FEMALE_DEATH_22,
+ SFX_GENERIC_FEMALE_GRUNT_1,
+ SFX_GENERIC_FEMALE_GRUNT_2,
+ SFX_GENERIC_FEMALE_GRUNT_3,
+ SFX_GENERIC_FEMALE_GRUNT_4,
+ SFX_GENERIC_FEMALE_GRUNT_5,
+ SFX_GENERIC_FEMALE_GRUNT_6,
+ SFX_GENERIC_FEMALE_GRUNT_7,
+ SFX_GENERIC_FEMALE_GRUNT_8,
+ SFX_GENERIC_FEMALE_GRUNT_9,
+ SFX_GENERIC_FEMALE_GRUNT_10,
+ SFX_GENERIC_FEMALE_GRUNT_11,
+ SFX_GENERIC_FEMALE_GRUNT_12,
+ SFX_GENERIC_FEMALE_GRUNT_13,
+ SFX_GENERIC_FEMALE_GRUNT_14,
+ SFX_GENERIC_FEMALE_GRUNT_15,
+ SFX_GENERIC_FEMALE_GRUNT_16,
+ SFX_GENERIC_FEMALE_GRUNT_17,
+ SFX_GENERIC_FEMALE_GRUNT_18,
+ SFX_GENERIC_FEMALE_GRUNT_19,
+ SFX_GENERIC_FEMALE_GRUNT_20,
+ SFX_GENERIC_FEMALE_GRUNT_21,
+ SFX_GENERIC_FEMALE_GRUNT_22,
+ SFX_GENERIC_FEMALE_GRUNT_23,
+ SFX_GENERIC_FEMALE_GRUNT_24,
+ SFX_GENERIC_FEMALE_GRUNT_25,
+ SFX_GENERIC_FEMALE_GRUNT_26,
+ SFX_GENERIC_FEMALE_GRUNT_27,
+ SFX_GENERIC_FEMALE_GRUNT_28,
+ SFX_GENERIC_FEMALE_GRUNT_29,
+ SFX_GENERIC_FEMALE_GRUNT_30,
+ SFX_GENERIC_FEMALE_GRUNT_31,
+ SFX_GENERIC_FEMALE_GRUNT_32,
+ SFX_GENERIC_FEMALE_GRUNT_33,
+ SFX_GENERIC_FEMALE_PANIC_1,
+ SFX_GENERIC_FEMALE_PANIC_2,
+ SFX_GENERIC_FEMALE_PANIC_3,
+ SFX_GENERIC_FEMALE_PANIC_4,
+ SFX_GENERIC_FEMALE_PANIC_5,
+ SFX_GENERIC_FEMALE_PANIC_6,
+ SFX_GENERIC_FEMALE_PANIC_7,
+ SFX_GENERIC_FEMALE_PANIC_8,
+ SFX_GENERIC_FEMALE_PANIC_9,
+ SFX_GENERIC_FEMALE_PANIC_10,
+ SFX_GENERIC_FEMALE_PANIC_11,
+ SFX_GENERIC_FEMALE_PANIC_12,
+ SFX_GENERIC_FEMALE_PANIC_13,
+ SFX_GENERIC_FEMALE_PANIC_14,
+ SFX_GENERIC_FEMALE_PANIC_15,
+ SFX_GENERIC_FEMALE_PANIC_16,
+ SFX_GENERIC_FEMALE_PANIC_17,
+ SFX_GENERIC_FEMALE_PANIC_18,
+ SFX_GENERIC_FEMALE_PANIC_19,
+ SFX_GENERIC_FEMALE_PANIC_20,
+ SFX_GENERIC_FEMALE_PANIC_21,
+ SFX_GENERIC_FEMALE_PANIC_22,
+ SFX_GENERIC_FEMALE_PANIC_23,
+ SFX_GENERIC_FEMALE_PANIC_24,
+ SFX_GENERIC_FEMALE_PANIC_25,
+ SFX_GENERIC_FEMALE_PANIC_26,
+ SFX_GENERIC_FEMALE_PANIC_27,
+
+ SFX_GENERIC_MALE_FIRE_1,
+ SFX_GENERIC_MALE_FIRE_2,
+ SFX_GENERIC_MALE_FIRE_3,
+ SFX_GENERIC_MALE_FIRE_4,
+ SFX_GENERIC_MALE_FIRE_5,
+ SFX_GENERIC_MALE_FIRE_6,
+ SFX_GENERIC_MALE_FIRE_7,
+ SFX_GENERIC_MALE_FIRE_8,
+ SFX_GENERIC_MALE_FIRE_9,
+ SFX_GENERIC_MALE_FIRE_10,
+ SFX_GENERIC_MALE_FIRE_11,
+ SFX_GENERIC_MALE_FIRE_12,
+ SFX_GENERIC_MALE_FIRE_13,
+ SFX_GENERIC_MALE_FIRE_14,
+ SFX_GENERIC_MALE_FIRE_15,
+ SFX_GENERIC_MALE_FIRE_16,
+ SFX_GENERIC_MALE_FIRE_17,
+ SFX_GENERIC_MALE_FIRE_18,
+ SFX_GENERIC_MALE_FIRE_19,
+ SFX_GENERIC_MALE_FIRE_20,
+ SFX_GENERIC_MALE_FIRE_21,
+ SFX_GENERIC_MALE_FIRE_22,
+ SFX_GENERIC_MALE_FIRE_23,
+ SFX_GENERIC_MALE_FIRE_24,
+ SFX_GENERIC_MALE_FIRE_25,
+ SFX_GENERIC_MALE_FIRE_26,
+ SFX_GENERIC_MALE_FIRE_27,
+ SFX_GENERIC_MALE_FIRE_28,
+ SFX_GENERIC_MALE_FIRE_29,
+ SFX_GENERIC_MALE_FIRE_30,
+ SFX_GENERIC_MALE_FIRE_31,
+ SFX_GENERIC_MALE_FIRE_32,
+ SFX_GENERIC_MALE_DEATH_1,
+ SFX_GENERIC_MALE_DEATH_2,
+ SFX_GENERIC_MALE_DEATH_3,
+ SFX_GENERIC_MALE_DEATH_4,
+ SFX_GENERIC_MALE_DEATH_5,
+ SFX_GENERIC_MALE_DEATH_6,
+ SFX_GENERIC_MALE_DEATH_7,
+ SFX_GENERIC_MALE_DEATH_8,
+ SFX_GENERIC_MALE_DEATH_9,
+ SFX_GENERIC_MALE_DEATH_10,
+ SFX_GENERIC_MALE_DEATH_11,
+ SFX_GENERIC_MALE_DEATH_12,
+ SFX_GENERIC_MALE_DEATH_13,
+ SFX_GENERIC_MALE_DEATH_14,
+ SFX_GENERIC_MALE_DEATH_15,
+ SFX_GENERIC_MALE_DEATH_16,
+ SFX_GENERIC_MALE_DEATH_17,
+ SFX_GENERIC_MALE_DEATH_18,
+ SFX_GENERIC_MALE_DEATH_19,
+ SFX_GENERIC_MALE_DEATH_20,
+ SFX_GENERIC_MALE_DEATH_21,
+ SFX_GENERIC_MALE_DEATH_22,
+ SFX_GENERIC_MALE_DEATH_23,
+ SFX_GENERIC_MALE_DEATH_24,
+ SFX_GENERIC_MALE_DEATH_25,
+ SFX_GENERIC_MALE_DEATH_26,
+ SFX_GENERIC_MALE_DEATH_27,
+ SFX_GENERIC_MALE_DEATH_28,
+ SFX_GENERIC_MALE_DEATH_29,
+ SFX_GENERIC_MALE_DEATH_30,
+ SFX_GENERIC_MALE_DEATH_31,
+ SFX_GENERIC_MALE_DEATH_32,
+ SFX_GENERIC_MALE_DEATH_33,
+ SFX_GENERIC_MALE_DEATH_34,
+ SFX_GENERIC_MALE_DEATH_35,
+ SFX_GENERIC_MALE_DEATH_36,
+ SFX_GENERIC_MALE_DEATH_37,
+ SFX_GENERIC_MALE_DEATH_38,
+ SFX_GENERIC_MALE_DEATH_39,
+ SFX_GENERIC_MALE_DEATH_40,
+ SFX_GENERIC_MALE_DEATH_41,
+ SFX_GENERIC_MALE_GRUNT_1,
+ SFX_GENERIC_MALE_GRUNT_2,
+ SFX_GENERIC_MALE_GRUNT_3,
+ SFX_GENERIC_MALE_GRUNT_4,
+ SFX_GENERIC_MALE_GRUNT_5,
+ SFX_GENERIC_MALE_GRUNT_6,
+ SFX_GENERIC_MALE_GRUNT_7,
+ SFX_GENERIC_MALE_GRUNT_8,
+ SFX_GENERIC_MALE_GRUNT_9,
+ SFX_GENERIC_MALE_GRUNT_10,
+ SFX_GENERIC_MALE_GRUNT_11,
+ SFX_GENERIC_MALE_GRUNT_12,
+ SFX_GENERIC_MALE_GRUNT_13,
+ SFX_GENERIC_MALE_GRUNT_14,
+ SFX_GENERIC_MALE_GRUNT_15,
+ SFX_GENERIC_MALE_GRUNT_16,
+ SFX_GENERIC_MALE_GRUNT_17,
+ SFX_GENERIC_MALE_GRUNT_18,
+ SFX_GENERIC_MALE_GRUNT_19,
+ SFX_GENERIC_MALE_GRUNT_20,
+ SFX_GENERIC_MALE_GRUNT_21,
+ SFX_GENERIC_MALE_GRUNT_22,
+ SFX_GENERIC_MALE_GRUNT_23,
+ SFX_GENERIC_MALE_GRUNT_24,
+ SFX_GENERIC_MALE_GRUNT_25,
+ SFX_GENERIC_MALE_GRUNT_26,
+ SFX_GENERIC_MALE_GRUNT_27,
+ SFX_GENERIC_MALE_GRUNT_28,
+ SFX_GENERIC_MALE_GRUNT_29,
+ SFX_GENERIC_MALE_GRUNT_30,
+ SFX_GENERIC_MALE_GRUNT_31,
+ SFX_GENERIC_MALE_GRUNT_32,
+ SFX_GENERIC_MALE_GRUNT_33,
+ SFX_GENERIC_MALE_GRUNT_34,
+ SFX_GENERIC_MALE_GRUNT_35,
+ SFX_GENERIC_MALE_GRUNT_36,
+ SFX_GENERIC_MALE_GRUNT_37,
+ SFX_GENERIC_MALE_GRUNT_38,
+ SFX_GENERIC_MALE_GRUNT_39,
+ SFX_GENERIC_MALE_GRUNT_40,
+ SFX_GENERIC_MALE_GRUNT_41,
+ SFX_GENERIC_MALE_PANIC_1,
+ SFX_GENERIC_MALE_PANIC_2,
+ SFX_GENERIC_MALE_PANIC_3,
+ SFX_GENERIC_MALE_PANIC_4,
+ SFX_GENERIC_MALE_PANIC_5,
+ SFX_GENERIC_MALE_PANIC_6,
+ SFX_GENERIC_MALE_PANIC_7,
+ SFX_GENERIC_MALE_PANIC_8,
+ SFX_GENERIC_MALE_PANIC_9,
+ SFX_GENERIC_MALE_PANIC_10,
+ SFX_GENERIC_MALE_PANIC_11,
+ SFX_GENERIC_MALE_PANIC_12,
+ SFX_GENERIC_MALE_PANIC_13,
+ SFX_GENERIC_MALE_PANIC_14,
+ SFX_GENERIC_MALE_PANIC_15,
+ SFX_GENERIC_MALE_PANIC_16,
+ SFX_GENERIC_MALE_PANIC_17,
+ SFX_GENERIC_MALE_PANIC_18,
+ SFX_GENERIC_MALE_PANIC_19,
+ SFX_GENERIC_MALE_PANIC_20,
+ SFX_GENERIC_MALE_PANIC_21,
+ SFX_GENERIC_MALE_PANIC_22,
+ SFX_GENERIC_MALE_PANIC_23,
+ SFX_GENERIC_MALE_PANIC_24,
+ SFX_GENERIC_MALE_PANIC_25,
+ SFX_GENERIC_MALE_PANIC_26,
+ SFX_GENERIC_MALE_PANIC_27,
+ SFX_GENERIC_MALE_PANIC_28,
+ SFX_GENERIC_MALE_PANIC_29,
+ SFX_GENERIC_MALE_PANIC_30,
+ SFX_GENERIC_MALE_PANIC_31,
+ SFX_GENERIC_MALE_PANIC_32,
+ SFX_GENERIC_MALE_PANIC_33,
+ SFX_GENERIC_MALE_PANIC_34,
+ SFX_GENERIC_MALE_PANIC_35,
+
+ SFX_MEDIC_VOICE_1_FIGHT_1,
+ SFX_MEDIC_VOICE_1_FIGHT_2,
+ SFX_MEDIC_VOICE_1_FIGHT_3,
+ SFX_MEDIC_VOICE_1_FIGHT_4,
+ SFX_MEDIC_VOICE_1_FIGHT_5,
+ SFX_MEDIC_VOICE_1_FIGHT_6,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_1,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_2,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_3,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_4,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_5,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_6,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_7,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_8,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_9,
+ SFX_MEDIC_VOICE_1_GET_OUT_VAN_CHAT_10,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_1,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_2,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_3,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_4,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_5,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_6,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_7,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_8,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_9,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_10,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_11,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_12,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_13,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_14,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_15,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_16,
+ SFX_MEDIC_VOICE_1_AT_VICTIM_17,
+
+ SFX_MEDIC_VOICE_2_FIGHT_1,
+ SFX_MEDIC_VOICE_2_FIGHT_2,
+ SFX_MEDIC_VOICE_2_FIGHT_3,
+ SFX_MEDIC_VOICE_2_FIGHT_4,
+ SFX_MEDIC_VOICE_2_FIGHT_5,
+ SFX_MEDIC_VOICE_2_FIGHT_6,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_1,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_2,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_3,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_4,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_5,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_6,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_7,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_8,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_9,
+ SFX_MEDIC_VOICE_2_GET_OUT_VAN_CHAT_10,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_1,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_2,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_3,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_4,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_5,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_6,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_7,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_8,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_9,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_10,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_11,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_12,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_13,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_14,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_15,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_16,
+ SFX_MEDIC_VOICE_2_AT_VICTIM_17,
+
+ SFX_FBI_VOICE_1_GUNAIMEDAT3_1,
+ SFX_FBI_VOICE_1_GUNAIMEDAT3_2,
+ SFX_FBI_VOICE_1_GUNAIMEDAT3_3,
+ SFX_FBI_VOICE_1_GUNAIMEDAT3_4,
+ SFX_FBI_VOICE_1_CAR_CRASH_1,
+ SFX_FBI_VOICE_1_CAR_CRASH_2,
+ SFX_FBI_VOICE_1_CAR_CRASH_3,
+ SFX_FBI_VOICE_1_CAR_CRASH_4,
+ SFX_FBI_VOICE_1_GUNAIMEDAT2_1,
+ SFX_FBI_VOICE_1_COP_MANYCOPSAROUND_1,
+ SFX_FBI_VOICE_1_COP_MANYCOPSAROUND_2,
+ SFX_FBI_VOICE_1_COP_MANYCOPSAROUND_3,
+ SFX_FBI_VOICE_1_COP_TARGETING_1,
+ SFX_FBI_VOICE_1_COP_TARGETING_2,
+ SFX_FBI_VOICE_1_COP_TARGETING_3,
+ SFX_FBI_VOICE_1_COP_TARGETING_4,
+ SFX_FBI_VOICE_1_COP_TARGETING_5,
+ SFX_FBI_VOICE_1_COP_TARGETING_6,
+
+ SFX_FBI_VOICE_2_GUNAIMEDAT3_1,
+ SFX_FBI_VOICE_2_GUNAIMEDAT3_2,
+ SFX_FBI_VOICE_2_GUNAIMEDAT3_3,
+ SFX_FBI_VOICE_2_GUNAIMEDAT3_4,
+ SFX_FBI_VOICE_2_CAR_CRASH_1,
+ SFX_FBI_VOICE_2_CAR_CRASH_2,
+ SFX_FBI_VOICE_2_CAR_CRASH_3,
+ SFX_FBI_VOICE_2_CAR_CRASH_4,
+ SFX_FBI_VOICE_2_GUNAIMEDAT2_1,
+ SFX_FBI_VOICE_2_COP_MANYCOPSAROUND_1,
+ SFX_FBI_VOICE_2_COP_MANYCOPSAROUND_2,
+ SFX_FBI_VOICE_2_COP_MANYCOPSAROUND_3,
+ SFX_FBI_VOICE_2_COP_TARGETING_1,
+ SFX_FBI_VOICE_2_COP_TARGETING_2,
+ SFX_FBI_VOICE_2_COP_TARGETING_3,
+ SFX_FBI_VOICE_2_COP_TARGETING_4,
+ SFX_FBI_VOICE_2_COP_TARGETING_5,
+ SFX_FBI_VOICE_2_COP_TARGETING_6,
+
+ SFX_FBI_VOICE_3_GUNAIMEDAT3_1,
+ SFX_FBI_VOICE_3_GUNAIMEDAT3_2,
+ SFX_FBI_VOICE_3_GUNAIMEDAT3_3,
+ SFX_FBI_VOICE_3_GUNAIMEDAT3_4,
+ SFX_FBI_VOICE_3_CAR_CRASH_1,
+ SFX_FBI_VOICE_3_CAR_CRASH_2,
+ SFX_FBI_VOICE_3_CAR_CRASH_3,
+ SFX_FBI_VOICE_3_CAR_CRASH_4,
+ SFX_FBI_VOICE_3_GUNAIMEDAT2_1,
+ SFX_FBI_VOICE_3_COP_MANYCOPSAROUND_1,
+ SFX_FBI_VOICE_3_COP_MANYCOPSAROUND_2,
+ SFX_FBI_VOICE_3_COP_MANYCOPSAROUND_3,
+ SFX_FBI_VOICE_3_COP_TARGETING_1,
+ SFX_FBI_VOICE_3_COP_TARGETING_2,
+ SFX_FBI_VOICE_3_COP_TARGETING_3,
+ SFX_FBI_VOICE_3_COP_TARGETING_4,
+ SFX_FBI_VOICE_3_COP_TARGETING_5,
+ SFX_FBI_VOICE_3_COP_TARGETING_6,
+
+ SFX_SWAT_VOICE_1_DODGE_1,
+ SFX_SWAT_VOICE_1_DODGE_2,
+ SFX_SWAT_VOICE_1_DODGE_3,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_1,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_2,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_3,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_4,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_5,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_6,
+ SFX_SWAT_VOICE_1_COP_HELIPILOTPHRASE_7,
+ SFX_SWAT_VOICE_1_COP_TARGETING_1,
+ SFX_SWAT_VOICE_1_COP_TARGETING_2,
+ SFX_SWAT_VOICE_1_COP_TARGETING_3,
+ SFX_SWAT_VOICE_1_COP_TARGETING_4,
+
+ SFX_SWAT_VOICE_2_DODGE_1,
+ SFX_SWAT_VOICE_2_DODGE_2,
+ SFX_SWAT_VOICE_2_DODGE_3,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_1,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_2,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_3,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_4,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_5,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_6,
+ SFX_SWAT_VOICE_2_COP_HELIPILOTPHRASE_7,
+ SFX_SWAT_VOICE_2_COP_TARGETING_1,
+ SFX_SWAT_VOICE_2_COP_TARGETING_2,
+ SFX_SWAT_VOICE_2_COP_TARGETING_3,
+ SFX_SWAT_VOICE_2_COP_TARGETING_4,
+
+ SFX_SWAT_VOICE_3_DODGE_1,
+ SFX_SWAT_VOICE_3_DODGE_2,
+ SFX_SWAT_VOICE_3_DODGE_3,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_1,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_2,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_3,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_4,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_5,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_6,
+ SFX_SWAT_VOICE_3_COP_HELIPILOTPHRASE_7,
+ SFX_SWAT_VOICE_3_COP_TARGETING_1,
+ SFX_SWAT_VOICE_3_COP_TARGETING_2,
+ SFX_SWAT_VOICE_3_COP_TARGETING_3,
+ SFX_SWAT_VOICE_3_COP_TARGETING_4,
+
+
+ SFX_WFYG1_BLOCKED_1,
+ SFX_WFYG1_BLOCKED_2,
+ SFX_WFYG1_BLOCKED_3,
+ SFX_WFYG1_BLOCKED_4,
+ SFX_WFYG1_BLOCKED_5,
+ SFX_WFYG1_BLOCKED_6,
+ SFX_WFYG1_BLOCKED_7,
+ SFX_WFYG1_BUMP_1,
+ SFX_WFYG1_BUMP_2,
+ SFX_WFYG1_BUMP_3,
+ SFX_WFYG1_BUMP_4,
+ SFX_WFYG1_BUMP_5,
+ SFX_WFYG1_BUMP_6,
+ SFX_WFYG1_BUMP_7,
+ SFX_WFYG1_BUMP_8,
+ SFX_WFYG1_BUMP_9,
+ SFX_WFYG1_BUMP_10,
+ SFX_WFYG1_BUMP_11,
+ SFX_WFYG1_CAR_CRASH_1,
+ SFX_WFYG1_CAR_CRASH_2,
+ SFX_WFYG1_CAR_CRASH_3,
+ SFX_WFYG1_CAR_CRASH_4,
+ SFX_WFYG1_CAR_CRASH_5,
+ SFX_WFYG1_CAR_CRASH_6,
+ SFX_WFYG1_CAR_CRASH_7,
+ SFX_WFYG1_CAR_CRASH_8,
+ SFX_WFYG1_CAR_CRASH_9,
+ SFX_WFYG1_CHAT_1,
+ SFX_WFYG1_CHAT_2,
+ SFX_WFYG1_CHAT_3,
+ SFX_WFYG1_CHAT_4,
+ SFX_WFYG1_CHAT_5,
+ SFX_WFYG1_CHAT_6,
+ SFX_WFYG1_CHAT_7,
+ SFX_WFYG1_CHAT_8,
+ SFX_WFYG1_CHAT_9,
+ SFX_WFYG1_CHAT_10,
+ SFX_WFYG1_DODGE_1,
+ SFX_WFYG1_DODGE_2,
+ SFX_WFYG1_DODGE_3,
+ SFX_WFYG1_DODGE_4,
+ SFX_WFYG1_DODGE_5,
+ SFX_WFYG1_DODGE_6,
+ SFX_WFYG1_DODGE_7,
+ SFX_WFYG1_DODGE_8,
+ SFX_WFYG1_DODGE_9,
+ SFX_WFYG1_EYEING_1,
+ SFX_WFYG1_EYEING_2,
+ SFX_WFYG1_FIGHT_1,
+ SFX_WFYG1_FIGHT_2,
+ SFX_WFYG1_FIGHT_3,
+ SFX_WFYG1_FIGHT_4,
+ SFX_WFYG1_GENERIC_CRASH_1,
+ SFX_WFYG1_GENERIC_CRASH_2,
+ SFX_WFYG1_GENERIC_CRASH_3,
+ SFX_WFYG1_GENERIC_CRASH_4,
+ SFX_WFYG1_GENERIC_CRASH_5,
+ SFX_WFYG1_GENERIC_CRASH_6,
+ SFX_WFYG1_GENERIC_CRASH_7,
+ SFX_WFYG1_GUN_COOL_1,
+ SFX_WFYG1_GUN_COOL_2,
+ SFX_WFYG1_GUN_COOL_3,
+ SFX_WFYG1_GUN_COOL_4,
+ SFX_WFYG1_GUN_COOL_5,
+ SFX_WFYG1_GUN_COOL_6,
+ SFX_WFYG1_JACKED_1,
+ SFX_WFYG1_JACKED_2,
+ SFX_WFYG1_JACKED_3,
+ SFX_WFYG1_JACKED_4,
+ SFX_WFYG1_JACKED_5,
+ SFX_WFYG1_LOST_1,
+ SFX_WFYG1_LOST_2,
+ SFX_WFYG1_LOST_3,
+ SFX_WFYG1_MUGGED_1,
+ SFX_WFYG1_MUGGED_2,
+ SFX_WFYG1_MUGGING_1,
+ SFX_WFYG1_MUGGING_2,
+ SFX_WFYG1_RUN_1,
+ SFX_WFYG1_RUN_2,
+ SFX_WFYG1_SAVED_1,
+ SFX_WFYG1_SHOCKED_1,
+ SFX_WFYG1_TAXI_1,
+
+ SFX_WFYG2_BLOCKED_1,
+ SFX_WFYG2_BLOCKED_2,
+ SFX_WFYG2_BLOCKED_3,
+ SFX_WFYG2_BLOCKED_4,
+ SFX_WFYG2_BLOCKED_5,
+ SFX_WFYG2_BUMP_1,
+ SFX_WFYG2_BUMP_2,
+ SFX_WFYG2_BUMP_3,
+ SFX_WFYG2_BUMP_4,
+ SFX_WFYG2_BUMP_5,
+ SFX_WFYG2_BUMP_6,
+ SFX_WFYG2_BUMP_7,
+ SFX_WFYG2_BUMP_8,
+ SFX_WFYG2_BUMP_9,
+ SFX_WFYG2_BUMP_10,
+ SFX_WFYG2_BUMP_11,
+ SFX_WFYG2_CAR_CRASH_1,
+ SFX_WFYG2_CAR_CRASH_2,
+ SFX_WFYG2_CAR_CRASH_3,
+ SFX_WFYG2_CAR_CRASH_4,
+ SFX_WFYG2_CAR_CRASH_5,
+ SFX_WFYG2_CAR_CRASH_6,
+ SFX_WFYG2_CAR_CRASH_7,
+ SFX_WFYG2_CAR_CRASH_8,
+ SFX_WFYG2_CAR_CRASH_9,
+ SFX_WFYG2_CHAT_1,
+ SFX_WFYG2_CHAT_2,
+ SFX_WFYG2_CHAT_3,
+ SFX_WFYG2_CHAT_4,
+ SFX_WFYG2_CHAT_5,
+ SFX_WFYG2_CHAT_6,
+ SFX_WFYG2_CHAT_7,
+ SFX_WFYG2_CHAT_8,
+ SFX_WFYG2_CHAT_9,
+ SFX_WFYG2_DODGE_1,
+ SFX_WFYG2_DODGE_2,
+ SFX_WFYG2_DODGE_3,
+ SFX_WFYG2_DODGE_4,
+ SFX_WFYG2_DODGE_5,
+ SFX_WFYG2_DODGE_6,
+ SFX_WFYG2_DODGE_7,
+ SFX_WFYG2_DODGE_8,
+ SFX_WFYG2_EYEING_1,
+ SFX_WFYG2_EYEING_2,
+ SFX_WFYG2_EYEING_3,
+ SFX_WFYG2_EYEING_4,
+ SFX_WFYG2_FIGHT_1,
+ SFX_WFYG2_FIGHT_2,
+ SFX_WFYG2_FIGHT_3,
+ SFX_WFYG2_FIGHT_4,
+ SFX_WFYG2_FIGHT_5,
+ SFX_WFYG2_GENERIC_CRASH_1,
+ SFX_WFYG2_GENERIC_CRASH_2,
+ SFX_WFYG2_GENERIC_CRASH_3,
+ SFX_WFYG2_GENERIC_CRASH_4,
+ SFX_WFYG2_GENERIC_CRASH_5,
+ SFX_WFYG2_GENERIC_CRASH_6,
+ SFX_WFYG2_GENERIC_CRASH_7,
+ SFX_WFYG2_GUN_COOL_1,
+ SFX_WFYG2_GUN_COOL_2,
+ SFX_WFYG2_GUN_COOL_3,
+ SFX_WFYG2_JACKED_1,
+ SFX_WFYG2_JACKED_2,
+ SFX_WFYG2_JACKED_3,
+ SFX_WFYG2_JACKED_4,
+ SFX_WFYG2_JACKED_5,
+ SFX_WFYG2_LOST_1,
+ SFX_WFYG2_MUGGED_1,
+ SFX_WFYG2_MUGGED_2,
+ SFX_WFYG2_SHOCKED_1,
+ SFX_WFYG2_TAXI_1,
+ SFX_WFYG2_TAXI_2, // unused
+
+ SFX_HMOCA_BLOCKED_1,
+ SFX_HMOCA_BLOCKED_2,
+ SFX_HMOCA_BLOCKED_3,
+ SFX_HMOCA_BLOCKED_4,
+ SFX_HMOCA_BLOCKED_5,
+ SFX_HMOCA_BLOCKED_6,
+ SFX_HMOCA_BLOCKED_7,
+ SFX_HMOCA_BLOCKED_8,
+ SFX_HMOCA_CAR_CRASH_1,
+ SFX_HMOCA_CAR_CRASH_2,
+ SFX_HMOCA_CAR_CRASH_3,
+ SFX_HMOCA_CAR_CRASH_4,
+ SFX_HMOCA_CAR_CRASH_5,
+ SFX_HMOCA_CAR_CRASH_6,
+ SFX_HMOCA_CAR_CRASH_7,
+ SFX_HMOCA_CAR_CRASH_8,
+ SFX_HMOCA_CHAT_1,
+ SFX_HMOCA_CHAT_2,
+ SFX_HMOCA_CHAT_3,
+ SFX_HMOCA_CHAT_4,
+ SFX_HMOCA_CHAT_5,
+ SFX_HMOCA_CHAT_6,
+ SFX_HMOCA_CHAT_7,
+ SFX_HMOCA_CHAT_8,
+ SFX_HMOCA_CHAT_9,
+ SFX_HMOCA_CHAT_10,
+ SFX_HMOCA_EYEING_1,
+ SFX_HMOCA_EYEING_2,
+ SFX_HMOCA_GUN_PANIC_1,
+ SFX_HMOCA_GUN_PANIC_2,
+ SFX_HMOCA_GUN_PANIC_3,
+ SFX_HMOCA_GUN_PANIC_4,
+ SFX_HMOCA_GUN_PANIC_5,
+ SFX_HMOCA_JACKED_1,
+ SFX_HMOCA_JACKED_2,
+ SFX_HMOCA_JACKED_3,
+ SFX_HMOCA_JACKED_4,
+ SFX_HMOCA_JACKED_5,
+ SFX_HMOCA_JACKED_6,
+ SFX_HMOCA_JACKED_7,
+ SFX_HMOCA_JACKED_8,
+ SFX_HMOCA_JACKED_9,
+ SFX_HMOCA_JACKED_10,
+ SFX_HMOCA_JACKING_1,
+ SFX_HMOCA_JACKING_2,
+ SFX_HMOCA_JACKING_3,
+ SFX_HMOCA_JACKING_4,
+ SFX_HMOCA_JACKING_5,
+ SFX_HMOCA_JACKING_6,
+ SFX_HMOCA_JACKING_7,
+ SFX_HMOCA_JACKING_8,
+ SFX_HMOCA_JACKING_9,
+ SFX_HMOCA_JACKING_10,
+ SFX_HMOCA_JACKING_11,
+ SFX_HMOCA_MUGGED_1,
+ SFX_HMOCA_MUGGED_2,
+ SFX_HMOCA_MUGGED_3,
+ SFX_HMOCA_MUGGED_4,
+ SFX_HMOCA_MUGGED_5,
+ SFX_HMOCA_MUGGED_6,
+ SFX_HMOCA_MUGGED_7,
+ SFX_HMOCA_RUN_1,
+ SFX_HMOCA_RUN_2,
+ SFX_HMOCA_TAXI_1,
+
+ SFX_WFOSH_BUMP_1,
+ SFX_WFOSH_BUMP_2,
+ SFX_WFOSH_BUMP_3,
+ SFX_WFOSH_BUMP_4,
+ SFX_WFOSH_BUMP_5,
+ SFX_WFOSH_BUMP_6,
+ SFX_WFOSH_BUMP_7,
+ SFX_WFOSH_BUMP_8,
+ SFX_WFOSH_BUMP_9,
+ SFX_WFOSH_BUMP_10,
+ SFX_WFOSH_CHAT_1,
+ SFX_WFOSH_CHAT_2,
+ SFX_WFOSH_CHAT_3,
+ SFX_WFOSH_CHAT_4,
+ SFX_WFOSH_CHAT_5,
+ SFX_WFOSH_CHAT_6,
+ SFX_WFOSH_CHAT_7,
+ SFX_WFOSH_CHAT_8,
+ SFX_WFOSH_CHAT_9,
+ SFX_WFOSH_DODGE_1,
+ SFX_WFOSH_DODGE_2,
+ SFX_WFOSH_DODGE_3,
+ SFX_WFOSH_DODGE_4,
+ SFX_WFOSH_DODGE_5,
+ SFX_WFOSH_DODGE_6,
+ SFX_WFOSH_DODGE_7,
+ SFX_WFOSH_DODGE_8,
+ SFX_WFOSH_DODGE_9,
+ SFX_WFOSH_DODGE_10,
+ SFX_WFOSH_GUN_COOL_1,
+ SFX_WFOSH_GUN_COOL_2,
+ SFX_WFOSH_GUN_COOL_3,
+ SFX_WFOSH_GUN_COOL_4,
+ SFX_WFOSH_GUN_COOL_5,
+ SFX_WFOSH_GUN_COOL_6,
+ SFX_WFOSH_GUN_COOL_7,
+ SFX_WFOSH_GUN_COOL_8,
+ SFX_WFOSH_GUN_COOL_9,
+ SFX_WFOSH_GUN_COOL_10,
+ SFX_WFOSH_LOST_1,
+ SFX_WFOSH_LOST_2,
+ SFX_WFOSH_MUGGED_1,
+ SFX_WFOSH_MUGGED_2,
+ SFX_WFOSH_RUN_1,
+ SFX_WFOSH_RUN_2,
+ SFX_WFOSH_RUN_3,
+ SFX_WFOSH_RUN_4,
+ SFX_WFOSH_RUN_5,
+ SFX_WFOSH_RUN_6,
+ SFX_WFOSH_RUN_7,
+ SFX_WFOSH_RUN_8,
+ SFX_WFOSH_RUN_9,
+ SFX_WFOSH_SAVED_1,
+ SFX_WFOSH_SAVED_2,
+ SFX_WFOSH_SAVED_3,
+ SFX_WFOSH_SHOCKED_1,
+ SFX_WFOSH_SHOCKED_2,
+ SFX_WFOSH_SHOCKED_3,
+ SFX_WFOSH_SHOCKED_4,
+ SFX_WFOSH_SHOCKED_5,
+ SFX_WFOSH_TAXI_1,
+ SFX_WFYSK_BLOCKED_1,
+ SFX_WFYSK_BLOCKED_2,
+ SFX_WFYSK_BLOCKED_3,
+ SFX_WFYSK_BLOCKED_4,
+ SFX_WFYSK_BLOCKED_5,
+ SFX_WFYSK_BLOCKED_6,
+ SFX_WFYSK_BLOCKED_7,
+ SFX_WFYSK_BLOCKED_8,
+ SFX_WFYSK_BLOCKED_9,
+ SFX_WFYSK_BLOCKED_10,
+ SFX_WFYSK_BLOCKED_11,
+ SFX_WFYSK_BUMP_1,
+ SFX_WFYSK_BUMP_2,
+ SFX_WFYSK_BUMP_3,
+ SFX_WFYSK_BUMP_4,
+ SFX_WFYSK_BUMP_5,
+ SFX_WFYSK_BUMP_6,
+ SFX_WFYSK_BUMP_7,
+ SFX_WFYSK_BUMP_8,
+ SFX_WFYSK_BUMP_9,
+ SFX_WFYSK_BUMP_10,
+ SFX_WFYSK_BUMP_11,
+ SFX_WFYSK_BUMP_12,
+ SFX_WFYSK_BUMP_13,
+ SFX_WFYSK_BUMP_14,
+ SFX_WFYSK_BUMP_15,
+ SFX_WFYSK_BUMP_16,
+ SFX_WFYSK_BUMP_17,
+ SFX_WFYSK_BUMP_18,
+ SFX_WFYSK_DODGE_1,
+ SFX_WFYSK_DODGE_2,
+ SFX_WFYSK_DODGE_3,
+ SFX_WFYSK_DODGE_4,
+ SFX_WFYSK_DODGE_5,
+ SFX_WFYSK_DODGE_6,
+ SFX_WFYSK_DODGE_7,
+ SFX_WFYSK_DODGE_8,
+ SFX_WFYSK_DODGE_9,
+ SFX_WFYSK_FIGHT_1,
+ SFX_WFYSK_FIGHT_2,
+ SFX_WFYSK_FIGHT_3,
+ SFX_WFYSK_FIGHT_4,
+ SFX_WFYSK_FIGHT_5,
+ SFX_WFYSK_FIGHT_6,
+ SFX_WFYSK_FIGHT_7,
+ SFX_WFYSK_FIGHT_8,
+ SFX_WFYSK_FIGHT_9,
+ SFX_WFYSK_FIGHT_10,
+ SFX_WFYSK_FIGHT_11,
+ SFX_WFYSK_GUN_PANIC_1,
+ SFX_WFYSK_GUN_PANIC_2,
+ SFX_WFYSK_GUN_PANIC_3,
+ SFX_WFYSK_GUN_PANIC_4,
+ SFX_WFYSK_GUN_PANIC_5,
+ SFX_WFYSK_MUGGED_1,
+ SFX_WFYSK_MUGGED_2,
+ SFX_WFYSK_SAVED_1,
+ SFX_WFYSK_SAVED_2,
+ SFX_WFYSK_TAXI_1,
+ SFX_WMYLG_BUMP_1,
+ SFX_WMYLG_BUMP_2,
+ SFX_WMYLG_BUMP_3,
+ SFX_WMYLG_BUMP_4,
+ SFX_WMYLG_BUMP_5,
+ SFX_WMYLG_BUMP_6,
+ SFX_WMYLG_BUMP_7,
+ SFX_WMYLG_BUMP_8,
+ SFX_WMYLG_BUMP_9,
+ SFX_WMYLG_BUMP_10,
+ SFX_WMYLG_CHAT_1,
+ SFX_WMYLG_CHAT_2,
+ SFX_WMYLG_CHAT_3,
+ SFX_WMYLG_CHAT_4,
+ SFX_WMYLG_CHAT_5,
+ SFX_WMYLG_CHAT_6,
+ SFX_WMYLG_CHAT_7,
+ SFX_WMYLG_CHAT_8,
+ SFX_WMYLG_CHAT_9,
+ SFX_WMYLG_CHAT_10,
+ SFX_WMYLG_DODGE_1,
+ SFX_WMYLG_DODGE_2,
+ SFX_WMYLG_DODGE_3,
+ SFX_WMYLG_DODGE_4,
+ SFX_WMYLG_DODGE_5,
+ SFX_WMYLG_DODGE_6,
+ SFX_WMYLG_DODGE_7,
+ SFX_WMYLG_DODGE_8,
+ SFX_WMYLG_DODGE_9,
+ SFX_WMYLG_FIGHT_1,
+ SFX_WMYLG_FIGHT_2,
+ SFX_WMYLG_FIGHT_3,
+ SFX_WMYLG_FIGHT_4,
+ SFX_WMYLG_FIGHT_5,
+ SFX_WMYLG_FIGHT_6,
+ SFX_WMYLG_FIGHT_7,
+ SFX_WMYLG_GUN_COOL_1,
+ SFX_WMYLG_GUN_COOL_2,
+ SFX_WMYLG_GUN_COOL_3,
+ SFX_WMYLG_GUN_COOL_4,
+ SFX_WMYLG_GUN_COOL_5,
+ SFX_WMYLG_GUN_COOL_6,
+ SFX_WMYLG_SAVED_1,
+ SFX_WMYLG_TAXI_1,
+
+ SFX_WMOBE_BLOCKED_1,
+ SFX_WMOBE_BLOCKED_2,
+ SFX_WMOBE_BLOCKED_3,
+ SFX_WMOBE_BLOCKED_4,
+ SFX_WMOBE_BLOCKED_5,
+ SFX_WMOBE_BLOCKED_6,
+ SFX_WMOBE_BUMP_1,
+ SFX_WMOBE_BUMP_2,
+ SFX_WMOBE_BUMP_3,
+ SFX_WMOBE_BUMP_4,
+ SFX_WMOBE_BUMP_5,
+ SFX_WMOBE_BUMP_6,
+ SFX_WMOBE_BUMP_7,
+ SFX_WMOBE_BUMP_8,
+ SFX_WMOBE_BUMP_9,
+ SFX_WMOBE_BUMP_10,
+ SFX_WMOBE_BUMP_11,
+ SFX_WMOBE_BUMP_12,
+ SFX_WMOBE_CAR_CRASH_1,
+ SFX_WMOBE_CAR_CRASH_2,
+ SFX_WMOBE_CAR_CRASH_3,
+ SFX_WMOBE_CAR_CRASH_4,
+ SFX_WMOBE_CAR_CRASH_5,
+ SFX_WMOBE_CAR_CRASH_6,
+ SFX_WMOBE_CAR_CRASH_7,
+ SFX_WMOBE_CAR_CRASH_8,
+ SFX_WMOBE_CHAT_1,
+ SFX_WMOBE_CHAT_2,
+ SFX_WMOBE_CHAT_3,
+ SFX_WMOBE_CHAT_4,
+ SFX_WMOBE_CHAT_5,
+ SFX_WMOBE_CHAT_6,
+ SFX_WMOBE_CHAT_7,
+ SFX_WMOBE_CHAT_8,
+ SFX_WMOBE_CHAT_9,
+ SFX_WMOBE_CHAT_10,
+ SFX_WMOBE_DODGE_1,
+ SFX_WMOBE_DODGE_2,
+ SFX_WMOBE_DODGE_3,
+ SFX_WMOBE_DODGE_4,
+ SFX_WMOBE_DODGE_5,
+ SFX_WMOBE_DODGE_6,
+ SFX_WMOBE_DODGE_7,
+ SFX_WMOBE_DODGE_8,
+ SFX_WMOBE_EYEING_1,
+ SFX_WMOBE_EYEING_2,
+ SFX_WMOBE_GENERIC_CRASH_1,
+ SFX_WMOBE_GENERIC_CRASH_2,
+ SFX_WMOBE_GENERIC_CRASH_3,
+ SFX_WMOBE_GENERIC_CRASH_4,
+ SFX_WMOBE_GENERIC_CRASH_5,
+ SFX_WMOBE_GENERIC_CRASH_6,
+ SFX_WMOBE_GENERIC_CRASH_7,
+ SFX_WMOBE_GUN_PANIC_1,
+ SFX_WMOBE_GUN_PANIC_2,
+ SFX_WMOBE_GUN_PANIC_3,
+ SFX_WMOBE_GUN_PANIC_4,
+ SFX_WMOBE_GUN_PANIC_5,
+ SFX_WMOBE_JACKED_1,
+ SFX_WMOBE_JACKED_2,
+ SFX_WMOBE_JACKED_3,
+ SFX_WMOBE_JACKED_4,
+ SFX_WMOBE_JACKED_5,
+ SFX_WMOBE_JACKED_6,
+ SFX_WMOBE_JACKED_7,
+ SFX_WMOBE_JACKED_8,
+ SFX_WMOBE_JACKING_1,
+ SFX_WMOBE_JACKING_2,
+ SFX_WMOBE_JACKING_3,
+ SFX_WMOBE_JACKING_4,
+ SFX_WMOBE_JEER_1,
+ SFX_WMOBE_JEER_2,
+ SFX_WMOBE_JEER_3,
+ SFX_WMOBE_JEER_4,
+ SFX_WMOBE_JEER_5,
+ SFX_WMOBE_JEER_6,
+ SFX_WMOBE_JEER_7,
+ SFX_WMOBE_JEER_8,
+ SFX_WMOBE_JEER_9,
+ SFX_WMOBE_JEER_10,
+ SFX_WMOBE_JEER_11,
+ SFX_WMOBE_JEER_12,
+ SFX_WMOBE_JEER_13,
+ SFX_WMOBE_JEER_14,
+ SFX_WMOBE_JEER_15,
+ SFX_WMOBE_JEER_16,
+ SFX_WMOBE_MUGGING_1,
+ SFX_WMOBE_MUGGING_2,
+ SFX_WMOBE_MUGGING_3,
+ SFX_WMOBE_MUGGING_4,
+ SFX_WMOBE_MUGGING_5,
+ SFX_WMOBE_MUGGING_6,
+ SFX_WMOBE_RUN_1,
+ SFX_WMOBE_RUN_2,
+ SFX_WMOBE_RUN_3,
+ SFX_WMOBE_RUN_4,
+ SFX_WMOBE_SAVED_1,
+ SFX_WMOBE_SAVED_2,
+ SFX_WMOBE_SHOCKED_1,
+ SFX_WMOBE_SHOCKED_2,
+
+
+
+ SFX_WMYBU_BLOCKED_1,
+ SFX_WMYBU_BLOCKED_2,
+ SFX_WMYBU_BLOCKED_3,
+ SFX_WMYBU_BLOCKED_4,
+ SFX_WMYBU_BLOCKED_5,
+ SFX_WMYBU_BLOCKED_6,
+ SFX_WMYBU_BLOCKED_7,
+ SFX_WMYBU_BLOCKED_8,
+ SFX_WMYBU_BLOCKED_9,
+ SFX_WMYBU_BUMP_1,
+ SFX_WMYBU_BUMP_2,
+ SFX_WMYBU_BUMP_3,
+ SFX_WMYBU_BUMP_4,
+ SFX_WMYBU_BUMP_5,
+ SFX_WMYBU_BUMP_6,
+ SFX_WMYBU_BUMP_7,
+ SFX_WMYBU_BUMP_8,
+ SFX_WMYBU_BUMP_9,
+ SFX_WMYBU_BUMP_10,
+ SFX_WMYBU_BUMP_11,
+ SFX_WMYBU_CAR_CRASH_1,
+ SFX_WMYBU_CAR_CRASH_2,
+ SFX_WMYBU_CAR_CRASH_3,
+ SFX_WMYBU_CAR_CRASH_4,
+ SFX_WMYBU_CAR_CRASH_5,
+ SFX_WMYBU_CAR_CRASH_6,
+ SFX_WMYBU_CAR_CRASH_7,
+ SFX_WMYBU_CAR_CRASH_8,
+ SFX_WMYBU_CAR_CRASH_9,
+ SFX_WMYBU_CHAT_1,
+ SFX_WMYBU_CHAT_2,
+ SFX_WMYBU_CHAT_3,
+ SFX_WMYBU_CHAT_4,
+ SFX_WMYBU_CHAT_5,
+ SFX_WMYBU_CHAT_6,
+ SFX_WMYBU_CHAT_7,
+ SFX_WMYBU_CHAT_8,
+ SFX_WMYBU_CHAT_9,
+ SFX_WMYBU_CHAT_10,
+ SFX_WMYBU_DODGE_1,
+ SFX_WMYBU_DODGE_2,
+ SFX_WMYBU_DODGE_3,
+ SFX_WMYBU_DODGE_4,
+ SFX_WMYBU_DODGE_5,
+ SFX_WMYBU_DODGE_6,
+ SFX_WMYBU_DODGE_7,
+ SFX_WMYBU_DODGE_8,
+ SFX_WMYBU_DODGE_9,
+ SFX_WMYBU_DODGE_10,
+ SFX_WMYBU_EYEING_1,
+ SFX_WMYBU_EYEING_2,
+ SFX_WMYBU_GENERIC_CRASH_1,
+ SFX_WMYBU_GENERIC_CRASH_2,
+ SFX_WMYBU_GENERIC_CRASH_3,
+ SFX_WMYBU_GENERIC_CRASH_4,
+ SFX_WMYBU_GENERIC_CRASH_5,
+ SFX_WMYBU_GUN_PANIC_1,
+ SFX_WMYBU_GUN_PANIC_2,
+ SFX_WMYBU_GUN_PANIC_3,
+ SFX_WMYBU_GUN_PANIC_4,
+ SFX_WMYBU_GUN_PANIC_5,
+ SFX_WMYBU_GUN_PANIC_6,
+ SFX_WMYBU_INNOCENT_1,
+ SFX_WMYBU_INNOCENT_2,
+ SFX_WMYBU_JACKED_1,
+ SFX_WMYBU_JACKED_2,
+ SFX_WMYBU_JACKED_3,
+ SFX_WMYBU_JACKED_4,
+ SFX_WMYBU_JACKED_5,
+ SFX_WMYBU_LOST_1,
+ SFX_WMYBU_LOST_2,
+ SFX_WMYBU_LOST_3,
+ SFX_WMYBU_LOST_4,
+ SFX_WMYBU_LOST_5,
+ SFX_WMYBU_MUGGED_1,
+ SFX_WMYBU_RUN_1,
+ SFX_WMYBU_RUN_2,
+ SFX_WMYBU_RUN_3,
+ SFX_WMYBU_SAVED_1,
+ SFX_WMYBU_SAVED_2,
+ SFX_WMYBU_SHOCKED_1,
+ SFX_WMYBU_SHOCKED_2,
+ SFX_WMYBU_SHOCKED_3,
+ SFX_WMYBU_SHOCKED_4,
+ SFX_WMYBU_SHOCKED_5,
+ SFX_WMYBU_TAXI_1,
+ SFX_WMYBU_TAXI_2,
+
+ SFX_WMYST_BLOCKED_1,
+ SFX_WMYST_BLOCKED_2,
+ SFX_WMYST_BLOCKED_3,
+ SFX_WMYST_BLOCKED_4,
+ SFX_WMYST_BLOCKED_5,
+ SFX_WMYST_BLOCKED_6,
+ SFX_WMYST_BLOCKED_7,
+ SFX_WMYST_BLOCKED_8,
+ SFX_WMYST_BUMP_1,
+ SFX_WMYST_BUMP_2,
+ SFX_WMYST_BUMP_3,
+ SFX_WMYST_BUMP_4,
+ SFX_WMYST_BUMP_5,
+ SFX_WMYST_BUMP_6,
+ SFX_WMYST_BUMP_7,
+ SFX_WMYST_BUMP_8,
+ SFX_WMYST_BUMP_9,
+ SFX_WMYST_BUMP_10,
+ SFX_WMYST_BUMP_11,
+ SFX_WMYST_CAR_CRASH_1,
+ SFX_WMYST_CAR_CRASH_2,
+ SFX_WMYST_CAR_CRASH_3,
+ SFX_WMYST_CAR_CRASH_4,
+ SFX_WMYST_CAR_CRASH_5,
+ SFX_WMYST_CAR_CRASH_6,
+ SFX_WMYST_CAR_CRASH_7,
+ SFX_WMYST_CAR_CRASH_8,
+ SFX_WMYST_CHAT_1,
+ SFX_WMYST_CHAT_2,
+ SFX_WMYST_CHAT_3,
+ SFX_WMYST_CHAT_4,
+ SFX_WMYST_CHAT_5,
+ SFX_WMYST_CHAT_6,
+ SFX_WMYST_CHAT_7,
+ SFX_WMYST_CHAT_8,
+ SFX_WMYST_CHAT_9,
+ SFX_WMYST_CHAT_10,
+ SFX_WMYST_DODGE_1,
+ SFX_WMYST_DODGE_2,
+ SFX_WMYST_DODGE_3,
+ SFX_WMYST_DODGE_4,
+ SFX_WMYST_DODGE_5,
+ SFX_WMYST_DODGE_6,
+ SFX_WMYST_DODGE_7,
+ SFX_WMYST_DODGE_8,
+ SFX_WMYST_DODGE_9,
+ SFX_WMYST_DODGE_10,
+ SFX_WMYST_EYEING_1,
+ SFX_WMYST_EYEING_2,
+ SFX_WMYST_GENERIC_CRASH_1,
+ SFX_WMYST_GENERIC_CRASH_2,
+ SFX_WMYST_GENERIC_CRASH_3,
+ SFX_WMYST_GENERIC_CRASH_4,
+ SFX_WMYST_GENERIC_CRASH_5,
+ SFX_WMYST_GUN_PANIC_1,
+ SFX_WMYST_GUN_PANIC_2,
+ SFX_WMYST_GUN_PANIC_3,
+ SFX_WMYST_GUN_PANIC_4,
+ SFX_WMYST_GUN_PANIC_5,
+ SFX_WMYST_INNOCENT_1,
+ SFX_WMYST_INNOCENT_2,
+ SFX_WMYST_INNOCENT_3,
+ SFX_WMYST_JACKED_1,
+ SFX_WMYST_JACKED_2,
+ SFX_WMYST_JACKED_3,
+ SFX_WMYST_JACKED_4,
+ SFX_WMYST_JACKED_5,
+ SFX_WMYST_LOST_1,
+ SFX_WMYST_LOST_2,
+ SFX_WMYST_MUGGED_1,
+ SFX_WMYST_MUGGING_1,
+ SFX_WMYST_MUGGING_2,
+ SFX_WMYST_MUGGING_3,
+ SFX_WMYST_MUGGING_4,
+ SFX_WMYST_MUGGING_5,
+ SFX_WMYST_RUN_1,
+ SFX_WMYST_RUN_2,
+ SFX_WMYST_RUN_3,
+ SFX_WMYST_RUN_4,
+ SFX_WMYST_RUN_5,
+ SFX_WMYST_RUN_6,
+ SFX_WMYST_RUN_7,
+ SFX_WMYST_SAVED_1,
+ SFX_WMYST_TAXI_1,
+ SFX_WMYST_TAXI_2,
+
+ SFX_BMYPI_BLOCKED_1,
+ SFX_BMYPI_BLOCKED_2,
+ SFX_BMYPI_BLOCKED_3,
+ SFX_BMYPI_BLOCKED_4,
+ SFX_BMYPI_BLOCKED_5,
+ SFX_BMYPI_BLOCKED_6,
+ SFX_BMYPI_BUMP_1,
+ SFX_BMYPI_BUMP_2,
+ SFX_BMYPI_BUMP_3,
+ SFX_BMYPI_BUMP_4,
+ SFX_BMYPI_BUMP_5,
+ SFX_BMYPI_BUMP_6,
+ SFX_BMYPI_BUMP_7,
+ SFX_BMYPI_BUMP_8,
+ SFX_BMYPI_BUMP_9,
+ SFX_BMYPI_CAR_CRASH_1,
+ SFX_BMYPI_CAR_CRASH_2,
+ SFX_BMYPI_CAR_CRASH_3,
+ SFX_BMYPI_CAR_CRASH_4,
+ SFX_BMYPI_CAR_CRASH_5,
+ SFX_BMYPI_DODGE_1,
+ SFX_BMYPI_DODGE_2,
+ SFX_BMYPI_DODGE_3,
+ SFX_BMYPI_DODGE_4,
+ SFX_BMYPI_DODGE_5,
+ SFX_BMYPI_DODGE_6,
+ SFX_BMYPI_DODGE_7,
+ SFX_BMYPI_DODGE_8,
+ SFX_BMYPI_DODGE_9,
+ SFX_BMYPI_DODGE_10,
+ SFX_BMYPI_EYEING_1,
+ SFX_BMYPI_EYEING_2,
+ SFX_BMYPI_EYEING_3,
+ SFX_BMYPI_EYEING_4,
+ SFX_BMYPI_FIGHT_1,
+ SFX_BMYPI_FIGHT_2,
+ SFX_BMYPI_FIGHT_3,
+ SFX_BMYPI_FIGHT_4,
+ SFX_BMYPI_FIGHT_5,
+ SFX_BMYPI_FIGHT_6,
+ SFX_BMYPI_FIGHT_7,
+ SFX_BMYPI_FIGHT_8,
+ SFX_BMYPI_GENERIC_CRASH_1,
+ SFX_BMYPI_GENERIC_CRASH_2,
+ SFX_BMYPI_GENERIC_CRASH_3,
+ SFX_BMYPI_GENERIC_CRASH_4,
+ SFX_BMYPI_GENERIC_CRASH_5,
+ SFX_BMYPI_GENERIC_CRASH_6,
+ SFX_BMYPI_GENERIC_CRASH_7,
+ SFX_BMYPI_GENERIC_CRASH_8,
+ SFX_BMYPI_GENERIC_CRASH_9,
+ SFX_BMYPI_GENERIC_CRASH_10,
+ SFX_BMYPI_GENERIC_CRASH_11,
+ SFX_BMYPI_GENERIC_CRASH_12,
+ SFX_BMYPI_GENERIC_CRASH_13,
+ SFX_BMYPI_GUN_COOL_1,
+ SFX_BMYPI_GUN_COOL_2,
+ SFX_BMYPI_GUN_COOL_3,
+ SFX_BMYPI_GUN_COOL_4,
+ SFX_BMYPI_GUN_COOL_5,
+ SFX_BMYPI_JACKED_1,
+ SFX_BMYPI_JACKED_2,
+ SFX_BMYPI_JACKED_3,
+ SFX_BMYPI_JACKED_4,
+ SFX_BMYPI_JACKED_5,
+ SFX_BMYPI_JACKED_6,
+ SFX_BMYPI_JACKING_1,
+ SFX_BMYPI_JACKING_2,
+ SFX_BMYPI_JACKING_3,
+ SFX_BMYPI_JACKING_4,
+ SFX_BMYPI_MUGGED_1,
+ SFX_BMYPI_SAVED_1,
+ SFX_BMYPI_TAXI_1,
+ SFX_BMYPI_TAXI_2,
+
+ SFX_WFYPR_BUMP_1,
+ SFX_WFYPR_BUMP_2,
+ SFX_WFYPR_BUMP_3,
+ SFX_WFYPR_BUMP_4,
+ SFX_WFYPR_BUMP_5,
+ SFX_WFYPR_BUMP_6,
+ SFX_WFYPR_BUMP_7,
+ SFX_WFYPR_BUMP_8,
+ SFX_WFYPR_BUMP_9,
+ SFX_WFYPR_BUMP_10,
+ SFX_WFYPR_BUMP_11,
+ SFX_WFYPR_CHAT_1,
+ SFX_WFYPR_CHAT_2,
+ SFX_WFYPR_CHAT_3,
+ SFX_WFYPR_CHAT_4,
+ SFX_WFYPR_CHAT_5,
+ SFX_WFYPR_CHAT_6,
+ SFX_WFYPR_CHAT_7,
+ SFX_WFYPR_CHAT_8,
+ SFX_WFYPR_CHAT_9,
+ SFX_WFYPR_CHAT_10,
+ SFX_WFYPR_CHAT_11,
+ SFX_WFYPR_CHAT_12,
+ SFX_WFYPR_CHAT_13,
+ SFX_WFYPR_CHAT_14,
+ SFX_WFYPR_DODGE_1,
+ SFX_WFYPR_DODGE_2,
+ SFX_WFYPR_DODGE_3,
+ SFX_WFYPR_DODGE_4,
+ SFX_WFYPR_DODGE_5,
+ SFX_WFYPR_DODGE_6,
+ SFX_WFYPR_DODGE_7,
+ SFX_WFYPR_DODGE_8,
+ SFX_WFYPR_DODGE_9,
+ SFX_WFYPR_DODGE_10,
+ SFX_WFYPR_FIGHT_1,
+ SFX_WFYPR_FIGHT_2,
+ SFX_WFYPR_FIGHT_3,
+ SFX_WFYPR_FIGHT_4,
+ SFX_WFYPR_FIGHT_5,
+ SFX_WFYPR_FIGHT_6,
+ SFX_WFYPR_FIGHT_7,
+ SFX_WFYPR_FIGHT_8,
+ SFX_WFYPR_FIGHT_9,
+ SFX_WFYPR_FUCKING_1,
+ SFX_WFYPR_FUCKING_2,
+ SFX_WFYPR_FUCKING_3,
+ SFX_WFYPR_FUCKING_4,
+ SFX_WFYPR_FUCKING_5,
+ SFX_WFYPR_GUN_COOL_1,
+ SFX_WFYPR_GUN_COOL_2,
+ SFX_WFYPR_GUN_COOL_3,
+ SFX_WFYPR_GUN_COOL_4,
+ SFX_WFYPR_GUN_COOL_5,
+ SFX_WFYPR_GUN_COOL_6,
+ SFX_WFYPR_MUGGED_1,
+ SFX_WFYPR_MUGGED_2,
+ SFX_WFYPR_SAVED_1,
+ SFX_WFYPR_SOLICIT_1,
+ SFX_WFYPR_SOLICIT_2,
+ SFX_WFYPR_SOLICIT_3,
+ SFX_WFYPR_SOLICIT_4,
+ SFX_WFYPR_SOLICIT_5,
+ SFX_WFYPR_SOLICIT_6,
+ SFX_WFYPR_SOLICIT_7,
+ SFX_WFYPR_SOLICIT_8,
+ SFX_WFYPR_SOLICIT_9,
+ SFX_WFYPR_SOLICIT_10,
+ SFX_WFYPR_SOLICIT_11,
+ SFX_WFYPR_SOLICIT_12,
+ SFX_WFYPR_SOLICIT_13,
+ SFX_WFYPR_SOLICIT_14,
+ SFX_WFYPR_SOLICIT_15,
+ SFX_WFYPR_TAXI_1,
+
+ SFX_WMYRI_BLOCKED_1,
+ SFX_WMYRI_BLOCKED_2,
+ SFX_WMYRI_BLOCKED_3,
+ SFX_WMYRI_BLOCKED_4,
+ SFX_WMYRI_BLOCKED_5,
+ SFX_WMYRI_BLOCKED_6,
+ SFX_WMYRI_BLOCKED_7,
+ SFX_WMYRI_BLOCKED_8,
+ SFX_WMYRI_BLOCKED_9,
+ SFX_WMYRI_BLOCKED_10,
+ SFX_WMYRI_BUMP_1,
+ SFX_WMYRI_BUMP_2,
+ SFX_WMYRI_BUMP_3,
+ SFX_WMYRI_BUMP_4,
+ SFX_WMYRI_BUMP_5,
+ SFX_WMYRI_BUMP_6,
+ SFX_WMYRI_BUMP_7,
+ SFX_WMYRI_BUMP_8,
+ SFX_WMYRI_CAR_CRASH_1,
+ SFX_WMYRI_CAR_CRASH_2,
+ SFX_WMYRI_CAR_CRASH_3,
+ SFX_WMYRI_CAR_CRASH_4,
+ SFX_WMYRI_CAR_CRASH_5,
+ SFX_WMYRI_CAR_CRASH_6,
+ SFX_WMYRI_CAR_CRASH_7,
+ SFX_WMYRI_CAR_CRASH_8,
+ SFX_WMYRI_CAR_CRASH_9,
+ SFX_WMYRI_CHAT_1,
+ SFX_WMYRI_CHAT_2,
+ SFX_WMYRI_CHAT_3,
+ SFX_WMYRI_CHAT_4,
+ SFX_WMYRI_CHAT_5,
+ SFX_WMYRI_CHAT_6,
+ SFX_WMYRI_CHAT_7,
+ SFX_WMYRI_CHAT_8,
+ SFX_WMYRI_CHAT_9,
+ SFX_WMYRI_CHAT_10,
+ SFX_WMYRI_DODGE_1,
+ SFX_WMYRI_DODGE_2,
+ SFX_WMYRI_DODGE_3,
+ SFX_WMYRI_DODGE_4,
+ SFX_WMYRI_DODGE_5,
+ SFX_WMYRI_DODGE_6,
+ SFX_WMYRI_DODGE_7,
+ SFX_WMYRI_DODGE_8,
+ SFX_WMYRI_DODGE_9,
+ SFX_WMYRI_EYEING_1,
+ SFX_WMYRI_EYEING_2,
+ SFX_WMYRI_EYEING_3,
+ SFX_WMYRI_GENERIC_CRASH_1,
+ SFX_WMYRI_GENERIC_CRASH_2,
+ SFX_WMYRI_GENERIC_CRASH_3,
+ SFX_WMYRI_GENERIC_CRASH_4,
+ SFX_WMYRI_GENERIC_CRASH_5,
+ SFX_WMYRI_GENERIC_CRASH_6,
+ SFX_WMYRI_GENERIC_CRASH_7,
+ SFX_WMYRI_GENERIC_CRASH_8,
+ SFX_WMYRI_GENERIC_CRASH_9,
+ SFX_WMYRI_GENERIC_CRASH_10,
+ SFX_WMYRI_GENERIC_CRASH_11,
+ SFX_WMYRI_GUN_PANIC_1,
+ SFX_WMYRI_GUN_PANIC_2,
+ SFX_WMYRI_GUN_PANIC_3,
+ SFX_WMYRI_GUN_PANIC_4,
+ SFX_WMYRI_GUN_PANIC_5,
+ SFX_WMYRI_GUN_PANIC_6,
+ SFX_WMYRI_GUN_PANIC_7,
+ SFX_WMYRI_GUN_PANIC_8,
+ SFX_WMYRI_JACKED_1,
+ SFX_WMYRI_JACKED_2,
+ SFX_WMYRI_JACKED_3,
+ SFX_WMYRI_JACKED_4,
+ SFX_WMYRI_JACKED_5,
+ SFX_WMYRI_JACKED_6,
+ SFX_WMYRI_JACKED_7,
+ SFX_WMYRI_JACKED_8,
+ SFX_WMYRI_LOST_1,
+ SFX_WMYRI_RUN_1,
+ SFX_WMYRI_RUN_2,
+ SFX_WMYRI_RUN_3,
+ SFX_WMYRI_RUN_4,
+ SFX_WMYRI_RUN_5,
+ SFX_WMYRI_SAVED_1,
+ SFX_WMYRI_SHOCKED_1,
+ SFX_WMYRI_SHOCKED_2,
+ SFX_WMYRI_SHOCKED_3,
+ SFX_WMYRI_SHOCKED_4,
+ SFX_WMYRI_TAXI_1,
+ SFX_WMYRI_TAXI_2,
+
+ SFX_BMOST_BUMP_1,
+ SFX_BMOST_BUMP_2,
+ SFX_BMOST_BUMP_3,
+ SFX_BMOST_BUMP_4,
+ SFX_BMOST_BUMP_5,
+ SFX_BMOST_BUMP_6,
+ SFX_BMOST_BUMP_7,
+ SFX_BMOST_BUMP_8,
+ SFX_BMOST_BUMP_9,
+ SFX_BMOST_BUMP_10,
+ SFX_BMOST_BUMP_11,
+ SFX_BMOST_BUMP_12,
+ SFX_BMOST_BUMP_13,
+ SFX_BMOST_BUMP_14,
+ SFX_BMOST_BUMP_15,
+ SFX_BMOST_BUMP_16,
+ SFX_BMOST_BUMP_17,
+ SFX_BMOST_CAR_CRASH_1,
+ SFX_BMOST_CAR_CRASH_2,
+ SFX_BMOST_CAR_CRASH_3,
+ SFX_BMOST_CAR_CRASH_4,
+ SFX_BMOST_CAR_CRASH_5,
+ SFX_BMOST_CAR_CRASH_6,
+ SFX_BMOST_CAR_CRASH_7,
+ SFX_BMOST_CAR_CRASH_8,
+ SFX_BMOST_CHAT_1,
+ SFX_BMOST_CHAT_2,
+ SFX_BMOST_CHAT_3,
+ SFX_BMOST_CHAT_4,
+ SFX_BMOST_CHAT_5,
+ SFX_BMOST_CHAT_6,
+ SFX_BMOST_CHAT_7,
+ SFX_BMOST_CHAT_8,
+ SFX_BMOST_CHAT_9,
+ SFX_BMOST_CHAT_10,
+ SFX_BMOST_CHAT_11,
+ SFX_BMOST_CHAT_12,
+ SFX_BMOST_CHAT_13,
+ SFX_BMOST_CHAT_14,
+ SFX_BMOST_CHAT_15,
+ SFX_BMOST_CHAT_16,
+ SFX_BMOST_CHAT_17,
+ SFX_BMOST_CHAT_18,
+ SFX_BMOST_DODGE_1,
+ SFX_BMOST_DODGE_2,
+ SFX_BMOST_DODGE_3,
+ SFX_BMOST_DODGE_4,
+ SFX_BMOST_DODGE_5,
+ SFX_BMOST_DODGE_6,
+ SFX_BMOST_DODGE_7,
+ SFX_BMOST_DODGE_8,
+ SFX_BMOST_EYEING_1,
+ SFX_BMOST_EYEING_2,
+ SFX_BMOST_EYEING_3,
+ SFX_BMOST_EYEING_4,
+ SFX_BMOST_EYEING_5,
+ SFX_BMOST_EYEING_6,
+ SFX_BMOST_FIGHT_1,
+ SFX_BMOST_FIGHT_2,
+ SFX_BMOST_FIGHT_3,
+ SFX_BMOST_FIGHT_4,
+ SFX_BMOST_FIGHT_5,
+ SFX_BMOST_FIGHT_6,
+ SFX_BMOST_FIGHT_7,
+ SFX_BMOST_GENERIC_CRASH_1,
+ SFX_BMOST_GENERIC_CRASH_2,
+ SFX_BMOST_GENERIC_CRASH_3,
+ SFX_BMOST_GENERIC_CRASH_4,
+ SFX_BMOST_GENERIC_CRASH_5,
+ SFX_BMOST_GENERIC_CRASH_6,
+ SFX_BMOST_GENERIC_CRASH_7,
+ SFX_BMOST_GENERIC_CRASH_8,
+ SFX_BMOST_GENERIC_CRASH_9,
+ SFX_BMOST_GENERIC_CRASH_10,
+ SFX_BMOST_GENERIC_CRASH_11,
+ SFX_BMOST_GENERIC_CRASH_12,
+ SFX_BMOST_GENERIC_CRASH_13,
+ SFX_BMOST_GUN_PANIC_1,
+ SFX_BMOST_GUN_PANIC_2,
+ SFX_BMOST_GUN_PANIC_3,
+ SFX_BMOST_GUN_PANIC_4,
+ SFX_BMOST_GUN_PANIC_5,
+ SFX_BMOST_GUN_PANIC_6,
+ SFX_BMOST_GUN_PANIC_7,
+ SFX_BMOST_GUN_PANIC_8,
+ SFX_BMOST_GUN_PANIC_9,
+ SFX_BMOST_LOST_1,
+ SFX_BMOST_LOST_2,
+ SFX_BMOST_LOST_3,
+ SFX_BMOST_LOST_4,
+ SFX_BMOST_LOST_5,
+ SFX_BMOST_LOST_6,
+ SFX_BMOST_MUGGED_1,
+ SFX_BMOST_MUGGED_2,
+ SFX_BMOST_MUGGED_3,
+ SFX_BMOST_MUGGED_4,
+ SFX_BMOST_SAVED_1,
+ SFX_BMOST_TAXI_1,
+
+ SFX_HFOST_BLOCKED_1,
+ SFX_HFOST_BLOCKED_2,
+ SFX_HFOST_BLOCKED_3,
+ SFX_HFOST_BLOCKED_4,
+ SFX_HFOST_BLOCKED_5,
+ SFX_HFOST_BLOCKED_6,
+ SFX_HFOST_BLOCKED_7,
+ SFX_HFOST_BLOCKED_8,
+ SFX_HFOST_BLOCKED_9,
+ SFX_HFOST_BUMP_1,
+ SFX_HFOST_BUMP_2,
+ SFX_HFOST_BUMP_3,
+ SFX_HFOST_BUMP_4,
+ SFX_HFOST_BUMP_5,
+ SFX_HFOST_BUMP_6,
+ SFX_HFOST_BUMP_7,
+ SFX_HFOST_BUMP_8,
+ SFX_HFOST_BUMP_9,
+ SFX_HFOST_BUMP_10,
+ SFX_HFOST_BUMP_11,
+ SFX_HFOST_BUMP_12,
+ SFX_HFOST_CAR_CRASH_1,
+ SFX_HFOST_CAR_CRASH_2,
+ SFX_HFOST_CAR_CRASH_3,
+ SFX_HFOST_CAR_CRASH_4,
+ SFX_HFOST_CAR_CRASH_5,
+ SFX_HFOST_CAR_CRASH_6,
+ SFX_HFOST_CAR_CRASH_7,
+ SFX_HFOST_CAR_CRASH_8,
+ SFX_HFOST_CHAT_1,
+ SFX_HFOST_CHAT_2,
+ SFX_HFOST_CHAT_3,
+ SFX_HFOST_CHAT_4,
+ SFX_HFOST_CHAT_5,
+ SFX_HFOST_CHAT_6,
+ SFX_HFOST_CHAT_7,
+ SFX_HFOST_CHAT_8,
+ SFX_HFOST_CHAT_9,
+ SFX_HFOST_CHAT_10,
+ SFX_HFOST_CHAT_11,
+ SFX_HFOST_DODGE_1,
+ SFX_HFOST_DODGE_2,
+ SFX_HFOST_DODGE_3,
+ SFX_HFOST_DODGE_4,
+ SFX_HFOST_DODGE_5,
+ SFX_HFOST_DODGE_6,
+ SFX_HFOST_DODGE_7,
+ SFX_HFOST_DODGE_8,
+ SFX_HFOST_DODGE_9,
+ SFX_HFOST_DODGE_10,
+ SFX_HFOST_FIGHT_1,
+ SFX_HFOST_FIGHT_2,
+ SFX_HFOST_FIGHT_3,
+ SFX_HFOST_FIGHT_4,
+ SFX_HFOST_FIGHT_5,
+ SFX_HFOST_FIGHT_6,
+ SFX_HFOST_FIGHT_7,
+ SFX_HFOST_FIGHT_8,
+ SFX_HFOST_GENERIC_CRASH_1,
+ SFX_HFOST_GENERIC_CRASH_2,
+ SFX_HFOST_GENERIC_CRASH_3,
+ SFX_HFOST_GENERIC_CRASH_4,
+ SFX_HFOST_GENERIC_CRASH_5,
+ SFX_HFOST_GENERIC_CRASH_6,
+ SFX_HFOST_GENERIC_CRASH_7,
+ SFX_HFOST_GENERIC_CRASH_8,
+ SFX_HFOST_GENERIC_CRASH_9,
+ SFX_HFOST_GENERIC_CRASH_10,
+ SFX_HFOST_GENERIC_CRASH_11,
+ SFX_HFOST_GUN_COOL_1,
+ SFX_HFOST_GUN_COOL_2,
+ SFX_HFOST_GUN_COOL_3,
+ SFX_HFOST_GUN_COOL_4,
+ SFX_HFOST_GUN_COOL_5,
+ SFX_HFOST_GUN_COOL_6,
+ SFX_HFOST_JACKED_1,
+ SFX_HFOST_JACKED_2,
+ SFX_HFOST_JACKED_3,
+ SFX_HFOST_JACKED_4,
+ SFX_HFOST_JACKED_5,
+ SFX_HFOST_JACKED_6,
+ SFX_HFOST_JACKED_7,
+ SFX_HFOST_JACKED_8,
+ SFX_HFOST_LOST_1,
+ SFX_HFOST_LOST_2,
+ SFX_HFOST_MUGGED_1,
+ SFX_HFOST_MUGGED_2,
+ SFX_HFOST_MUGGED_3,
+ SFX_HFOST_TAXI_1,
+ SFX_HFOST_TAXI_2,
+
+ SFX_HMORI_BLOCKED_1,
+ SFX_HMORI_BLOCKED_2,
+ SFX_HMORI_BLOCKED_3,
+ SFX_HMORI_BLOCKED_4,
+ SFX_HMORI_BLOCKED_5,
+ SFX_HMORI_BLOCKED_6,
+ SFX_HMORI_BLOCKED_7,
+ SFX_HMORI_BLOCKED_8,
+ SFX_HMORI_BUMP_1,
+ SFX_HMORI_BUMP_2,
+ SFX_HMORI_BUMP_3,
+ SFX_HMORI_BUMP_4,
+ SFX_HMORI_BUMP_5,
+ SFX_HMORI_BUMP_6,
+ SFX_HMORI_BUMP_7,
+ SFX_HMORI_BUMP_8,
+ SFX_HMORI_BUMP_9,
+ SFX_HMORI_BUMP_10,
+ SFX_HMORI_BUMP_11,
+ SFX_HMORI_CAR_CRASH_1,
+ SFX_HMORI_CAR_CRASH_2,
+ SFX_HMORI_CAR_CRASH_3,
+ SFX_HMORI_CAR_CRASH_4,
+ SFX_HMORI_CAR_CRASH_5,
+ SFX_HMORI_CAR_CRASH_6,
+ SFX_HMORI_CHAT_1,
+ SFX_HMORI_CHAT_2,
+ SFX_HMORI_CHAT_3,
+ SFX_HMORI_CHAT_4,
+ SFX_HMORI_CHAT_5,
+ SFX_HMORI_CHAT_6,
+ SFX_HMORI_CHAT_7,
+ SFX_HMORI_CHAT_8,
+ SFX_HMORI_DODGE_1,
+ SFX_HMORI_DODGE_2,
+ SFX_HMORI_DODGE_3,
+ SFX_HMORI_DODGE_4,
+ SFX_HMORI_DODGE_5,
+ SFX_HMORI_DODGE_6,
+ SFX_HMORI_DODGE_7,
+ SFX_HMORI_GENERIC_CRASH_1,
+ SFX_HMORI_GENERIC_CRASH_2,
+ SFX_HMORI_GENERIC_CRASH_3,
+ SFX_HMORI_GENERIC_CRASH_4,
+ SFX_HMORI_GENERIC_CRASH_5,
+ SFX_HMORI_GENERIC_CRASH_6,
+ SFX_HMORI_GENERIC_CRASH_7,
+ SFX_HMORI_GENERIC_CRASH_8,
+ SFX_HMORI_GENERIC_CRASH_9,
+ SFX_HMORI_GENERIC_CRASH_10,
+ SFX_HMORI_GENERIC_CRASH_11,
+ SFX_HMORI_GUN_PANIC_1,
+ SFX_HMORI_GUN_PANIC_2,
+ SFX_HMORI_GUN_PANIC_3,
+ SFX_HMORI_GUN_PANIC_4,
+ SFX_HMORI_GUN_PANIC_5,
+ SFX_HMORI_JACKED_1,
+ SFX_HMORI_JACKED_2,
+ SFX_HMORI_JACKED_3,
+ SFX_HMORI_JACKED_4,
+ SFX_HMORI_JACKED_5,
+ SFX_HMORI_JACKED_6,
+ SFX_HMORI_JACKED_7,
+ SFX_HMORI_JACKED_8,
+ SFX_HMORI_LOST_1,
+ SFX_HMORI_LOST_2,
+ SFX_HMORI_MUGGED_1,
+ SFX_HMORI_MUGGED_2,
+ SFX_HMORI_MUGGED_3,
+ SFX_HMORI_RUN_1,
+ SFX_HMORI_RUN_2,
+ SFX_HMORI_RUN_3,
+ SFX_HMORI_RUN_4,
+ SFX_HMORI_RUN_5,
+ SFX_HMORI_RUN_6,
+ SFX_HMORI_TAXI_1,
+ SFX_HMORI_TAXI_2,
+
+ SFX_HMOTR_BUMP_1,
+ SFX_HMOTR_BUMP_2,
+ SFX_HMOTR_BUMP_3,
+ SFX_HMOTR_BUMP_4,
+ SFX_HMOTR_BUMP_5,
+ SFX_HMOTR_BUMP_6,
+ SFX_HMOTR_BUMP_7,
+ SFX_HMOTR_BUMP_8,
+ SFX_HMOTR_CHAT_1,
+ SFX_HMOTR_CHAT_2,
+ SFX_HMOTR_CHAT_3,
+ SFX_HMOTR_CHAT_4,
+ SFX_HMOTR_CHAT_5,
+ SFX_HMOTR_CHAT_6,
+ SFX_HMOTR_CHAT_7,
+ SFX_HMOTR_CHAT_8,
+ SFX_HMOTR_CHAT_9,
+ SFX_HMOTR_DODGE_1,
+ SFX_HMOTR_DODGE_2,
+ SFX_HMOTR_DODGE_3,
+ SFX_HMOTR_DODGE_4,
+ SFX_HMOTR_DODGE_5,
+ SFX_HMOTR_DODGE_6,
+ SFX_HMOTR_DODGE_7,
+ SFX_HMOTR_DODGE_8,
+ SFX_HMOTR_DODGE_9,
+ SFX_HMOTR_DODGE_10,
+ SFX_HMOTR_DODGE_11,
+ SFX_HMOTR_FIGHT_1,
+ SFX_HMOTR_FIGHT_2,
+ SFX_HMOTR_FIGHT_3,
+ SFX_HMOTR_FIGHT_4,
+ SFX_HMOTR_FIGHT_5,
+ SFX_HMOTR_FIGHT_6,
+ SFX_HMOTR_FIGHT_7,
+ SFX_HMOTR_GUN_COOL_1,
+ SFX_HMOTR_GUN_COOL_2,
+ SFX_HMOTR_GUN_COOL_3,
+ SFX_HMOTR_GUN_COOL_4,
+ SFX_HMOTR_GUN_COOL_5,
+ SFX_HMOTR_GUN_COOL_6,
+ SFX_HMOTR_SAVED_1,
+ SFX_HMOTR_SAVED_2,
+ SFX_HMOTR_SHOCKED_1,
+ SFX_HMOTR_SHOCKED_2,
+ SFX_HMOTR_SHOCKED_3,
+ SFX_HMOTR_SOLICIT_1,
+ SFX_HMOTR_SOLICIT_2,
+ SFX_HMOTR_SOLICIT_3,
+ SFX_HMOTR_SOLICIT_4,
+ SFX_HMOTR_SOLICIT_5,
+ SFX_HMOTR_SOLICIT_6,
+ SFX_HMOTR_SOLICIT_7,
+ SFX_HMOTR_SOLICIT_8,
+ SFX_HMOTR_TAXI_1,
+
+ SFX_HMYAP_BLOCKED_1,
+ SFX_HMYAP_BLOCKED_2,
+ SFX_HMYAP_BLOCKED_3,
+ SFX_HMYAP_BLOCKED_4,
+ SFX_HMYAP_BLOCKED_5,
+ SFX_HMYAP_BLOCKED_6,
+ SFX_HMYAP_BLOCKED_7,
+ SFX_HMYAP_BLOCKED_8,
+ SFX_HMYAP_BLOCKED_9,
+ SFX_HMYAP_BUMP_1,
+ SFX_HMYAP_BUMP_2,
+ SFX_HMYAP_BUMP_3,
+ SFX_HMYAP_BUMP_4,
+ SFX_HMYAP_BUMP_5,
+ SFX_HMYAP_BUMP_6,
+ SFX_HMYAP_BUMP_7,
+ SFX_HMYAP_BUMP_8,
+ SFX_HMYAP_BUMP_9,
+ SFX_HMYAP_BUMP_10,
+ SFX_HMYAP_BUMP_11,
+ SFX_HMYAP_CAR_CRASH_1,
+ SFX_HMYAP_CAR_CRASH_2,
+ SFX_HMYAP_CAR_CRASH_3,
+ SFX_HMYAP_CAR_CRASH_4,
+ SFX_HMYAP_CAR_CRASH_5,
+ SFX_HMYAP_CAR_CRASH_6,
+ SFX_HMYAP_CAR_CRASH_7,
+ SFX_HMYAP_CAR_CRASH_8,
+ SFX_HMYAP_CAR_CRASH_9,
+ SFX_HMYAP_CHAT_1,
+ SFX_HMYAP_CHAT_2,
+ SFX_HMYAP_CHAT_3,
+ SFX_HMYAP_CHAT_4,
+ SFX_HMYAP_CHAT_5,
+ SFX_HMYAP_CHAT_6,
+ SFX_HMYAP_CHAT_7,
+ SFX_HMYAP_CHAT_8,
+ SFX_HMYAP_CHAT_9,
+ SFX_HMYAP_DODGE_1,
+ SFX_HMYAP_DODGE_2,
+ SFX_HMYAP_DODGE_3,
+ SFX_HMYAP_DODGE_4,
+ SFX_HMYAP_DODGE_5,
+ SFX_HMYAP_DODGE_6,
+ SFX_HMYAP_DODGE_7,
+ SFX_HMYAP_DODGE_8,
+ SFX_HMYAP_DODGE_9,
+ SFX_HMYAP_EYEING_1,
+ SFX_HMYAP_EYEING_2,
+ SFX_HMYAP_EYEING_3,
+ SFX_HMYAP_GENERIC_CRASH_1,
+ SFX_HMYAP_GENERIC_CRASH_2,
+ SFX_HMYAP_GENERIC_CRASH_3,
+ SFX_HMYAP_GENERIC_CRASH_4,
+ SFX_HMYAP_GENERIC_CRASH_5,
+ SFX_HMYAP_GENERIC_CRASH_6,
+ SFX_HMYAP_GUN_PANIC_1,
+ SFX_HMYAP_GUN_PANIC_2,
+ SFX_HMYAP_GUN_PANIC_3,
+ SFX_HMYAP_GUN_PANIC_4,
+ SFX_HMYAP_GUN_PANIC_5,
+ SFX_HMYAP_GUN_PANIC_6,
+ SFX_HMYAP_GUN_PANIC_7,
+ SFX_HMYAP_JACKED_1,
+ SFX_HMYAP_JACKED_2,
+ SFX_HMYAP_JACKED_3,
+ SFX_HMYAP_JACKED_4,
+ SFX_HMYAP_JACKED_5,
+ SFX_HMYAP_JACKED_6,
+ SFX_HMYAP_JACKED_7,
+ SFX_HMYAP_JACKING_1,
+ SFX_HMYAP_JACKING_2,
+ SFX_HMYAP_JACKING_3,
+ SFX_HMYAP_JACKING_4,
+ SFX_HMYAP_LOST_1,
+ SFX_HMYAP_LOST_2,
+ SFX_HMYAP_MUGGED_1,
+ SFX_HMYAP_MUGGED_2,
+ SFX_HMYAP_RUN_1,
+ SFX_HMYAP_RUN_2,
+ SFX_HMYAP_RUN_3,
+ SFX_HMYAP_RUN_4,
+ SFX_HMYAP_RUN_5,
+ SFX_HMYAP_RUN_6,
+ SFX_HMYAP_SAVED_1,
+ SFX_HMYAP_SAVED_2,
+ SFX_HMYAP_TAXI_1,
+ SFX_HMYAP_TAXI_2,
+
+ SFX_HFOTR_BUMP_1,
+ SFX_HFOTR_BUMP_2,
+ SFX_HFOTR_BUMP_3,
+ SFX_HFOTR_BUMP_4,
+ SFX_HFOTR_BUMP_5,
+ SFX_HFOTR_BUMP_6,
+ SFX_HFOTR_BUMP_7,
+ SFX_HFOTR_BUMP_8,
+ SFX_HFOTR_BUMP_9,
+ SFX_HFOTR_BUMP_10,
+ SFX_HFOTR_BUMP_11,
+ SFX_HFOTR_CHAT_1,
+ SFX_HFOTR_CHAT_2,
+ SFX_HFOTR_CHAT_3,
+ SFX_HFOTR_CHAT_4,
+ SFX_HFOTR_CHAT_5,
+ SFX_HFOTR_CHAT_6,
+ SFX_HFOTR_CHAT_7,
+ SFX_HFOTR_CHAT_8,
+ SFX_HFOTR_CHAT_9,
+ SFX_HFOTR_CHAT_10,
+ SFX_HFOTR_CHAT_11,
+ SFX_HFOTR_CHAT_12,
+ SFX_HFOTR_DODGE_1,
+ SFX_HFOTR_DODGE_2,
+ SFX_HFOTR_DODGE_3,
+ SFX_HFOTR_DODGE_4,
+ SFX_HFOTR_DODGE_5,
+ SFX_HFOTR_DODGE_6,
+ SFX_HFOTR_DODGE_7,
+ SFX_HFOTR_DODGE_8,
+ SFX_HFOTR_FIGHT_1,
+ SFX_HFOTR_FIGHT_2,
+ SFX_HFOTR_FIGHT_3,
+ SFX_HFOTR_FIGHT_4,
+ SFX_HFOTR_FIGHT_5,
+ SFX_HFOTR_FIGHT_6,
+ SFX_HFOTR_GUN_COOL_1,
+ SFX_HFOTR_GUN_COOL_2,
+ SFX_HFOTR_GUN_COOL_3,
+ SFX_HFOTR_GUN_COOL_4,
+ SFX_HFOTR_GUN_COOL_5,
+ SFX_HFOTR_MUGGED_1,
+ SFX_HFOTR_MUGGED_2,
+ SFX_HFOTR_SAVED_1,
+ SFX_HFOTR_SHOCKED_1,
+ SFX_HFOTR_SHOCKED_2,
+ SFX_HFOTR_TAXI_1,
+ SFX_HFOTR_TAXI_2,
+
+ SFX_HMOBE_BLOCKED_1,
+ SFX_HMOBE_BLOCKED_2,
+ SFX_HMOBE_BLOCKED_3,
+ SFX_HMOBE_BLOCKED_4,
+ SFX_HMOBE_BLOCKED_5,
+ SFX_HMOBE_BLOCKED_6,
+ SFX_HMOBE_BLOCKED_7,
+ SFX_HMOBE_BLOCKED_8,
+ SFX_HMOBE_BLOCKED_9,
+ SFX_HMOBE_BLOCKED_10,
+ SFX_HMOBE_BUMP_1,
+ SFX_HMOBE_BUMP_2,
+ SFX_HMOBE_BUMP_3,
+ SFX_HMOBE_BUMP_4,
+ SFX_HMOBE_BUMP_5,
+ SFX_HMOBE_BUMP_6,
+ SFX_HMOBE_BUMP_7,
+ SFX_HMOBE_BUMP_8,
+ SFX_HMOBE_DODGE_1,
+ SFX_HMOBE_DODGE_2,
+ SFX_HMOBE_DODGE_3,
+ SFX_HMOBE_DODGE_4,
+ SFX_HMOBE_DODGE_5,
+ SFX_HMOBE_DODGE_6,
+ SFX_HMOBE_DODGE_7,
+ SFX_HMOBE_DODGE_8,
+ SFX_HMOBE_DODGE_9,
+ SFX_HMOBE_EYEING_1,
+ SFX_HMOBE_EYEING_2,
+ SFX_HMOBE_EYEING_3,
+ SFX_HMOBE_EYEING_4,
+ SFX_HMOBE_GUN_PANIC_1,
+ SFX_HMOBE_GUN_PANIC_2,
+ SFX_HMOBE_GUN_PANIC_3,
+ SFX_HMOBE_INNOCENT_1,
+ SFX_HMOBE_INNOCENT_2,
+ SFX_HMOBE_INNOCENT_3,
+ SFX_HMOBE_JACKED_1,
+ SFX_HMOBE_JACKED_2,
+ SFX_HMOBE_JACKED_3,
+ SFX_HMOBE_JACKED_4,
+ SFX_HMOBE_JACKED_5,
+ SFX_HMOBE_JACKED_6,
+
+ SFX_HFYBU_BLOCKED_1,
+ SFX_HFYBU_BLOCKED_2,
+ SFX_HFYBU_BLOCKED_3,
+ SFX_HFYBU_BLOCKED_4,
+ SFX_HFYBU_BLOCKED_5,
+ SFX_HFYBU_BLOCKED_6,
+ SFX_HFYBU_BLOCKED_7,
+ SFX_HFYBU_BLOCKED_8,
+ SFX_HFYBU_BUMP_1,
+ SFX_HFYBU_BUMP_2,
+ SFX_HFYBU_BUMP_3,
+ SFX_HFYBU_BUMP_4,
+ SFX_HFYBU_BUMP_5,
+ SFX_HFYBU_BUMP_6,
+ SFX_HFYBU_BUMP_7,
+ SFX_HFYBU_BUMP_8,
+ SFX_HFYBU_BUMP_9,
+ SFX_HFYBU_BUMP_10,
+ SFX_HFYBU_BUMP_11,
+ SFX_HFYBU_CAR_CRASH_1,
+ SFX_HFYBU_CAR_CRASH_2,
+ SFX_HFYBU_CAR_CRASH_3,
+ SFX_HFYBU_CAR_CRASH_4,
+ SFX_HFYBU_CAR_CRASH_5,
+ SFX_HFYBU_CAR_CRASH_6,
+ SFX_HFYBU_CAR_CRASH_7,
+ SFX_HFYBU_CAR_CRASH_8,
+ SFX_HFYBU_DODGE_1,
+ SFX_HFYBU_DODGE_2,
+ SFX_HFYBU_DODGE_3,
+ SFX_HFYBU_DODGE_4,
+ SFX_HFYBU_DODGE_5,
+ SFX_HFYBU_DODGE_6,
+ SFX_HFYBU_DODGE_7,
+ SFX_HFYBU_DODGE_8,
+ SFX_HFYBU_DODGE_9,
+ SFX_HFYBU_DODGE_10,
+ SFX_HFYBU_FIGHT_1,
+ SFX_HFYBU_FIGHT_2,
+ SFX_HFYBU_FIGHT_3,
+ SFX_HFYBU_FIGHT_4,
+ SFX_HFYBU_FIGHT_5,
+ SFX_HFYBU_FIGHT_6,
+ SFX_HFYBU_FIGHT_7,
+ SFX_HFYBU_GENERIC_CRASH_1,
+ SFX_HFYBU_GENERIC_CRASH_2,
+ SFX_HFYBU_GENERIC_CRASH_3,
+ SFX_HFYBU_GENERIC_CRASH_4,
+ SFX_HFYBU_GENERIC_CRASH_5,
+ SFX_HFYBU_GENERIC_CRASH_6,
+ SFX_HFYBU_GENERIC_CRASH_7,
+ SFX_HFYBU_GENERIC_CRASH_8,
+ SFX_HFYBU_GENERIC_CRASH_9,
+ SFX_HFYBU_GENERIC_CRASH_10,
+ SFX_HFYBU_GENERIC_CRASH_11,
+ SFX_HFYBU_GENERIC_CRASH_12,
+ SFX_HFYBU_GUN_PANIC_1,
+ SFX_HFYBU_GUN_PANIC_2,
+ SFX_HFYBU_GUN_PANIC_3,
+ SFX_HFYBU_GUN_PANIC_4,
+ SFX_HFYBU_GUN_PANIC_5,
+ SFX_HFYBU_JACKED_1,
+ SFX_HFYBU_JACKED_2,
+ SFX_HFYBU_JACKED_3,
+ SFX_HFYBU_JACKED_4,
+ SFX_HFYBU_JACKED_5,
+ SFX_HFYBU_JACKED_6,
+ SFX_HFYBU_JACKING_1,
+ SFX_HFYBU_JACKING_2,
+ SFX_HFYBU_JACKING_3,
+ SFX_HFYBU_LOST_1,
+ SFX_HFYBU_LOST_2,
+ SFX_HFYBU_MUGGED_1,
+ SFX_HFYBU_MUGGED_2,
+ SFX_HFYBU_SAVED_1,
+ SFX_HFYBU_TAXI_1,
+
+ SFX_HFYCG_BUMP_1,
+ SFX_HFYCG_BUMP_2,
+ SFX_HFYCG_BUMP_3,
+ SFX_HFYCG_BUMP_4,
+ SFX_HFYCG_BUMP_5,
+ SFX_HFYCG_BUMP_6,
+ SFX_HFYCG_BUMP_7,
+ SFX_HFYCG_BUMP_8,
+ SFX_HFYCG_BUMP_9,
+ SFX_HFYCG_DODGE_1,
+ SFX_HFYCG_DODGE_2,
+ SFX_HFYCG_DODGE_3,
+ SFX_HFYCG_DODGE_4,
+ SFX_HFYCG_DODGE_5,
+ SFX_HFYCG_DODGE_6,
+ SFX_HFYCG_DODGE_7,
+ SFX_HFYCG_DODGE_8,
+ SFX_HFYCG_GUN_PANIC_1,
+ SFX_HFYCG_GUN_PANIC_2,
+ SFX_HFYCG_GUN_PANIC_3,
+ SFX_HFYCG_GUN_PANIC_4,
+ SFX_HFYCG_GUN_PANIC_5,
+ SFX_HFYCG_MUGGED_1,
+ SFX_HFYCG_MUGGED_2,
+ SFX_HFYCG_RUN_1,
+ SFX_HFYCG_RUN_2,
+ SFX_HFYCG_RUN_3,
+ SFX_HFYCG_RUN_4,
+ SFX_HFYCG_SAVED_1,
+ SFX_HFYCG_SOLICIT_1,
+ SFX_HFYCG_SOLICIT_2,
+ SFX_HFYCG_SOLICIT_3,
+ SFX_HFYCG_SOLICIT_4,
+ SFX_HFYCG_SOLICIT_5,
+ SFX_HFYCG_SOLICIT_6,
+ SFX_HFYCG_SOLICIT_7,
+ SFX_HFYCG_SOLICIT_8,
+ SFX_HFYCG_SOLICIT_9,
+ SFX_HFYCG_SOLICIT_10,
+ SFX_HFYCG_SOLICIT_11,
+ SFX_HFYCG_SOLICIT_12,
+ SFX_HFYCG_SOLICIT_13,
+ SFX_HFYCG_SOLICIT_14,
+ SFX_HFYCG_TAXI_1,
+
+ SFX_HMYBE_BUMP_1,
+ SFX_HMYBE_BUMP_2,
+ SFX_HMYBE_BUMP_3,
+ SFX_HMYBE_BUMP_4,
+ SFX_HMYBE_BUMP_5,
+ SFX_HMYBE_BUMP_6,
+ SFX_HMYBE_BUMP_7,
+ SFX_HMYBE_BUMP_8,
+ SFX_HMYBE_BUMP_9,
+ SFX_HMYBE_BUMP_10,
+ SFX_HMYBE_CAR_CRASH_1,
+ SFX_HMYBE_CAR_CRASH_2,
+ SFX_HMYBE_CAR_CRASH_3,
+ SFX_HMYBE_CAR_CRASH_4,
+ SFX_HMYBE_CAR_CRASH_5,
+ SFX_HMYBE_CAR_CRASH_6,
+ SFX_HMYBE_CAR_CRASH_7,
+ SFX_HMYBE_CHAT_1,
+ SFX_HMYBE_CHAT_2,
+ SFX_HMYBE_CHAT_3,
+ SFX_HMYBE_CHAT_4,
+ SFX_HMYBE_CHAT_5,
+ SFX_HMYBE_CHAT_6,
+ SFX_HMYBE_CHAT_7,
+ SFX_HMYBE_CHAT_8,
+ SFX_HMYBE_CHAT_9,
+ SFX_HMYBE_CHAT_10,
+ SFX_HMYBE_DODGE_1,
+ SFX_HMYBE_DODGE_2,
+ SFX_HMYBE_DODGE_3,
+ SFX_HMYBE_DODGE_4,
+ SFX_HMYBE_DODGE_5,
+ SFX_HMYBE_DODGE_6,
+ SFX_HMYBE_DODGE_7,
+ SFX_HMYBE_EYEING_1,
+ SFX_HMYBE_EYEING_2,
+ SFX_HMYBE_EYEING_3,
+ SFX_HMYBE_EYEING_4,
+ SFX_HMYBE_EYEING_5,
+ SFX_HMYBE_FIGHT_1,
+ SFX_HMYBE_FIGHT_2,
+ SFX_HMYBE_FIGHT_3,
+ SFX_HMYBE_FIGHT_4,
+ SFX_HMYBE_FIGHT_5,
+ SFX_HMYBE_FIGHT_6,
+ SFX_HMYBE_FIGHT_7,
+ SFX_HMYBE_FIGHT_8,
+ SFX_HMYBE_GENERIC_CRASH_1,
+ SFX_HMYBE_GENERIC_CRASH_2,
+ SFX_HMYBE_GENERIC_CRASH_3,
+ SFX_HMYBE_GENERIC_CRASH_4,
+ SFX_HMYBE_GENERIC_CRASH_5,
+ SFX_HMYBE_GENERIC_CRASH_6,
+ SFX_HMYBE_GENERIC_CRASH_7,
+ SFX_HMYBE_GENERIC_CRASH_8,
+ SFX_HMYBE_GENERIC_CRASH_9,
+ SFX_HMYBE_GENERIC_CRASH_10,
+ SFX_HMYBE_GUN_PANIC_1,
+ SFX_HMYBE_GUN_PANIC_2,
+ SFX_HMYBE_GUN_PANIC_3,
+ SFX_HMYBE_GUN_PANIC_4,
+ SFX_HMYBE_GUN_PANIC_5,
+ SFX_HMYBE_GUN_PANIC_6,
+ SFX_HMYBE_INNOCENT_1,
+ SFX_HMYBE_INNOCENT_2,
+ SFX_HMYBE_INNOCENT_3,
+ SFX_HMYBE_INNOCENT_4,
+ SFX_HMYBE_JACKED_1,
+ SFX_HMYBE_JACKED_2,
+ SFX_HMYBE_JACKED_3,
+ SFX_HMYBE_JACKED_4,
+ SFX_HMYBE_JACKED_5,
+ SFX_HMYBE_JACKED_6,
+ SFX_HMYBE_JACKED_7,
+ SFX_HMYBE_JACKED_8,
+ SFX_HMYBE_JACKED_9,
+ SFX_HMYBE_JACKED_10,
+ SFX_HMYBE_JACKED_11,
+ SFX_HMYBE_JACKED_12,
+ SFX_HMYBE_LOST_1,
+ SFX_HMYBE_LOST_2,
+ SFX_HMYBE_LOST_3,
+ SFX_HMYBE_SAVED_1,
+ SFX_HMYBE_SHOCKED_1,
+ SFX_HMYBE_SHOCKED_2,
+ SFX_HMYBE_TAXI_1,
+
+ SFX_WMOGO_BUMP_1,
+ SFX_WMOGO_BUMP_2,
+ SFX_WMOGO_BUMP_3,
+ SFX_WMOGO_BUMP_4,
+ SFX_WMOGO_BUMP_5,
+ SFX_WMOGO_BUMP_6,
+ SFX_WMOGO_BUMP_7,
+ SFX_WMOGO_BUMP_8,
+ SFX_WMOGO_CAR_CRASH_1,
+ SFX_WMOGO_CAR_CRASH_2,
+ SFX_WMOGO_CAR_CRASH_3,
+ SFX_WMOGO_CAR_CRASH_4,
+ SFX_WMOGO_CAR_CRASH_5,
+ SFX_WMOGO_CAR_CRASH_6,
+ SFX_WMOGO_CAR_CRASH_7,
+ SFX_WMOGO_CAR_CRASH_8,
+ SFX_WMOGO_CAR_CRASH_9,
+ SFX_WMOGO_CHAT_1,
+ SFX_WMOGO_CHAT_2,
+ SFX_WMOGO_CHAT_3,
+ SFX_WMOGO_CHAT_4,
+ SFX_WMOGO_CHAT_5,
+ SFX_WMOGO_CHAT_6,
+ SFX_WMOGO_CHAT_7,
+ SFX_WMOGO_CHAT_8,
+ SFX_WMOGO_CHAT_9,
+ SFX_WMOGO_DODGE_1,
+ SFX_WMOGO_DODGE_2,
+ SFX_WMOGO_DODGE_3,
+ SFX_WMOGO_DODGE_4,
+ SFX_WMOGO_DODGE_5,
+ SFX_WMOGO_DODGE_6,
+ SFX_WMOGO_DODGE_7,
+ SFX_WMOGO_DODGE_8,
+ SFX_WMOGO_DODGE_9,
+ SFX_WMOGO_DODGE_10,
+ SFX_WMOGO_DODGE_11,
+ SFX_WMOGO_DODGE_12,
+ SFX_WMOGO_EYEING_1,
+ SFX_WMOGO_EYEING_2,
+ SFX_WMOGO_FIGHT_1,
+ SFX_WMOGO_FIGHT_2,
+ SFX_WMOGO_FIGHT_3,
+ SFX_WMOGO_FIGHT_4,
+ SFX_WMOGO_FIGHT_5,
+ SFX_WMOGO_FIGHT_6,
+ SFX_WMOGO_FIGHT_7,
+ SFX_WMOGO_FIGHT_8,
+ SFX_WMOGO_FIGHT_9,
+ SFX_WMOGO_FIGHT_10,
+ SFX_WMOGO_FIGHT_11,
+ SFX_WMOGO_FIGHT_12,
+ SFX_WMOGO_FIGHT_13,
+ SFX_WMOGO_GENERIC_CRASH_1,
+ SFX_WMOGO_GENERIC_CRASH_2,
+ SFX_WMOGO_GENERIC_CRASH_3,
+ SFX_WMOGO_GENERIC_CRASH_4,
+ SFX_WMOGO_GENERIC_CRASH_5,
+ SFX_WMOGO_GENERIC_CRASH_6,
+ SFX_WMOGO_GENERIC_CRASH_7,
+ SFX_WMOGO_GENERIC_CRASH_8,
+ SFX_WMOGO_GUN_PANIC_1,
+ SFX_WMOGO_GUN_PANIC_2,
+ SFX_WMOGO_GUN_PANIC_3,
+ SFX_WMOGO_GUN_PANIC_4,
+ SFX_WMOGO_GUN_PANIC_5,
+ SFX_WMOGO_JACKED_1,
+ SFX_WMOGO_JACKED_2,
+ SFX_WMOGO_JACKED_3,
+ SFX_WMOGO_JACKED_4,
+ SFX_WMOGO_JACKED_5,
+ SFX_WMOGO_JACKED_6,
+ SFX_WMOGO_RUN_1,
+ SFX_WMOGO_RUN_2,
+ SFX_WMOGO_RUN_3,
+ SFX_WMOGO_RUN_4,
+ SFX_WMOGO_RUN_5,
+ SFX_WMOGO_SAVED_1,
+ SFX_WMOGO_SHOCKED_1,
+ SFX_WMOGO_SHOCKED_2,
+ SFX_WMOGO_SHOCKED_3,
+ SFX_WMOGO_TAXI_1,
+
+ SFX_WMYCR_BUMP_1,
+ SFX_WMYCR_BUMP_2,
+ SFX_WMYCR_BUMP_3,
+ SFX_WMYCR_BUMP_4,
+ SFX_WMYCR_BUMP_5,
+ SFX_WMYCR_BUMP_6,
+ SFX_WMYCR_BUMP_7,
+ SFX_WMYCR_BUMP_8,
+ SFX_WMYCR_BUMP_9,
+ SFX_WMYCR_BUMP_10,
+ SFX_WMYCR_BUMP_11,
+ SFX_WMYCR_BUMP_12,
+ SFX_WMYCR_BUMP_13,
+ SFX_WMYCR_BUMP_14,
+ SFX_WMYCR_BUMP_15,
+ SFX_WMYCR_BUMP_16,
+ SFX_WMYCR_BUMP_17,
+ SFX_WMYCR_BUMP_18,
+ SFX_WMYCR_CAR_CRASH_1,
+ SFX_WMYCR_CAR_CRASH_2,
+ SFX_WMYCR_CAR_CRASH_3,
+ SFX_WMYCR_CAR_CRASH_4,
+ SFX_WMYCR_CAR_CRASH_5,
+ SFX_WMYCR_CAR_CRASH_6,
+ SFX_WMYCR_CAR_CRASH_7,
+ SFX_WMYCR_CAR_CRASH_8,
+ SFX_WMYCR_CAR_CRASH_9,
+ SFX_WMYCR_DODGE_1,
+ SFX_WMYCR_DODGE_2,
+ SFX_WMYCR_DODGE_3,
+ SFX_WMYCR_DODGE_4,
+ SFX_WMYCR_DODGE_5,
+ SFX_WMYCR_DODGE_6,
+ SFX_WMYCR_DODGE_7,
+ SFX_WMYCR_DODGE_8,
+ SFX_WMYCR_DODGE_9,
+ SFX_WMYCR_DODGE_10,
+ SFX_WMYCR_FIGHT_1,
+ SFX_WMYCR_FIGHT_2,
+ SFX_WMYCR_FIGHT_3,
+ SFX_WMYCR_FIGHT_4,
+ SFX_WMYCR_FIGHT_5,
+ SFX_WMYCR_FIGHT_6,
+ SFX_WMYCR_FIGHT_7,
+ SFX_WMYCR_GENERIC_CRASH_1,
+ SFX_WMYCR_GENERIC_CRASH_2,
+ SFX_WMYCR_GENERIC_CRASH_3,
+ SFX_WMYCR_GENERIC_CRASH_4,
+ SFX_WMYCR_GENERIC_CRASH_5,
+ SFX_WMYCR_GENERIC_CRASH_6,
+ SFX_WMYCR_GENERIC_CRASH_7,
+ SFX_WMYCR_GENERIC_CRASH_8,
+ SFX_WMYCR_GENERIC_CRASH_9,
+ SFX_WMYCR_GUN_COOL_1,
+ SFX_WMYCR_GUN_COOL_2,
+ SFX_WMYCR_GUN_COOL_3,
+ SFX_WMYCR_GUN_COOL_4,
+ SFX_WMYCR_GUN_COOL_5,
+ SFX_WMYCR_JACKING_1,
+ SFX_WMYCR_JACKING_2,
+ SFX_WMYCR_JACKING_3,
+ SFX_WMYCR_JACKING_4,
+ SFX_WMYCR_JACKING_5,
+ SFX_WMYCR_JACKING_6,
+ SFX_WMYCR_MUGGED_1,
+ SFX_WMYCR_MUGGED_2,
+ SFX_WMYCR_MUGGED_3,
+ SFX_WMYCR_MUGGING_1,
+ SFX_WMYCR_MUGGING_2,
+ SFX_WMYCR_MUGGING_3,
+ SFX_WMYCR_MUGGING_4,
+ SFX_WMYCR_MUGGING_5,
+ SFX_WMYCR_TAXI_1,
+
+ SFX_WMYJG_BLOCKED_1,
+ SFX_WMYJG_BLOCKED_2,
+ SFX_WMYJG_BLOCKED_3,
+ SFX_WMYJG_BLOCKED_4,
+ SFX_WMYJG_BLOCKED_5,
+ SFX_WMYJG_BLOCKED_6,
+ SFX_WMYJG_BLOCKED_7,
+ SFX_WMYJG_BLOCKED_8,
+ SFX_WMYJG_BLOCKED_9,
+ SFX_WMYJG_BLOCKED_10,
+ SFX_WMYJG_BUMP_1,
+ SFX_WMYJG_BUMP_2,
+ SFX_WMYJG_BUMP_3,
+ SFX_WMYJG_BUMP_4,
+ SFX_WMYJG_BUMP_5,
+ SFX_WMYJG_BUMP_6,
+ SFX_WMYJG_BUMP_7,
+ SFX_WMYJG_BUMP_8,
+ SFX_WMYJG_BUMP_9,
+ SFX_WMYJG_BUMP_10,
+ SFX_WMYJG_EYEING_1,
+ SFX_WMYJG_EYEING_2,
+ SFX_WMYJG_GUN_PANIC_1,
+ SFX_WMYJG_GUN_PANIC_2,
+ SFX_WMYJG_GUN_PANIC_3,
+ SFX_WMYJG_GUN_PANIC_4,
+ SFX_WMYJG_MUGGED_1,
+ SFX_WMYJG_MUGGED_2,
+ SFX_WMYJG_RUN_1,
+ SFX_WMYJG_RUN_2,
+ SFX_WMYJG_RUN_3,
+ SFX_WMYJG_RUN_4,
+ SFX_WMYJG_RUN_5,
+ SFX_WMYJG_SAVED_1,
+ SFX_WMYJG_TAXI_1,
+
+ SFX_WMOST_BLOCKED_1,
+ SFX_WMOST_BLOCKED_2,
+ SFX_WMOST_BLOCKED_3,
+ SFX_WMOST_BLOCKED_4,
+ SFX_WMOST_BLOCKED_5,
+ SFX_WMOST_BLOCKED_6,
+ SFX_WMOST_BLOCKED_7,
+ SFX_WMOST_BLOCKED_8,
+ SFX_WMOST_BUMP_1,
+ SFX_WMOST_BUMP_2,
+ SFX_WMOST_BUMP_3,
+ SFX_WMOST_BUMP_4,
+ SFX_WMOST_BUMP_5,
+ SFX_WMOST_BUMP_6,
+ SFX_WMOST_BUMP_7,
+ SFX_WMOST_BUMP_8,
+ SFX_WMOST_BUMP_9,
+ SFX_WMOST_BUMP_10,
+ SFX_WMOST_CAR_CRASH_1,
+ SFX_WMOST_CAR_CRASH_2,
+ SFX_WMOST_CAR_CRASH_3,
+ SFX_WMOST_CAR_CRASH_4,
+ SFX_WMOST_CAR_CRASH_5,
+ SFX_WMOST_CAR_CRASH_6,
+ SFX_WMOST_CAR_CRASH_7,
+ SFX_WMOST_CHAT_1,
+ SFX_WMOST_CHAT_2,
+ SFX_WMOST_CHAT_3,
+ SFX_WMOST_CHAT_4,
+ SFX_WMOST_CHAT_5,
+ SFX_WMOST_CHAT_6,
+ SFX_WMOST_CHAT_7,
+ SFX_WMOST_CHAT_8,
+ SFX_WMOST_CHAT_9,
+ SFX_WMOST_DODGE_1,
+ SFX_WMOST_DODGE_2,
+ SFX_WMOST_DODGE_3,
+ SFX_WMOST_DODGE_4,
+ SFX_WMOST_DODGE_5,
+ SFX_WMOST_DODGE_6,
+ SFX_WMOST_DODGE_7,
+ SFX_WMOST_DODGE_8,
+ SFX_WMOST_EYEING_1,
+ SFX_WMOST_EYEING_2,
+ SFX_WMOST_FIGHT_1,
+ SFX_WMOST_FIGHT_2,
+ SFX_WMOST_FIGHT_3,
+ SFX_WMOST_FIGHT_4,
+ SFX_WMOST_FIGHT_5,
+ SFX_WMOST_FIGHT_6,
+ SFX_WMOST_FIGHT_7,
+ SFX_WMOST_FIGHT_8,
+ SFX_WMOST_GENERIC_CRASH_1,
+ SFX_WMOST_GENERIC_CRASH_2,
+ SFX_WMOST_GENERIC_CRASH_3,
+ SFX_WMOST_GENERIC_CRASH_4,
+ SFX_WMOST_GENERIC_CRASH_5,
+ SFX_WMOST_GENERIC_CRASH_6,
+ SFX_WMOST_GENERIC_CRASH_7,
+ SFX_WMOST_GUN_COOL_1,
+ SFX_WMOST_GUN_COOL_2,
+ SFX_WMOST_GUN_COOL_3,
+ SFX_WMOST_GUN_COOL_4,
+ SFX_WMOST_GUN_COOL_5,
+ SFX_WMOST_INNOCENT_1,
+ SFX_WMOST_INNOCENT_2,
+ SFX_WMOST_INNOCENT_3,
+ SFX_WMOST_JACKED_1,
+ SFX_WMOST_JACKED_2,
+ SFX_WMOST_JACKED_3,
+ SFX_WMOST_JACKED_4,
+ SFX_WMOST_JEER_1,
+ SFX_WMOST_JEER_2,
+ SFX_WMOST_JEER_3,
+ SFX_WMOST_JEER_4,
+ SFX_WMOST_LOST_1,
+ SFX_WMOST_LOST_2,
+ SFX_WMOST_MUGGED_1,
+ SFX_WMOST_MUGGED_2,
+ SFX_WMOST_SAVED_1,
+ SFX_WMOST_TAXI_1,
+
+ SFX_BFOTR_BUMP_1,
+ SFX_BFOTR_BUMP_2,
+ SFX_BFOTR_BUMP_3,
+ SFX_BFOTR_BUMP_4,
+ SFX_BFOTR_BUMP_5,
+ SFX_BFOTR_BUMP_6,
+ SFX_BFOTR_BUMP_7,
+ SFX_BFOTR_BUMP_8,
+ SFX_BFOTR_BUMP_9,
+ SFX_BFOTR_BUMP_10,
+ SFX_BFOTR_CHAT_1,
+ SFX_BFOTR_CHAT_2,
+ SFX_BFOTR_CHAT_3,
+ SFX_BFOTR_CHAT_4,
+ SFX_BFOTR_CHAT_5,
+ SFX_BFOTR_CHAT_6,
+ SFX_BFOTR_CHAT_7,
+ SFX_BFOTR_CHAT_8,
+ SFX_BFOTR_CHAT_9,
+ SFX_BFOTR_CHAT_10,
+ SFX_BFOTR_CHAT_11,
+ SFX_BFOTR_CHAT_12,
+ SFX_BFOTR_CHAT_13,
+ SFX_BFOTR_CHAT_14,
+ SFX_BFOTR_CHAT_15,
+ SFX_BFOTR_DODGE_1,
+ SFX_BFOTR_DODGE_2,
+ SFX_BFOTR_DODGE_3,
+ SFX_BFOTR_DODGE_4,
+ SFX_BFOTR_DODGE_5,
+ SFX_BFOTR_DODGE_6,
+ SFX_BFOTR_DODGE_7,
+ SFX_BFOTR_DODGE_8,
+ SFX_BFOTR_DODGE_9,
+ SFX_BFOTR_FIGHT_1,
+ SFX_BFOTR_FIGHT_2,
+ SFX_BFOTR_FIGHT_3,
+ SFX_BFOTR_FIGHT_4,
+ SFX_BFOTR_FIGHT_5,
+ SFX_BFOTR_FIGHT_6,
+ SFX_BFOTR_GUN_COOL_1,
+ SFX_BFOTR_GUN_COOL_2,
+ SFX_BFOTR_GUN_COOL_3,
+ SFX_BFOTR_GUN_COOL_4,
+ SFX_BFOTR_GUN_COOL_5,
+ SFX_BFOTR_GUN_COOL_6,
+ SFX_BFOTR_MUGGED_1,
+ SFX_BFOTR_MUGGED_2,
+ SFX_BFOTR_MUGGING_1,
+ SFX_BFOTR_MUGGING_2,
+ SFX_BFOTR_MUGGING_3,
+ SFX_BFOTR_SAVED_1,
+ SFX_BFOTR_SHOCKED_1,
+ SFX_BFOTR_SHOCKED_2,
+ SFX_BFOTR_SHOCKED_3,
+ SFX_BFOTR_SOLICIT_1,
+ SFX_BFOTR_SOLICIT_2,
+ SFX_BFOTR_SOLICIT_3,
+ SFX_BFOTR_SOLICIT_4,
+ SFX_BFOTR_SOLICIT_5,
+ SFX_BFOTR_TAXI_1,
+
+ SFX_WFYRI_BLOCKED_1,
+ SFX_WFYRI_BLOCKED_2,
+ SFX_WFYRI_BLOCKED_3,
+ SFX_WFYRI_BLOCKED_4,
+ SFX_WFYRI_BLOCKED_5,
+ SFX_WFYRI_BLOCKED_6,
+ SFX_WFYRI_BLOCKED_7,
+ SFX_WFYRI_BLOCKED_8,
+ SFX_WFYRI_BUMP_1,
+ SFX_WFYRI_BUMP_2,
+ SFX_WFYRI_BUMP_3,
+ SFX_WFYRI_BUMP_4,
+ SFX_WFYRI_BUMP_5,
+ SFX_WFYRI_BUMP_6,
+ SFX_WFYRI_BUMP_7,
+ SFX_WFYRI_BUMP_8,
+ SFX_WFYRI_BUMP_9,
+ SFX_WFYRI_BUMP_10,
+ SFX_WFYRI_CAR_CRASH_1,
+ SFX_WFYRI_CAR_CRASH_2,
+ SFX_WFYRI_CAR_CRASH_3,
+ SFX_WFYRI_CAR_CRASH_4,
+ SFX_WFYRI_CAR_CRASH_5,
+ SFX_WFYRI_CAR_CRASH_6,
+ SFX_WFYRI_CAR_CRASH_7,
+ SFX_WFYRI_CAR_CRASH_8,
+ SFX_WFYRI_CAR_CRASH_9,
+ SFX_WFYRI_DODGE_1,
+ SFX_WFYRI_DODGE_2,
+ SFX_WFYRI_DODGE_3,
+ SFX_WFYRI_DODGE_4,
+ SFX_WFYRI_DODGE_5,
+ SFX_WFYRI_DODGE_6,
+ SFX_WFYRI_DODGE_7,
+ SFX_WFYRI_DODGE_8,
+ SFX_WFYRI_DODGE_9,
+ SFX_WFYRI_EYEING_1,
+ SFX_WFYRI_EYEING_2,
+ SFX_WFYRI_GENERIC_CRASH_1,
+ SFX_WFYRI_GENERIC_CRASH_2,
+ SFX_WFYRI_GENERIC_CRASH_3,
+ SFX_WFYRI_GENERIC_CRASH_4,
+ SFX_WFYRI_GENERIC_CRASH_5,
+ SFX_WFYRI_GENERIC_CRASH_6,
+ SFX_WFYRI_GENERIC_CRASH_7,
+ SFX_WFYRI_GENERIC_CRASH_8,
+ SFX_WFYRI_GUN_PANIC_1,
+ SFX_WFYRI_GUN_PANIC_2,
+ SFX_WFYRI_GUN_PANIC_3,
+ SFX_WFYRI_GUN_PANIC_4,
+ SFX_WFYRI_GUN_PANIC_5,
+ SFX_WFYRI_JACKED_1,
+ SFX_WFYRI_JACKED_2,
+ SFX_WFYRI_JACKED_3,
+ SFX_WFYRI_JACKED_4,
+ SFX_WFYRI_JACKED_5,
+ SFX_WFYRI_JACKED_6,
+ SFX_WFYRI_JACKED_7,
+ SFX_WFYRI_LOST_1,
+ SFX_WFYRI_LOST_2,
+ SFX_WFYRI_MUGGED_1,
+ SFX_WFYRI_MUGGED_2,
+ SFX_WFYRI_RUN_1,
+ SFX_WFYRI_RUN_2,
+ SFX_WFYRI_RUN_3,
+ SFX_WFYRI_RUN_4,
+ SFX_WFYRI_RUN_5,
+ SFX_WFYRI_SAVED_1,
+ SFX_WFYRI_SHOCKED_1,
+ SFX_WFYRI_SHOCKED_2,
+ SFX_WFYRI_TAXI_1,
+ SFX_BFYPR_BUMP_1,
+ SFX_BFYPR_BUMP_2,
+ SFX_BFYPR_BUMP_3,
+ SFX_BFYPR_BUMP_4,
+ SFX_BFYPR_BUMP_5,
+ SFX_BFYPR_BUMP_6,
+ SFX_BFYPR_BUMP_7,
+ SFX_BFYPR_BUMP_8,
+ SFX_BFYPR_BUMP_9,
+ SFX_BFYPR_BUMP_10,
+ SFX_BFYPR_BUMP_11,
+ SFX_BFYPR_CHAT_1,
+ SFX_BFYPR_CHAT_2,
+ SFX_BFYPR_CHAT_3,
+ SFX_BFYPR_CHAT_4,
+ SFX_BFYPR_CHAT_5,
+ SFX_BFYPR_CHAT_6,
+ SFX_BFYPR_CHAT_7,
+ SFX_BFYPR_CHAT_8,
+ SFX_BFYPR_CHAT_9,
+ SFX_BFYPR_CHAT_10,
+ SFX_BFYPR_CHAT_11,
+ SFX_BFYPR_CHAT_12,
+ SFX_BFYPR_CHAT_13,
+ SFX_BFYPR_DODGE_1,
+ SFX_BFYPR_DODGE_2,
+ SFX_BFYPR_DODGE_3,
+ SFX_BFYPR_DODGE_4,
+ SFX_BFYPR_DODGE_5,
+ SFX_BFYPR_DODGE_6,
+ SFX_BFYPR_DODGE_7,
+ SFX_BFYPR_FIGHT_1,
+ SFX_BFYPR_FIGHT_2,
+ SFX_BFYPR_FIGHT_3,
+ SFX_BFYPR_FIGHT_4,
+ SFX_BFYPR_FIGHT_5,
+ SFX_BFYPR_FIGHT_6,
+ SFX_BFYPR_FIGHT_7,
+ SFX_BFYPR_FUCKING_1,
+ SFX_BFYPR_FUCKING_2,
+ SFX_BFYPR_FUCKING_3,
+ SFX_BFYPR_FUCKING_4,
+ SFX_BFYPR_FUCKING_5,
+ SFX_BFYPR_FUCKING_6,
+ SFX_BFYPR_FUCKING_7,
+ SFX_BFYPR_GUN_COOL_1,
+ SFX_BFYPR_GUN_COOL_2,
+ SFX_BFYPR_GUN_COOL_3,
+ SFX_BFYPR_GUN_COOL_4,
+ SFX_BFYPR_GUN_COOL_5,
+ SFX_BFYPR_MUGGED_1,
+ SFX_BFYPR_MUGGED_2,
+ SFX_BFYPR_SAVED_1,
+ SFX_BFYPR_SHOCKED_1,
+ SFX_BFYPR_SHOCKED_2,
+ SFX_BFYPR_SOLICIT_1,
+ SFX_BFYPR_SOLICIT_2,
+ SFX_BFYPR_SOLICIT_3,
+ SFX_BFYPR_SOLICIT_4,
+ SFX_BFYPR_SOLICIT_5,
+ SFX_BFYPR_SOLICIT_6,
+ SFX_BFYPR_SOLICIT_7,
+ SFX_BFYPR_SOLICIT_8,
+ SFX_BFYPR_SOLICIT_9,
+ SFX_BFYPR_SOLICIT_10,
+ SFX_BFYPR_SOLICIT_11,
+ SFX_BFYPR_SOLICIT_12,
+ SFX_BFYPR_SOLICIT_13,
+ SFX_BFYPR_TAXI_1,
+ SFX_BFYPR_TAXI_2,
+
+ SFX_BMYRI_BLOCKED_1,
+ SFX_BMYRI_BLOCKED_2,
+ SFX_BMYRI_BLOCKED_3,
+ SFX_BMYRI_BLOCKED_4,
+ SFX_BMYRI_BLOCKED_5,
+ SFX_BMYRI_BLOCKED_6,
+ SFX_BMYRI_BUMP_1,
+ SFX_BMYRI_BUMP_2,
+ SFX_BMYRI_BUMP_3,
+ SFX_BMYRI_BUMP_4,
+ SFX_BMYRI_BUMP_5,
+ SFX_BMYRI_BUMP_6,
+ SFX_BMYRI_BUMP_7,
+ SFX_BMYRI_CAR_CRASH_1,
+ SFX_BMYRI_CAR_CRASH_2,
+ SFX_BMYRI_CAR_CRASH_3,
+ SFX_BMYRI_CAR_CRASH_4,
+ SFX_BMYRI_CAR_CRASH_5,
+ SFX_BMYRI_CAR_CRASH_6,
+ SFX_BMYRI_CAR_CRASH_7,
+ SFX_BMYRI_DODGE_1,
+ SFX_BMYRI_DODGE_2,
+ SFX_BMYRI_DODGE_3,
+ SFX_BMYRI_DODGE_4,
+ SFX_BMYRI_DODGE_5,
+ SFX_BMYRI_DODGE_6,
+ SFX_BMYRI_DODGE_7,
+ SFX_BMYRI_DODGE_8,
+ SFX_BMYRI_EYEING_1,
+ SFX_BMYRI_GENERIC_CRASH_1,
+ SFX_BMYRI_GENERIC_CRASH_2,
+ SFX_BMYRI_GENERIC_CRASH_3,
+ SFX_BMYRI_GENERIC_CRASH_4,
+ SFX_BMYRI_GENERIC_CRASH_5,
+ SFX_BMYRI_GENERIC_CRASH_6,
+ SFX_BMYRI_GENERIC_CRASH_7,
+ SFX_BMYRI_GUN_PANIC_1,
+ SFX_BMYRI_GUN_PANIC_2,
+ SFX_BMYRI_GUN_PANIC_3,
+ SFX_BMYRI_GUN_PANIC_4,
+ SFX_BMYRI_GUN_PANIC_5,
+ SFX_BMYRI_GUN_PANIC_6,
+ SFX_BMYRI_GUN_PANIC_7,
+ SFX_BMYRI_JACKED_1,
+ SFX_BMYRI_JACKED_2,
+ SFX_BMYRI_JACKED_3,
+ SFX_BMYRI_JACKED_4,
+ SFX_BMYRI_LOST_1,
+ SFX_BMYRI_LOST_2,
+ SFX_BMYRI_MUGGED_1,
+ SFX_BMYRI_MUGGED_2,
+ SFX_BMYRI_RUN_1,
+ SFX_BMYRI_RUN_2,
+ SFX_BMYRI_RUN_3,
+ SFX_BMYRI_RUN_4,
+ SFX_BMYRI_SAVED_1,
+ SFX_BMYRI_SHOCKED_1,
+ SFX_BMYRI_SHOCKED_2,
+ SFX_BMYRI_SHOCKED_3,
+ SFX_BMYRI_TAXI_1,
+ SFX_BMYBU_BLOCKED_1,
+ SFX_BMYBU_BLOCKED_2,
+ SFX_BMYBU_BLOCKED_3,
+ SFX_BMYBU_BLOCKED_4,
+ SFX_BMYBU_BLOCKED_5,
+ SFX_BMYBU_BLOCKED_6,
+ SFX_BMYBU_BLOCKED_7,
+ SFX_BMYBU_BLOCKED_8,
+ SFX_BMYBU_BUMP_1,
+ SFX_BMYBU_BUMP_2,
+ SFX_BMYBU_BUMP_3,
+ SFX_BMYBU_BUMP_4,
+ SFX_BMYBU_BUMP_5,
+ SFX_BMYBU_BUMP_6,
+ SFX_BMYBU_BUMP_7,
+ SFX_BMYBU_CAR_CRASH_1,
+ SFX_BMYBU_CAR_CRASH_2,
+ SFX_BMYBU_CAR_CRASH_3,
+ SFX_BMYBU_CAR_CRASH_4,
+ SFX_BMYBU_CAR_CRASH_5,
+ SFX_BMYBU_CAR_CRASH_6,
+ SFX_BMYBU_CAR_CRASH_7,
+ SFX_BMYBU_DODGE_1,
+ SFX_BMYBU_DODGE_2,
+ SFX_BMYBU_DODGE_3,
+ SFX_BMYBU_DODGE_4,
+ SFX_BMYBU_DODGE_5,
+ SFX_BMYBU_DODGE_6,
+ SFX_BMYBU_DODGE_7,
+ SFX_BMYBU_DODGE_8,
+ SFX_BMYBU_DODGE_9,
+ SFX_BMYBU_DODGE_10,
+ SFX_BMYBU_EYEING_1,
+ SFX_BMYBU_EYEING_2,
+ SFX_BMYBU_FIGHT_1,
+ SFX_BMYBU_FIGHT_2,
+ SFX_BMYBU_FIGHT_3,
+ SFX_BMYBU_FIGHT_4,
+ SFX_BMYBU_FIGHT_5,
+ SFX_BMYBU_GENERIC_CRASH_1,
+ SFX_BMYBU_GENERIC_CRASH_2,
+ SFX_BMYBU_GENERIC_CRASH_3,
+ SFX_BMYBU_GENERIC_CRASH_4,
+ SFX_BMYBU_GENERIC_CRASH_5,
+ SFX_BMYBU_GENERIC_CRASH_6,
+ SFX_BMYBU_GENERIC_CRASH_7,
+ SFX_BMYBU_GUN_PANIC_1,
+ SFX_BMYBU_GUN_PANIC_2,
+ SFX_BMYBU_GUN_PANIC_3,
+ SFX_BMYBU_GUN_PANIC_4,
+ SFX_BMYBU_GUN_PANIC_5,
+ SFX_BMYBU_INNOCENT_1,
+ SFX_BMYBU_INNOCENT_2,
+ SFX_BMYBU_JACKED_1,
+ SFX_BMYBU_JACKED_2,
+ SFX_BMYBU_JACKED_3,
+ SFX_BMYBU_JACKED_4,
+ SFX_BMYBU_JACKED_5,
+ SFX_BMYBU_JACKED_6,
+ SFX_BMYBU_MUGGED_1,
+ SFX_BMYBU_MUGGED_2,
+ SFX_BMYBU_SAVED_1,
+ SFX_BMYBU_SHOCKED_1,
+ SFX_BMYBU_SHOCKED_2,
+ SFX_BMYBU_TAXI_1,
+
+ SFX_WMYSK_BUMP_1,
+ SFX_WMYSK_BUMP_2,
+ SFX_WMYSK_BUMP_3,
+ SFX_WMYSK_BUMP_4,
+ SFX_WMYSK_BUMP_5,
+ SFX_WMYSK_BUMP_6,
+ SFX_WMYSK_BUMP_7,
+ SFX_WMYSK_BUMP_8,
+ SFX_WMYSK_BUMP_9,
+ SFX_WMYSK_BUMP_10,
+ SFX_WMYSK_BUMP_11,
+ SFX_WMYSK_BUMP_12,
+ SFX_WMYSK_BUMP_13,
+ SFX_WMYSK_BUMP_14,
+ SFX_WMYSK_CHAT_1,
+ SFX_WMYSK_CHAT_2,
+ SFX_WMYSK_CHAT_3,
+ SFX_WMYSK_CHAT_4,
+ SFX_WMYSK_CHAT_5,
+ SFX_WMYSK_CHAT_6,
+ SFX_WMYSK_CHAT_7,
+ SFX_WMYSK_CHAT_8,
+ SFX_WMYSK_CHAT_9,
+ SFX_WMYSK_CHAT_10,
+ SFX_WMYSK_CHAT_11,
+ SFX_WMYSK_CHAT_12,
+ SFX_WMYSK_CHAT_13,
+ SFX_WMYSK_DODGE_1,
+ SFX_WMYSK_DODGE_2,
+ SFX_WMYSK_DODGE_3,
+ SFX_WMYSK_DODGE_4,
+ SFX_WMYSK_DODGE_5,
+ SFX_WMYSK_DODGE_6,
+ SFX_WMYSK_DODGE_7,
+ SFX_WMYSK_DODGE_8,
+ SFX_WMYSK_DODGE_9,
+ SFX_WMYSK_DODGE_10,
+ SFX_WMYSK_EYEING_1,
+ SFX_WMYSK_EYEING_2,
+ SFX_WMYSK_FIGHT_1,
+ SFX_WMYSK_FIGHT_2,
+ SFX_WMYSK_FIGHT_3,
+ SFX_WMYSK_FIGHT_4,
+ SFX_WMYSK_FIGHT_5,
+ SFX_WMYSK_GUN_PANIC_1,
+ SFX_WMYSK_GUN_PANIC_2,
+ SFX_WMYSK_GUN_PANIC_3,
+ SFX_WMYSK_GUN_PANIC_4,
+ SFX_WMYSK_GUN_PANIC_5,
+ SFX_WMYSK_INNOCENT_1,
+ SFX_WMYSK_INNOCENT_2,
+ SFX_WMYSK_INNOCENT_3,
+ SFX_WMYSK_LOST_1,
+ SFX_WMYSK_LOST_2,
+ SFX_WMYSK_MUGGED_1,
+ SFX_WMYSK_MUGGED_2,
+ SFX_WMYSK_SAVED_1,
+ SFX_WMYSK_SAVED_2,
+ SFX_WMYSK_SHOCKED_1,
+ SFX_WMYSK_SHOCKED_2,
+ SFX_WMYSK_TAXI_1,
+
+ SFX_WMYCW_BLOCKED_1,
+ SFX_WMYCW_BLOCKED_2,
+ SFX_WMYCW_BLOCKED_3,
+ SFX_WMYCW_BLOCKED_4,
+ SFX_WMYCW_BLOCKED_5,
+ SFX_WMYCW_BLOCKED_6,
+ SFX_WMYCW_BLOCKED_7,
+ SFX_WMYCW_BLOCKED_8,
+ SFX_WMYCW_BLOCKED_9,
+ SFX_WMYCW_BUMP_1,
+ SFX_WMYCW_BUMP_2,
+ SFX_WMYCW_BUMP_3,
+ SFX_WMYCW_BUMP_4,
+ SFX_WMYCW_BUMP_5,
+ SFX_WMYCW_BUMP_6,
+ SFX_WMYCW_BUMP_7,
+ SFX_WMYCW_BUMP_8,
+ SFX_WMYCW_BUMP_9,
+ SFX_WMYCW_CAR_CRASH_1,
+ SFX_WMYCW_CAR_CRASH_2,
+ SFX_WMYCW_CAR_CRASH_3,
+ SFX_WMYCW_CAR_CRASH_4,
+ SFX_WMYCW_CAR_CRASH_5,
+ SFX_WMYCW_CAR_CRASH_6,
+ SFX_WMYCW_CAR_CRASH_7,
+ SFX_WMYCW_CAR_CRASH_8,
+ SFX_WMYCW_CAR_CRASH_9,
+ SFX_WMYCW_CHAT_1,
+ SFX_WMYCW_CHAT_2,
+ SFX_WMYCW_CHAT_3,
+ SFX_WMYCW_CHAT_4,
+ SFX_WMYCW_CHAT_5,
+ SFX_WMYCW_CHAT_6,
+ SFX_WMYCW_CHAT_7,
+ SFX_WMYCW_CHAT_8,
+ SFX_WMYCW_CHAT_9,
+ SFX_WMYCW_CHAT_10,
+ SFX_WMYCW_CHAT_11,
+ SFX_WMYCW_CHAT_12,
+ SFX_WMYCW_CHAT_13,
+ SFX_WMYCW_CHAT_14,
+ SFX_WMYCW_CHAT_15,
+ SFX_WMYCW_DODGE_1,
+ SFX_WMYCW_DODGE_2,
+ SFX_WMYCW_DODGE_3,
+ SFX_WMYCW_DODGE_4,
+ SFX_WMYCW_DODGE_5,
+ SFX_WMYCW_DODGE_6,
+ SFX_WMYCW_DODGE_7,
+ SFX_WMYCW_DODGE_8,
+ SFX_WMYCW_DODGE_9,
+ SFX_WMYCW_DODGE_10,
+ SFX_WMYCW_EYEING_1,
+ SFX_WMYCW_EYEING_2,
+ SFX_WMYCW_EYEING_3,
+ SFX_WMYCW_FIGHT_1,
+ SFX_WMYCW_FIGHT_2,
+ SFX_WMYCW_FIGHT_3,
+ SFX_WMYCW_FIGHT_4,
+ SFX_WMYCW_FIGHT_5,
+ SFX_WMYCW_FIGHT_6,
+ SFX_WMYCW_FIGHT_7,
+ SFX_WMYCW_FIGHT_8,
+ SFX_WMYCW_GENERIC_CRASH_1,
+ SFX_WMYCW_GENERIC_CRASH_2,
+ SFX_WMYCW_GENERIC_CRASH_3,
+ SFX_WMYCW_GENERIC_CRASH_4,
+ SFX_WMYCW_GENERIC_CRASH_5,
+ SFX_WMYCW_GENERIC_CRASH_6,
+ SFX_WMYCW_GENERIC_CRASH_7,
+ SFX_WMYCW_GUN_PANIC_1,
+ SFX_WMYCW_GUN_PANIC_2,
+ SFX_WMYCW_GUN_PANIC_3,
+ SFX_WMYCW_GUN_PANIC_4,
+ SFX_WMYCW_GUN_PANIC_5,
+ SFX_WMYCW_GUN_PANIC_6,
+ SFX_WMYCW_INNOCENT_1,
+ SFX_WMYCW_INNOCENT_2,
+ SFX_WMYCW_INNOCENT_3,
+ SFX_WMYCW_JACKED_1,
+ SFX_WMYCW_JACKED_2,
+ SFX_WMYCW_JACKED_3,
+ SFX_WMYCW_JACKED_4,
+ SFX_WMYCW_JACKED_5,
+ SFX_WMYCW_JACKED_6,
+ SFX_WMYCW_JEER_1,
+ SFX_WMYCW_JEER_2,
+ SFX_WMYCW_JEER_3,
+ SFX_WMYCW_JEER_4,
+ SFX_WMYCW_JEER_5,
+ SFX_WMYCW_JACKING_1,
+ SFX_WMYCW_JACKING_2,
+ SFX_WMYCW_JACKING_3,
+ SFX_WMYCW_JACKING_4,
+ SFX_WMYCW_LOST_1,
+ SFX_WMYCW_LOST_2,
+ SFX_WMYCW_MUGGED_1,
+ SFX_WMYCW_TAXI_1,
+
+ SFX_HFYST_BLOCKED_1,
+ SFX_HFYST_BLOCKED_2,
+ SFX_HFYST_BLOCKED_3,
+ SFX_HFYST_BLOCKED_4,
+ SFX_HFYST_BLOCKED_5,
+ SFX_HFYST_BLOCKED_6,
+ SFX_HFYST_BLOCKED_7,
+ SFX_HFYST_BUMP_1,
+ SFX_HFYST_BUMP_2,
+ SFX_HFYST_BUMP_3,
+ SFX_HFYST_BUMP_4,
+ SFX_HFYST_BUMP_5,
+ SFX_HFYST_BUMP_6,
+ SFX_HFYST_BUMP_7,
+ SFX_HFYST_BUMP_8,
+ SFX_HFYST_BUMP_9,
+ SFX_HFYST_BUMP_10,
+ SFX_HFYST_CAR_CRASH_1,
+ SFX_HFYST_CAR_CRASH_2,
+ SFX_HFYST_CAR_CRASH_3,
+ SFX_HFYST_CAR_CRASH_4,
+ SFX_HFYST_CAR_CRASH_5,
+ SFX_HFYST_CAR_CRASH_6,
+ SFX_HFYST_CAR_CRASH_7,
+ SFX_HFYST_CAR_CRASH_8,
+ SFX_HFYST_CHAT_1,
+ SFX_HFYST_CHAT_2,
+ SFX_HFYST_CHAT_3,
+ SFX_HFYST_CHAT_4,
+ SFX_HFYST_CHAT_5,
+ SFX_HFYST_CHAT_6,
+ SFX_HFYST_CHAT_7,
+ SFX_HFYST_CHAT_8,
+ SFX_HFYST_CHAT_9,
+ SFX_HFYST_DODGE_1,
+ SFX_HFYST_DODGE_2,
+ SFX_HFYST_DODGE_3,
+ SFX_HFYST_DODGE_4,
+ SFX_HFYST_DODGE_5,
+ SFX_HFYST_DODGE_6,
+ SFX_HFYST_DODGE_7,
+ SFX_HFYST_DODGE_8,
+ SFX_HFYST_DODGE_9,
+ SFX_HFYST_DODGE_10,
+ SFX_HFYST_FIGHT_1,
+ SFX_HFYST_FIGHT_2,
+ SFX_HFYST_FIGHT_3,
+ SFX_HFYST_FIGHT_4,
+ SFX_HFYST_FIGHT_5,
+ SFX_HFYST_FIGHT_6,
+ SFX_HFYST_FIGHT_7,
+ SFX_HFYST_GENERIC_CRASH_1,
+ SFX_HFYST_GENERIC_CRASH_2,
+ SFX_HFYST_GENERIC_CRASH_3,
+ SFX_HFYST_GENERIC_CRASH_4,
+ SFX_HFYST_GENERIC_CRASH_5,
+ SFX_HFYST_GENERIC_CRASH_6,
+ SFX_HFYST_GENERIC_CRASH_7,
+ SFX_HFYST_GUN_COOL_1,
+ SFX_HFYST_GUN_COOL_2,
+ SFX_HFYST_GUN_COOL_3,
+ SFX_HFYST_GUN_COOL_4,
+ SFX_HFYST_GUN_COOL_5,
+ SFX_HFYST_JACKED_1,
+ SFX_HFYST_JACKED_2,
+ SFX_HFYST_JACKED_3,
+ SFX_HFYST_JACKED_4,
+ SFX_HFYST_JACKED_5,
+ SFX_HFYST_JACKED_6,
+ SFX_HFYST_JACKING_1,
+ SFX_HFYST_JACKING_2,
+ SFX_HFYST_JACKING_3,
+ SFX_HFYST_JACKING_4,
+ SFX_HFYST_LOST_1,
+ SFX_HFYST_LOST_2,
+ SFX_HFYST_MUGGED_1,
+ SFX_HFYST_MUGGED_2,
+ SFX_HFYST_MUGGING_1,
+ SFX_HFYST_MUGGING_2,
+ SFX_HFYST_MUGGING_3,
+ SFX_HFYST_MUGGING_4,
+ SFX_HFYST_TAXI_1,
+
+ SFX_HMOST_BLOCKED_1,
+ SFX_HMOST_BLOCKED_2,
+ SFX_HMOST_BLOCKED_3,
+ SFX_HMOST_BLOCKED_4,
+ SFX_HMOST_BLOCKED_5,
+ SFX_HMOST_BLOCKED_6,
+ SFX_HMOST_BLOCKED_7,
+ SFX_HMOST_BUMP_1,
+ SFX_HMOST_BUMP_2,
+ SFX_HMOST_BUMP_3,
+ SFX_HMOST_BUMP_4,
+ SFX_HMOST_BUMP_5,
+ SFX_HMOST_BUMP_6,
+ SFX_HMOST_BUMP_7,
+ SFX_HMOST_BUMP_8,
+ SFX_HMOST_BUMP_9,
+ SFX_HMOST_BUMP_10,
+ SFX_HMOST_CAR_CRASH_1,
+ SFX_HMOST_CAR_CRASH_2,
+ SFX_HMOST_CAR_CRASH_3,
+ SFX_HMOST_CAR_CRASH_4,
+ SFX_HMOST_CAR_CRASH_5,
+ SFX_HMOST_CAR_CRASH_6,
+ SFX_HMOST_CAR_CRASH_7,
+ SFX_HMOST_CHAT_1,
+ SFX_HMOST_CHAT_2,
+ SFX_HMOST_CHAT_3,
+ SFX_HMOST_CHAT_4,
+ SFX_HMOST_CHAT_5,
+ SFX_HMOST_CHAT_6,
+ SFX_HMOST_CHAT_7,
+ SFX_HMOST_CHAT_8,
+ SFX_HMOST_CHAT_9,
+ SFX_HMOST_CHAT_10,
+ SFX_HMOST_CHAT_11,
+ SFX_HMOST_DODGE_1,
+ SFX_HMOST_DODGE_2,
+ SFX_HMOST_DODGE_3,
+ SFX_HMOST_DODGE_4,
+ SFX_HMOST_DODGE_5,
+ SFX_HMOST_DODGE_6,
+ SFX_HMOST_DODGE_7,
+ SFX_HMOST_DODGE_8,
+ SFX_HMOST_DODGE_9,
+ SFX_HMOST_EYEING_1,
+ SFX_HMOST_FIGHT_1,
+ SFX_HMOST_FIGHT_2,
+ SFX_HMOST_FIGHT_3,
+ SFX_HMOST_FIGHT_4,
+ SFX_HMOST_FIGHT_5,
+ SFX_HMOST_FIGHT_6,
+ SFX_HMOST_FIGHT_7,
+ SFX_HMOST_FIGHT_8,
+ SFX_HMOST_GENERIC_CRASH_1,
+ SFX_HMOST_GENERIC_CRASH_2,
+ SFX_HMOST_GENERIC_CRASH_3,
+ SFX_HMOST_GENERIC_CRASH_4,
+ SFX_HMOST_GENERIC_CRASH_5,
+ SFX_HMOST_GENERIC_CRASH_6,
+ SFX_HMOST_GENERIC_CRASH_7,
+ SFX_HMOST_GUN_COOL_1,
+ SFX_HMOST_GUN_COOL_2,
+ SFX_HMOST_GUN_COOL_3,
+ SFX_HMOST_GUN_COOL_4,
+ SFX_HMOST_GUN_COOL_5,
+ SFX_HMOST_JACKED_1,
+ SFX_HMOST_JACKED_2,
+ SFX_HMOST_JACKED_3,
+ SFX_HMOST_JACKED_4,
+ SFX_HMOST_JACKED_5,
+ SFX_HMOST_JACKED_6,
+ SFX_HMOST_JACKING_1,
+ SFX_HMOST_JACKING_2,
+ SFX_HMOST_JACKING_3,
+ SFX_HMOST_LOST_1,
+ SFX_HMOST_LOST_2,
+ SFX_HMOST_MUGGED_1,
+ SFX_HMOST_MUGGED_2,
+ SFX_HMOST_TAXI_1,
+
+ SFX_HMYRI_BLOCKED_1,
+ SFX_HMYRI_BLOCKED_2,
+ SFX_HMYRI_BLOCKED_3,
+ SFX_HMYRI_BLOCKED_4,
+ SFX_HMYRI_BLOCKED_5,
+ SFX_HMYRI_BLOCKED_6,
+ SFX_HMYRI_BLOCKED_7,
+ SFX_HMYRI_BUMP_1,
+ SFX_HMYRI_BUMP_2,
+ SFX_HMYRI_BUMP_3,
+ SFX_HMYRI_BUMP_4,
+ SFX_HMYRI_BUMP_5,
+ SFX_HMYRI_BUMP_6,
+ SFX_HMYRI_BUMP_7,
+ SFX_HMYRI_BUMP_8,
+ SFX_HMYRI_BUMP_9,
+ SFX_HMYRI_BUMP_10,
+ SFX_HMYRI_CAR_CRASH_1,
+ SFX_HMYRI_CAR_CRASH_2,
+ SFX_HMYRI_CAR_CRASH_3,
+ SFX_HMYRI_CAR_CRASH_4,
+ SFX_HMYRI_CAR_CRASH_5,
+ SFX_HMYRI_CAR_CRASH_6,
+ SFX_HMYRI_CAR_CRASH_7,
+ SFX_HMYRI_CAR_CRASH_8,
+ SFX_HMYRI_DODGE_1,
+ SFX_HMYRI_DODGE_2,
+ SFX_HMYRI_DODGE_3,
+ SFX_HMYRI_DODGE_4,
+ SFX_HMYRI_DODGE_5,
+ SFX_HMYRI_DODGE_6,
+ SFX_HMYRI_DODGE_7,
+ SFX_HMYRI_DODGE_8,
+ SFX_HMYRI_DODGE_9,
+ SFX_HMYRI_FIGHT_1,
+ SFX_HMYRI_FIGHT_2,
+ SFX_HMYRI_FIGHT_3,
+ SFX_HMYRI_FIGHT_4,
+ SFX_HMYRI_FIGHT_5,
+ SFX_HMYRI_GENERIC_CRASH_1,
+ SFX_HMYRI_GENERIC_CRASH_2,
+ SFX_HMYRI_GENERIC_CRASH_3,
+ SFX_HMYRI_GENERIC_CRASH_4,
+ SFX_HMYRI_GENERIC_CRASH_5,
+ SFX_HMYRI_GENERIC_CRASH_6,
+ SFX_HMYRI_GENERIC_CRASH_7,
+ SFX_HMYRI_GENERIC_CRASH_8,
+ SFX_HMYRI_GENERIC_CRASH_9,
+ SFX_HMYRI_GENERIC_CRASH_10,
+ SFX_HMYRI_GENERIC_CRASH_11,
+ SFX_HMYRI_GENERIC_CRASH_12,
+ SFX_HMYRI_GUN_PANIC_1,
+ SFX_HMYRI_GUN_PANIC_2,
+ SFX_HMYRI_GUN_PANIC_3,
+ SFX_HMYRI_GUN_PANIC_4,
+ SFX_HMYRI_GUN_PANIC_5,
+ SFX_HMYRI_GUN_PANIC_6,
+ SFX_HMYRI_GUN_PANIC_7,
+ SFX_HMYRI_JACKED_1,
+ SFX_HMYRI_JACKED_2,
+ SFX_HMYRI_JACKED_3,
+ SFX_HMYRI_JACKED_4,
+ SFX_HMYRI_JACKED_5,
+ SFX_HMYRI_JACKED_6,
+ SFX_HMYRI_JACKED_7,
+ SFX_HMYRI_JACKED_8,
+ SFX_HMYRI_JACKING_1,
+ SFX_HMYRI_JACKING_2,
+ SFX_HMYRI_JACKING_3,
+ SFX_HMYRI_MUGGED_1,
+ SFX_HMYRI_SHOCKED_1,
+ SFX_HMYRI_SHOCKED_2,
+ SFX_HMYRI_SHOCKED_3,
+
+ SFX_HFYPR_BUMP_1,
+ SFX_HFYPR_BUMP_2,
+ SFX_HFYPR_BUMP_3,
+ SFX_HFYPR_BUMP_4,
+ SFX_HFYPR_BUMP_5,
+ SFX_HFYPR_BUMP_6,
+ SFX_HFYPR_BUMP_7,
+ SFX_HFYPR_BUMP_8,
+ SFX_HFYPR_BUMP_9,
+ SFX_HFYPR_BUMP_10,
+ SFX_HFYPR_CHAT_1,
+ SFX_HFYPR_CHAT_2,
+ SFX_HFYPR_CHAT_3,
+ SFX_HFYPR_CHAT_4,
+ SFX_HFYPR_CHAT_5,
+ SFX_HFYPR_CHAT_6,
+ SFX_HFYPR_CHAT_7,
+ SFX_HFYPR_CHAT_8,
+ SFX_HFYPR_CHAT_9,
+ SFX_HFYPR_CHAT_10,
+ SFX_HFYPR_CHAT_11,
+ SFX_HFYPR_CHAT_12,
+ SFX_HFYPR_DODGE_1,
+ SFX_HFYPR_DODGE_2,
+ SFX_HFYPR_DODGE_3,
+ SFX_HFYPR_DODGE_4,
+ SFX_HFYPR_DODGE_5,
+ SFX_HFYPR_DODGE_6,
+ SFX_HFYPR_DODGE_7,
+ SFX_HFYPR_DODGE_8,
+ SFX_HFYPR_DODGE_9,
+ SFX_HFYPR_EYEING_1,
+ SFX_HFYPR_EYEING_2,
+ SFX_HFYPR_EYEING_3,
+ SFX_HFYPR_FIGHT_1,
+ SFX_HFYPR_FIGHT_2,
+ SFX_HFYPR_FIGHT_3,
+ SFX_HFYPR_FIGHT_4,
+ SFX_HFYPR_FIGHT_5,
+ SFX_HFYPR_FIGHT_6,
+ SFX_HFYPR_FIGHT_7,
+ SFX_HFYPR_FIGHT_8,
+ SFX_HFYPR_FIGHT_9,
+ SFX_HFYPR_FIGHT_10,
+ SFX_HFYPR_FUCKING_1,
+ SFX_HFYPR_FUCKING_2,
+ SFX_HFYPR_FUCKING_3,
+ SFX_HFYPR_FUCKING_4,
+ SFX_HFYPR_FUCKING_5,
+ SFX_HFYPR_FUCKING_6,
+ SFX_HFYPR_FUCKING_7,
+ SFX_HFYPR_FUCKING_8,
+ SFX_HFYPR_GUN_COOL_1,
+ SFX_HFYPR_GUN_COOL_2,
+ SFX_HFYPR_GUN_COOL_3,
+ SFX_HFYPR_GUN_COOL_4,
+ SFX_HFYPR_GUN_COOL_5,
+ SFX_HFYPR_GUN_COOL_6,
+ SFX_HFYPR_MUGGED_1,
+ SFX_HFYPR_MUGGED_2,
+ SFX_HFYPR_SAVED_1,
+ SFX_HFYPR_SOLICIT_1,
+ SFX_HFYPR_SOLICIT_2,
+ SFX_HFYPR_SOLICIT_3,
+ SFX_HFYPR_SOLICIT_4,
+ SFX_HFYPR_SOLICIT_5,
+ SFX_HFYPR_SOLICIT_6,
+ SFX_HFYPR_SOLICIT_7,
+ SFX_HFYPR_SOLICIT_8,
+ SFX_HFYPR_SOLICIT_9,
+ SFX_HFYPR_SOLICIT_10,
+ SFX_HFYPR_SOLICIT_11,
+ SFX_HFYPR_SOLICIT_12,
+ SFX_HFYPR_SOLICIT_13,
+ SFX_HFYPR_SOLICIT_14,
+ SFX_HFYPR_TAXI_1,
+
+ SFX_HFYMD_BUMP_1,
+ SFX_HFYMD_BUMP_2,
+ SFX_HFYMD_BUMP_3,
+ SFX_HFYMD_BUMP_4,
+ SFX_HFYMD_BUMP_5,
+ SFX_HFYMD_BUMP_6,
+ SFX_HFYMD_BUMP_7,
+ SFX_HFYMD_BUMP_8,
+ SFX_HFYMD_BUMP_9,
+ SFX_HFYMD_DODGE_1,
+ SFX_HFYMD_DODGE_2,
+ SFX_HFYMD_DODGE_3,
+ SFX_HFYMD_DODGE_4,
+ SFX_HFYMD_DODGE_5,
+ SFX_HFYMD_DODGE_6,
+ SFX_HFYMD_DODGE_7,
+ SFX_HFYMD_DODGE_8,
+ SFX_HFYMD_FIGHT_1,
+ SFX_HFYMD_FIGHT_2,
+ SFX_HFYMD_FIGHT_3,
+ SFX_HFYMD_FIGHT_4,
+ SFX_HFYMD_FIGHT_5,
+ SFX_HFYMD_FIGHT_6,
+ SFX_HFYMD_FIGHT_7,
+ SFX_HFYMD_FIGHT_8,
+ SFX_HFYMD_FIGHT_9,
+ SFX_HFYMD_GUN_PANIC_1,
+ SFX_HFYMD_GUN_PANIC_2,
+ SFX_HFYMD_GUN_PANIC_3,
+ SFX_HFYMD_GUN_PANIC_4,
+ SFX_HFYMD_GUN_PANIC_5,
+ SFX_HFYMD_MUGGED_1,
+ SFX_HFYMD_MUGGED_2,
+ SFX_HFYMD_SAVED_1,
+ SFX_HFYMD_SAVED_2,
+ SFX_HFYMD_SAVED_3,
+ SFX_HFYMD_SOLICIT_1,
+ SFX_HFYMD_SOLICIT_2,
+ SFX_HFYMD_SOLICIT_3,
+ SFX_HFYMD_SOLICIT_4,
+ SFX_HFYMD_SOLICIT_5,
+ SFX_HFYMD_SOLICIT_6,
+ SFX_HFYMD_SOLICIT_7,
+ SFX_HFYMD_SOLICIT_8,
+ SFX_HFYMD_SOLICIT_9,
+ SFX_HFYMD_SOLICIT_10,
+ SFX_HFYMD_SOLICIT_11,
+ SFX_HFYMD_SOLICIT_12,
+ SFX_HFYMD_SOLICIT_13,
+ SFX_HFYMD_SOLICIT_14,
+ SFX_HFYMD_SOLICIT_15,
+ SFX_HFYMD_TAXI_1,
+
+ SFX_WFOBE_BLOCKED_1,
+ SFX_WFOBE_BLOCKED_2,
+ SFX_WFOBE_BLOCKED_3,
+ SFX_WFOBE_BLOCKED_4,
+ SFX_WFOBE_BLOCKED_5,
+ SFX_WFOBE_BLOCKED_6,
+ SFX_WFOBE_BLOCKED_7,
+ SFX_WFOBE_BLOCKED_8,
+ SFX_WFOBE_BUMP_1,
+ SFX_WFOBE_BUMP_2,
+ SFX_WFOBE_BUMP_3,
+ SFX_WFOBE_BUMP_4,
+ SFX_WFOBE_BUMP_5,
+ SFX_WFOBE_BUMP_6,
+ SFX_WFOBE_BUMP_7,
+ SFX_WFOBE_BUMP_8,
+ SFX_WFOBE_BUMP_9,
+ SFX_WFOBE_BUMP_10,
+ SFX_WFOBE_CAR_CRASH_1,
+ SFX_WFOBE_CAR_CRASH_2,
+ SFX_WFOBE_CAR_CRASH_3,
+ SFX_WFOBE_CAR_CRASH_4,
+ SFX_WFOBE_CAR_CRASH_5,
+ SFX_WFOBE_CAR_CRASH_6,
+ SFX_WFOBE_CAR_CRASH_7,
+ SFX_WFOBE_CHAT_1,
+ SFX_WFOBE_CHAT_2,
+ SFX_WFOBE_CHAT_3,
+ SFX_WFOBE_CHAT_4,
+ SFX_WFOBE_CHAT_5,
+ SFX_WFOBE_CHAT_6,
+ SFX_WFOBE_CHAT_7,
+ SFX_WFOBE_CHAT_8,
+ SFX_WFOBE_CHAT_9,
+ SFX_WFOBE_CHAT_10,
+ SFX_WFOBE_DODGE_1,
+ SFX_WFOBE_DODGE_2,
+ SFX_WFOBE_DODGE_3,
+ SFX_WFOBE_DODGE_4,
+ SFX_WFOBE_DODGE_5,
+ SFX_WFOBE_DODGE_6,
+ SFX_WFOBE_DODGE_7,
+ SFX_WFOBE_DODGE_8,
+ SFX_WFOBE_GENERIC_CRASH_1,
+ SFX_WFOBE_GENERIC_CRASH_2,
+ SFX_WFOBE_GENERIC_CRASH_3,
+ SFX_WFOBE_GENERIC_CRASH_4,
+ SFX_WFOBE_GENERIC_CRASH_5,
+ SFX_WFOBE_GENERIC_CRASH_6,
+ SFX_WFOBE_GENERIC_CRASH_7,
+ SFX_WFOBE_GENERIC_CRASH_8,
+ SFX_WFOBE_GENERIC_CRASH_9,
+ SFX_WFOBE_GENERIC_CRASH_10,
+ SFX_WFOBE_GUN_PANIC_1,
+ SFX_WFOBE_GUN_PANIC_2,
+ SFX_WFOBE_GUN_PANIC_3,
+ SFX_WFOBE_GUN_PANIC_4,
+ SFX_WFOBE_GUN_PANIC_5,
+ SFX_WFOBE_JACKED_1,
+ SFX_WFOBE_JACKED_2,
+ SFX_WFOBE_JACKED_3,
+ SFX_WFOBE_JACKED_4,
+ SFX_WFOBE_RUN_1,
+ SFX_WFOBE_RUN_2,
+ SFX_WFOBE_RUN_3,
+ SFX_WFOBE_RUN_4,
+ SFX_WFOBE_RUN_5,
+ SFX_WFOBE_RUN_6,
+ SFX_WFOBE_RUN_7,
+ SFX_WFOBE_SAVED_1,
+ SFX_WFOBE_SAVED_2,
+ SFX_WFOBE_SAVED_3,
+ SFX_WFOBE_SHOCKED_1,
+ SFX_WFOBE_SHOCKED_2,
+ SFX_WFOBE_SHOCKED_3,
+ SFX_WFOBE_TAXI_1,
+ SFX_WFOBE_TAXI_2,
+
+ SFX_BFYRI_BLOCKED_1,
+ SFX_BFYRI_BLOCKED_2,
+ SFX_BFYRI_BLOCKED_3,
+ SFX_BFYRI_BLOCKED_4,
+ SFX_BFYRI_BLOCKED_5,
+ SFX_BFYRI_BLOCKED_6,
+ SFX_BFYRI_BLOCKED_7,
+ SFX_BFYRI_BLOCKED_8,
+ SFX_BFYRI_BLOCKED_9,
+ SFX_BFYRI_BUMP_1,
+ SFX_BFYRI_BUMP_2,
+ SFX_BFYRI_BUMP_3,
+ SFX_BFYRI_BUMP_4,
+ SFX_BFYRI_BUMP_5,
+ SFX_BFYRI_BUMP_6,
+ SFX_BFYRI_BUMP_7,
+ SFX_BFYRI_BUMP_8,
+ SFX_BFYRI_BUMP_9,
+ SFX_BFYRI_CAR_CRASH_1,
+ SFX_BFYRI_CAR_CRASH_2,
+ SFX_BFYRI_CAR_CRASH_3,
+ SFX_BFYRI_CAR_CRASH_4,
+ SFX_BFYRI_CAR_CRASH_5,
+ SFX_BFYRI_CAR_CRASH_6,
+ SFX_BFYRI_CAR_CRASH_7,
+ SFX_BFYRI_CAR_CRASH_8,
+ SFX_BFYRI_DODGE_1,
+ SFX_BFYRI_DODGE_2,
+ SFX_BFYRI_DODGE_3,
+ SFX_BFYRI_DODGE_4,
+ SFX_BFYRI_DODGE_5,
+ SFX_BFYRI_DODGE_6,
+ SFX_BFYRI_DODGE_7,
+ SFX_BFYRI_DODGE_8,
+ SFX_BFYRI_EYEING_1,
+ SFX_BFYRI_EYEING_2,
+ SFX_BFYRI_EYEING_3,
+ SFX_BFYRI_GENERIC_CRASH_1,
+ SFX_BFYRI_GENERIC_CRASH_2,
+ SFX_BFYRI_GENERIC_CRASH_3,
+ SFX_BFYRI_GENERIC_CRASH_4,
+ SFX_BFYRI_GENERIC_CRASH_5,
+ SFX_BFYRI_GENERIC_CRASH_6,
+ SFX_BFYRI_GENERIC_CRASH_7,
+ SFX_BFYRI_GUN_PANIC_1,
+ SFX_BFYRI_GUN_PANIC_2,
+ SFX_BFYRI_GUN_PANIC_3,
+ SFX_BFYRI_GUN_PANIC_4,
+ SFX_BFYRI_JACKED_1,
+ SFX_BFYRI_JACKED_2,
+ SFX_BFYRI_JACKED_3,
+ SFX_BFYRI_JACKED_4,
+ SFX_BFYRI_JACKED_5,
+ SFX_BFYRI_JACKED_6,
+ SFX_BFYRI_JACKED_7,
+ SFX_BFYRI_JACKED_8,
+ SFX_BFYRI_JACKING_1,
+ SFX_BFYRI_JACKING_2,
+ SFX_BFYRI_JACKING_3,
+ SFX_BFYRI_JACKING_4,
+ SFX_BFYRI_LOST_1,
+ SFX_BFYRI_LOST_2,
+ SFX_BFYRI_MUGGED_1,
+ SFX_BFYRI_MUGGED_2,
+ SFX_BFYRI_MUGGED_3,
+ SFX_BFYRI_RUN_1,
+ SFX_BFYRI_RUN_2,
+ SFX_BFYRI_RUN_3,
+ SFX_BFYRI_RUN_4,
+ SFX_BFYRI_RUN_5,
+ SFX_BFYRI_RUN_6,
+ SFX_BFYRI_SAVED_1,
+ SFX_BFYRI_SAVED_2,
+ SFX_BFYRI_SHOCKED_1,
+ SFX_BFYRI_SHOCKED_2,
+ SFX_BFYRI_SHOCKED_3,
+ SFX_BFYRI_SHOCKED_4,
+ SFX_BFYRI_TAXI_1,
+
+ SFX_BFYBE_BLOCKED_1,
+ SFX_BFYBE_BLOCKED_2,
+ SFX_BFYBE_BLOCKED_3,
+ SFX_BFYBE_BLOCKED_4,
+ SFX_BFYBE_BLOCKED_5,
+ SFX_BFYBE_BLOCKED_6,
+ SFX_BFYBE_BLOCKED_7,
+ SFX_BFYBE_BLOCKED_8,
+ SFX_BFYBE_BLOCKED_9,
+ SFX_BFYBE_BLOCKED_10,
+ SFX_BFYBE_BLOCKED_11,
+ SFX_BFYBE_BLOCKED_12,
+ SFX_BFYBE_CAR_CRASH_1,
+ SFX_BFYBE_CAR_CRASH_2,
+ SFX_BFYBE_CAR_CRASH_3,
+ SFX_BFYBE_CAR_CRASH_4,
+ SFX_BFYBE_CAR_CRASH_5,
+ SFX_BFYBE_CAR_CRASH_6,
+ SFX_BFYBE_CAR_CRASH_7,
+ SFX_BFYBE_CAR_CRASH_8,
+ SFX_BFYBE_CAR_CRASH_9,
+ SFX_BFYBE_CAR_CRASH_10,
+ SFX_BFYBE_CHAT_1,
+ SFX_BFYBE_CHAT_2,
+ SFX_BFYBE_CHAT_3,
+ SFX_BFYBE_CHAT_4,
+ SFX_BFYBE_CHAT_5,
+ SFX_BFYBE_CHAT_6,
+ SFX_BFYBE_CHAT_7,
+ SFX_BFYBE_CHAT_8,
+ SFX_BFYBE_CHAT_9,
+ SFX_BFYBE_CHAT_10,
+ SFX_BFYBE_CHAT_11,
+ SFX_BFYBE_CHAT_12,
+ SFX_BFYBE_CHAT_13,
+ SFX_BFYBE_CHAT_14,
+ SFX_BFYBE_CHAT_15,
+ SFX_BFYBE_CHAT_16,
+ SFX_BFYBE_DODGE_1,
+ SFX_BFYBE_DODGE_2,
+ SFX_BFYBE_DODGE_3,
+ SFX_BFYBE_DODGE_4,
+ SFX_BFYBE_DODGE_5,
+ SFX_BFYBE_DODGE_6,
+ SFX_BFYBE_DODGE_7,
+ SFX_BFYBE_DODGE_8,
+ SFX_BFYBE_DODGE_9,
+ SFX_BFYBE_DODGE_10,
+ SFX_BFYBE_EYEING_1,
+ SFX_BFYBE_EYEING_2,
+ SFX_BFYBE_EYEING_3,
+ SFX_BFYBE_EYEING_4,
+ SFX_BFYBE_GENERIC_CRASH_1,
+ SFX_BFYBE_GENERIC_CRASH_2,
+ SFX_BFYBE_GENERIC_CRASH_3,
+ SFX_BFYBE_GENERIC_CRASH_4,
+ SFX_BFYBE_GENERIC_CRASH_5,
+ SFX_BFYBE_GENERIC_CRASH_6,
+ SFX_BFYBE_GENERIC_CRASH_7,
+ SFX_BFYBE_GENERIC_CRASH_8,
+ SFX_BFYBE_GUN_COOL_1,
+ SFX_BFYBE_GUN_COOL_2,
+ SFX_BFYBE_GUN_COOL_3,
+ SFX_BFYBE_GUN_COOL_4,
+ SFX_BFYBE_GUN_COOL_5,
+ SFX_BFYBE_GUN_COOL_6,
+ SFX_BFYBE_JACKED_1,
+ SFX_BFYBE_JACKED_2,
+ SFX_BFYBE_JACKED_3,
+ SFX_BFYBE_JACKED_4,
+ SFX_BFYBE_JACKED_5,
+ SFX_BFYBE_JACKED_6,
+ SFX_BFYBE_JACKED_7,
+ SFX_BFYBE_JACKED_8,
+ SFX_BFYBE_LOST_1,
+ SFX_BFYBE_LOST_2,
+ SFX_BFYBE_LOST_3,
+ SFX_BFYBE_LOST_4,
+ SFX_BFYBE_MUGGED_1,
+ SFX_BFYBE_MUGGED_2,
+ SFX_BFYBE_MUGGED_3,
+ SFX_BFYBE_MUGGED_4,
+ SFX_BFYBE_MUGGED_5,
+ SFX_BFYBE_RUN_1,
+ SFX_BFYBE_RUN_2,
+ SFX_BFYBE_RUN_3,
+ SFX_BFYBE_RUN_4,
+ SFX_BFYBE_RUN_5,
+ SFX_BFYBE_RUN_6,
+ SFX_BFYBE_SAVED_1,
+ SFX_BFYBE_SAVED_2,
+ SFX_BFYBE_SHOCKED_1,
+ SFX_BFYBE_SHOCKED_2,
+ SFX_BFYBE_SHOCKED_3,
+ SFX_BFYBE_SHOCKED_4,
+ SFX_BFYBE_TAXI_1,
+ SFX_BFYBE_TAXI_2,
+ SFX_BFYBE_TAXI_3,
+
+ SFX_BMOTR_BUMP_1,
+ SFX_BMOTR_BUMP_2,
+ SFX_BMOTR_BUMP_3,
+ SFX_BMOTR_BUMP_4,
+ SFX_BMOTR_BUMP_5,
+ SFX_BMOTR_BUMP_6,
+ SFX_BMOTR_BUMP_7,
+ SFX_BMOTR_BUMP_8,
+ SFX_BMOTR_BUMP_9,
+ SFX_BMOTR_BUMP_10,
+ SFX_BMOTR_CHAT_1,
+ SFX_BMOTR_CHAT_2,
+ SFX_BMOTR_CHAT_3,
+ SFX_BMOTR_CHAT_4,
+ SFX_BMOTR_CHAT_5,
+ SFX_BMOTR_CHAT_6,
+ SFX_BMOTR_CHAT_7,
+ SFX_BMOTR_CHAT_8,
+ SFX_BMOTR_CHAT_9,
+ SFX_BMOTR_CHAT_10,
+ SFX_BMOTR_DODGE_1,
+ SFX_BMOTR_DODGE_2,
+ SFX_BMOTR_DODGE_3,
+ SFX_BMOTR_DODGE_4,
+ SFX_BMOTR_DODGE_5,
+ SFX_BMOTR_DODGE_6,
+ SFX_BMOTR_DODGE_7,
+ SFX_BMOTR_DODGE_8,
+ SFX_BMOTR_DODGE_9,
+ SFX_BMOTR_DODGE_10,
+ SFX_BMOTR_DODGE_11,
+ SFX_BMOTR_EYEING_1,
+ SFX_BMOTR_EYEING_2,
+ SFX_BMOTR_EYEING_3,
+ SFX_BMOTR_GUN_COOL_1,
+ SFX_BMOTR_GUN_COOL_2,
+ SFX_BMOTR_GUN_COOL_3,
+ SFX_BMOTR_GUN_COOL_4,
+ SFX_BMOTR_GUN_COOL_5,
+ SFX_BMOTR_INNOCENT_1,
+ SFX_BMOTR_INNOCENT_2,
+ SFX_BMOTR_INNOCENT_3,
+ SFX_BMOTR_INNOCENT_4,
+ SFX_BMOTR_RUN_1,
+ SFX_BMOTR_RUN_2,
+ SFX_BMOTR_RUN_3,
+ SFX_BMOTR_RUN_4,
+ SFX_BMOTR_RUN_5,
+ SFX_BMOTR_RUN_6,
+ SFX_BMOTR_RUN_7,
+ SFX_BMOTR_SAVED_1,
+ SFX_BMOTR_SOLICIT_1,
+ SFX_BMOTR_SOLICIT_2,
+ SFX_BMOTR_SOLICIT_3,
+ SFX_BMOTR_SOLICIT_4,
+ SFX_BMOTR_SOLICIT_5,
+ SFX_BMOTR_SOLICIT_6,
+ SFX_BMOTR_SOLICIT_7,
+ SFX_BMOTR_TAXI_1,
+
+ SFX_BMYST_BLOCKED_1,
+ SFX_BMYST_BLOCKED_2,
+ SFX_BMYST_BLOCKED_3,
+ SFX_BMYST_BLOCKED_4,
+ SFX_BMYST_BLOCKED_5,
+ SFX_BMYST_BLOCKED_6,
+ SFX_BMYST_BLOCKED_7,
+ SFX_BMYST_BLOCKED_8,
+ SFX_BMYST_BUMP_1,
+ SFX_BMYST_BUMP_2,
+ SFX_BMYST_BUMP_3,
+ SFX_BMYST_BUMP_4,
+ SFX_BMYST_BUMP_5,
+ SFX_BMYST_BUMP_6,
+ SFX_BMYST_BUMP_7,
+ SFX_BMYST_BUMP_8,
+ SFX_BMYST_BUMP_9,
+ SFX_BMYST_BUMP_10,
+ SFX_BMYST_BUMP_11,
+ SFX_BMYST_CAR_CRASH_1,
+ SFX_BMYST_CAR_CRASH_2,
+ SFX_BMYST_CAR_CRASH_3,
+ SFX_BMYST_CAR_CRASH_4,
+ SFX_BMYST_CAR_CRASH_5,
+ SFX_BMYST_CAR_CRASH_6,
+ SFX_BMYST_CAR_CRASH_7,
+ SFX_BMYST_CAR_CRASH_8,
+ SFX_BMYST_CAR_CRASH_9,
+ SFX_BMYST_CHAT_1,
+ SFX_BMYST_CHAT_2,
+ SFX_BMYST_CHAT_3,
+ SFX_BMYST_CHAT_4,
+ SFX_BMYST_CHAT_5,
+ SFX_BMYST_CHAT_6,
+ SFX_BMYST_CHAT_7,
+ SFX_BMYST_CHAT_8,
+ SFX_BMYST_CHAT_9,
+ SFX_BMYST_CHAT_10,
+ SFX_BMYST_CHAT_11,
+ SFX_BMYST_CHAT_12,
+ SFX_BMYST_DODGE_1,
+ SFX_BMYST_DODGE_2,
+ SFX_BMYST_DODGE_3,
+ SFX_BMYST_DODGE_4,
+ SFX_BMYST_DODGE_5,
+ SFX_BMYST_DODGE_6,
+ SFX_BMYST_DODGE_7,
+ SFX_BMYST_DODGE_8,
+ SFX_BMYST_FIGHT_1,
+ SFX_BMYST_FIGHT_2,
+ SFX_BMYST_FIGHT_3,
+ SFX_BMYST_FIGHT_4,
+ SFX_BMYST_FIGHT_5,
+ SFX_BMYST_FIGHT_6,
+ SFX_BMYST_GENERIC_CRASH_1,
+ SFX_BMYST_GENERIC_CRASH_2,
+ SFX_BMYST_GENERIC_CRASH_3,
+ SFX_BMYST_GENERIC_CRASH_4,
+ SFX_BMYST_GENERIC_CRASH_5,
+ SFX_BMYST_GENERIC_CRASH_6,
+ SFX_BMYST_GENERIC_CRASH_7,
+ SFX_BMYST_GUN_COOL_1,
+ SFX_BMYST_GUN_COOL_2,
+ SFX_BMYST_GUN_COOL_3,
+ SFX_BMYST_GUN_COOL_4,
+ SFX_BMYST_GUN_COOL_5,
+ SFX_BMYST_GUN_COOL_6,
+ SFX_BMYST_JACKED_1,
+ SFX_BMYST_JACKED_2,
+ SFX_BMYST_JACKED_3,
+ SFX_BMYST_JACKED_4,
+ SFX_BMYST_JACKED_5,
+ SFX_BMYST_JACKED_6,
+ SFX_BMYST_JACKED_7,
+ SFX_BMYST_JACKED_8,
+ SFX_BMYST_JACKING_1,
+ SFX_BMYST_JACKING_2,
+ SFX_BMYST_JACKING_3,
+ SFX_BMYST_JACKING_4,
+ SFX_BMYST_MUGGED_1,
+ SFX_BMYST_MUGGED_2,
+ SFX_BMYST_MUGGING_1,
+ SFX_BMYST_MUGGING_2,
+ SFX_BMYST_MUGGING_3,
+ SFX_BMYST_MUGGING_4,
+ SFX_BMYST_TAXI_1,
+ SFX_BMYST_TAXI_2,
+
+ SFX_WMYPI_BLOCKED_1,
+ SFX_WMYPI_BLOCKED_2,
+ SFX_WMYPI_BLOCKED_3,
+ SFX_WMYPI_BLOCKED_4,
+ SFX_WMYPI_BLOCKED_5,
+ SFX_WMYPI_BLOCKED_6,
+ SFX_WMYPI_BLOCKED_7,
+ SFX_WMYPI_BLOCKED_8,
+ SFX_WMYPI_BUMP_1,
+ SFX_WMYPI_BUMP_2,
+ SFX_WMYPI_BUMP_3,
+ SFX_WMYPI_BUMP_4,
+ SFX_WMYPI_BUMP_5,
+ SFX_WMYPI_BUMP_6,
+ SFX_WMYPI_BUMP_7,
+ SFX_WMYPI_BUMP_8,
+ SFX_WMYPI_BUMP_9,
+ SFX_WMYPI_BUMP_10,
+ SFX_WMYPI_CAR_CRASH_1,
+ SFX_WMYPI_CAR_CRASH_2,
+ SFX_WMYPI_CAR_CRASH_3,
+ SFX_WMYPI_CAR_CRASH_4,
+ SFX_WMYPI_CAR_CRASH_5,
+ SFX_WMYPI_CAR_CRASH_6,
+ SFX_WMYPI_CAR_CRASH_7,
+ SFX_WMYPI_CAR_CRASH_8,
+ SFX_WMYPI_DODGE_1,
+ SFX_WMYPI_DODGE_2,
+ SFX_WMYPI_DODGE_3,
+ SFX_WMYPI_DODGE_4,
+ SFX_WMYPI_DODGE_5,
+ SFX_WMYPI_DODGE_6,
+ SFX_WMYPI_DODGE_7,
+ SFX_WMYPI_DODGE_8,
+ SFX_WMYPI_EYEING_1,
+ SFX_WMYPI_EYEING_2,
+ SFX_WMYPI_EYEING_3,
+ SFX_WMYPI_EYEING_4,
+ SFX_WMYPI_EYEING_5,
+ SFX_WMYPI_EYEING_6,
+ SFX_WMYPI_FIGHT_1,
+ SFX_WMYPI_FIGHT_2,
+ SFX_WMYPI_FIGHT_3,
+ SFX_WMYPI_FIGHT_4,
+ SFX_WMYPI_FIGHT_5,
+ SFX_WMYPI_FIGHT_6,
+ SFX_WMYPI_FIGHT_7,
+ SFX_WMYPI_FIGHT_8,
+ SFX_WMYPI_FIGHT_9,
+ SFX_WMYPI_GENERIC_CRASH_1,
+ SFX_WMYPI_GENERIC_CRASH_2,
+ SFX_WMYPI_GENERIC_CRASH_3,
+ SFX_WMYPI_GENERIC_CRASH_4,
+ SFX_WMYPI_GENERIC_CRASH_5,
+ SFX_WMYPI_GENERIC_CRASH_6,
+ SFX_WMYPI_GENERIC_CRASH_7,
+ SFX_WMYPI_GENERIC_CRASH_8,
+ SFX_WMYPI_GUN_COOL_1,
+ SFX_WMYPI_GUN_COOL_2,
+ SFX_WMYPI_GUN_COOL_3,
+ SFX_WMYPI_GUN_COOL_4,
+ SFX_WMYPI_GUN_COOL_5,
+ SFX_WMYPI_INNOCENT_1,
+ SFX_WMYPI_INNOCENT_2,
+ SFX_WMYPI_JACKED_1,
+ SFX_WMYPI_JACKED_2,
+ SFX_WMYPI_JACKED_3,
+ SFX_WMYPI_JACKED_4,
+ SFX_WMYPI_JACKED_5,
+ SFX_WMYPI_JACKED_6,
+ SFX_WMYPI_JACKING_1,
+ SFX_WMYPI_JACKING_2,
+ SFX_WMYPI_JACKING_3,
+ SFX_WMYPI_JACKING_4,
+ SFX_WMYPI_MUGGED_1,
+ SFX_WMYPI_MUGGED_2,
+ SFX_WMYPI_SAVED_1,
+ SFX_WMYPI_SAVED_2,
+ SFX_WMYPI_TAXI_1,
+ SFX_WMYPI_TAXI_2,
+ SFX_WMYPI_TAXI_3,
+ SFX_WMYPI_TAXI_4,
+
+ SFX_BMYCR_BLOCKED_1,
+ SFX_BMYCR_BLOCKED_2,
+ SFX_BMYCR_BLOCKED_3,
+ SFX_BMYCR_BLOCKED_4,
+ SFX_BMYCR_BLOCKED_5,
+ SFX_BMYCR_BLOCKED_6,
+ SFX_BMYCR_BLOCKED_7,
+ SFX_BMYCR_BLOCKED_8,
+ SFX_BMYCR_BLOCKED_9,
+ SFX_BMYCR_BLOCKED_10,
+ SFX_BMYCR_BLOCKED_11,
+ SFX_BMYCR_BLOCKED_12,
+ SFX_BMYCR_BUMP_1,
+ SFX_BMYCR_BUMP_2,
+ SFX_BMYCR_BUMP_3,
+ SFX_BMYCR_BUMP_4,
+ SFX_BMYCR_BUMP_5,
+ SFX_BMYCR_BUMP_6,
+ SFX_BMYCR_BUMP_7,
+ SFX_BMYCR_BUMP_8,
+ SFX_BMYCR_BUMP_9,
+ SFX_BMYCR_BUMP_10,
+ SFX_BMYCR_BUMP_11,
+ SFX_BMYCR_CAR_CRASH_1,
+ SFX_BMYCR_CAR_CRASH_2,
+ SFX_BMYCR_CAR_CRASH_3,
+ SFX_BMYCR_CAR_CRASH_4,
+ SFX_BMYCR_CAR_CRASH_5,
+ SFX_BMYCR_CAR_CRASH_6,
+ SFX_BMYCR_CAR_CRASH_7,
+ SFX_BMYCR_CAR_CRASH_8,
+ SFX_BMYCR_CAR_CRASH_9,
+ SFX_BMYCR_DODGE_1,
+ SFX_BMYCR_DODGE_2,
+ SFX_BMYCR_DODGE_3,
+ SFX_BMYCR_DODGE_4,
+ SFX_BMYCR_DODGE_5,
+ SFX_BMYCR_DODGE_6,
+ SFX_BMYCR_DODGE_7,
+ SFX_BMYCR_DODGE_8,
+ SFX_BMYCR_EYEING_1,
+ SFX_BMYCR_EYEING_2,
+ SFX_BMYCR_FIGHT_1,
+ SFX_BMYCR_FIGHT_2,
+ SFX_BMYCR_FIGHT_3,
+ SFX_BMYCR_FIGHT_4,
+ SFX_BMYCR_FIGHT_5,
+ SFX_BMYCR_FIGHT_6,
+ SFX_BMYCR_FIGHT_7,
+ SFX_BMYCR_FIGHT_8,
+ SFX_BMYCR_GENERIC_CRASH_1,
+ SFX_BMYCR_GENERIC_CRASH_2,
+ SFX_BMYCR_GENERIC_CRASH_3,
+ SFX_BMYCR_GENERIC_CRASH_4,
+ SFX_BMYCR_GENERIC_CRASH_5,
+ SFX_BMYCR_GENERIC_CRASH_6,
+ SFX_BMYCR_GENERIC_CRASH_7,
+ SFX_BMYCR_GUN_COOL_1,
+ SFX_BMYCR_GUN_COOL_2,
+ SFX_BMYCR_GUN_COOL_3,
+ SFX_BMYCR_GUN_COOL_4,
+ SFX_BMYCR_GUN_COOL_5,
+ SFX_BMYCR_GUN_COOL_6,
+ SFX_BMYCR_INNOCENT_1,
+ SFX_BMYCR_INNOCENT_2,
+ SFX_BMYCR_INNOCENT_3,
+ SFX_BMYCR_INNOCENT_4,
+ SFX_BMYCR_JACKED_1,
+ SFX_BMYCR_JACKED_2,
+ SFX_BMYCR_JACKED_3,
+ SFX_BMYCR_JACKED_4,
+ SFX_BMYCR_JACKED_5,
+ SFX_BMYCR_JACKED_6,
+ SFX_BMYCR_JACKING_1,
+ SFX_BMYCR_JACKING_2,
+ SFX_BMYCR_JACKING_3,
+ SFX_BMYCR_JACKING_4,
+ SFX_BMYCR_JACKING_5,
+ SFX_BMYCR_JACKING_6,
+ SFX_BMYCR_JACKING_7,
+ SFX_BMYCR_JACKING_8,
+ SFX_BMYCR_JACKING_9,
+ SFX_BMYCR_JACKING_10,
+ SFX_BMYCR_JACKING_11,
+ SFX_BMYCR_JACKING_12,
+ SFX_BMYCR_MUGGED_1,
+ SFX_BMYCR_MUGGED_2,
+ SFX_BMYCR_MUGGED_3,
+ SFX_BMYCR_MUGGING_1,
+ SFX_BMYCR_MUGGING_2,
+ SFX_BMYCR_MUGGING_3,
+ SFX_BMYCR_MUGGING_4,
+ SFX_BMYCR_MUGGING_5,
+ SFX_BMYCR_MUGGING_6,
+ SFX_BMYCR_SAVED_1,
+ SFX_BMYCR_SAVED_2,
+
+ SFX_WMORI_BLOCKED_1,
+ SFX_WMORI_BLOCKED_2,
+ SFX_WMORI_BLOCKED_3,
+ SFX_WMORI_BLOCKED_4,
+ SFX_WMORI_BLOCKED_5,
+ SFX_WMORI_BLOCKED_6,
+ SFX_WMORI_BLOCKED_7,
+ SFX_WMORI_BLOCKED_8,
+ SFX_WMORI_BLOCKED_9,
+ SFX_WMORI_BLOCKED_10,
+ SFX_WMORI_BUMP_1,
+ SFX_WMORI_BUMP_2,
+ SFX_WMORI_BUMP_3,
+ SFX_WMORI_BUMP_4,
+ SFX_WMORI_BUMP_5,
+ SFX_WMORI_BUMP_6,
+ SFX_WMORI_BUMP_7,
+ SFX_WMORI_BUMP_8,
+ SFX_WMORI_BUMP_9,
+ SFX_WMORI_BUMP_10,
+ SFX_WMORI_BUMP_11,
+ SFX_WMORI_BUMP_12,
+ SFX_WMORI_BUMP_13,
+ SFX_WMORI_BUMP_14,
+ SFX_WMORI_CAR_CRASH_1,
+ SFX_WMORI_CAR_CRASH_2,
+ SFX_WMORI_CAR_CRASH_3,
+ SFX_WMORI_CAR_CRASH_4,
+ SFX_WMORI_CAR_CRASH_5,
+ SFX_WMORI_CAR_CRASH_6,
+ SFX_WMORI_DODGE_1,
+ SFX_WMORI_DODGE_2,
+ SFX_WMORI_DODGE_3,
+ SFX_WMORI_DODGE_4,
+ SFX_WMORI_DODGE_5,
+ SFX_WMORI_DODGE_6,
+ SFX_WMORI_DODGE_7,
+ SFX_WMORI_DODGE_8,
+ SFX_WMORI_DODGE_9,
+ SFX_WMORI_DODGE_10,
+ SFX_WMORI_EYEING_1,
+ SFX_WMORI_EYEING_2,
+ SFX_WMORI_EYEING_3,
+ SFX_WMORI_GENERIC_CRASH_1,
+ SFX_WMORI_GENERIC_CRASH_2,
+ SFX_WMORI_GENERIC_CRASH_3,
+ SFX_WMORI_GENERIC_CRASH_4,
+ SFX_WMORI_GENERIC_CRASH_5,
+ SFX_WMORI_GENERIC_CRASH_6,
+ SFX_WMORI_GENERIC_CRASH_7,
+ SFX_WMORI_GENERIC_CRASH_8,
+ SFX_WMORI_GUN_PANIC_1,
+ SFX_WMORI_GUN_PANIC_2,
+ SFX_WMORI_GUN_PANIC_3,
+ SFX_WMORI_GUN_PANIC_4,
+ SFX_WMORI_GUN_PANIC_5,
+ SFX_WMORI_GUN_PANIC_6,
+ SFX_WMORI_GUN_PANIC_7,
+ SFX_WMORI_GUN_PANIC_8,
+ SFX_WMORI_GUN_PANIC_9,
+ SFX_WMORI_JACKED_1,
+ SFX_WMORI_JACKED_2,
+ SFX_WMORI_JACKED_3,
+ SFX_WMORI_JACKED_4,
+ SFX_WMORI_JACKED_5,
+ SFX_WMORI_JACKED_6,
+ SFX_WMORI_LOST_1,
+ SFX_WMORI_LOST_2,
+ SFX_WMORI_MUGGED_1,
+ SFX_WMORI_MUGGED_2,
+ SFX_WMORI_MUGGED_3,
+ SFX_WMORI_MUGGED_4,
+ SFX_WMORI_RUN_1,
+ SFX_WMORI_RUN_2,
+ SFX_WMORI_RUN_3,
+ SFX_WMORI_RUN_4,
+ SFX_WMORI_RUN_5,
+ SFX_WMORI_RUN_6,
+ SFX_WMORI_RUN_7,
+ SFX_WMORI_RUN_8,
+ SFX_WMORI_RUN_9,
+ SFX_WMORI_RUN_10,
+ SFX_WMORI_RUN_11,
+ SFX_WMORI_RUN_12,
+ SFX_WMORI_SAVED_1,
+ SFX_WMORI_SAVED_2,
+ SFX_WMORI_SHOCKED_1,
+ SFX_WMORI_SHOCKED_2,
+ SFX_WMORI_SHOCKED_3,
+ SFX_WMORI_SHOCKED_4,
+ SFX_WMORI_TAXI_1,
+ SFX_WMORI_TAXI_2,
+
+ SFX_WMOBU_BLOCKED_1,
+ SFX_WMOBU_BLOCKED_2,
+ SFX_WMOBU_BLOCKED_3,
+ SFX_WMOBU_BLOCKED_4,
+ SFX_WMOBU_BLOCKED_5,
+ SFX_WMOBU_BLOCKED_6,
+ SFX_WMOBU_BLOCKED_7,
+ SFX_WMOBU_BUMP_1,
+ SFX_WMOBU_BUMP_2,
+ SFX_WMOBU_BUMP_3,
+ SFX_WMOBU_BUMP_4,
+ SFX_WMOBU_BUMP_5,
+ SFX_WMOBU_BUMP_6,
+ SFX_WMOBU_BUMP_7,
+ SFX_WMOBU_BUMP_8,
+ SFX_WMOBU_BUMP_9,
+ SFX_WMOBU_BUMP_10,
+ SFX_WMOBU_CAR_CRASH_1,
+ SFX_WMOBU_CAR_CRASH_2,
+ SFX_WMOBU_CAR_CRASH_3,
+ SFX_WMOBU_CAR_CRASH_4,
+ SFX_WMOBU_CAR_CRASH_5,
+ SFX_WMOBU_CAR_CRASH_6,
+ SFX_WMOBU_CAR_CRASH_7,
+ SFX_WMOBU_DODGE_1,
+ SFX_WMOBU_DODGE_2,
+ SFX_WMOBU_DODGE_3,
+ SFX_WMOBU_DODGE_4,
+ SFX_WMOBU_DODGE_5,
+ SFX_WMOBU_DODGE_6,
+ SFX_WMOBU_DODGE_7,
+ SFX_WMOBU_DODGE_8,
+ SFX_WMOBU_EYEING_1,
+ SFX_WMOBU_EYEING_2,
+ SFX_WMOBU_FIGHT_1,
+ SFX_WMOBU_FIGHT_2,
+ SFX_WMOBU_FIGHT_3,
+ SFX_WMOBU_GENERIC_CRASH_1,
+ SFX_WMOBU_GENERIC_CRASH_2,
+ SFX_WMOBU_GENERIC_CRASH_3,
+ SFX_WMOBU_GENERIC_CRASH_4,
+ SFX_WMOBU_GENERIC_CRASH_5,
+ SFX_WMOBU_GENERIC_CRASH_6,
+ SFX_WMOBU_GENERIC_CRASH_7,
+ SFX_WMOBU_GUN_PANIC_1,
+ SFX_WMOBU_GUN_PANIC_2,
+ SFX_WMOBU_GUN_PANIC_3,
+ SFX_WMOBU_GUN_PANIC_4,
+ SFX_WMOBU_GUN_PANIC_5,
+ SFX_WMOBU_GUN_PANIC_6,
+ SFX_WMOBU_JACKED_1,
+ SFX_WMOBU_JACKED_2,
+ SFX_WMOBU_JACKED_3,
+ SFX_WMOBU_JACKED_4,
+ SFX_WMOBU_JACKED_5,
+ SFX_WMOBU_JACKED_6,
+ SFX_WMOBU_JACKED_7,
+ SFX_WMOBU_LOST_1,
+ SFX_WMOBU_LOST_2,
+ SFX_WMOBU_LOST_3,
+ SFX_WMOBU_MUGGED_1,
+ SFX_WMOBU_MUGGED_2,
+ SFX_WMOBU_SAVED_1,
+ SFX_WMOBU_SAVED_2,
+ SFX_WMOBU_SAVED_3,
+ SFX_WMOBU_TAXI_1,
+ SFX_WMOBU_TAXI_2,
+
+ SFX_BMODK_BLOCKED_1,
+ SFX_BMODK_BLOCKED_2,
+ SFX_BMODK_BLOCKED_3,
+ SFX_BMODK_BLOCKED_4,
+ SFX_BMODK_BLOCKED_5,
+ SFX_BMODK_BLOCKED_6,
+ SFX_BMODK_BLOCKED_7,
+ SFX_BMODK_BLOCKED_8,
+ SFX_BMODK_BUMP_1,
+ SFX_BMODK_BUMP_2,
+ SFX_BMODK_BUMP_3,
+ SFX_BMODK_BUMP_4,
+ SFX_BMODK_BUMP_5,
+ SFX_BMODK_BUMP_6,
+ SFX_BMODK_BUMP_7,
+ SFX_BMODK_BUMP_8,
+ SFX_BMODK_BUMP_9,
+ SFX_BMODK_BUMP_10,
+ SFX_BMODK_CAR_CRASH_1,
+ SFX_BMODK_CAR_CRASH_2,
+ SFX_BMODK_CAR_CRASH_3,
+ SFX_BMODK_CAR_CRASH_4,
+ SFX_BMODK_CAR_CRASH_5,
+ SFX_BMODK_CAR_CRASH_6,
+ SFX_BMODK_CAR_CRASH_7,
+ SFX_BMODK_CAR_CRASH_8,
+ SFX_BMODK_CAR_CRASH_9,
+ SFX_BMODK_CAR_CRASH_10,
+ SFX_BMODK_UNK, // UNUSED
+ SFX_BMODK_UNK_147_1,
+ SFX_BMODK_UNK_147_2,
+ SFX_BMODK_UNK_147_3,
+ SFX_BMODK_UNK_147_4,
+ SFX_BMODK_UNK_147_5,
+ SFX_BMODK_UNK_147_6,
+ SFX_BMODK_UNK_147_7,
+ SFX_BMODK_UNK_147_8,
+ SFX_BMODK_UNK_147_9,
+ SFX_BMODK_UNK_147_10,
+ SFX_BMODK_UNK_147_11,
+ SFX_BMODK_UNK_147_12,
+ SFX_BMODK_DODGE_1,
+ SFX_BMODK_DODGE_2,
+ SFX_BMODK_DODGE_3,
+ SFX_BMODK_DODGE_4,
+ SFX_BMODK_DODGE_5,
+ SFX_BMODK_DODGE_6,
+ SFX_BMODK_DODGE_7,
+ SFX_BMODK_GENERIC_CRASH_1,
+ SFX_BMODK_GENERIC_CRASH_2,
+ SFX_BMODK_GENERIC_CRASH_3,
+ SFX_BMODK_GENERIC_CRASH_4,
+ SFX_BMODK_GENERIC_CRASH_5,
+ SFX_BMODK_GENERIC_CRASH_6,
+ SFX_BMODK_GENERIC_CRASH_7,
+ SFX_BMODK_GUN_PANIC_1,
+ SFX_BMODK_GUN_PANIC_2,
+ SFX_BMODK_GUN_PANIC_3,
+ SFX_BMODK_GUN_PANIC_4,
+ SFX_BMODK_INNOCENT_1,
+ SFX_BMODK_INNOCENT_2,
+ SFX_BMODK_INNOCENT_3,
+ SFX_BMODK_JACKED_1,
+ SFX_BMODK_JACKED_2,
+ SFX_BMODK_JACKED_3,
+ SFX_BMODK_JACKED_4,
+ SFX_BMODK_JACKED_5,
+ SFX_BMODK_JACKED_6,
+ SFX_BMODK_JACKED_7,
+ SFX_BMODK_JACKED_8,
+ SFX_BMODK_JACKED_9,
+ SFX_BMODK_MUGGED_1,
+ SFX_BMODK_MUGGED_2,
+ SFX_BMODK_RUN_1,
+ SFX_BMODK_RUN_2,
+ SFX_BMODK_RUN_3,
+ SFX_BMODK_RUN_4,
+ SFX_BMODK_TAXI_1,
+
+ SFX_HFYBE_BUMP_1,
+ SFX_HFYBE_BUMP_2,
+ SFX_HFYBE_BUMP_3,
+ SFX_HFYBE_BUMP_4,
+ SFX_HFYBE_BUMP_5,
+ SFX_HFYBE_BUMP_6,
+ SFX_HFYBE_BUMP_7,
+ SFX_HFYBE_BUMP_8,
+ SFX_HFYBE_CAR_CRASH_1,
+ SFX_HFYBE_CAR_CRASH_2,
+ SFX_HFYBE_CAR_CRASH_3,
+ SFX_HFYBE_CAR_CRASH_4,
+ SFX_HFYBE_CAR_CRASH_5,
+ SFX_HFYBE_CAR_CRASH_6,
+ SFX_HFYBE_CHAT_1,
+ SFX_HFYBE_CHAT_2,
+ SFX_HFYBE_CHAT_3,
+ SFX_HFYBE_CHAT_4,
+ SFX_HFYBE_CHAT_5,
+ SFX_HFYBE_CHAT_6,
+ SFX_HFYBE_CHAT_7,
+ SFX_HFYBE_CHAT_8,
+ SFX_HFYBE_CHAT_9,
+ SFX_HFYBE_CHAT_10,
+ SFX_HFYBE_DODGE_1,
+ SFX_HFYBE_DODGE_2,
+ SFX_HFYBE_DODGE_3,
+ SFX_HFYBE_DODGE_4,
+ SFX_HFYBE_DODGE_5,
+ SFX_HFYBE_DODGE_6,
+ SFX_HFYBE_DODGE_7,
+ SFX_HFYBE_DODGE_8,
+ SFX_HFYBE_DODGE_9,
+ SFX_HFYBE_DODGE_10,
+ SFX_HFYBE_DODGE_11,
+ SFX_HFYBE_GENERIC_CRASH_1,
+ SFX_HFYBE_GENERIC_CRASH_2,
+ SFX_HFYBE_GENERIC_CRASH_3,
+ SFX_HFYBE_GENERIC_CRASH_4,
+ SFX_HFYBE_GENERIC_CRASH_5,
+ SFX_HFYBE_GENERIC_CRASH_6,
+ SFX_HFYBE_GENERIC_CRASH_7,
+ SFX_HFYBE_GENERIC_CRASH_8,
+ SFX_HFYBE_GUN_PANIC_1,
+ SFX_HFYBE_GUN_PANIC_2,
+ SFX_HFYBE_GUN_PANIC_3,
+ SFX_HFYBE_GUN_PANIC_4,
+ SFX_HFYBE_GUN_PANIC_5,
+ SFX_HFYBE_GUN_PANIC_6,
+ SFX_HFYBE_GUN_PANIC_7,
+ SFX_HFYBE_JACKED_1,
+ SFX_HFYBE_JACKED_2,
+ SFX_HFYBE_JACKED_3,
+ SFX_HFYBE_JACKED_4,
+ SFX_HFYBE_JACKED_5,
+ SFX_HFYBE_JACKED_6,
+ SFX_HFYBE_JACKED_7,
+ SFX_HFYBE_LOST_1,
+ SFX_HFYBE_LOST_2,
+
+ // this is a guess, idk what she's saying
+ SFX_HFYBE_RUN_1,
+ SFX_HFYBE_RUN_2,
+ SFX_HFYBE_RUN_3,
+ SFX_HFYBE_RUN_4,
+ SFX_HFYBE_RUN_5,
+ SFX_HFYBE_RUN_6,
+ SFX_HFYBE_RUN_7,
+
+ SFX_HFYBE_SHOCKED_1,
+ SFX_HFYBE_SHOCKED_2,
+ SFX_HFYBE_TAXI_1,
+
+ SFX_HFYRI_BLOCKED_1,
+ SFX_HFYRI_BLOCKED_2,
+ SFX_HFYRI_BLOCKED_3,
+ SFX_HFYRI_BLOCKED_4,
+ SFX_HFYRI_BLOCKED_5,
+ SFX_HFYRI_BLOCKED_6,
+ SFX_HFYRI_BLOCKED_7,
+ SFX_HFYRI_BLOCKED_8,
+ SFX_HFYRI_BUMP_1,
+ SFX_HFYRI_BUMP_2,
+ SFX_HFYRI_BUMP_3,
+ SFX_HFYRI_BUMP_4,
+ SFX_HFYRI_BUMP_5,
+ SFX_HFYRI_BUMP_6,
+ SFX_HFYRI_BUMP_7,
+ SFX_HFYRI_BUMP_8,
+ SFX_HFYRI_BUMP_9,
+ SFX_HFYRI_CAR_CRASH_1,
+ SFX_HFYRI_CAR_CRASH_2,
+ SFX_HFYRI_CAR_CRASH_3,
+ SFX_HFYRI_CAR_CRASH_4,
+ SFX_HFYRI_CAR_CRASH_5,
+ SFX_HFYRI_CAR_CRASH_6,
+ SFX_HFYRI_CAR_CRASH_7,
+ SFX_HFYRI_CAR_CRASH_8,
+ SFX_HFYRI_DODGE_1,
+ SFX_HFYRI_DODGE_2,
+ SFX_HFYRI_DODGE_3,
+ SFX_HFYRI_DODGE_4,
+ SFX_HFYRI_DODGE_5,
+ SFX_HFYRI_DODGE_6,
+ SFX_HFYRI_DODGE_7,
+ SFX_HFYRI_DODGE_8,
+ SFX_HFYRI_DODGE_9,
+ SFX_HFYRI_DODGE_10,
+ SFX_HFYRI_GENERIC_CRASH_1,
+ SFX_HFYRI_GENERIC_CRASH_2,
+ SFX_HFYRI_GENERIC_CRASH_3,
+ SFX_HFYRI_GENERIC_CRASH_4,
+ SFX_HFYRI_GENERIC_CRASH_5,
+ SFX_HFYRI_GENERIC_CRASH_6,
+ SFX_HFYRI_GENERIC_CRASH_7,
+ SFX_HFYRI_GUN_PANIC_1,
+ SFX_HFYRI_GUN_PANIC_2,
+ SFX_HFYRI_GUN_PANIC_3,
+ SFX_HFYRI_GUN_PANIC_4,
+ SFX_HFYRI_GUN_PANIC_5,
+ SFX_HFYRI_JACKED_1,
+ SFX_HFYRI_JACKED_2,
+ SFX_HFYRI_JACKED_3,
+ SFX_HFYRI_JACKED_4,
+ SFX_HFYRI_JACKED_5,
+ SFX_HFYRI_JACKED_6,
+ SFX_HFYRI_LOST_1,
+ SFX_HFYRI_LOST_2,
+ SFX_HFYRI_MUGGED_1,
+ SFX_HFYRI_MUGGED_2,
+ SFX_HFYRI_MUGGED_3,
+ SFX_HFYRI_MUGGED_4,
+ SFX_HFYRI_RUN_1,
+ SFX_HFYRI_RUN_2,
+ SFX_HFYRI_RUN_3,
+ SFX_HFYRI_RUN_4,
+ SFX_HFYRI_SAVED_1,
+ SFX_HFYRI_SAVED_2,
+ SFX_HFYRI_SHOCKED_1,
+ SFX_HFYRI_SHOCKED_2,
+ SFX_HFYRI_SHOCKED_3,
+ SFX_HFYRI_TAXI_1,
+ SFX_BFOST_BLOCKED_1,
+ SFX_BFOST_BLOCKED_2,
+ SFX_BFOST_BLOCKED_3,
+ SFX_BFOST_BLOCKED_4,
+ SFX_BFOST_BLOCKED_5,
+ SFX_BFOST_BLOCKED_6,
+ SFX_BFOST_BLOCKED_7,
+ SFX_BFOST_BUMP_1,
+ SFX_BFOST_BUMP_2,
+ SFX_BFOST_BUMP_3,
+ SFX_BFOST_BUMP_4,
+ SFX_BFOST_BUMP_5,
+ SFX_BFOST_BUMP_6,
+ SFX_BFOST_BUMP_7,
+ SFX_BFOST_BUMP_8,
+ SFX_BFOST_BUMP_9,
+ SFX_BFOST_BUMP_10,
+ SFX_BFOST_CAR_CRASH_1,
+ SFX_BFOST_CAR_CRASH_2,
+ SFX_BFOST_CAR_CRASH_3,
+ SFX_BFOST_CAR_CRASH_4,
+ SFX_BFOST_CAR_CRASH_5,
+ SFX_BFOST_CAR_CRASH_6,
+ SFX_BFOST_CAR_CRASH_7,
+ SFX_BFOST_CAR_CRASH_8,
+ SFX_BFOST_CHAT_1,
+ SFX_BFOST_CHAT_2,
+ SFX_BFOST_CHAT_3,
+ SFX_BFOST_CHAT_4,
+ SFX_BFOST_CHAT_5,
+ SFX_BFOST_CHAT_6,
+ SFX_BFOST_CHAT_7,
+ SFX_BFOST_CHAT_8,
+ SFX_BFOST_CHAT_9,
+ SFX_BFOST_CHAT_10,
+ SFX_BFOST_DODGE_1,
+ SFX_BFOST_DODGE_2,
+ SFX_BFOST_DODGE_3,
+ SFX_BFOST_DODGE_4,
+ SFX_BFOST_DODGE_5,
+ SFX_BFOST_DODGE_6,
+ SFX_BFOST_DODGE_7,
+ SFX_BFOST_DODGE_8,
+ SFX_BFOST_DODGE_9,
+ SFX_BFOST_DODGE_10,
+ SFX_BFOST_DODGE_11,
+ SFX_BFOST_GENERIC_CRASH_1,
+ SFX_BFOST_GENERIC_CRASH_2,
+ SFX_BFOST_GENERIC_CRASH_3,
+ SFX_BFOST_GENERIC_CRASH_4,
+ SFX_BFOST_GENERIC_CRASH_5,
+ SFX_BFOST_GENERIC_CRASH_6,
+ SFX_BFOST_GENERIC_CRASH_7,
+ SFX_BFOST_GENERIC_CRASH_8,
+ SFX_BFOST_GUN_PANIC_1,
+ SFX_BFOST_GUN_PANIC_2,
+ SFX_BFOST_GUN_PANIC_3,
+ SFX_BFOST_GUN_PANIC_4,
+ SFX_BFOST_GUN_PANIC_5,
+ SFX_BFOST_JACKED_1,
+ SFX_BFOST_JACKED_2,
+ SFX_BFOST_JACKED_3,
+ SFX_BFOST_JACKED_4,
+ SFX_BFOST_JACKED_5,
+ SFX_BFOST_JACKED_6,
+ SFX_BFOST_JACKED_7,
+ SFX_BFOST_JACKED_8,
+ SFX_BFOST_LOST_1,
+ SFX_BFOST_LOST_2,
+ SFX_BFOST_MUGGED_1,
+ SFX_BFOST_MUGGED_2,
+ SFX_BFOST_RUN_1,
+ SFX_BFOST_RUN_2,
+ SFX_BFOST_RUN_3,
+ SFX_BFOST_RUN_4,
+ SFX_BFOST_SAVED_1,
+ SFX_BFOST_SAVED_2,
+ SFX_BFOST_TAXI_1,
+ SFX_BFORI_BLOCKED_1,
+ SFX_BFORI_BLOCKED_2,
+ SFX_BFORI_BLOCKED_3,
+ SFX_BFORI_BLOCKED_4,
+ SFX_BFORI_BLOCKED_5,
+ SFX_BFORI_BLOCKED_6,
+ SFX_BFORI_BLOCKED_7,
+ SFX_BFORI_BLOCKED_8,
+ SFX_BFORI_BUMP_1,
+ SFX_BFORI_BUMP_2,
+ SFX_BFORI_BUMP_3,
+ SFX_BFORI_BUMP_4,
+ SFX_BFORI_BUMP_5,
+ SFX_BFORI_BUMP_6,
+ SFX_BFORI_BUMP_7,
+ SFX_BFORI_BUMP_8,
+ SFX_BFORI_BUMP_9,
+ SFX_BFORI_CAR_CRASH_1,
+ SFX_BFORI_CAR_CRASH_2,
+ SFX_BFORI_CAR_CRASH_3,
+ SFX_BFORI_CAR_CRASH_4,
+ SFX_BFORI_CAR_CRASH_5,
+ SFX_BFORI_CAR_CRASH_6,
+ SFX_BFORI_CAR_CRASH_7,
+ SFX_BFORI_DODGE_1,
+ SFX_BFORI_DODGE_2,
+ SFX_BFORI_DODGE_3,
+ SFX_BFORI_DODGE_4,
+ SFX_BFORI_DODGE_5,
+ SFX_BFORI_DODGE_6,
+ SFX_BFORI_DODGE_7,
+ SFX_BFORI_DODGE_8,
+ SFX_BFORI_DODGE_9,
+ SFX_BFORI_GENERIC_CRASH_1,
+ SFX_BFORI_GENERIC_CRASH_2,
+ SFX_BFORI_GENERIC_CRASH_3,
+ SFX_BFORI_GENERIC_CRASH_4,
+ SFX_BFORI_GENERIC_CRASH_5,
+ SFX_BFORI_GENERIC_CRASH_6,
+ SFX_BFORI_GENERIC_CRASH_7,
+ SFX_BFORI_GUN_PANIC_1,
+ SFX_BFORI_GUN_PANIC_2,
+ SFX_BFORI_GUN_PANIC_3,
+ SFX_BFORI_GUN_PANIC_4,
+ SFX_BFORI_GUN_PANIC_5,
+ SFX_BFORI_JACKED_1,
+ SFX_BFORI_JACKED_2,
+ SFX_BFORI_JACKED_3,
+ SFX_BFORI_JACKED_4,
+ SFX_BFORI_LOST_1,
+ SFX_BFORI_LOST_2,
+ SFX_BFORI_MUGGED_1,
+ SFX_BFORI_MUGGED_2,
+ SFX_BFORI_RUN_1,
+ SFX_BFORI_RUN_2,
+ SFX_BFORI_RUN_3,
+ SFX_BFORI_RUN_4,
+ SFX_BFORI_SAVED_1,
+ SFX_BFORI_SHOCKED_1,
+ SFX_BFORI_SHOCKED_2,
+ SFX_BFORI_TAXI_1,
+ SFX_BFORI_TAXI_2,
+
+ SFX_BFYST_BLOCKED_1,
+ SFX_BFYST_BLOCKED_2,
+ SFX_BFYST_BLOCKED_3,
+ SFX_BFYST_BLOCKED_4,
+ SFX_BFYST_BLOCKED_5,
+ SFX_BFYST_BLOCKED_6,
+ SFX_BFYST_BLOCKED_7,
+ SFX_BFYST_BLOCKED_8,
+ SFX_BFYST_BUMP_1,
+ SFX_BFYST_BUMP_2,
+ SFX_BFYST_BUMP_3,
+ SFX_BFYST_BUMP_4,
+ SFX_BFYST_BUMP_5,
+ SFX_BFYST_BUMP_6,
+ SFX_BFYST_BUMP_7,
+ SFX_BFYST_BUMP_8,
+ SFX_BFYST_BUMP_9,
+ SFX_BFYST_CAR_CRASH_1,
+ SFX_BFYST_CAR_CRASH_2,
+ SFX_BFYST_CAR_CRASH_3,
+ SFX_BFYST_CAR_CRASH_4,
+ SFX_BFYST_CAR_CRASH_5,
+ SFX_BFYST_CAR_CRASH_6,
+ SFX_BFYST_CAR_CRASH_7,
+ SFX_BFYST_CAR_CRASH_8,
+ SFX_BFYST_CAR_CRASH_9,
+ SFX_BFYST_CHAT_1,
+ SFX_BFYST_CHAT_2,
+ SFX_BFYST_CHAT_3,
+ SFX_BFYST_CHAT_4,
+ SFX_BFYST_CHAT_5,
+ SFX_BFYST_CHAT_6,
+ SFX_BFYST_CHAT_7,
+ SFX_BFYST_CHAT_8,
+ SFX_BFYST_CHAT_9,
+ SFX_BFYST_DODGE_1,
+ SFX_BFYST_DODGE_2,
+ SFX_BFYST_DODGE_3,
+ SFX_BFYST_DODGE_4,
+ SFX_BFYST_DODGE_5,
+ SFX_BFYST_DODGE_6,
+ SFX_BFYST_DODGE_7,
+ SFX_BFYST_DODGE_8,
+ SFX_BFYST_DODGE_9,
+ SFX_BFYST_GENERIC_CRASH_1,
+ SFX_BFYST_GENERIC_CRASH_2,
+ SFX_BFYST_GENERIC_CRASH_3,
+ SFX_BFYST_GENERIC_CRASH_4,
+ SFX_BFYST_GENERIC_CRASH_5,
+ SFX_BFYST_GENERIC_CRASH_6,
+ SFX_BFYST_GENERIC_CRASH_7,
+ SFX_BFYST_GENERIC_CRASH_8,
+ SFX_BFYST_GUN_PANIC_1,
+ SFX_BFYST_GUN_PANIC_2,
+ SFX_BFYST_GUN_PANIC_3,
+ SFX_BFYST_GUN_PANIC_4,
+ SFX_BFYST_JACKED_1,
+ SFX_BFYST_JACKED_2,
+ SFX_BFYST_JACKED_3,
+ SFX_BFYST_JACKED_4,
+ SFX_BFYST_JACKED_5,
+ SFX_BFYST_LOST_1,
+ SFX_BFYST_LOST_2,
+ SFX_BFYST_MUGGED_1,
+ SFX_BFYST_MUGGED_2,
+ SFX_BFYST_RUN_1,
+ SFX_BFYST_RUN_2,
+ SFX_BFYST_RUN_3,
+ SFX_BFYST_RUN_4,
+ SFX_BFYST_RUN_5,
+ SFX_BFYST_RUN_6,
+ SFX_BFYST_SAVED_1,
+ SFX_BFYST_SAVED_2,
+ SFX_BFYST_TAXI_1,
+
+ SFX_HFORI_BLOCKED_1,
+ SFX_HFORI_BLOCKED_2,
+ SFX_HFORI_BLOCKED_3,
+ SFX_HFORI_BLOCKED_4,
+ SFX_HFORI_BLOCKED_5,
+ SFX_HFORI_BLOCKED_6,
+ SFX_HFORI_BUMP_1,
+ SFX_HFORI_BUMP_2,
+ SFX_HFORI_BUMP_3,
+ SFX_HFORI_BUMP_4,
+ SFX_HFORI_BUMP_5,
+ SFX_HFORI_BUMP_6,
+ SFX_HFORI_BUMP_7,
+ SFX_HFORI_BUMP_8,
+ SFX_HFORI_BUMP_9,
+ SFX_HFORI_BUMP_10,
+ SFX_HFORI_CAR_CRASH_1,
+ SFX_HFORI_CAR_CRASH_2,
+ SFX_HFORI_CAR_CRASH_3,
+ SFX_HFORI_CAR_CRASH_4,
+ SFX_HFORI_CAR_CRASH_5,
+ SFX_HFORI_CAR_CRASH_6,
+ SFX_HFORI_CAR_CRASH_7,
+ SFX_HFORI_DODGE_1,
+ SFX_HFORI_DODGE_2,
+ SFX_HFORI_DODGE_3,
+ SFX_HFORI_DODGE_4,
+ SFX_HFORI_DODGE_5,
+ SFX_HFORI_DODGE_6,
+ SFX_HFORI_EYEING_1,
+ SFX_HFORI_EYEING_2,
+ SFX_HFORI_GENERIC_CRASH_1,
+ SFX_HFORI_GENERIC_CRASH_2,
+ SFX_HFORI_GENERIC_CRASH_3,
+ SFX_HFORI_GENERIC_CRASH_4,
+ SFX_HFORI_GENERIC_CRASH_5,
+ SFX_HFORI_GENERIC_CRASH_6,
+ SFX_HFORI_GENERIC_CRASH_7,
+ SFX_HFORI_GUN_PANIC_1,
+ SFX_HFORI_GUN_PANIC_2,
+ SFX_HFORI_GUN_PANIC_3,
+ SFX_HFORI_GUN_PANIC_4,
+ SFX_HFORI_GUN_PANIC_5,
+ SFX_HFORI_GUN_PANIC_6,
+ SFX_HFORI_JACKED_1,
+ SFX_HFORI_JACKED_2,
+ SFX_HFORI_JACKED_3,
+ SFX_HFORI_JACKED_4,
+ SFX_HFORI_JACKED_5,
+ SFX_HFORI_JACKED_6,
+ SFX_HFORI_JACKED_7,
+ SFX_HFORI_JACKED_8,
+ SFX_HFORI_JACKED_9,
+ SFX_HFORI_LOST_1,
+ SFX_HFORI_LOST_2,
+ SFX_HFORI_MUGGED_1,
+ SFX_HFORI_MUGGED_2,
+ SFX_HFORI_RUN_1,
+ SFX_HFORI_RUN_2,
+ SFX_HFORI_RUN_3,
+ SFX_HFORI_RUN_4,
+ SFX_HFORI_SAVED_1,
+ SFX_HFORI_SHOCKED_1,
+ SFX_HFORI_SHOCKED_2,
+ SFX_HFORI_TAXI_1,
+
+ SFX_WFYBU_BUMP_1,
+ SFX_WFYBU_BUMP_2,
+ SFX_WFYBU_BUMP_3,
+ SFX_WFYBU_BUMP_4,
+ SFX_WFYBU_BUMP_5,
+ SFX_WFYBU_BUMP_6,
+ SFX_WFYBU_BUMP_7,
+ SFX_WFYBU_BUMP_8,
+ SFX_WFYBU_BUMP_9,
+ SFX_WFYBU_BUMP_10,
+ SFX_WFYBU_BUMP_11,
+ SFX_WFYBU_BUMP_12,
+ SFX_WFYBU_BUMP_13,
+ SFX_WFYBU_BUMP_14,
+ SFX_WFYBU_BUMP_15,
+ SFX_WFYBU_BUMP_16,
+ SFX_WFYBU_BUMP_17,
+ SFX_WFYBU_BUMP_18,
+ SFX_WFYBU_BUMP_19,
+ SFX_WFYBU_BUMP_20,
+ SFX_WFYBU_BUMP_21,
+ SFX_WFYBU_CAR_CRASH_1,
+ SFX_WFYBU_CAR_CRASH_2,
+ SFX_WFYBU_CAR_CRASH_3,
+ SFX_WFYBU_CAR_CRASH_4,
+ SFX_WFYBU_CAR_CRASH_5,
+ SFX_WFYBU_CAR_CRASH_6,
+ SFX_WFYBU_CAR_CRASH_7,
+ SFX_WFYBU_CAR_CRASH_8,
+ SFX_WFYBU_CAR_CRASH_9,
+ SFX_WFYBU_GENERIC_CRASH_1,
+ SFX_WFYBU_GENERIC_CRASH_2,
+ SFX_WFYBU_GENERIC_CRASH_3,
+ SFX_WFYBU_GENERIC_CRASH_4,
+ SFX_WFYBU_GENERIC_CRASH_5,
+ SFX_WFYBU_GENERIC_CRASH_6,
+ SFX_WFYBU_GENERIC_CRASH_7,
+ SFX_WFYBU_GENERIC_CRASH_8,
+ SFX_WFYBU_GUN_PANIC_1,
+ SFX_WFYBU_GUN_PANIC_2,
+ SFX_WFYBU_GUN_PANIC_3,
+ SFX_WFYBU_GUN_PANIC_4,
+ SFX_WFYBU_GUN_PANIC_5,
+ SFX_WFYBU_GUN_PANIC_6,
+ SFX_WFYBU_GUN_PANIC_7,
+ SFX_WFYBU_GUN_PANIC_8,
+ SFX_WFYBU_JACKED_1,
+ SFX_WFYBU_JACKED_2,
+ SFX_WFYBU_JACKED_3,
+ SFX_WFYBU_JACKED_4,
+ SFX_WFYBU_JACKED_5,
+ SFX_WFYBU_JACKED_6,
+ SFX_WFYBU_JACKED_7,
+ SFX_WFYBU_JACKED_8,
+ SFX_WFYBU_MUGGED_1,
+ SFX_WFYBU_MUGGED_2,
+ SFX_WFYBU_MUGGED_3,
+ SFX_WFYBU_MUGGED_4,
+ SFX_WFYBU_RUN_1,
+ SFX_WFYBU_RUN_2,
+ SFX_WFYBU_RUN_3,
+ SFX_WFYBU_RUN_4,
+ SFX_WFYBU_RUN_5,
+ SFX_WFYBU_RUN_6,
+ SFX_WFYBU_RUN_7,
+ SFX_WFYBU_RUN_8,
+ SFX_WFYBU_SHOCKED_1,
+ SFX_WFYBU_SHOCKED_2,
+ SFX_WFYBU_SHOCKED_3,
+ SFX_WFYBU_TAXI_1,
+ SFX_WFYBU_TAXI_2,
+
+ SFX_WFOTR_BUMP_1,
+ SFX_WFOTR_BUMP_2,
+ SFX_WFOTR_BUMP_3,
+ SFX_WFOTR_BUMP_4,
+ SFX_WFOTR_BUMP_5,
+ SFX_WFOTR_BUMP_6,
+ SFX_WFOTR_BUMP_7,
+ SFX_WFOTR_BUMP_8,
+ SFX_WFOTR_BUMP_9,
+ SFX_WFOTR_BUMP_10,
+ SFX_WFOTR_BUMP_11,
+ SFX_WFOTR_CHAT_1,
+ SFX_WFOTR_CHAT_2,
+ SFX_WFOTR_CHAT_3,
+ SFX_WFOTR_CHAT_4,
+ SFX_WFOTR_CHAT_5,
+ SFX_WFOTR_CHAT_6,
+ SFX_WFOTR_CHAT_7,
+ SFX_WFOTR_CHAT_8,
+ SFX_WFOTR_CHAT_9,
+ SFX_WFOTR_DODGE_1,
+ SFX_WFOTR_DODGE_2,
+ SFX_WFOTR_DODGE_3,
+ SFX_WFOTR_DODGE_4,
+ SFX_WFOTR_DODGE_5,
+ SFX_WFOTR_DODGE_6,
+ SFX_WFOTR_DODGE_7,
+ SFX_WFOTR_DODGE_8,
+ SFX_WFOTR_DODGE_9,
+ SFX_WFOTR_GUN_COOL_1,
+ SFX_WFOTR_GUN_COOL_2,
+ SFX_WFOTR_GUN_COOL_3,
+ SFX_WFOTR_GUN_COOL_4,
+ SFX_WFOTR_GUN_COOL_5,
+ SFX_WFOTR_GUN_COOL_6,
+ SFX_WFOTR_RUN_1,
+ SFX_WFOTR_RUN_2,
+ SFX_WFOTR_RUN_3,
+ SFX_WFOTR_RUN_4,
+ SFX_WFOTR_RUN_5,
+ SFX_WFOTR_RUN_6,
+ SFX_WFOTR_SAVED_1,
+ SFX_WFOTR_SOLICIT_1,
+ SFX_WFOTR_SOLICIT_2,
+ SFX_WFOTR_SOLICIT_3,
+ SFX_WFOTR_SOLICIT_4,
+ SFX_WFOTR_SOLICIT_5,
+ SFX_WFOTR_SOLICIT_6,
+ SFX_WFOTR_SOLICIT_7,
+ SFX_WFOTR_SOLICIT_8,
+ SFX_WFOTR_SOLICIT_9,
+ SFX_WFOTR_TAXI_1,
+
+ SFX_WFYJG_BUMP_1,
+ SFX_WFYJG_BUMP_2,
+ SFX_WFYJG_BUMP_3,
+ SFX_WFYJG_BUMP_4,
+ SFX_WFYJG_BUMP_5,
+ SFX_WFYJG_BUMP_6,
+ SFX_WFYJG_BUMP_7,
+ SFX_WFYJG_BUMP_8,
+ SFX_WFYJG_BUMP_9,
+ SFX_WFYJG_BUMP_10,
+ SFX_WFYJG_BUMP_11,
+ SFX_WFYJG_BUMP_12,
+ SFX_WFYJG_DODGE_1,
+ SFX_WFYJG_DODGE_2,
+ SFX_WFYJG_DODGE_3,
+ SFX_WFYJG_DODGE_4,
+ SFX_WFYJG_DODGE_5,
+ SFX_WFYJG_DODGE_6,
+ SFX_WFYJG_DODGE_7,
+ SFX_WFYJG_DODGE_8,
+ SFX_WFYJG_GUN_PANIC_1,
+ SFX_WFYJG_GUN_PANIC_2,
+ SFX_WFYJG_GUN_PANIC_3,
+ SFX_WFYJG_GUN_PANIC_4,
+ SFX_WFYJG_RUN_1,
+ SFX_WFYJG_RUN_2,
+ SFX_WFYJG_RUN_3,
+ SFX_WFYJG_RUN_4,
+ SFX_WFYJG_RUN_5,
+ SFX_WFYJG_RUN_6,
+ SFX_WFYJG_SAVED_1,
+ SFX_WFYJG_TAXI_1,
+
+ SFX_WFYSH_BUMP_1,
+ SFX_WFYSH_BUMP_2,
+ SFX_WFYSH_BUMP_3,
+ SFX_WFYSH_BUMP_4,
+ SFX_WFYSH_BUMP_5,
+ SFX_WFYSH_BUMP_6,
+ SFX_WFYSH_BUMP_7,
+ SFX_WFYSH_BUMP_8,
+ SFX_WFYSH_BUMP_9,
+ SFX_WFYSH_BUMP_10,
+ SFX_WFYSH_BUMP_11,
+ SFX_WFYSH_BUMP_12,
+ SFX_WFYSH_CHAT_1,
+ SFX_WFYSH_CHAT_2,
+ SFX_WFYSH_CHAT_3,
+ SFX_WFYSH_CHAT_4,
+ SFX_WFYSH_CHAT_5,
+ SFX_WFYSH_CHAT_6,
+ SFX_WFYSH_CHAT_7,
+ SFX_WFYSH_CHAT_8,
+ SFX_WFYSH_CHAT_9,
+ SFX_WFYSH_CHAT_10,
+ SFX_WFYSH_DODGE_1,
+ SFX_WFYSH_DODGE_2,
+ SFX_WFYSH_DODGE_3,
+ SFX_WFYSH_DODGE_4,
+ SFX_WFYSH_DODGE_5,
+ SFX_WFYSH_DODGE_6,
+ SFX_WFYSH_DODGE_7,
+ SFX_WFYSH_DODGE_8,
+ SFX_WFYSH_DODGE_9,
+ SFX_WFYSH_DODGE_10,
+ SFX_WFYSH_DODGE_11,
+ SFX_WFYSH_GUN_COOL_1,
+ SFX_WFYSH_GUN_COOL_2,
+ SFX_WFYSH_GUN_COOL_3,
+ SFX_WFYSH_GUN_COOL_4,
+ SFX_WFYSH_GUN_COOL_5,
+ SFX_WFYSH_GUN_COOL_6,
+ SFX_WFYSH_GUN_COOL_7,
+ SFX_WFYSH_GUN_COOL_8,
+ SFX_WFYSH_GUN_COOL_9,
+ SFX_WFYSH_LOST_1,
+ SFX_WFYSH_LOST_2,
+ SFX_WFYSH_MUGGED_1,
+ SFX_WFYSH_MUGGED_2,
+ SFX_WFYSH_RUN_1,
+ SFX_WFYSH_RUN_2,
+ SFX_WFYSH_RUN_3,
+ SFX_WFYSH_RUN_4,
+ SFX_WFYSH_RUN_5,
+ SFX_WFYSH_RUN_6,
+ SFX_WFYSH_RUN_7,
+ SFX_WFYSH_RUN_8,
+ SFX_WFYSH_RUN_9,
+ SFX_WFYSH_RUN_10,
+ SFX_WFYSH_RUN_11,
+ SFX_WFYSH_SAVED_1,
+ SFX_WFYSH_SAVED_2,
+ SFX_WFYSH_SAVED_3,
+ SFX_WFYSH_SAVED_4,
+ SFX_WFYSH_SHOCKED_1,
+ SFX_WFYSH_SHOCKED_2,
+ SFX_WFYSH_SHOCKED_3,
+ SFX_WFYSH_SHOCKED_4,
+ SFX_WFYSH_SHOCKED_5,
+ SFX_WFYSH_TAXI_1,
+ SFX_WFYSH_TAXI_2,
+
+ SFX_WMOTR_BUMP_1,
+ SFX_WMOTR_BUMP_2,
+ SFX_WMOTR_BUMP_3,
+ SFX_WMOTR_BUMP_4,
+ SFX_WMOTR_BUMP_5,
+ SFX_WMOTR_BUMP_6,
+ SFX_WMOTR_BUMP_7,
+ SFX_WMOTR_BUMP_8,
+ SFX_WMOTR_BUMP_9,
+ SFX_WMOTR_BUMP_10,
+ SFX_WMOTR_CHAT_1,
+ SFX_WMOTR_CHAT_2,
+ SFX_WMOTR_CHAT_3,
+ SFX_WMOTR_CHAT_4,
+ SFX_WMOTR_CHAT_5,
+ SFX_WMOTR_CHAT_6,
+ SFX_WMOTR_CHAT_7,
+ SFX_WMOTR_CHAT_8,
+ SFX_WMOTR_CHAT_9,
+ SFX_WMOTR_CHAT_10,
+ SFX_WMOTR_CHAT_11,
+ SFX_WMOTR_CHAT_12,
+ SFX_WMOTR_CHAT_13,
+ SFX_WMOTR_DODGE_1,
+ SFX_WMOTR_DODGE_2,
+ SFX_WMOTR_DODGE_3,
+ SFX_WMOTR_DODGE_4,
+ SFX_WMOTR_DODGE_5,
+ SFX_WMOTR_DODGE_6,
+ SFX_WMOTR_DODGE_7,
+ SFX_WMOTR_DODGE_8,
+ SFX_WMOTR_DODGE_9,
+ SFX_WMOTR_DODGE_10,
+ SFX_WMOTR_DODGE_11,
+ SFX_WMOTR_DODGE_12,
+ SFX_WMOTR_DODGE_13,
+ SFX_WMOTR_DODGE_14,
+ SFX_WMOTR_DODGE_15,
+ SFX_WMOTR_DODGE_16,
+ SFX_WMOTR_DODGE_17,
+ SFX_WMOTR_EYEING_1,
+ SFX_WMOTR_EYEING_2,
+ SFX_WMOTR_FIGHT_1,
+ SFX_WMOTR_FIGHT_2,
+ SFX_WMOTR_FIGHT_3,
+ SFX_WMOTR_FIGHT_4,
+ SFX_WMOTR_FIGHT_5,
+ SFX_WMOTR_FIGHT_6,
+ SFX_WMOTR_GUN_COOL_1,
+ SFX_WMOTR_GUN_COOL_2,
+ SFX_WMOTR_GUN_COOL_3,
+ SFX_WMOTR_GUN_COOL_4,
+ SFX_WMOTR_GUN_COOL_5,
+ SFX_WMOTR_SAVED_1,
+ SFX_WMOTR_SHOCKED_1,
+ SFX_WMOTR_SHOCKED_2,
+ SFX_WMOTR_SHOCKED_3,
+ SFX_WMOTR_SOLICIT_1,
+ SFX_WMOTR_SOLICIT_2,
+ SFX_WMOTR_SOLICIT_3,
+ SFX_WMOTR_SOLICIT_4,
+ SFX_WMOTR_SOLICIT_5,
+ SFX_WMOTR_SOLICIT_6,
+ SFX_WMOTR_SOLICIT_7,
+ SFX_WMOTR_TAXI_1,
+
+ SFX_BMOBE_BUMP_1,
+ SFX_BMOBE_BUMP_2,
+ SFX_BMOBE_BUMP_3,
+ SFX_BMOBE_BUMP_4,
+ SFX_BMOBE_BUMP_5,
+ SFX_BMOBE_CAR_CRASH_1,
+ SFX_BMOBE_CAR_CRASH_2,
+ SFX_BMOBE_CAR_CRASH_3,
+ SFX_BMOBE_CAR_CRASH_4,
+ SFX_BMOBE_CAR_CRASH_5,
+ SFX_BMOBE_CAR_CRASH_6,
+ SFX_BMOBE_CAR_CRASH_7,
+ SFX_BMOBE_CAR_CRASH_8,
+ SFX_BMOBE_CAR_CRASH_9,
+ SFX_BMOBE_CHAT_1,
+ SFX_BMOBE_CHAT_2,
+ SFX_BMOBE_CHAT_3,
+ SFX_BMOBE_CHAT_4,
+ SFX_BMOBE_CHAT_5,
+ SFX_BMOBE_CHAT_6,
+ SFX_BMOBE_CHAT_7,
+ SFX_BMOBE_CHAT_8,
+ SFX_BMOBE_CHAT_9,
+ SFX_BMOBE_CHAT_10,
+ SFX_BMOBE_DODGE_1,
+ SFX_BMOBE_DODGE_2,
+ SFX_BMOBE_DODGE_3,
+ SFX_BMOBE_DODGE_4,
+ SFX_BMOBE_DODGE_5,
+ SFX_BMOBE_DODGE_6,
+ SFX_BMOBE_DODGE_7,
+ SFX_BMOBE_DODGE_8,
+ SFX_BMOBE_DODGE_9,
+ SFX_BMOBE_DODGE_10,
+ SFX_BMOBE_DODGE_11,
+ SFX_BMOBE_FIGHT_1,
+ SFX_BMOBE_FIGHT_2,
+ SFX_BMOBE_FIGHT_3,
+ SFX_BMOBE_FIGHT_4,
+ SFX_BMOBE_FIGHT_5,
+ SFX_BMOBE_FIGHT_6,
+ SFX_BMOBE_FIGHT_7,
+ SFX_BMOBE_FIGHT_8,
+ SFX_BMOBE_FIGHT_9,
+ SFX_BMOBE_FIGHT_10,
+ SFX_BMOBE_GENERIC_CRASH_1,
+ SFX_BMOBE_GENERIC_CRASH_2,
+ SFX_BMOBE_GENERIC_CRASH_3,
+ SFX_BMOBE_GENERIC_CRASH_4,
+ SFX_BMOBE_GENERIC_CRASH_5,
+ SFX_BMOBE_GENERIC_CRASH_6,
+ SFX_BMOBE_GENERIC_CRASH_7,
+ SFX_BMOBE_GUN_PANIC_1,
+ SFX_BMOBE_GUN_PANIC_2,
+ SFX_BMOBE_GUN_PANIC_3,
+ SFX_BMOBE_GUN_PANIC_4,
+ SFX_BMOBE_GUN_PANIC_5,
+ SFX_BMOBE_JACKED_1,
+ SFX_BMOBE_JACKED_2,
+ SFX_BMOBE_JACKED_3,
+ SFX_BMOBE_JACKED_4,
+ SFX_BMOBE_JACKED_5,
+ SFX_BMOBE_JACKED_6,
+ SFX_BMOBE_MUGGED_1,
+ SFX_BMOBE_MUGGED_2,
+ SFX_BMOBE_MUGGED_3,
+ SFX_BMOBE_MUGGED_4,
+ SFX_BMOBE_SAVED_1,
+ SFX_BMOBE_SAVED_2,
+ SFX_BMOBE_SAVED_3,
+ SFX_BMOBE_SHOCKED_1,
+ SFX_BMOBE_SHOCKED_2,
+ SFX_BMOBE_SHOCKED_3,
+ SFX_BMOBE_TAXI_1,
+
+ SFX_WMYGO_BUMP_1,
+ SFX_WMYGO_BUMP_2,
+ SFX_WMYGO_BUMP_3,
+ SFX_WMYGO_BUMP_4,
+ SFX_WMYGO_BUMP_5,
+ SFX_WMYGO_BUMP_6,
+ SFX_WMYGO_BUMP_7,
+ SFX_WMYGO_BUMP_8,
+ SFX_WMYGO_BUMP_9,
+ SFX_WMYGO_CAR_CRASH_1,
+ SFX_WMYGO_CAR_CRASH_2,
+ SFX_WMYGO_CAR_CRASH_3,
+ SFX_WMYGO_CAR_CRASH_4,
+ SFX_WMYGO_CAR_CRASH_5,
+ SFX_WMYGO_CAR_CRASH_6,
+ SFX_WMYGO_CAR_CRASH_7,
+ SFX_WMYGO_CHAT_1,
+ SFX_WMYGO_CHAT_2,
+ SFX_WMYGO_CHAT_3,
+ SFX_WMYGO_CHAT_4,
+ SFX_WMYGO_CHAT_5,
+ SFX_WMYGO_CHAT_6,
+ SFX_WMYGO_CHAT_7,
+ SFX_WMYGO_CHAT_8,
+ SFX_WMYGO_CHAT_9,
+ SFX_WMYGO_CHAT_10,
+ SFX_WMYGO_DODGE_1,
+ SFX_WMYGO_DODGE_2,
+ SFX_WMYGO_DODGE_3,
+ SFX_WMYGO_DODGE_4,
+ SFX_WMYGO_DODGE_5,
+ SFX_WMYGO_DODGE_6,
+ SFX_WMYGO_DODGE_7,
+ SFX_WMYGO_DODGE_8,
+ SFX_WMYGO_DODGE_9,
+ SFX_WMYGO_DODGE_10,
+ SFX_WMYGO_DODGE_11,
+ SFX_WMYGO_EYEING_1,
+ SFX_WMYGO_EYEING_2,
+ SFX_WMYGO_GENERIC_CRASH_1,
+ SFX_WMYGO_GENERIC_CRASH_2,
+ SFX_WMYGO_GENERIC_CRASH_3,
+ SFX_WMYGO_GENERIC_CRASH_4,
+ SFX_WMYGO_GENERIC_CRASH_5,
+ SFX_WMYGO_GENERIC_CRASH_6,
+ SFX_WMYGO_GENERIC_CRASH_7,
+ SFX_WMYGO_GUN_PANIC_1,
+ SFX_WMYGO_GUN_PANIC_2,
+ SFX_WMYGO_GUN_PANIC_3,
+ SFX_WMYGO_GUN_PANIC_4,
+ SFX_WMYGO_GUN_PANIC_5,
+ SFX_WMYGO_JACKED_1,
+ SFX_WMYGO_JACKED_2,
+ SFX_WMYGO_JACKED_3,
+ SFX_WMYGO_JACKED_4,
+ SFX_WMYGO_JACKED_5,
+ SFX_WMYGO_JACKED_6,
+ SFX_WMYGO_MUGGED_1,
+ SFX_WMYGO_MUGGED_2,
+ SFX_WMYGO_RUN_1,
+ SFX_WMYGO_RUN_2,
+ SFX_WMYGO_RUN_3,
+ SFX_WMYGO_RUN_4,
+ SFX_WMYGO_RUN_5,
+ SFX_WMYGO_RUN_6,
+ SFX_WMYGO_SAVED_1,
+ SFX_WMYGO_SHOCKED_1,
+ SFX_WMYGO_SHOCKED_2,
+ SFX_WMYGO_TAXI_1,
+ SFX_WMYGO_TAXI_2,
+ SFX_WMYGO_TAXI_3,
+
+ SFX_WFYBE_BLOCKED_1,
+ SFX_WFYBE_BLOCKED_2,
+ SFX_WFYBE_BLOCKED_3,
+ SFX_WFYBE_BLOCKED_4,
+ SFX_WFYBE_BLOCKED_5,
+ SFX_WFYBE_BLOCKED_6,
+ SFX_WFYBE_BLOCKED_7,
+ SFX_WFYBE_BUMP_1,
+ SFX_WFYBE_BUMP_2,
+ SFX_WFYBE_BUMP_3,
+ SFX_WFYBE_BUMP_4,
+ SFX_WFYBE_BUMP_5,
+ SFX_WFYBE_BUMP_6,
+ SFX_WFYBE_BUMP_7,
+ SFX_WFYBE_BUMP_8,
+ SFX_WFYBE_BUMP_9,
+ SFX_WFYBE_BUMP_10,
+ SFX_WFYBE_BUMP_11,
+ SFX_WFYBE_CAR_CRASH_1,
+ SFX_WFYBE_CAR_CRASH_2,
+ SFX_WFYBE_CAR_CRASH_3,
+ SFX_WFYBE_CAR_CRASH_4,
+ SFX_WFYBE_CAR_CRASH_5,
+ SFX_WFYBE_CAR_CRASH_6,
+ SFX_WFYBE_CHAT_1,
+ SFX_WFYBE_CHAT_2,
+ SFX_WFYBE_CHAT_3,
+ SFX_WFYBE_CHAT_4,
+ SFX_WFYBE_CHAT_5,
+ SFX_WFYBE_CHAT_6,
+ SFX_WFYBE_CHAT_7,
+ SFX_WFYBE_CHAT_8,
+ SFX_WFYBE_CHAT_9,
+ SFX_WFYBE_CHAT_10,
+ SFX_WFYBE_DODGE_1,
+ SFX_WFYBE_DODGE_2,
+ SFX_WFYBE_DODGE_3,
+ SFX_WFYBE_DODGE_4,
+ SFX_WFYBE_DODGE_5,
+ SFX_WFYBE_DODGE_6,
+ SFX_WFYBE_DODGE_7,
+ SFX_WFYBE_DODGE_8,
+ SFX_WFYBE_GENERIC_CRASH_1,
+ SFX_WFYBE_GENERIC_CRASH_2,
+ SFX_WFYBE_GENERIC_CRASH_3,
+ SFX_WFYBE_GENERIC_CRASH_4,
+ SFX_WFYBE_GENERIC_CRASH_5,
+ SFX_WFYBE_GENERIC_CRASH_6,
+ SFX_WFYBE_GUN_PANIC_1,
+ SFX_WFYBE_GUN_PANIC_2,
+ SFX_WFYBE_GUN_PANIC_3,
+ SFX_WFYBE_GUN_PANIC_4,
+ SFX_WFYBE_GUN_PANIC_5,
+ SFX_WFYBE_JACKED_1,
+ SFX_WFYBE_JACKED_2,
+ SFX_WFYBE_JACKED_3,
+ SFX_WFYBE_JACKED_4,
+ SFX_WFYBE_RUN_1,
+ SFX_WFYBE_RUN_2,
+ SFX_WFYBE_RUN_3,
+ SFX_WFYBE_RUN_4,
+ SFX_WFYBE_RUN_5,
+ SFX_WFYBE_SAVED_1,
+ SFX_WFYBE_SHOCKED_1,
+ SFX_WFYBE_SHOCKED_2,
+ SFX_WFYBE_SHOCKED_3,
+ SFX_WFYBE_TAXI_1,
+
+ SFX_WFORI_BLOCKED_1,
+ SFX_WFORI_BLOCKED_2,
+ SFX_WFORI_BLOCKED_3,
+ SFX_WFORI_BLOCKED_4,
+ SFX_WFORI_BLOCKED_5,
+ SFX_WFORI_BLOCKED_6,
+ SFX_WFORI_BLOCKED_7,
+ SFX_WFORI_BUMP_1,
+ SFX_WFORI_BUMP_2,
+ SFX_WFORI_BUMP_3,
+ SFX_WFORI_BUMP_4,
+ SFX_WFORI_BUMP_5,
+ SFX_WFORI_BUMP_6,
+ SFX_WFORI_BUMP_7,
+ SFX_WFORI_BUMP_8,
+ SFX_WFORI_BUMP_9,
+ SFX_WFORI_BUMP_10,
+ SFX_WFORI_BUMP_11,
+ SFX_WFORI_CAR_CRASH_1,
+ SFX_WFORI_CAR_CRASH_2,
+ SFX_WFORI_CAR_CRASH_3,
+ SFX_WFORI_CAR_CRASH_4,
+ SFX_WFORI_CAR_CRASH_5,
+ SFX_WFORI_CAR_CRASH_6,
+ SFX_WFORI_CAR_CRASH_7,
+ SFX_WFORI_CAR_CRASH_8,
+ SFX_WFORI_CAR_CRASH_9,
+ SFX_WFORI_CAR_CRASH_10,
+ SFX_WFORI_DODGE_1,
+ SFX_WFORI_DODGE_2,
+ SFX_WFORI_DODGE_3,
+ SFX_WFORI_DODGE_4,
+ SFX_WFORI_DODGE_5,
+ SFX_WFORI_DODGE_6,
+ SFX_WFORI_DODGE_7,
+ SFX_WFORI_DODGE_8,
+ SFX_WFORI_DODGE_9,
+ SFX_WFORI_DODGE_10,
+ SFX_WFORI_DODGE_11,
+ SFX_WFORI_FIGHT_1,
+ SFX_WFORI_FIGHT_2,
+ SFX_WFORI_FIGHT_3,
+ SFX_WFORI_FIGHT_4,
+ SFX_WFORI_FIGHT_5,
+ SFX_WFORI_FIGHT_6,
+ SFX_WFORI_FIGHT_7,
+ SFX_WFORI_GENERIC_CRASH_1,
+ SFX_WFORI_GENERIC_CRASH_2,
+ SFX_WFORI_GENERIC_CRASH_3,
+ SFX_WFORI_GENERIC_CRASH_4,
+ SFX_WFORI_GENERIC_CRASH_5,
+ SFX_WFORI_GENERIC_CRASH_6,
+ SFX_WFORI_GENERIC_CRASH_7,
+ SFX_WFORI_GENERIC_CRASH_8,
+ SFX_WFORI_GUN_PANIC_1,
+ SFX_WFORI_GUN_PANIC_2,
+ SFX_WFORI_GUN_PANIC_3,
+ SFX_WFORI_GUN_PANIC_4,
+ SFX_WFORI_GUN_PANIC_5,
+ SFX_WFORI_GUN_PANIC_6,
+ SFX_WFORI_JACKED_1,
+ SFX_WFORI_JACKED_2,
+ SFX_WFORI_JACKED_3,
+ SFX_WFORI_JACKED_4,
+ SFX_WFORI_JACKED_5,
+ SFX_WFORI_JACKED_6,
+ SFX_WFORI_LOST_1,
+ SFX_WFORI_LOST_2,
+ SFX_WFORI_MUGGED_1,
+ SFX_WFORI_MUGGED_2,
+ SFX_WFORI_MUGGED_3,
+ SFX_WFORI_SAVED_1,
+ SFX_WFORI_SHOCKED_1,
+ SFX_WFORI_SHOCKED_2,
+ SFX_WFORI_SHOCKED_3,
+ SFX_WFORI_TAXI_1,
+
+ SFX_WFOGO_BUMP_1,
+ SFX_WFOGO_BUMP_2,
+ SFX_WFOGO_BUMP_3,
+ SFX_WFOGO_BUMP_4,
+ SFX_WFOGO_BUMP_5,
+ SFX_WFOGO_BUMP_6,
+ SFX_WFOGO_BUMP_7,
+ SFX_WFOGO_BUMP_8,
+ SFX_WFOGO_CAR_CRASH_1,
+ SFX_WFOGO_CAR_CRASH_2,
+ SFX_WFOGO_CAR_CRASH_3,
+ SFX_WFOGO_CAR_CRASH_4,
+ SFX_WFOGO_CAR_CRASH_5,
+ SFX_WFOGO_CAR_CRASH_6,
+ SFX_WFOGO_CAR_CRASH_7,
+ SFX_WFOGO_CAR_CRASH_8,
+ SFX_WFOGO_CHAT_1,
+ SFX_WFOGO_CHAT_2,
+ SFX_WFOGO_CHAT_3,
+ SFX_WFOGO_CHAT_4,
+ SFX_WFOGO_CHAT_5,
+ SFX_WFOGO_CHAT_6,
+ SFX_WFOGO_CHAT_7,
+ SFX_WFOGO_CHAT_8,
+ SFX_WFOGO_CHAT_9,
+ SFX_WFOGO_CHAT_10,
+ SFX_WFOGO_CHAT_11,
+ SFX_WFOGO_DODGE_1,
+ SFX_WFOGO_DODGE_2,
+ SFX_WFOGO_DODGE_3,
+ SFX_WFOGO_DODGE_4,
+ SFX_WFOGO_DODGE_5,
+ SFX_WFOGO_DODGE_6,
+ SFX_WFOGO_DODGE_7,
+ SFX_WFOGO_DODGE_8,
+ SFX_WFOGO_DODGE_9,
+ SFX_WFOGO_FIGHT_1,
+ SFX_WFOGO_FIGHT_2,
+ SFX_WFOGO_FIGHT_3,
+ SFX_WFOGO_FIGHT_4,
+ SFX_WFOGO_FIGHT_5,
+ SFX_WFOGO_FIGHT_6,
+ SFX_WFOGO_FIGHT_7,
+ SFX_WFOGO_FIGHT_8,
+ SFX_WFOGO_FIGHT_9,
+ SFX_WFOGO_FIGHT_10,
+ SFX_WFOGO_FIGHT_11,
+ SFX_WFOGO_FIGHT_12,
+ SFX_WFOGO_FIGHT_13,
+ SFX_WFOGO_FIGHT_14,
+ SFX_WFOGO_GENERIC_CRASH_1,
+ SFX_WFOGO_GENERIC_CRASH_2,
+ SFX_WFOGO_GENERIC_CRASH_3,
+ SFX_WFOGO_GENERIC_CRASH_4,
+ SFX_WFOGO_GENERIC_CRASH_5,
+ SFX_WFOGO_GENERIC_CRASH_6,
+ SFX_WFOGO_GENERIC_CRASH_7,
+ SFX_WFOGO_GUN_PANIC_1,
+ SFX_WFOGO_GUN_PANIC_2,
+ SFX_WFOGO_GUN_PANIC_3,
+ SFX_WFOGO_GUN_PANIC_4,
+ SFX_WFOGO_GUN_PANIC_5,
+ SFX_WFOGO_JACKED_1,
+ SFX_WFOGO_JACKED_2,
+ SFX_WFOGO_JACKED_3,
+ SFX_WFOGO_JACKED_4,
+ SFX_WFOGO_JACKED_5,
+ SFX_WFOGO_JACKED_6,
+ SFX_WFOGO_MUGGED_1,
+ SFX_WFOGO_MUGGED_2,
+ SFX_WFOGO_RUN_1,
+ SFX_WFOGO_RUN_2,
+ SFX_WFOGO_SAVED_1,
+ SFX_WFOGO_SHOCKED_1,
+ SFX_WFOGO_SHOCKED_2,
+
+ SFX_HMYST_BUMP_1,
+ SFX_HMYST_BUMP_2,
+ SFX_HMYST_BUMP_3,
+ SFX_HMYST_BUMP_4,
+ SFX_HMYST_BUMP_5,
+ SFX_HMYST_BUMP_6,
+ SFX_HMYST_BUMP_7,
+ SFX_HMYST_BUMP_8,
+ SFX_HMYST_BUMP_9,
+ SFX_HMYST_BUMP_10,
+ SFX_HMYST_BUMP_11,
+ SFX_HMYST_BUMP_12,
+ SFX_HMYST_BUMP_13,
+ SFX_HMYST_CHAT_1,
+ SFX_HMYST_CHAT_2,
+ SFX_HMYST_CHAT_3,
+ SFX_HMYST_CHAT_4,
+ SFX_HMYST_CHAT_5,
+ SFX_HMYST_CHAT_6,
+ SFX_HMYST_CHAT_7,
+ SFX_HMYST_CHAT_8,
+ SFX_HMYST_CHAT_9,
+ SFX_HMYST_CHAT_10,
+ SFX_HMYST_CHAT_11,
+ SFX_HMYST_DODGE_1,
+ SFX_HMYST_DODGE_2,
+ SFX_HMYST_DODGE_3,
+ SFX_HMYST_DODGE_4,
+ SFX_HMYST_DODGE_5,
+ SFX_HMYST_DODGE_6,
+ SFX_HMYST_EYEING_1,
+ SFX_HMYST_EYEING_2,
+ SFX_HMYST_GENERIC_CRASH_1,
+ SFX_HMYST_GENERIC_CRASH_2,
+ SFX_HMYST_GENERIC_CRASH_3,
+ SFX_HMYST_GENERIC_CRASH_4,
+ SFX_HMYST_GENERIC_CRASH_5,
+ SFX_HMYST_GENERIC_CRASH_6,
+ SFX_HMYST_GENERIC_CRASH_7,
+ SFX_HMYST_GUN_PANIC_1,
+ SFX_HMYST_GUN_PANIC_2,
+ SFX_HMYST_GUN_PANIC_3,
+ SFX_HMYST_GUN_PANIC_4,
+ SFX_HMYST_GUN_PANIC_5,
+ SFX_HMYST_GUN_PANIC_6,
+ SFX_HMYST_RUN_1,
+ SFX_HMYST_RUN_2,
+ SFX_HMYST_RUN_3,
+ SFX_HMYST_RUN_4,
+ SFX_HMYST_SAVED_1,
+ SFX_HMYST_SHOCKED_1,
+ SFX_HMYST_SHOCKED_2,
+ SFX_HMYST_TAXI_1,
+
+ SFX_WMOCA_BLOCKED_1,
+ SFX_WMOCA_BLOCKED_2,
+ SFX_WMOCA_BLOCKED_3,
+ SFX_WMOCA_BLOCKED_4,
+ SFX_WMOCA_BLOCKED_5,
+ SFX_WMOCA_BLOCKED_6,
+ SFX_WMOCA_BLOCKED_7,
+ SFX_WMOCA_BLOCKED_8,
+ SFX_WMOCA_BLOCKED_9,
+ SFX_WMOCA_BLOCKED_10,
+ SFX_WMOCA_BLOCKED_11,
+ SFX_WMOCA_BLOCKED_12,
+ SFX_WMOCA_BUMP_1,
+ SFX_WMOCA_BUMP_2,
+ SFX_WMOCA_BUMP_3,
+ SFX_WMOCA_BUMP_4,
+ SFX_WMOCA_BUMP_5,
+ SFX_WMOCA_BUMP_6,
+ SFX_WMOCA_CAR_CRASH_1,
+ SFX_WMOCA_CAR_CRASH_2,
+ SFX_WMOCA_CAR_CRASH_3,
+ SFX_WMOCA_CAR_CRASH_4,
+ SFX_WMOCA_CAR_CRASH_5,
+ SFX_WMOCA_CAR_CRASH_6,
+ SFX_WMOCA_CAR_CRASH_7,
+ SFX_WMOCA_CAR_CRASH_8,
+ SFX_WMOCA_CAR_CRASH_9,
+ SFX_WMOCA_CAR_CRASH_10,
+ SFX_WMOCA_DODGE_1,
+ SFX_WMOCA_DODGE_2,
+ SFX_WMOCA_DODGE_3,
+ SFX_WMOCA_DODGE_4,
+ SFX_WMOCA_DODGE_5,
+ SFX_WMOCA_DODGE_6,
+ SFX_WMOCA_DODGE_7,
+ SFX_WMOCA_DODGE_8,
+ SFX_WMOCA_DODGE_9,
+ SFX_WMOCA_DODGE_10,
+ SFX_WMOCA_EYEING_1,
+ SFX_WMOCA_EYEING_2,
+ SFX_WMOCA_FIGHT_1,
+ SFX_WMOCA_FIGHT_2,
+ SFX_WMOCA_FIGHT_3,
+ SFX_WMOCA_FIGHT_4,
+ SFX_WMOCA_FIGHT_5,
+ SFX_WMOCA_FIGHT_6,
+ SFX_WMOCA_FIGHT_7,
+ SFX_WMOCA_FIGHT_8,
+ SFX_WMOCA_GENERIC_CRASH_1,
+ SFX_WMOCA_GENERIC_CRASH_2,
+ SFX_WMOCA_GENERIC_CRASH_3,
+ SFX_WMOCA_GENERIC_CRASH_4,
+ SFX_WMOCA_GENERIC_CRASH_5,
+ SFX_WMOCA_GENERIC_CRASH_6,
+ SFX_WMOCA_GENERIC_CRASH_7,
+ SFX_WMOCA_GENERIC_CRASH_8,
+ SFX_WMOCA_GENERIC_CRASH_9,
+ SFX_WMOCA_GUN_PANIC_1,
+ SFX_WMOCA_GUN_PANIC_2,
+ SFX_WMOCA_GUN_PANIC_3,
+ SFX_WMOCA_GUN_PANIC_4,
+ SFX_WMOCA_GUN_PANIC_5,
+ SFX_WMOCA_GUN_PANIC_6,
+ SFX_WMOCA_JACKED_1,
+ SFX_WMOCA_JACKED_2,
+ SFX_WMOCA_JACKED_3,
+ SFX_WMOCA_JACKED_4,
+ SFX_WMOCA_JACKED_5,
+ SFX_WMOCA_JACKED_6,
+ SFX_WMOCA_JACKED_7,
+ SFX_WMOCA_JACKED_8,
+ SFX_WMOCA_JACKED_9,
+ SFX_WMOCA_JACKED_10,
+ SFX_WMOCA_JACKING_1,
+ SFX_WMOCA_JACKING_2,
+ SFX_WMOCA_JACKING_3,
+ SFX_WMOCA_JACKING_4,
+ SFX_WMOCA_JACKING_5,
+ SFX_WMOCA_JACKING_6,
+ SFX_WMOCA_JACKING_7,
+ SFX_WMOCA_JACKING_8,
+ SFX_WMOCA_JACKING_9,
+ SFX_WMOCA_JACKING_10,
+ SFX_WMOCA_JACKING_11,
+ SFX_WMOCA_MUGGED_1,
+ SFX_WMOCA_MUGGED_2,
+ SFX_WMOCA_SAVED_1,
+ SFX_WMOCA_TAXI_1,
+
+ SFX_WMYBE_BLOCKED_1,
+ SFX_WMYBE_BLOCKED_2,
+ SFX_WMYBE_BLOCKED_3,
+ SFX_WMYBE_BLOCKED_4,
+ SFX_WMYBE_BLOCKED_5,
+ SFX_WMYBE_BLOCKED_6,
+ SFX_WMYBE_BLOCKED_7,
+ SFX_WMYBE_BLOCKED_8,
+ SFX_WMYBE_BLOCKED_9,
+ SFX_WMYBE_BUMP_1,
+ SFX_WMYBE_BUMP_2,
+ SFX_WMYBE_BUMP_3,
+ SFX_WMYBE_BUMP_4,
+ SFX_WMYBE_BUMP_5,
+ SFX_WMYBE_BUMP_6,
+ SFX_WMYBE_BUMP_7,
+ SFX_WMYBE_BUMP_8,
+ SFX_WMYBE_BUMP_9,
+ SFX_WMYBE_BUMP_10,
+ SFX_WMYBE_BUMP_11,
+ SFX_WMYBE_BUMP_12,
+ SFX_WMYBE_BUMP_13,
+ SFX_WMYBE_BUMP_14,
+ SFX_WMYBE_CAR_CRASH_1,
+ SFX_WMYBE_CAR_CRASH_2,
+ SFX_WMYBE_CAR_CRASH_3,
+ SFX_WMYBE_CAR_CRASH_4,
+ SFX_WMYBE_CAR_CRASH_5,
+ SFX_WMYBE_CAR_CRASH_6,
+ SFX_WMYBE_CAR_CRASH_7,
+ SFX_WMYBE_CAR_CRASH_8,
+ SFX_WMYBE_CHAT_1,
+ SFX_WMYBE_CHAT_2,
+ SFX_WMYBE_CHAT_3,
+ SFX_WMYBE_CHAT_4,
+ SFX_WMYBE_CHAT_5,
+ SFX_WMYBE_CHAT_6,
+ SFX_WMYBE_CHAT_7,
+ SFX_WMYBE_CHAT_8,
+ SFX_WMYBE_CHAT_9,
+ SFX_WMYBE_CHAT_10,
+ SFX_WMYBE_CHAT_11,
+ SFX_WMYBE_DODGE_1,
+ SFX_WMYBE_DODGE_2,
+ SFX_WMYBE_DODGE_3,
+ SFX_WMYBE_DODGE_4,
+ SFX_WMYBE_DODGE_5,
+ SFX_WMYBE_DODGE_6,
+ SFX_WMYBE_DODGE_7,
+ SFX_WMYBE_DODGE_8,
+ SFX_WMYBE_DODGE_9,
+ SFX_WMYBE_DODGE_10,
+ SFX_WMYBE_DODGE_11,
+ SFX_WMYBE_DODGE_12,
+ SFX_WMYBE_EYEING_1,
+ SFX_WMYBE_EYEING_2,
+ SFX_WMYBE_GENERIC_CRASH_1,
+ SFX_WMYBE_GENERIC_CRASH_2,
+ SFX_WMYBE_GENERIC_CRASH_3,
+ SFX_WMYBE_GENERIC_CRASH_4,
+ SFX_WMYBE_GENERIC_CRASH_5,
+ SFX_WMYBE_GENERIC_CRASH_6,
+ SFX_WMYBE_GENERIC_CRASH_7,
+ SFX_WMYBE_GENERIC_CRASH_8,
+ SFX_WMYBE_GUN_PANIC_1,
+ SFX_WMYBE_GUN_PANIC_2,
+ SFX_WMYBE_GUN_PANIC_3,
+ SFX_WMYBE_GUN_PANIC_4,
+ SFX_WMYBE_GUN_PANIC_5,
+ SFX_WMYBE_GUN_PANIC_6,
+ SFX_WMYBE_GUN_PANIC_7,
+ SFX_WMYBE_GUN_PANIC_8,
+ SFX_WMYBE_JACKED_1,
+ SFX_WMYBE_JACKED_2,
+ SFX_WMYBE_JACKED_3,
+ SFX_WMYBE_JACKED_4,
+ SFX_WMYBE_JACKED_5,
+ SFX_WMYBE_JACKED_6,
+ SFX_WMYBE_JACKED_7,
+ SFX_WMYBE_JACKING_1,
+ SFX_WMYBE_JACKING_2,
+ SFX_WMYBE_JACKING_3,
+ SFX_WMYBE_JEER_1,
+ SFX_WMYBE_JEER_2,
+ SFX_WMYBE_JEER_3,
+ SFX_WMYBE_JEER_4,
+ SFX_WMYBE_JEER_5,
+ SFX_WMYBE_JEER_6,
+ SFX_WMYBE_JEER_7,
+ SFX_WMYBE_LOST_1,
+ SFX_WMYBE_LOST_2,
+ SFX_WMYBE_LOST_3,
+ SFX_WMYBE_RUN_1,
+ SFX_WMYBE_RUN_2,
+ SFX_WMYBE_RUN_3,
+ SFX_WMYBE_RUN_4,
+ SFX_WMYBE_RUN_5,
+ SFX_WMYBE_SHOCKED_1,
+ SFX_WMYBE_SHOCKED_2,
+ SFX_WMYBE_SHOCKED_3,
+ SFX_WMYBE_SHOCKED_4,
+ SFX_WMYBE_SHOCKED_5,
+ SFX_WMYBE_SHOCKED_6,
+
+ SFX_BFOBE_BLOCKED_1,
+ SFX_BFOBE_BLOCKED_2,
+ SFX_BFOBE_BLOCKED_3,
+ SFX_BFOBE_BLOCKED_4,
+ SFX_BFOBE_BLOCKED_5,
+ SFX_BFOBE_BLOCKED_6,
+ SFX_BFOBE_BLOCKED_7,
+ SFX_BFOBE_BLOCKED_8,
+ SFX_BFOBE_BUMP_1,
+ SFX_BFOBE_BUMP_2,
+ SFX_BFOBE_BUMP_3,
+ SFX_BFOBE_BUMP_4,
+ SFX_BFOBE_BUMP_5,
+ SFX_BFOBE_BUMP_6,
+ SFX_BFOBE_BUMP_7,
+ SFX_BFOBE_BUMP_8,
+ SFX_BFOBE_CAR_CRASH_1,
+ SFX_BFOBE_CAR_CRASH_2,
+ SFX_BFOBE_CAR_CRASH_3,
+ SFX_BFOBE_CAR_CRASH_4,
+ SFX_BFOBE_CAR_CRASH_5,
+ SFX_BFOBE_CAR_CRASH_6,
+ SFX_BFOBE_CAR_CRASH_7,
+ SFX_BFOBE_CHAT_1,
+ SFX_BFOBE_CHAT_2,
+ SFX_BFOBE_CHAT_3,
+ SFX_BFOBE_CHAT_4,
+ SFX_BFOBE_CHAT_5,
+ SFX_BFOBE_CHAT_6,
+ SFX_BFOBE_CHAT_7,
+ SFX_BFOBE_CHAT_8,
+ SFX_BFOBE_DODGE_1,
+ SFX_BFOBE_DODGE_2,
+ SFX_BFOBE_DODGE_3,
+ SFX_BFOBE_DODGE_4,
+ SFX_BFOBE_DODGE_5,
+ SFX_BFOBE_DODGE_6,
+ SFX_BFOBE_DODGE_7,
+ SFX_BFOBE_DODGE_8,
+ SFX_BFOBE_DODGE_9,
+ SFX_BFOBE_GENERIC_CRASH_1,
+ SFX_BFOBE_GENERIC_CRASH_2,
+ SFX_BFOBE_GENERIC_CRASH_3,
+ SFX_BFOBE_GENERIC_CRASH_4,
+ SFX_BFOBE_GENERIC_CRASH_5,
+ SFX_BFOBE_GENERIC_CRASH_6,
+ SFX_BFOBE_GENERIC_CRASH_7,
+ SFX_BFOBE_GUN_PANIC_1,
+ SFX_BFOBE_GUN_PANIC_2,
+ SFX_BFOBE_GUN_PANIC_3,
+ SFX_BFOBE_GUN_PANIC_4,
+ SFX_BFOBE_GUN_PANIC_5,
+ SFX_BFOBE_JACKED_1,
+ SFX_BFOBE_JACKED_2,
+ SFX_BFOBE_JACKED_3,
+ SFX_BFOBE_JACKED_4,
+ SFX_BFOBE_JACKED_5,
+ SFX_BFOBE_JACKING_1,
+ SFX_BFOBE_JACKING_2,
+ SFX_BFOBE_JACKING_3,
+ SFX_BFOBE_JACKING_4,
+ SFX_BFOBE_MUGGED_1,
+ SFX_BFOBE_MUGGED_2,
+ SFX_BFOBE_SHOCKED_1,
+ SFX_BFOBE_SHOCKED_2,
+ SFX_BFOBE_TAXI_1,
+
+ SFX_WFYLG_BUMP_1,
+ SFX_WFYLG_BUMP_2,
+ SFX_WFYLG_BUMP_3,
+ SFX_WFYLG_BUMP_4,
+ SFX_WFYLG_BUMP_5,
+ SFX_WFYLG_BUMP_6,
+ SFX_WFYLG_BUMP_7,
+ SFX_WFYLG_BUMP_8,
+ SFX_WFYLG_BUMP_9,
+ SFX_WFYLG_BUMP_10,
+ SFX_WFYLG_CHAT_1,
+ SFX_WFYLG_CHAT_2,
+ SFX_WFYLG_CHAT_3,
+ SFX_WFYLG_CHAT_4,
+ SFX_WFYLG_CHAT_5,
+ SFX_WFYLG_CHAT_6,
+ SFX_WFYLG_CHAT_7,
+ SFX_WFYLG_CHAT_8,
+ SFX_WFYLG_CHAT_9,
+ SFX_WFYLG_CHAT_10,
+ SFX_WFYLG_DODGE_1,
+ SFX_WFYLG_DODGE_2,
+ SFX_WFYLG_DODGE_3,
+ SFX_WFYLG_DODGE_4,
+ SFX_WFYLG_DODGE_5,
+ SFX_WFYLG_DODGE_6,
+ SFX_WFYLG_DODGE_7,
+ SFX_WFYLG_DODGE_8,
+ SFX_WFYLG_FIGHT_1,
+ SFX_WFYLG_FIGHT_2,
+ SFX_WFYLG_FIGHT_3,
+ SFX_WFYLG_FIGHT_4,
+ SFX_WFYLG_FIGHT_5,
+ SFX_WFYLG_FIGHT_6,
+ SFX_WFYLG_FIGHT_7,
+ SFX_WFYLG_GUN_COOL_1,
+ SFX_WFYLG_GUN_COOL_2,
+ SFX_WFYLG_GUN_COOL_3,
+ SFX_WFYLG_GUN_COOL_4,
+ SFX_WFYLG_GUN_COOL_5,
+ SFX_WFYLG_SAVED_1,
+ SFX_WFYLG_TAXI_1,
+
+ SFX_WFOST_BLOCKED_1,
+ SFX_WFOST_BLOCKED_2,
+ SFX_WFOST_BLOCKED_3,
+ SFX_WFOST_BLOCKED_4,
+ SFX_WFOST_BLOCKED_5,
+ SFX_WFOST_BLOCKED_6,
+ SFX_WFOST_BLOCKED_7,
+ SFX_WFOST_BLOCKED_8,
+ SFX_WFOST_BLOCKED_9,
+ SFX_WFOST_BLOCKED_10,
+ SFX_WFOST_BLOCKED_11,
+ SFX_WFOST_BLOCKED_12,
+ SFX_WFOST_BUMP_1,
+ SFX_WFOST_BUMP_2,
+ SFX_WFOST_BUMP_3,
+ SFX_WFOST_BUMP_4,
+ SFX_WFOST_BUMP_5,
+ SFX_WFOST_BUMP_6,
+ SFX_WFOST_BUMP_7,
+ SFX_WFOST_BUMP_8,
+ SFX_WFOST_BUMP_9,
+ SFX_WFOST_BUMP_10,
+ SFX_WFOST_BUMP_11,
+ SFX_WFOST_BUMP_12,
+ SFX_WFOST_BUMP_13,
+ SFX_WFOST_BUMP_14,
+ SFX_WFOST_BUMP_15,
+ SFX_WFOST_BUMP_16,
+ SFX_WFOST_BUMP_17,
+ SFX_WFOST_BUMP_18,
+ SFX_WFOST_BUMP_19,
+ SFX_WFOST_CAR_CRASH_1,
+ SFX_WFOST_CAR_CRASH_2,
+ SFX_WFOST_CAR_CRASH_3,
+ SFX_WFOST_CAR_CRASH_4,
+ SFX_WFOST_CAR_CRASH_5,
+ SFX_WFOST_CAR_CRASH_6,
+ SFX_WFOST_CAR_CRASH_7,
+ SFX_WFOST_CAR_CRASH_8,
+ SFX_WFOST_CAR_CRASH_9,
+ SFX_WFOST_CAR_CRASH_10,
+ SFX_WFOST_CAR_CRASH_11,
+ SFX_WFOST_CHAT_1,
+ SFX_WFOST_CHAT_2,
+ SFX_WFOST_CHAT_3,
+ SFX_WFOST_CHAT_4,
+ SFX_WFOST_CHAT_5,
+ SFX_WFOST_CHAT_6,
+ SFX_WFOST_CHAT_7,
+ SFX_WFOST_CHAT_8,
+ SFX_WFOST_CHAT_9,
+ SFX_WFOST_CHAT_10,
+ SFX_WFOST_CHAT_11,
+ SFX_WFOST_CHAT_12,
+ SFX_WFOST_CHAT_13,
+ SFX_WFOST_CHAT_14,
+ SFX_WFOST_CHAT_15,
+ SFX_WFOST_CHAT_16,
+ SFX_WFOST_DODGE_1,
+ SFX_WFOST_DODGE_2,
+ SFX_WFOST_DODGE_3,
+ SFX_WFOST_DODGE_4,
+ SFX_WFOST_DODGE_5,
+ SFX_WFOST_DODGE_6,
+ SFX_WFOST_DODGE_7,
+ SFX_WFOST_DODGE_8,
+ SFX_WFOST_DODGE_9,
+ SFX_WFOST_DODGE_10,
+ SFX_WFOST_DODGE_11,
+ SFX_WFOST_DODGE_12,
+ SFX_WFOST_GENERIC_CRASH_1,
+ SFX_WFOST_GENERIC_CRASH_2,
+ SFX_WFOST_GENERIC_CRASH_3,
+ SFX_WFOST_GENERIC_CRASH_4,
+ SFX_WFOST_GENERIC_CRASH_5,
+ SFX_WFOST_GENERIC_CRASH_6,
+ SFX_WFOST_GENERIC_CRASH_7,
+ SFX_WFOST_GENERIC_CRASH_8,
+ SFX_WFOST_GENERIC_CRASH_9,
+ SFX_WFOST_GENERIC_CRASH_10,
+ SFX_WFOST_GUN_PANIC_1,
+ SFX_WFOST_GUN_PANIC_2,
+ SFX_WFOST_GUN_PANIC_3,
+ SFX_WFOST_GUN_PANIC_4,
+ SFX_WFOST_JACKED_1,
+ SFX_WFOST_JACKED_2,
+ SFX_WFOST_JACKED_3,
+ SFX_WFOST_JACKED_4,
+ SFX_WFOST_JACKED_5,
+ SFX_WFOST_JACKED_6,
+ SFX_WFOST_JACKED_7,
+ SFX_WFOST_JACKED_8,
+ SFX_WFOST_LOST_1,
+ SFX_WFOST_LOST_2,
+ SFX_WFOST_LOST_3,
+ SFX_WFOST_MUGGED_1,
+ SFX_WFOST_MUGGED_2,
+ SFX_WFOST_MUGGED_3,
+ SFX_WFOST_MUGGED_4,
+ SFX_WFOST_MUGGED_5,
+ SFX_WFOST_RUN_1,
+ SFX_WFOST_RUN_2,
+ SFX_WFOST_RUN_3,
+ SFX_WFOST_RUN_4,
+ SFX_WFOST_RUN_5,
+ SFX_WFOST_RUN_6,
+ SFX_WFOST_RUN_7,
+ SFX_WFOST_SAVED_1,
+ SFX_WFOST_SAVED_2,
+ SFX_WFOST_SAVED_3,
+ SFX_WFOST_SAVED_4,
+ SFX_WFOST_TAXI_1,
+
+ SFX_WFYST_BLOCKED_1,
+ SFX_WFYST_BLOCKED_2,
+ SFX_WFYST_BLOCKED_3,
+ SFX_WFYST_BLOCKED_4,
+ SFX_WFYST_BLOCKED_5,
+ SFX_WFYST_BLOCKED_6,
+ SFX_WFYST_BUMP_1,
+ SFX_WFYST_BUMP_2,
+ SFX_WFYST_BUMP_3,
+ SFX_WFYST_BUMP_4,
+ SFX_WFYST_BUMP_5,
+ SFX_WFYST_BUMP_6,
+ SFX_WFYST_BUMP_7,
+ SFX_WFYST_BUMP_8,
+ SFX_WFYST_BUMP_9,
+ SFX_WFYST_BUMP_10,
+ SFX_WFYST_CAR_CRASH_1,
+ SFX_WFYST_CAR_CRASH_2,
+ SFX_WFYST_CAR_CRASH_3,
+ SFX_WFYST_CAR_CRASH_4,
+ SFX_WFYST_CAR_CRASH_5,
+ SFX_WFYST_CAR_CRASH_6,
+ SFX_WFYST_CAR_CRASH_7,
+ SFX_WFYST_CAR_CRASH_8,
+ SFX_WFYST_CHAT_1,
+ SFX_WFYST_CHAT_2,
+ SFX_WFYST_CHAT_3,
+ SFX_WFYST_CHAT_4,
+ SFX_WFYST_CHAT_5,
+ SFX_WFYST_CHAT_6,
+ SFX_WFYST_CHAT_7,
+ SFX_WFYST_CHAT_8,
+ SFX_WFYST_CHAT_9,
+ SFX_WFYST_CHAT_10,
+ SFX_WFYST_DODGE_1,
+ SFX_WFYST_DODGE_2,
+ SFX_WFYST_DODGE_3,
+ SFX_WFYST_DODGE_4,
+ SFX_WFYST_DODGE_5,
+ SFX_WFYST_DODGE_6,
+ SFX_WFYST_DODGE_7,
+ SFX_WFYST_DODGE_8,
+ SFX_WFYST_DODGE_9,
+ SFX_WFYST_DODGE_10,
+ SFX_WFYST_FIGHT_1,
+ SFX_WFYST_FIGHT_2,
+ SFX_WFYST_FIGHT_3,
+ SFX_WFYST_FIGHT_4,
+ SFX_WFYST_FIGHT_5,
+ SFX_WFYST_FIGHT_6,
+ SFX_WFYST_FIGHT_7,
+ SFX_WFYST_GENERIC_CRASH_1,
+ SFX_WFYST_GENERIC_CRASH_2,
+ SFX_WFYST_GENERIC_CRASH_3,
+ SFX_WFYST_GENERIC_CRASH_4,
+ SFX_WFYST_GENERIC_CRASH_5,
+ SFX_WFYST_GENERIC_CRASH_6,
+ SFX_WFYST_GENERIC_CRASH_7,
+ SFX_WFYST_GENERIC_CRASH_8,
+ SFX_WFYST_GUN_COOL_1,
+ SFX_WFYST_GUN_COOL_2,
+ SFX_WFYST_GUN_COOL_3,
+ SFX_WFYST_GUN_COOL_4,
+ SFX_WFYST_GUN_COOL_5,
+ SFX_WFYST_JACKED_1,
+ SFX_WFYST_JACKED_2,
+ SFX_WFYST_JACKED_3,
+ SFX_WFYST_JACKED_4,
+ SFX_WFYST_JACKED_5,
+ SFX_WFYST_JACKED_6,
+ SFX_WFYST_JACKING_1,
+ SFX_WFYST_JACKING_2,
+ SFX_WFYST_JACKING_3,
+ SFX_WFYST_JACKING_4,
+ SFX_WFYST_LOST_1,
+ SFX_WFYST_MUGGED_1,
+ SFX_WFYST_MUGGED_2,
+ SFX_WFYST_MUGGING_1,
+ SFX_WFYST_MUGGING_2,
+ SFX_WFYST_MUGGING_3,
+ SFX_WFYST_MUGGING_4,
+ SFX_WFYST_SAVED_1,
+ SFX_WFYST_TAXI_1,
+
+ SFX_COP_VOICE_1_ARREST_1,
+ SFX_COP_VOICE_1_ARREST_2,
+ SFX_COP_VOICE_1_ARREST_3,
+ SFX_COP_VOICE_1_ARREST_4,
+ SFX_COP_VOICE_1_PULLOUTWEAPON_1,
+ SFX_COP_VOICE_1_PULLOUTWEAPON_2,
+ SFX_COP_VOICE_1_PULLOUTWEAPON_3,
+ SFX_COP_VOICE_1_BUMP_1,
+ SFX_COP_VOICE_1_BUMP_2,
+ SFX_COP_VOICE_1_BUMP_3,
+ SFX_COP_VOICE_1_BUMP_4,
+ SFX_COP_VOICE_1_BUMP_5,
+ SFX_COP_VOICE_1_COP_LITTLECOPSAROUND_1,
+ SFX_COP_VOICE_1_COP_LITTLECOPSAROUND_2,
+ SFX_COP_VOICE_1_COP_LITTLECOPSAROUND_3,
+ SFX_COP_VOICE_1_COP_LITTLECOPSAROUND_4,
+ SFX_COP_VOICE_1_GUNAIMEDAT3_1,
+ SFX_COP_VOICE_1_GUNAIMEDAT3_2,
+ SFX_COP_VOICE_1_CAR_CRASH_1,
+ SFX_COP_VOICE_1_CAR_CRASH_2,
+ SFX_COP_VOICE_1_CAR_CRASH_3,
+ SFX_COP_VOICE_1_CAR_CRASH_4,
+ SFX_COP_VOICE_1_DODGE_1,
+ SFX_COP_VOICE_1_DODGE_2,
+ SFX_COP_VOICE_1_DODGE_3,
+ SFX_COP_VOICE_1_FIGHT_1,
+ SFX_COP_VOICE_1_FIGHT_2,
+ SFX_COP_VOICE_1_FIGHT_3,
+ SFX_COP_VOICE_1_FIGHT_4,
+ SFX_COP_VOICE_1_GUNAIMEDAT2_1,
+ SFX_COP_VOICE_1_GUNAIMEDAT2_2,
+ SFX_COP_VOICE_1_SAVED_1,
+ SFX_COP_VOICE_1_SAVED_2,
+ SFX_COP_VOICE_1_COP_ASK_FOR_ID_1,
+ SFX_COP_VOICE_1_COP_ASK_FOR_ID_2,
+ SFX_COP_VOICE_1_COP_ALONE_1,
+ SFX_COP_VOICE_1_COP_ALONE_2,
+ SFX_COP_VOICE_1_COP_ALONE_3,
+ SFX_COP_VOICE_1_COP_ALONE_4,
+ SFX_COP_VOICE_1_COP_MANYCOPSAROUND_1,
+ SFX_COP_VOICE_1_COP_MANYCOPSAROUND_2,
+ SFX_COP_VOICE_1_COP_TARGETING_1,
+ SFX_COP_VOICE_1_COP_TARGETING_2,
+ SFX_COP_VOICE_1_COP_TARGETING_3,
+ SFX_COP_VOICE_1_COP_TARGETING_4,
+
+ SFX_COP_VOICE_2_ARREST_1,
+ SFX_COP_VOICE_2_ARREST_2,
+ SFX_COP_VOICE_2_ARREST_3,
+ SFX_COP_VOICE_2_ARREST_4,
+ SFX_COP_VOICE_2_PULLOUTWEAPON_1,
+ SFX_COP_VOICE_2_PULLOUTWEAPON_2,
+ SFX_COP_VOICE_2_PULLOUTWEAPON_3,
+ SFX_COP_VOICE_2_BUMP_1,
+ SFX_COP_VOICE_2_BUMP_2,
+ SFX_COP_VOICE_2_BUMP_3,
+ SFX_COP_VOICE_2_BUMP_4,
+ SFX_COP_VOICE_2_BUMP_5,
+ SFX_COP_VOICE_2_COP_LITTLECOPSAROUND_1,
+ SFX_COP_VOICE_2_COP_LITTLECOPSAROUND_2,
+ SFX_COP_VOICE_2_COP_LITTLECOPSAROUND_3,
+ SFX_COP_VOICE_2_COP_LITTLECOPSAROUND_4,
+ SFX_COP_VOICE_2_GUNAIMEDAT3_1,
+ SFX_COP_VOICE_2_GUNAIMEDAT3_2,
+ SFX_COP_VOICE_2_CAR_CRASH_1,
+ SFX_COP_VOICE_2_CAR_CRASH_2,
+ SFX_COP_VOICE_2_CAR_CRASH_3,
+ SFX_COP_VOICE_2_CAR_CRASH_4,
+ SFX_COP_VOICE_2_DODGE_1,
+ SFX_COP_VOICE_2_DODGE_2,
+ SFX_COP_VOICE_2_DODGE_3,
+ SFX_COP_VOICE_2_FIGHT_1,
+ SFX_COP_VOICE_2_FIGHT_2,
+ SFX_COP_VOICE_2_FIGHT_3,
+ SFX_COP_VOICE_2_FIGHT_4,
+ SFX_COP_VOICE_2_GUNAIMEDAT2_1,
+ SFX_COP_VOICE_2_GUNAIMEDAT2_2,
+ SFX_COP_VOICE_2_SAVED_1,
+ SFX_COP_VOICE_2_SAVED_2,
+ SFX_COP_VOICE_2_COP_ASK_FOR_ID_1,
+ SFX_COP_VOICE_2_COP_ASK_FOR_ID_2,
+ SFX_COP_VOICE_2_COP_ALONE_1,
+ SFX_COP_VOICE_2_COP_ALONE_2,
+ SFX_COP_VOICE_2_COP_ALONE_3,
+ SFX_COP_VOICE_2_COP_ALONE_4,
+ SFX_COP_VOICE_2_COP_MANYCOPSAROUND_1,
+ SFX_COP_VOICE_2_COP_MANYCOPSAROUND_2,
+ SFX_COP_VOICE_2_COP_TARGETING_1,
+ SFX_COP_VOICE_2_COP_TARGETING_2,
+ SFX_COP_VOICE_2_COP_TARGETING_3,
+ SFX_COP_VOICE_2_COP_TARGETING_4,
+
+ SFX_COP_VOICE_3_ARREST_1,
+ SFX_COP_VOICE_3_ARREST_2,
+ SFX_COP_VOICE_3_ARREST_3,
+ SFX_COP_VOICE_3_ARREST_4,
+ SFX_COP_VOICE_3_PULLOUTWEAPON_1,
+ SFX_COP_VOICE_3_PULLOUTWEAPON_2,
+ SFX_COP_VOICE_3_PULLOUTWEAPON_3,
+ SFX_COP_VOICE_3_BUMP_1,
+ SFX_COP_VOICE_3_BUMP_2,
+ SFX_COP_VOICE_3_BUMP_3,
+ SFX_COP_VOICE_3_BUMP_4,
+ SFX_COP_VOICE_3_BUMP_5,
+ SFX_COP_VOICE_3_COP_LITTLECOPSAROUND_1,
+ SFX_COP_VOICE_3_COP_LITTLECOPSAROUND_2,
+ SFX_COP_VOICE_3_COP_LITTLECOPSAROUND_3,
+ SFX_COP_VOICE_3_COP_LITTLECOPSAROUND_4,
+ SFX_COP_VOICE_3_GUNAIMEDAT3_1,
+ SFX_COP_VOICE_3_GUNAIMEDAT3_2,
+ SFX_COP_VOICE_3_CAR_CRASH_1,
+ SFX_COP_VOICE_3_CAR_CRASH_2,
+ SFX_COP_VOICE_3_CAR_CRASH_3,
+ SFX_COP_VOICE_3_CAR_CRASH_4,
+ SFX_COP_VOICE_3_DODGE_1,
+ SFX_COP_VOICE_3_DODGE_2,
+ SFX_COP_VOICE_3_DODGE_3,
+ SFX_COP_VOICE_3_FIGHT_1,
+ SFX_COP_VOICE_3_FIGHT_2,
+ SFX_COP_VOICE_3_FIGHT_3,
+ SFX_COP_VOICE_3_FIGHT_4,
+ SFX_COP_VOICE_3_GUNAIMEDAT2_1,
+ SFX_COP_VOICE_3_GUNAIMEDAT2_2,
+ SFX_COP_VOICE_3_SAVED_1,
+ SFX_COP_VOICE_3_SAVED_2,
+ SFX_COP_VOICE_3_COP_ASK_FOR_ID_1,
+ SFX_COP_VOICE_3_COP_ASK_FOR_ID_2,
+ SFX_COP_VOICE_3_COP_ALONE_1,
+ SFX_COP_VOICE_3_COP_ALONE_2,
+ SFX_COP_VOICE_3_COP_ALONE_3,
+ SFX_COP_VOICE_3_COP_ALONE_4,
+ SFX_COP_VOICE_3_COP_MANYCOPSAROUND_1,
+ SFX_COP_VOICE_3_COP_MANYCOPSAROUND_2,
+ SFX_COP_VOICE_3_COP_TARGETING_1,
+ SFX_COP_VOICE_3_COP_TARGETING_2,
+ SFX_COP_VOICE_3_COP_TARGETING_3,
+ SFX_COP_VOICE_3_COP_TARGETING_4,
+
+ SFX_COP_VOICE_4_ARREST_1,
+ SFX_COP_VOICE_4_ARREST_2,
+ SFX_COP_VOICE_4_ARREST_3,
+ SFX_COP_VOICE_4_ARREST_4,
+ SFX_COP_VOICE_4_PULLOUTWEAPON_1,
+ SFX_COP_VOICE_4_PULLOUTWEAPON_2,
+ SFX_COP_VOICE_4_PULLOUTWEAPON_3,
+ SFX_COP_VOICE_4_BUMP_1,
+ SFX_COP_VOICE_4_BUMP_2,
+ SFX_COP_VOICE_4_BUMP_3,
+ SFX_COP_VOICE_4_BUMP_4,
+ SFX_COP_VOICE_4_BUMP_5,
+ SFX_COP_VOICE_4_COP_LITTLECOPSAROUND_1,
+ SFX_COP_VOICE_4_COP_LITTLECOPSAROUND_2,
+ SFX_COP_VOICE_4_COP_LITTLECOPSAROUND_3,
+ SFX_COP_VOICE_4_COP_LITTLECOPSAROUND_4,
+ SFX_COP_VOICE_4_GUNAIMEDAT3_1,
+ SFX_COP_VOICE_4_GUNAIMEDAT3_2,
+ SFX_COP_VOICE_4_CAR_CRASH_1,
+ SFX_COP_VOICE_4_CAR_CRASH_2,
+ SFX_COP_VOICE_4_CAR_CRASH_3,
+ SFX_COP_VOICE_4_CAR_CRASH_4,
+ SFX_COP_VOICE_4_DODGE_1,
+ SFX_COP_VOICE_4_DODGE_2,
+ SFX_COP_VOICE_4_DODGE_3,
+ SFX_COP_VOICE_4_FIGHT_1,
+ SFX_COP_VOICE_4_FIGHT_2,
+ SFX_COP_VOICE_4_FIGHT_3,
+ SFX_COP_VOICE_4_FIGHT_4,
+ SFX_COP_VOICE_4_GUNAIMEDAT2_1,
+ SFX_COP_VOICE_4_GUNAIMEDAT2_2,
+ SFX_COP_VOICE_4_SAVED_1,
+ SFX_COP_VOICE_4_SAVED_2,
+ SFX_COP_VOICE_4_COP_ASK_FOR_ID_1,
+ SFX_COP_VOICE_4_COP_ASK_FOR_ID_2,
+ SFX_COP_VOICE_4_COP_ALONE_1,
+ SFX_COP_VOICE_4_COP_ALONE_2,
+ SFX_COP_VOICE_4_COP_ALONE_3,
+ SFX_COP_VOICE_4_COP_ALONE_4,
+ SFX_COP_VOICE_4_COP_MANYCOPSAROUND_1,
+ SFX_COP_VOICE_4_COP_MANYCOPSAROUND_2,
+ SFX_COP_VOICE_4_COP_TARGETING_1,
+ SFX_COP_VOICE_4_COP_TARGETING_2,
+ SFX_COP_VOICE_4_COP_TARGETING_3,
+ SFX_COP_VOICE_4_COP_TARGETING_4,
+
+ SFX_COP_VOICE_5_ARREST_1,
+ SFX_COP_VOICE_5_ARREST_2,
+ SFX_COP_VOICE_5_ARREST_3,
+ SFX_COP_VOICE_5_ARREST_4,
+ SFX_COP_VOICE_5_PULLOUTWEAPON_1,
+ SFX_COP_VOICE_5_PULLOUTWEAPON_2,
+ SFX_COP_VOICE_5_PULLOUTWEAPON_3,
+ SFX_COP_VOICE_5_BUMP_1,
+ SFX_COP_VOICE_5_BUMP_2,
+ SFX_COP_VOICE_5_BUMP_3,
+ SFX_COP_VOICE_5_BUMP_4,
+ SFX_COP_VOICE_5_BUMP_5,
+ SFX_COP_VOICE_5_COP_LITTLECOPSAROUND_1,
+ SFX_COP_VOICE_5_COP_LITTLECOPSAROUND_2,
+ SFX_COP_VOICE_5_COP_LITTLECOPSAROUND_3,
+ SFX_COP_VOICE_5_COP_LITTLECOPSAROUND_4,
+ SFX_COP_VOICE_5_GUNAIMEDAT3_1,
+ SFX_COP_VOICE_5_GUNAIMEDAT3_2,
+ SFX_COP_VOICE_5_CAR_CRASH_1,
+ SFX_COP_VOICE_5_CAR_CRASH_2,
+ SFX_COP_VOICE_5_CAR_CRASH_3,
+ SFX_COP_VOICE_5_CAR_CRASH_4,
+ SFX_COP_VOICE_5_DODGE_1,
+ SFX_COP_VOICE_5_DODGE_2,
+ SFX_COP_VOICE_5_DODGE_3,
+ SFX_COP_VOICE_5_FIGHT_1,
+ SFX_COP_VOICE_5_FIGHT_2,
+ SFX_COP_VOICE_5_FIGHT_3,
+ SFX_COP_VOICE_5_FIGHT_4,
+ SFX_COP_VOICE_5_GUNAIMEDAT2_1,
+ SFX_COP_VOICE_5_GUNAIMEDAT2_2,
+ SFX_COP_VOICE_5_SAVED_1,
+ SFX_COP_VOICE_5_SAVED_2,
+ SFX_COP_VOICE_5_COP_ASK_FOR_ID_1,
+ SFX_COP_VOICE_5_COP_ASK_FOR_ID_2,
+ SFX_COP_VOICE_5_COP_ALONE_1,
+ SFX_COP_VOICE_5_COP_ALONE_2,
+ SFX_COP_VOICE_5_COP_ALONE_3,
+ SFX_COP_VOICE_5_COP_ALONE_4,
+ SFX_COP_VOICE_5_COP_MANYCOPSAROUND_1,
+ SFX_COP_VOICE_5_COP_MANYCOPSAROUND_2,
+ SFX_COP_VOICE_5_COP_TARGETING_1,
+ SFX_COP_VOICE_5_COP_TARGETING_2,
+ SFX_COP_VOICE_5_COP_TARGETING_3,
+ SFX_COP_VOICE_5_COP_TARGETING_4,
+
+ SFX_PLAYER_ANGRY_BUSTED_1,
+ SFX_PLAYER_ANGRY_BUSTED_2,
+ SFX_PLAYER_ANGRY_BUSTED_3,
+ SFX_PLAYER_ANGRY_BUSTED_4,
+ SFX_PLAYER_ANGRY_BUSTED_5,
+ SFX_PLAYER_ANGRY_BUSTED_6,
+ SFX_PLAYER_ANGRY_BUSTED_7,
+ SFX_PLAYER_ANGRY_BUSTED_8,
+ SFX_PLAYER_ANGRY_BUSTED_9,
+ SFX_PLAYER_ANGRY_BUSTED_10,
+ SFX_PLAYER_ANGRY_BUSTED_11,
+ SFX_PLAYER_ANGRY_BUSTED_12,
+ SFX_PLAYER_ANGRY_BUSTED_13,
+ SFX_PLAYER_ANGRY_BUSTED_14,
+ SFX_PLAYER_ANGRY_BUSTED_15,
+ SFX_PLAYER_ANGRY_BUSTED_16,
+ SFX_PLAYER_ANGRY_BUSTED_17,
+ SFX_PLAYER_ANGRY_BUSTED_18,
+ SFX_PLAYER_ANGRY_BUSTED_19,
+ SFX_PLAYER_ANGRY_BUSTED_20,
+ SFX_PLAYER_ANGRY_BUSTED_21,
+ SFX_PLAYER_ANGRY_BUSTED_22,
+ SFX_PLAYER_ANGRY_BUSTED_23,
+ SFX_PLAYER_ANGRY_BUSTED_24,
+ SFX_PLAYER_ANGRY_BUSTED_25,
+ SFX_PLAYER_ANGRY_BUSTED_26,
+ SFX_PLAYER_ANGRY_BUSTED_27,
+ SFX_PLAYER_ANGRY_BUSTED_28,
+ SFX_PLAYER_ANGRY_BUSTED_29,
+ SFX_PLAYER_ANGRY_BUSTED_30,
+ SFX_PLAYER_ANGRY_BUSTED_31,
+ SFX_PLAYER_ANGRY_BUSTED_32,
+ SFX_PLAYER_ANGRY_BUSTED_33,
+ SFX_PLAYER_ANGRY_BUSTED_34,
+ SFX_PLAYER_ANGRY_BUSTED_35,
+ SFX_PLAYER_ANGRY_BUSTED_36,
+ SFX_PLAYER_ANGRY_BUSTED_37,
+ SFX_PLAYER_ANGRY_BUSTED_38,
+ SFX_PLAYER_ANGRY_CHASED_1,
+ SFX_PLAYER_ANGRY_CHASED_2,
+ SFX_PLAYER_ANGRY_CHASED_3,
+ SFX_PLAYER_ANGRY_CHASED_4,
+ SFX_PLAYER_ANGRY_CHASED_5,
+ SFX_PLAYER_ANGRY_CHASED_6,
+ SFX_PLAYER_ANGRY_CHASED_7,
+ SFX_PLAYER_ANGRY_CHASED_8,
+ SFX_PLAYER_ANGRY_CHASED_9,
+ SFX_PLAYER_ANGRY_CRASH_1,
+ SFX_PLAYER_ANGRY_CRASH_2,
+ SFX_PLAYER_ANGRY_CRASH_3,
+ SFX_PLAYER_ANGRY_CRASH_4,
+ SFX_PLAYER_ANGRY_CRASH_5,
+ SFX_PLAYER_ANGRY_CRASH_6,
+ SFX_PLAYER_ANGRY_CRASH_7,
+ SFX_PLAYER_ANGRY_CRASH_8,
+ SFX_PLAYER_ANGRY_CRASH_9,
+ SFX_PLAYER_ANGRY_CRASH_10,
+ SFX_PLAYER_ANGRY_CRASH_11,
+ SFX_PLAYER_ANGRY_CRASH_12,
+ SFX_PLAYER_ANGRY_CRASH_13,
+ SFX_PLAYER_ANGRY_CRASH_14,
+ SFX_PLAYER_ANGRY_CRASH_15,
+ SFX_PLAYER_ANGRY_CRASH_16,
+ SFX_PLAYER_ANGRY_CRASH_17,
+ SFX_PLAYER_ANGRY_CRASH_18,
+ SFX_PLAYER_ANGRY_CRASH_19,
+ SFX_PLAYER_ANGRY_CRASH_20,
+ SFX_PLAYER_ANGRY_CRASH_21,
+ SFX_PLAYER_ANGRY_CRASH_22,
+ SFX_PLAYER_ANGRY_CRASH_23,
+ SFX_PLAYER_ANGRY_CRASH_24,
+ SFX_PLAYER_ANGRY_CRASH_25,
+ SFX_PLAYER_ANGRY_CRASH_26,
+ SFX_PLAYER_ANGRY_CRASH_27,
+ SFX_PLAYER_ANGRY_CRASH_28,
+ SFX_PLAYER_ANGRY_CRASH_29,
+ SFX_PLAYER_ANGRY_CRASH_30,
+ SFX_PLAYER_ANGRY_CRASH_31,
+ SFX_PLAYER_ANGRY_CRASH_32,
+ SFX_PLAYER_ANGRY_CRASH_33,
+ SFX_PLAYER_ANGRY_CRASH_34,
+ SFX_PLAYER_ANGRY_CRASH_35,
+ SFX_PLAYER_ANGRY_CRASH_36,
+ SFX_PLAYER_ANGRY_CRASH_37,
+ SFX_PLAYER_ANGRY_CRASH_38,
+ SFX_PLAYER_ANGRY_CRASH_39,
+ SFX_PLAYER_ANGRY_CRASH_40,
+ SFX_PLAYER_ANGRY_CRASH_41,
+ SFX_PLAYER_ANGRY_FIGHT_1,
+ SFX_PLAYER_ANGRY_FIGHT_2,
+ SFX_PLAYER_ANGRY_FIGHT_3,
+ SFX_PLAYER_ANGRY_FIGHT_4,
+ SFX_PLAYER_ANGRY_FIGHT_5,
+ SFX_PLAYER_ANGRY_FIGHT_6,
+ SFX_PLAYER_ANGRY_FIGHT_7,
+ SFX_PLAYER_ANGRY_FIGHT_8,
+ SFX_PLAYER_ANGRY_FIGHT_9,
+ SFX_PLAYER_ANGRY_FIGHT_10,
+ SFX_PLAYER_ANGRY_FIGHT_11,
+ SFX_PLAYER_ANGRY_FIGHT_12,
+ SFX_PLAYER_ANGRY_FIGHT_13,
+ SFX_PLAYER_ANGRY_FIGHT_14,
+ SFX_PLAYER_ANGRY_FIGHT_15,
+ SFX_PLAYER_ANGRY_FIGHT_16,
+ SFX_PLAYER_ANGRY_FIGHT_17,
+ SFX_PLAYER_ANGRY_FIGHT_18,
+ SFX_PLAYER_ANGRY_FIGHT_19,
+ SFX_PLAYER_ANGRY_FIGHT_20,
+ SFX_PLAYER_ANGRY_FIGHT_21,
+ SFX_PLAYER_ANGRY_FIGHT_22,
+ SFX_PLAYER_ANGRY_FIGHT_23,
+ SFX_PLAYER_ANGRY_FIGHT_24,
+ SFX_PLAYER_ANGRY_FIGHT_25,
+ SFX_PLAYER_ANGRY_FIGHT_26,
+ SFX_PLAYER_ANGRY_FIGHT_27,
+ SFX_PLAYER_ANGRY_FIGHT_28,
+ SFX_PLAYER_ANGRY_FIGHT_29,
+ SFX_PLAYER_ANGRY_FIGHT_30,
+ SFX_PLAYER_ANGRY_FIGHT_31,
+ SFX_PLAYER_ANGRY_FIGHT_32,
+ SFX_PLAYER_ANGRY_FIGHT_33,
+ SFX_PLAYER_ANGRY_FIGHT_34,
+ SFX_PLAYER_ANGRY_FIGHT_35,
+ SFX_PLAYER_ANGRY_FIGHT_36,
+ SFX_PLAYER_ANGRY_FIGHT_37,
+ SFX_PLAYER_ANGRY_FIGHT_38,
+ SFX_PLAYER_ANGRY_FIGHT_39,
+ SFX_PLAYER_ANGRY_FIGHT_40,
+ SFX_PLAYER_ANGRY_FIGHT_41,
+ SFX_PLAYER_ANGRY_FIGHT_42,
+ SFX_PLAYER_ANGRY_FIGHT_43,
+ SFX_PLAYER_ANGRY_FIGHT_44,
+ SFX_PLAYER_ANGRY_FIGHT_45,
+ SFX_PLAYER_ANGRY_FIGHT_46,
+ SFX_PLAYER_ANGRY_FIGHT_47,
+ SFX_PLAYER_ANGRY_FIGHT_48,
+ SFX_PLAYER_ANGRY_FIGHT_49,
+ SFX_PLAYER_ANGRY_FIGHT_50,
+ SFX_PLAYER_ANGRY_FIGHT_51,
+ SFX_PLAYER_ANGRY_FIGHT_52,
+ SFX_PLAYER_ANGRY_FIGHT_53,
+ SFX_PLAYER_ANGRY_FIGHT_54,
+ SFX_PLAYER_ANGRY_FIGHT_55,
+ SFX_PLAYER_ANGRY_FIGHT_56,
+ SFX_PLAYER_ANGRY_FIGHT_57,
+ SFX_PLAYER_ANGRY_FIGHT_58,
+ SFX_PLAYER_ANGRY_FIGHT_59,
+ SFX_PLAYER_ANGRY_FIGHT_60,
+ SFX_PLAYER_ANGRY_FIGHT_61,
+ SFX_PLAYER_ANGRY_JACKED_1,
+ SFX_PLAYER_ANGRY_JACKED_2,
+ SFX_PLAYER_ANGRY_JACKED_3,
+ SFX_PLAYER_ANGRY_JACKED_4,
+ SFX_PLAYER_ANGRY_JACKED_5,
+ SFX_PLAYER_ANGRY_JACKED_6,
+ SFX_PLAYER_ANGRY_JACKED_7,
+ SFX_PLAYER_ANGRY_JACKED_8,
+ SFX_PLAYER_ANGRY_JACKED_9,
+ SFX_PLAYER_ANGRY_JACKED_10,
+ SFX_PLAYER_ANGRY_JACKED_11,
+ SFX_PLAYER_ANGRY_JACKED_12,
+ SFX_PLAYER_ANGRY_JACKED_13,
+ SFX_PLAYER_ANGRY_JACKED_14,
+ SFX_PLAYER_ANGRY_JACKED_15,
+ SFX_PLAYER_ANGRY_JACKED_16,
+ SFX_PLAYER_ANGRY_JACKED_17,
+ SFX_PLAYER_ANGRY_JACKED_18,
+ SFX_PLAYER_ANGRY_JACKED_19,
+ SFX_PLAYER_ANGRY_JACKED_20,
+ SFX_PLAYER_ANGRY_JACKED_21,
+ SFX_PLAYER_ANGRY_JACKED_22,
+ SFX_PLAYER_ANGRY_JACKED_23,
+ SFX_PLAYER_ANGRY_JACKED_24,
+ SFX_PLAYER_ANGRY_JACKED_25,
+ SFX_PLAYER_ANGRY_JACKED_26,
+ SFX_PLAYER_ANGRY_JACKED_27,
+ SFX_PLAYER_ANGRY_JACKED_28,
+ SFX_PLAYER_ANGRY_JACKED_29,
+ SFX_PLAYER_ANGRY_JACKED_30,
+ SFX_PLAYER_ANGRY_JACKED_31,
+ SFX_PLAYER_ANGRY_JACKED_32,
+ SFX_PLAYER_ANGRY_JACKED_33,
+ SFX_PLAYER_ANGRY_JACKING_1,
+ SFX_PLAYER_ANGRY_JACKING_2,
+ SFX_PLAYER_ANGRY_JACKING_3,
+ SFX_PLAYER_ANGRY_JACKING_4,
+ SFX_PLAYER_ANGRY_JACKING_5,
+ SFX_PLAYER_ANGRY_JACKING_6,
+ SFX_PLAYER_ANGRY_JACKING_7,
+ SFX_PLAYER_ANGRY_JACKING_8,
+ SFX_PLAYER_ANGRY_JACKING_9,
+ SFX_PLAYER_ANGRY_JACKING_10,
+ SFX_PLAYER_ANGRY_JACKING_11,
+ SFX_PLAYER_ANGRY_JACKING_12,
+ SFX_PLAYER_ANGRY_JACKING_13,
+ SFX_PLAYER_ANGRY_JACKING_14,
+ SFX_PLAYER_ANGRY_JACKING_15,
+ SFX_PLAYER_ANGRY_JACKING_16,
+ SFX_PLAYER_ANGRY_JACKING_17,
+ SFX_PLAYER_ANGRY_JACKING_18,
+ SFX_PLAYER_ANGRY_JACKING_19,
+ SFX_PLAYER_ANGRY_JACKING_20,
+ SFX_PLAYER_ANGRY_JACKING_21,
+ SFX_PLAYER_ANGRY_JACKING_22,
+ SFX_PLAYER_ANGRY_JACKING_23,
+ SFX_PLAYER_ANGRY_JACKING_24,
+ SFX_PLAYER_ANGRY_JACKING_25,
+ SFX_PLAYER_ANGRY_JACKING_26,
+ SFX_PLAYER_ANGRY_JACKING_27,
+ SFX_PLAYER_ANGRY_JACKING_28,
+ SFX_PLAYER_ANGRY_JACKING_29,
+ SFX_PLAYER_ANGRY_JACKING_30,
+ SFX_PLAYER_ANGRY_JACKING_31,
+ SFX_PLAYER_ANGRY_JACKING_32,
+ SFX_PLAYER_ANGRY_JACKING_33,
+ SFX_PLAYER_ANGRY_JACKING_34,
+ SFX_PLAYER_ANGRY_JACKING_35,
+ SFX_PLAYER_ANGRY_JACKING_36,
+ SFX_PLAYER_ANGRY_JACKING_37,
+ SFX_PLAYER_ANGRY_JACKING_38,
+ SFX_PLAYER_ANGRY_JACKING_39,
+ SFX_PLAYER_ANGRY_JACKING_40,
+ SFX_PLAYER_ANGRY_JACKING_41,
+ SFX_PLAYER_ANGRY_JACKING_42,
+ SFX_PLAYER_ANGRY_JACKING_43,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_1,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_2,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_3,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_4,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_5,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_6,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_7,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_8,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_9,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_10,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_11,
+ SFX_PLAYER_ANGRY_PICK_UP_CASH_12,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_1,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_2,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_3,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_4,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_5,
+ SFX_PLAYER_ANGRY_PICK_UP_HOOKER_6,
+ SFX_PLAYER_ANGRY_PULL_GUN_1,
+ SFX_PLAYER_ANGRY_PULL_GUN_2,
+ SFX_PLAYER_ANGRY_PULL_GUN_3,
+ SFX_PLAYER_ANGRY_PULL_GUN_4,
+ SFX_PLAYER_ANGRY_PULL_GUN_5,
+ SFX_PLAYER_ANGRY_PULL_GUN_6,
+ SFX_PLAYER_ANGRY_PULL_GUN_7,
+ SFX_PLAYER_ANGRY_PULL_GUN_8,
+ SFX_PLAYER_ANGRY_PULL_GUN_9,
+ SFX_PLAYER_ANGRY_PULL_GUN_10,
+ SFX_PLAYER_ANGRY_PULL_GUN_11,
+ SFX_PLAYER_ANGRY_PULL_GUN_12,
+ SFX_PLAYER_ANGRY_PULL_GUN_13,
+ SFX_PLAYER_ANGRY_PULL_GUN_14,
+ SFX_PLAYER_ANGRY_PULL_GUN_15,
+ SFX_PLAYER_ANGRY_PULL_GUN_16,
+ SFX_PLAYER_ANGRY_PULL_GUN_17,
+ SFX_PLAYER_ANGRY_PULL_GUN_18,
+ SFX_PLAYER_ANGRY_PULL_GUN_19,
+ SFX_PLAYER_ANGRY_PULL_GUN_20,
+ SFX_PLAYER_ANGRY_PULL_GUN_21,
+ SFX_PLAYER_ANGRY_PULL_GUN_22,
+ SFX_PLAYER_ANGRY_PULL_GUN_23,
+ SFX_PLAYER_ANGRY_PULL_GUN_24,
+ SFX_PLAYER_ANGRY_PULL_GUN_25,
+ SFX_PLAYER_ANGRY_PULL_GUN_26,
+ SFX_PLAYER_ANGRY_PULL_GUN_27,
+ SFX_PLAYER_ANGRY_PULL_GUN_28,
+ SFX_PLAYER_ANGRY_PULL_GUN_29,
+ SFX_PLAYER_ANGRY_PULL_GUN_30,
+ SFX_PLAYER_ANGRY_PULL_GUN_31,
+ SFX_PLAYER_ANGRY_PULL_GUN_32,
+ SFX_PLAYER_ANGRY_PULL_GUN_33,
+ SFX_PLAYER_ANGRY_PULL_GUN_34,
+ SFX_PLAYER_ANGRY_PULL_GUN_35,
+ SFX_PLAYER_ANGRY_PULL_GUN_36,
+ SFX_PLAYER_ANGRY_PULL_GUN_37,
+ SFX_PLAYER_ANGRY_PULL_GUN_38,
+ SFX_PLAYER_ANGRY_PULL_GUN_39,
+ SFX_PLAYER_ANGRY_PULL_GUN_40,
+ SFX_PLAYER_ANGRY_PULL_GUN_41,
+ SFX_PLAYER_ANGRY_PULL_GUN_42,
+ SFX_PLAYER_ANGRY_PULL_GUN_43,
+ SFX_PLAYER_ANGRY_PULL_GUN_44,
+ SFX_PLAYER_ANGRY_PULL_GUN_45,
+ SFX_PLAYER_ANGRY_PULL_GUN_46,
+ SFX_PLAYER_ANGRY_PULL_GUN_47,
+ SFX_PLAYER_ANGRY_PULL_GUN_48,
+ SFX_PLAYER_ANGRY_PULL_GUN_49,
+ SFX_PLAYER_ANGRY_PULL_GUN_50,
+ SFX_PLAYER_ANGRY_PULL_GUN_51,
+ SFX_PLAYER_ANGRY_PULL_GUN_52,
+ SFX_PLAYER_ANGRY_SEX_1,
+ SFX_PLAYER_ANGRY_SEX_2,
+ SFX_PLAYER_ANGRY_SEX_3,
+ SFX_PLAYER_ANGRY_SEX_4,
+ SFX_PLAYER_ANGRY_SEX_5,
+ SFX_PLAYER_ANGRY_SEX_6,
+ SFX_PLAYER_ANGRY_SEX_7,
+ SFX_PLAYER_ANGRY_SEX_8,
+ SFX_PLAYER_ANGRY_SEX_9,
+ SFX_PLAYER_ANGRY_SEX_10,
+ SFX_PLAYER_ANGRY_SEX_11,
+ SFX_PLAYER_ANGRY_SEX_12,
+ SFX_PLAYER_ANGRY_SEX_13,
+ SFX_PLAYER_ANGRY_SEX_14,
+ SFX_PLAYER_ANGRY_SEX_15,
+ SFX_PLAYER_ANGRY_SEX_16,
+ SFX_PLAYER_ANGRY_SEX_17,
+ SFX_PLAYER_ANGRY_SEX_18,
+ SFX_PLAYER_ANGRY_SHOOT_1,
+ SFX_PLAYER_ANGRY_SHOOT_2,
+ SFX_PLAYER_ANGRY_SHOOT_3,
+ SFX_PLAYER_ANGRY_SHOOT_4,
+ SFX_PLAYER_ANGRY_SHOOT_5,
+ SFX_PLAYER_ANGRY_SHOOT_6,
+ SFX_PLAYER_ANGRY_SHOOT_7,
+ SFX_PLAYER_ANGRY_SHOOT_8,
+ SFX_PLAYER_ANGRY_SHOOT_9,
+ SFX_PLAYER_ANGRY_SHOOT_10,
+ SFX_PLAYER_ANGRY_SHOOT_11,
+ SFX_PLAYER_ANGRY_SHOOT_12,
+ SFX_PLAYER_ANGRY_SHOOT_13,
+ SFX_PLAYER_ANGRY_SHOOT_14,
+ SFX_PLAYER_ANGRY_SHOOT_15,
+ SFX_PLAYER_ANGRY_SHOOT_16,
+ SFX_PLAYER_ANGRY_SHOOT_17,
+ SFX_PLAYER_ANGRY_SHOOT_18,
+ SFX_PLAYER_ANGRY_SHOOT_19,
+ SFX_PLAYER_ANGRY_SHOOT_20,
+ SFX_PLAYER_ANGRY_SHOOT_21,
+ SFX_PLAYER_ANGRY_SHOOT_22,
+ SFX_PLAYER_ANGRY_SHOOT_23,
+ SFX_PLAYER_ANGRY_SHOOT_24,
+ SFX_PLAYER_ANGRY_SHOOT_25,
+ SFX_PLAYER_ANGRY_SHOOT_26,
+ SFX_PLAYER_ANGRY_SHOOT_27,
+ SFX_PLAYER_ANGRY_SHOOT_28,
+ SFX_PLAYER_ANGRY_SHOOT_29,
+ SFX_PLAYER_ANGRY_SHOOT_30,
+ SFX_PLAYER_ANGRY_SHOOT_31,
+ SFX_PLAYER_ANGRY_SHOOT_32,
+ SFX_PLAYER_ANGRY_SHOOT_33,
+ SFX_PLAYER_ANGRY_SHOOT_34,
+ SFX_PLAYER_ANGRY_SHOOT_35,
+ SFX_PLAYER_ANGRY_SHOOT_36,
+ SFX_PLAYER_ANGRY_SHOOT_37,
+ SFX_PLAYER_ANGRY_SHOOT_38,
+ SFX_PLAYER_ANGRY_SHOOT_39,
+
+ SFX_PLAYER_CALM_BUSTED_1,
+ SFX_PLAYER_CALM_BUSTED_2,
+ SFX_PLAYER_CALM_BUSTED_3,
+ SFX_PLAYER_CALM_BUSTED_4,
+ SFX_PLAYER_CALM_BUSTED_5,
+ SFX_PLAYER_CALM_BUSTED_6,
+ SFX_PLAYER_CALM_BUSTED_7,
+ SFX_PLAYER_CALM_BUSTED_8,
+ SFX_PLAYER_CALM_BUSTED_9,
+ SFX_PLAYER_CALM_BUSTED_10,
+ SFX_PLAYER_CALM_BUSTED_11,
+ SFX_PLAYER_CALM_BUSTED_12,
+ SFX_PLAYER_CALM_BUSTED_13,
+ SFX_PLAYER_CALM_BUSTED_14,
+ SFX_PLAYER_CALM_BUSTED_15,
+ SFX_PLAYER_CALM_BUSTED_16,
+ SFX_PLAYER_CALM_BUSTED_17,
+ SFX_PLAYER_CALM_BUSTED_18,
+ SFX_PLAYER_CALM_BUSTED_19,
+ SFX_PLAYER_CALM_BUSTED_20,
+ SFX_PLAYER_CALM_BUSTED_21,
+ SFX_PLAYER_CALM_BUSTED_22,
+ SFX_PLAYER_CALM_CHASED_1,
+ SFX_PLAYER_CALM_CHASED_2,
+ SFX_PLAYER_CALM_CHASED_3,
+ SFX_PLAYER_CALM_CHASED_4,
+ SFX_PLAYER_CALM_CHASED_5,
+ SFX_PLAYER_CALM_CHASED_6,
+ SFX_PLAYER_CALM_CHASED_7,
+ SFX_PLAYER_CALM_CHASED_8,
+ SFX_PLAYER_CALM_CHASED_9,
+ SFX_PLAYER_CALM_CHASED_10,
+ SFX_PLAYER_CALM_CHASED_11,
+ SFX_PLAYER_CALM_CHASED_12,
+ SFX_PLAYER_CALM_CHASED_13,
+ SFX_PLAYER_CALM_CHASED_14,
+ SFX_PLAYER_CALM_CHASED_15,
+ SFX_PLAYER_CALM_CHASED_16,
+ SFX_PLAYER_CALM_CHASED_17,
+ SFX_PLAYER_CALM_CHASED_18,
+ SFX_PLAYER_CALM_CHASED_19,
+ SFX_PLAYER_CALM_CHASED_20,
+ SFX_PLAYER_CALM_CRASH_1,
+ SFX_PLAYER_CALM_CRASH_2,
+ SFX_PLAYER_CALM_CRASH_3,
+ SFX_PLAYER_CALM_CRASH_4,
+ SFX_PLAYER_CALM_CRASH_5,
+ SFX_PLAYER_CALM_CRASH_6,
+ SFX_PLAYER_CALM_CRASH_7,
+ SFX_PLAYER_CALM_CRASH_8,
+ SFX_PLAYER_CALM_CRASH_9,
+ SFX_PLAYER_CALM_CRASH_10,
+ SFX_PLAYER_CALM_CRASH_11,
+ SFX_PLAYER_CALM_CRASH_12,
+ SFX_PLAYER_CALM_CRASH_13,
+ SFX_PLAYER_CALM_CRASH_14,
+ SFX_PLAYER_CALM_CRASH_15,
+ SFX_PLAYER_CALM_CRASH_16,
+ SFX_PLAYER_CALM_CRASH_17,
+ SFX_PLAYER_CALM_CRASH_18,
+ SFX_PLAYER_CALM_CRASH_19,
+ SFX_PLAYER_CALM_CRASH_20,
+ SFX_PLAYER_CALM_CRASH_21,
+ SFX_PLAYER_CALM_CRASH_22,
+ SFX_PLAYER_CALM_CRASH_23,
+ SFX_PLAYER_CALM_CRASH_24,
+ SFX_PLAYER_CALM_CRASH_25,
+ SFX_PLAYER_CALM_CRASH_26,
+ SFX_PLAYER_CALM_CRASH_27,
+ SFX_PLAYER_CALM_CRASH_28,
+ SFX_PLAYER_CALM_CRASH_29,
+ SFX_PLAYER_CALM_CRASH_30,
+ SFX_PLAYER_CALM_CRASH_31,
+ SFX_PLAYER_CALM_CRASH_32,
+ SFX_PLAYER_CALM_CRASH_33,
+ SFX_PLAYER_CALM_CRASH_34,
+ SFX_PLAYER_CALM_CRASH_35,
+ SFX_PLAYER_CALM_CRASH_36,
+ SFX_PLAYER_CALM_CRASH_37,
+ SFX_PLAYER_CALM_CRASH_38,
+ SFX_PLAYER_CALM_CRASH_39,
+ SFX_PLAYER_CALM_CRASH_40,
+ SFX_PLAYER_CALM_CRASH_41,
+ SFX_PLAYER_CALM_CRASH_42,
+ SFX_PLAYER_CALM_CRASH_43,
+ SFX_PLAYER_CALM_FIGHT_1,
+ SFX_PLAYER_CALM_FIGHT_2,
+ SFX_PLAYER_CALM_FIGHT_3,
+ SFX_PLAYER_CALM_FIGHT_4,
+ SFX_PLAYER_CALM_FIGHT_5,
+ SFX_PLAYER_CALM_FIGHT_6,
+ SFX_PLAYER_CALM_FIGHT_7,
+ SFX_PLAYER_CALM_FIGHT_8,
+ SFX_PLAYER_CALM_FIGHT_9,
+ SFX_PLAYER_CALM_FIGHT_10,
+ SFX_PLAYER_CALM_FIGHT_11,
+ SFX_PLAYER_CALM_FIGHT_12,
+ SFX_PLAYER_CALM_FIGHT_13,
+ SFX_PLAYER_CALM_FIGHT_14,
+ SFX_PLAYER_CALM_FIGHT_15,
+ SFX_PLAYER_CALM_FIGHT_16,
+ SFX_PLAYER_CALM_FIGHT_17,
+ SFX_PLAYER_CALM_FIGHT_18,
+ SFX_PLAYER_CALM_FIGHT_19,
+ SFX_PLAYER_CALM_FIGHT_20,
+ SFX_PLAYER_CALM_FIGHT_21,
+ SFX_PLAYER_CALM_FIGHT_22,
+ SFX_PLAYER_CALM_FIGHT_23,
+ SFX_PLAYER_CALM_FIGHT_24,
+ SFX_PLAYER_CALM_FIGHT_25,
+ SFX_PLAYER_CALM_FIGHT_26,
+ SFX_PLAYER_CALM_FIGHT_27,
+ SFX_PLAYER_CALM_FIGHT_28,
+ SFX_PLAYER_CALM_FIGHT_29,
+ SFX_PLAYER_CALM_FIGHT_30,
+ SFX_PLAYER_CALM_FIGHT_31,
+ SFX_PLAYER_CALM_FIGHT_32,
+ SFX_PLAYER_CALM_FIGHT_33,
+ SFX_PLAYER_CALM_FIGHT_34,
+ SFX_PLAYER_CALM_FIGHT_35,
+ SFX_PLAYER_CALM_FIGHT_36,
+ SFX_PLAYER_CALM_FIGHT_37,
+ SFX_PLAYER_CALM_FIGHT_38,
+ SFX_PLAYER_CALM_FIGHT_39,
+ SFX_PLAYER_CALM_FIGHT_40,
+ SFX_PLAYER_CALM_FIGHT_41,
+ SFX_PLAYER_CALM_FIGHT_42,
+ SFX_PLAYER_CALM_FIGHT_43,
+ SFX_PLAYER_CALM_FIGHT_44,
+ SFX_PLAYER_CALM_FIGHT_45,
+ SFX_PLAYER_CALM_FIGHT_46,
+ SFX_PLAYER_CALM_FIGHT_47,
+ SFX_PLAYER_CALM_JACKED_1,
+ SFX_PLAYER_CALM_JACKED_2,
+ SFX_PLAYER_CALM_JACKED_3,
+ SFX_PLAYER_CALM_JACKED_4,
+ SFX_PLAYER_CALM_JACKED_5,
+ SFX_PLAYER_CALM_JACKED_6,
+ SFX_PLAYER_CALM_JACKED_7,
+ SFX_PLAYER_CALM_JACKED_8,
+ SFX_PLAYER_CALM_JACKED_9,
+ SFX_PLAYER_CALM_JACKED_10,
+ SFX_PLAYER_CALM_JACKED_11,
+ SFX_PLAYER_CALM_JACKED_12,
+ SFX_PLAYER_CALM_JACKED_13,
+ SFX_PLAYER_CALM_JACKED_14,
+ SFX_PLAYER_CALM_JACKED_15,
+ SFX_PLAYER_CALM_JACKED_16,
+ SFX_PLAYER_CALM_JACKED_17,
+ SFX_PLAYER_CALM_JACKED_18,
+ SFX_PLAYER_CALM_JACKED_19,
+ SFX_PLAYER_CALM_JACKED_20,
+ SFX_PLAYER_CALM_JACKED_21,
+ SFX_PLAYER_CALM_JACKED_22,
+ SFX_PLAYER_CALM_JACKED_23,
+ SFX_PLAYER_CALM_JACKED_24,
+ SFX_PLAYER_CALM_JACKING_1,
+ SFX_PLAYER_CALM_JACKING_2,
+ SFX_PLAYER_CALM_JACKING_3,
+ SFX_PLAYER_CALM_JACKING_4,
+ SFX_PLAYER_CALM_JACKING_5,
+ SFX_PLAYER_CALM_JACKING_6,
+ SFX_PLAYER_CALM_JACKING_7,
+ SFX_PLAYER_CALM_JACKING_8,
+ SFX_PLAYER_CALM_JACKING_9,
+ SFX_PLAYER_CALM_JACKING_10,
+ SFX_PLAYER_CALM_JACKING_11,
+ SFX_PLAYER_CALM_JACKING_12,
+ SFX_PLAYER_CALM_JACKING_13,
+ SFX_PLAYER_CALM_JACKING_14,
+ SFX_PLAYER_CALM_JACKING_15,
+ SFX_PLAYER_CALM_JACKING_16,
+ SFX_PLAYER_CALM_JACKING_17,
+ SFX_PLAYER_CALM_JACKING_18,
+ SFX_PLAYER_CALM_JACKING_19,
+ SFX_PLAYER_CALM_JACKING_20,
+ SFX_PLAYER_CALM_JACKING_21,
+ SFX_PLAYER_CALM_JACKING_22,
+ SFX_PLAYER_CALM_JACKING_23,
+ SFX_PLAYER_CALM_JACKING_24,
+ SFX_PLAYER_CALM_JACKING_25,
+ SFX_PLAYER_CALM_JACKING_26,
+ SFX_PLAYER_CALM_JACKING_27,
+ SFX_PLAYER_CALM_JACKING_28,
+ SFX_PLAYER_CALM_JACKING_29,
+ SFX_PLAYER_CALM_JACKING_30,
+ SFX_PLAYER_CALM_JACKING_31,
+ SFX_PLAYER_CALM_JACKING_32,
+ SFX_PLAYER_CALM_JACKING_33,
+ SFX_PLAYER_CALM_JACKING_34,
+ SFX_PLAYER_CALM_JACKING_35,
+ SFX_PLAYER_CALM_JACKING_36,
+ SFX_PLAYER_CALM_JACKING_37,
+ SFX_PLAYER_CALM_JACKING_38,
+ SFX_PLAYER_CALM_JACKING_39,
+ SFX_PLAYER_CALM_JACKING_40,
+ SFX_PLAYER_CALM_PICK_UP_CASH_1,
+ SFX_PLAYER_CALM_PICK_UP_CASH_2,
+ SFX_PLAYER_CALM_PICK_UP_CASH_3,
+ SFX_PLAYER_CALM_PICK_UP_CASH_4,
+ SFX_PLAYER_CALM_PICK_UP_CASH_5,
+ SFX_PLAYER_CALM_PICK_UP_CASH_6,
+ SFX_PLAYER_CALM_PICK_UP_CASH_7,
+ SFX_PLAYER_CALM_PICK_UP_CASH_8,
+ SFX_PLAYER_CALM_PICK_UP_CASH_9,
+ SFX_PLAYER_CALM_PICK_UP_CASH_10,
+ SFX_PLAYER_CALM_PICK_UP_CASH_11,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_1,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_2,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_3,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_4,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_5,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_6,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_7,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_8,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_9,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_10,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_11,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_12,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_13,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_14,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_15,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_16,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_17,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_18,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_19,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_20,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_21,
+ SFX_PLAYER_CALM_PICK_UP_HOOKER_22,
+ SFX_PLAYER_CALM_PULL_GUN_1,
+ SFX_PLAYER_CALM_PULL_GUN_2,
+ SFX_PLAYER_CALM_PULL_GUN_3,
+ SFX_PLAYER_CALM_PULL_GUN_4,
+ SFX_PLAYER_CALM_PULL_GUN_5,
+ SFX_PLAYER_CALM_PULL_GUN_6,
+ SFX_PLAYER_CALM_PULL_GUN_7,
+ SFX_PLAYER_CALM_PULL_GUN_8,
+ SFX_PLAYER_CALM_PULL_GUN_9,
+ SFX_PLAYER_CALM_PULL_GUN_10,
+ SFX_PLAYER_CALM_PULL_GUN_11,
+ SFX_PLAYER_CALM_PULL_GUN_12,
+ SFX_PLAYER_CALM_PULL_GUN_13,
+ SFX_PLAYER_CALM_PULL_GUN_14,
+ SFX_PLAYER_CALM_PULL_GUN_15,
+ SFX_PLAYER_CALM_PULL_GUN_16,
+ SFX_PLAYER_CALM_PULL_GUN_17,
+ SFX_PLAYER_CALM_PULL_GUN_18,
+ SFX_PLAYER_CALM_PULL_GUN_19,
+ SFX_PLAYER_CALM_PULL_GUN_20,
+ SFX_PLAYER_CALM_PULL_GUN_21,
+ SFX_PLAYER_CALM_PULL_GUN_22,
+ SFX_PLAYER_CALM_PULL_GUN_23,
+ SFX_PLAYER_CALM_PULL_GUN_24,
+ SFX_PLAYER_CALM_PULL_GUN_25,
+ SFX_PLAYER_CALM_PULL_GUN_26,
+ SFX_PLAYER_CALM_PULL_GUN_27,
+ SFX_PLAYER_CALM_PULL_GUN_28,
+ SFX_PLAYER_CALM_PULL_GUN_29,
+ SFX_PLAYER_CALM_PULL_GUN_30,
+ SFX_PLAYER_CALM_PULL_GUN_31,
+ SFX_PLAYER_CALM_PULL_GUN_32,
+ SFX_PLAYER_CALM_PULL_GUN_33,
+ SFX_PLAYER_CALM_PULL_GUN_34,
+ SFX_PLAYER_CALM_PULL_GUN_35,
+ SFX_PLAYER_CALM_PULL_GUN_36,
+ SFX_PLAYER_CALM_PULL_GUN_37,
+ SFX_PLAYER_CALM_PULL_GUN_38,
+ SFX_PLAYER_CALM_PULL_GUN_39,
+ SFX_PLAYER_CALM_SEX_1,
+ SFX_PLAYER_CALM_SEX_2,
+ SFX_PLAYER_CALM_SEX_3,
+ SFX_PLAYER_CALM_SEX_4,
+ SFX_PLAYER_CALM_SEX_5,
+ SFX_PLAYER_CALM_SEX_6,
+ SFX_PLAYER_CALM_SEX_7,
+ SFX_PLAYER_CALM_SEX_8,
+ SFX_PLAYER_CALM_SHOOT_1,
+ SFX_PLAYER_CALM_SHOOT_2,
+ SFX_PLAYER_CALM_SHOOT_3,
+ SFX_PLAYER_CALM_SHOOT_4,
+ SFX_PLAYER_CALM_SHOOT_5,
+ SFX_PLAYER_CALM_SHOOT_6,
+ SFX_PLAYER_CALM_SHOOT_7,
+ SFX_PLAYER_CALM_SHOOT_8,
+ SFX_PLAYER_CALM_SHOOT_9,
+ SFX_PLAYER_CALM_SHOOT_10,
+ SFX_PLAYER_CALM_SHOOT_11,
+ SFX_PLAYER_CALM_SHOOT_12,
+ SFX_PLAYER_CALM_SHOOT_13,
+ SFX_PLAYER_CALM_SHOOT_14,
+ SFX_PLAYER_CALM_SHOOT_15,
+ SFX_PLAYER_CALM_SHOOT_16,
+ SFX_PLAYER_CALM_SHOOT_17,
+ SFX_PLAYER_CALM_SHOOT_18,
+ SFX_PLAYER_CALM_SHOOT_19,
+ SFX_PLAYER_CALM_SHOOT_20,
+ SFX_PLAYER_CALM_SHOOT_21,
+ SFX_PLAYER_CALM_SHOOT_22,
+ SFX_PLAYER_CALM_SHOOT_23,
+ SFX_PLAYER_CALM_SHOOT_24,
+ SFX_PLAYER_CALM_SHOOT_25,
+ SFX_PLAYER_CALM_SHOOT_26,
+ SFX_PLAYER_CALM_SHOOT_27,
+ SFX_PLAYER_CALM_SHOOT_28,
+ SFX_PLAYER_CALM_SHOOT_29,
+ SFX_PLAYER_CALM_SHOOT_30,
+ SFX_PLAYER_CALM_SHOOT_31,
+ SFX_PLAYER_CALM_SHOOT_32,
+ SFX_PLAYER_CALM_SHOOT_33,
+ SFX_PLAYER_CALM_SHOOT_34,
+ SFX_PLAYER_CALM_SHOOT_35,
+
+ SFX_PLAYER_PISSED_OFF_CRASH_1,
+ SFX_PLAYER_PISSED_OFF_CRASH_2,
+ SFX_PLAYER_PISSED_OFF_CRASH_3,
+ SFX_PLAYER_PISSED_OFF_CRASH_4,
+ SFX_PLAYER_PISSED_OFF_CRASH_5,
+ SFX_PLAYER_PISSED_OFF_CRASH_6,
+ SFX_PLAYER_PISSED_OFF_CRASH_7,
+ SFX_PLAYER_PISSED_OFF_CRASH_8,
+ SFX_PLAYER_PISSED_OFF_CRASH_9,
+ SFX_PLAYER_PISSED_OFF_CRASH_10,
+ SFX_PLAYER_PISSED_OFF_CRASH_11,
+ SFX_PLAYER_PISSED_OFF_CRASH_12,
+ SFX_PLAYER_PISSED_OFF_CRASH_13,
+ SFX_PLAYER_PISSED_OFF_CRASH_14,
+ SFX_PLAYER_PISSED_OFF_CRASH_15,
+ SFX_PLAYER_PISSED_OFF_CRASH_16,
+ SFX_PLAYER_PISSED_OFF_CRASH_17,
+ SFX_PLAYER_PISSED_OFF_CRASH_18,
+ SFX_PLAYER_PISSED_OFF_CRASH_19,
+ SFX_PLAYER_PISSED_OFF_CRASH_20,
+ SFX_PLAYER_PISSED_OFF_CRASH_21,
+ SFX_PLAYER_PISSED_OFF_CRASH_22,
+ SFX_PLAYER_PISSED_OFF_CRASH_23,
+ SFX_PLAYER_PISSED_OFF_CRASH_24,
+ SFX_PLAYER_PISSED_OFF_CRASH_25,
+ SFX_PLAYER_PISSED_OFF_CRASH_26,
+ SFX_PLAYER_PISSED_OFF_CRASH_27,
+ SFX_PLAYER_PISSED_OFF_CRASH_28,
+ SFX_PLAYER_PISSED_OFF_CRASH_29,
+ SFX_PLAYER_PISSED_OFF_CRASH_30,
+ SFX_PLAYER_PISSED_OFF_CRASH_31,
+ SFX_PLAYER_PISSED_OFF_CRASH_32,
+ SFX_PLAYER_PISSED_OFF_CRASH_33,
+ SFX_PLAYER_PISSED_OFF_CRASH_34,
+ SFX_PLAYER_PISSED_OFF_CRASH_35,
+ SFX_PLAYER_PISSED_OFF_CRASH_36,
+ SFX_PLAYER_PISSED_OFF_CRASH_37,
+ SFX_PLAYER_PISSED_OFF_CRASH_38,
+ SFX_PLAYER_PISSED_OFF_CRASH_39,
+ SFX_PLAYER_PISSED_OFF_CRASH_40,
+ SFX_PLAYER_PISSED_OFF_CRASH_41,
+ SFX_PLAYER_PISSED_OFF_CRASH_42,
+ SFX_PLAYER_PISSED_OFF_CRASH_43,
+ SFX_PLAYER_PISSED_OFF_CRASH_44,
+ SFX_PLAYER_PISSED_OFF_FIGHT_1,
+ SFX_PLAYER_PISSED_OFF_FIGHT_2,
+ SFX_PLAYER_PISSED_OFF_FIGHT_3,
+ SFX_PLAYER_PISSED_OFF_FIGHT_4,
+ SFX_PLAYER_PISSED_OFF_FIGHT_5,
+ SFX_PLAYER_PISSED_OFF_FIGHT_6,
+ SFX_PLAYER_PISSED_OFF_FIGHT_7,
+ SFX_PLAYER_PISSED_OFF_FIGHT_8,
+ SFX_PLAYER_PISSED_OFF_FIGHT_9,
+ SFX_PLAYER_PISSED_OFF_FIGHT_10,
+ SFX_PLAYER_PISSED_OFF_FIGHT_11,
+ SFX_PLAYER_PISSED_OFF_FIGHT_12,
+ SFX_PLAYER_PISSED_OFF_FIGHT_13,
+ SFX_PLAYER_PISSED_OFF_FIGHT_14,
+ SFX_PLAYER_PISSED_OFF_FIGHT_15,
+ SFX_PLAYER_PISSED_OFF_FIGHT_16,
+ SFX_PLAYER_PISSED_OFF_FIGHT_17,
+ SFX_PLAYER_PISSED_OFF_FIGHT_18,
+ SFX_PLAYER_PISSED_OFF_FIGHT_19,
+ SFX_PLAYER_PISSED_OFF_FIGHT_20,
+ SFX_PLAYER_PISSED_OFF_FIGHT_21,
+ SFX_PLAYER_PISSED_OFF_FIGHT_22,
+ SFX_PLAYER_PISSED_OFF_FIGHT_23,
+ SFX_PLAYER_PISSED_OFF_FIGHT_24,
+ SFX_PLAYER_PISSED_OFF_FIGHT_25,
+ SFX_PLAYER_PISSED_OFF_FIGHT_26,
+ SFX_PLAYER_PISSED_OFF_FIGHT_27,
+ SFX_PLAYER_PISSED_OFF_FIGHT_28,
+ SFX_PLAYER_PISSED_OFF_FIGHT_29,
+ SFX_PLAYER_PISSED_OFF_FIGHT_30,
+ SFX_PLAYER_PISSED_OFF_FIGHT_31,
+ SFX_PLAYER_PISSED_OFF_FIGHT_32,
+ SFX_PLAYER_PISSED_OFF_FIGHT_33,
+ SFX_PLAYER_PISSED_OFF_FIGHT_34,
+ SFX_PLAYER_PISSED_OFF_FIGHT_35,
+ SFX_PLAYER_PISSED_OFF_FIGHT_36,
+ SFX_PLAYER_PISSED_OFF_FIGHT_37,
+ SFX_PLAYER_PISSED_OFF_FIGHT_38,
+ SFX_PLAYER_PISSED_OFF_FIGHT_39,
+ SFX_PLAYER_PISSED_OFF_FIGHT_40,
+ SFX_PLAYER_PISSED_OFF_FIGHT_41,
+ SFX_PLAYER_PISSED_OFF_FIGHT_42,
+ SFX_PLAYER_PISSED_OFF_FIGHT_43,
+ SFX_PLAYER_PISSED_OFF_FIGHT_44,
+ SFX_PLAYER_PISSED_OFF_FIGHT_45,
+ SFX_PLAYER_PISSED_OFF_FIGHT_46,
+ SFX_PLAYER_PISSED_OFF_FIGHT_47,
+ SFX_PLAYER_PISSED_OFF_FIGHT_48,
+ SFX_PLAYER_PISSED_OFF_FIGHT_49,
+ SFX_PLAYER_PISSED_OFF_FIGHT_50,
+ SFX_PLAYER_PISSED_OFF_FIGHT_51,
+ SFX_PLAYER_PISSED_OFF_FIGHT_52,
+ SFX_PLAYER_PISSED_OFF_FIGHT_53,
+ SFX_PLAYER_PISSED_OFF_FIGHT_54,
+ SFX_PLAYER_PISSED_OFF_FIGHT_55,
+ SFX_PLAYER_PISSED_OFF_FIGHT_56,
+ SFX_PLAYER_PISSED_OFF_FIGHT_57,
+ SFX_PLAYER_PISSED_OFF_FIGHT_58,
+ SFX_PLAYER_PISSED_OFF_FIGHT_59,
+ SFX_PLAYER_PISSED_OFF_FIGHT_60,
+ SFX_PLAYER_PISSED_OFF_FIGHT_61,
+ SFX_PLAYER_PISSED_OFF_JACKED_1,
+ SFX_PLAYER_PISSED_OFF_JACKED_2,
+ SFX_PLAYER_PISSED_OFF_JACKED_3,
+ SFX_PLAYER_PISSED_OFF_JACKED_4,
+ SFX_PLAYER_PISSED_OFF_JACKED_5,
+ SFX_PLAYER_PISSED_OFF_JACKED_6,
+ SFX_PLAYER_PISSED_OFF_JACKED_7,
+ SFX_PLAYER_PISSED_OFF_JACKED_8,
+ SFX_PLAYER_PISSED_OFF_JACKED_9,
+ SFX_PLAYER_PISSED_OFF_JACKED_10,
+ SFX_PLAYER_PISSED_OFF_JACKED_11,
+ SFX_PLAYER_PISSED_OFF_JACKED_12,
+ SFX_PLAYER_PISSED_OFF_JACKED_13,
+ SFX_PLAYER_PISSED_OFF_JACKED_14,
+ SFX_PLAYER_PISSED_OFF_JACKED_15,
+ SFX_PLAYER_PISSED_OFF_JACKED_16,
+ SFX_PLAYER_PISSED_OFF_JACKED_17,
+ SFX_PLAYER_PISSED_OFF_JACKED_18,
+ SFX_PLAYER_PISSED_OFF_JACKED_19,
+ SFX_PLAYER_PISSED_OFF_JACKED_20,
+ SFX_PLAYER_PISSED_OFF_JACKED_21,
+ SFX_PLAYER_PISSED_OFF_JACKING_1,
+ SFX_PLAYER_PISSED_OFF_JACKING_2,
+ SFX_PLAYER_PISSED_OFF_JACKING_3,
+ SFX_PLAYER_PISSED_OFF_JACKING_4,
+ SFX_PLAYER_PISSED_OFF_JACKING_5,
+ SFX_PLAYER_PISSED_OFF_JACKING_6,
+ SFX_PLAYER_PISSED_OFF_JACKING_7,
+ SFX_PLAYER_PISSED_OFF_JACKING_8,
+ SFX_PLAYER_PISSED_OFF_JACKING_9,
+ SFX_PLAYER_PISSED_OFF_JACKING_10,
+ SFX_PLAYER_PISSED_OFF_JACKING_11,
+ SFX_PLAYER_PISSED_OFF_JACKING_12,
+ SFX_PLAYER_PISSED_OFF_JACKING_13,
+ SFX_PLAYER_PISSED_OFF_JACKING_14,
+ SFX_PLAYER_PISSED_OFF_JACKING_15,
+ SFX_PLAYER_PISSED_OFF_JACKING_16,
+ SFX_PLAYER_PISSED_OFF_JACKING_17,
+ SFX_PLAYER_PISSED_OFF_JACKING_18,
+ SFX_PLAYER_PISSED_OFF_JACKING_19,
+ SFX_PLAYER_PISSED_OFF_JACKING_20,
+ SFX_PLAYER_PISSED_OFF_JACKING_21,
+ SFX_PLAYER_PISSED_OFF_JACKING_22,
+ SFX_PLAYER_PISSED_OFF_JACKING_23,
+ SFX_PLAYER_PISSED_OFF_JACKING_24,
+ SFX_PLAYER_PISSED_OFF_JACKING_25,
+ SFX_PLAYER_PISSED_OFF_JACKING_26,
+ SFX_PLAYER_PISSED_OFF_JACKING_27,
+ SFX_PLAYER_PISSED_OFF_JACKING_28,
+ SFX_PLAYER_PISSED_OFF_JACKING_29,
+ SFX_PLAYER_PISSED_OFF_JACKING_30,
+ SFX_PLAYER_PISSED_OFF_JACKING_31,
+ SFX_PLAYER_PISSED_OFF_JACKING_32,
+ SFX_PLAYER_PISSED_OFF_JACKING_33,
+ SFX_PLAYER_PISSED_OFF_JACKING_34,
+ SFX_PLAYER_PISSED_OFF_JACKING_35,
+ SFX_PLAYER_PISSED_OFF_JACKING_36,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_1,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_2,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_3,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_4,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_5,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_6,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_7,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_8,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_9,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_10,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_11,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_12,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_13,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_14,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_15,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_16,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_17,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_18,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_19,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_20,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_21,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_22,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_23,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_24,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_CASH_25,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_1,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_2,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_3,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_4,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_5,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_6,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_7,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_8,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_9,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_10,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_11,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_12,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_13,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_14,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_15,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_16,
+ SFX_PLAYER_PISSED_OFF_PICK_UP_HOOKER_17,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_1,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_2,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_3,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_4,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_5,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_6,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_7,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_8,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_9,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_10,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_11,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_12,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_13,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_14,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_15,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_16,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_17,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_18,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_19,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_20,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_21,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_22,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_23,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_24,
+ SFX_PLAYER_PISSED_OFF_PULL_GUN_25,
+ SFX_PLAYER_PISSED_OFF_SHOOT_1,
+ SFX_PLAYER_PISSED_OFF_SHOOT_2,
+ SFX_PLAYER_PISSED_OFF_SHOOT_3,
+ SFX_PLAYER_PISSED_OFF_SHOOT_4,
+ SFX_PLAYER_PISSED_OFF_SHOOT_5,
+ SFX_PLAYER_PISSED_OFF_SHOOT_6,
+ SFX_PLAYER_PISSED_OFF_SHOOT_7,
+ SFX_PLAYER_PISSED_OFF_SHOOT_8,
+ SFX_PLAYER_PISSED_OFF_SHOOT_9,
+ SFX_PLAYER_PISSED_OFF_SHOOT_10,
+ SFX_PLAYER_PISSED_OFF_SHOOT_11,
+ SFX_PLAYER_PISSED_OFF_SHOOT_12,
+ SFX_PLAYER_PISSED_OFF_SHOOT_13,
+ SFX_PLAYER_PISSED_OFF_SHOOT_14,
+ SFX_PLAYER_PISSED_OFF_SHOOT_15,
+ SFX_PLAYER_PISSED_OFF_SHOOT_16,
+ SFX_PLAYER_PISSED_OFF_SHOOT_17,
+ SFX_PLAYER_PISSED_OFF_SHOOT_18,
+ SFX_PLAYER_PISSED_OFF_SHOOT_19,
+ SFX_PLAYER_PISSED_OFF_SHOOT_20,
+ SFX_PLAYER_PISSED_OFF_SHOOT_21,
+ SFX_PLAYER_PISSED_OFF_SHOOT_22,
+ SFX_PLAYER_PISSED_OFF_SHOOT_23,
+ SFX_PLAYER_PISSED_OFF_SHOOT_24,
+ SFX_PLAYER_PISSED_OFF_SHOOT_25,
+ SFX_PLAYER_PISSED_OFF_SHOOT_26,
+ SFX_PLAYER_PISSED_OFF_SHOOT_27,
+ SFX_PLAYER_PISSED_OFF_SHOOT_28,
+ SFX_PLAYER_PISSED_OFF_SHOOT_29,
+
+ SFX_PLAYER_WISECRACKING_BUSTED_1,
+ SFX_PLAYER_WISECRACKING_BUSTED_2,
+ SFX_PLAYER_WISECRACKING_BUSTED_3,
+ SFX_PLAYER_WISECRACKING_BUSTED_4,
+ SFX_PLAYER_WISECRACKING_BUSTED_5,
+ SFX_PLAYER_WISECRACKING_BUSTED_6,
+ SFX_PLAYER_WISECRACKING_BUSTED_7,
+ SFX_PLAYER_WISECRACKING_BUSTED_8,
+ SFX_PLAYER_WISECRACKING_BUSTED_9,
+ SFX_PLAYER_WISECRACKING_BUSTED_10,
+ SFX_PLAYER_WISECRACKING_BUSTED_11,
+ SFX_PLAYER_WISECRACKING_BUSTED_12,
+ SFX_PLAYER_WISECRACKING_BUSTED_13,
+ SFX_PLAYER_WISECRACKING_BUSTED_14,
+ SFX_PLAYER_WISECRACKING_BUSTED_15,
+ SFX_PLAYER_WISECRACKING_BUSTED_16,
+ SFX_PLAYER_WISECRACKING_BUSTED_17,
+ SFX_PLAYER_WISECRACKING_BUSTED_18,
+ SFX_PLAYER_WISECRACKING_BUSTED_19,
+ SFX_PLAYER_WISECRACKING_BUSTED_20,
+ SFX_PLAYER_WISECRACKING_CHASED_1,
+ SFX_PLAYER_WISECRACKING_CHASED_2,
+ SFX_PLAYER_WISECRACKING_CHASED_3,
+ SFX_PLAYER_WISECRACKING_CHASED_4,
+ SFX_PLAYER_WISECRACKING_CHASED_5,
+ SFX_PLAYER_WISECRACKING_CHASED_6,
+ SFX_PLAYER_WISECRACKING_CHASED_7,
+ SFX_PLAYER_WISECRACKING_CRASH_1,
+ SFX_PLAYER_WISECRACKING_CRASH_2,
+ SFX_PLAYER_WISECRACKING_CRASH_3,
+ SFX_PLAYER_WISECRACKING_CRASH_4,
+ SFX_PLAYER_WISECRACKING_CRASH_5,
+ SFX_PLAYER_WISECRACKING_CRASH_6,
+ SFX_PLAYER_WISECRACKING_CRASH_7,
+ SFX_PLAYER_WISECRACKING_CRASH_8,
+ SFX_PLAYER_WISECRACKING_CRASH_9,
+ SFX_PLAYER_WISECRACKING_CRASH_10,
+ SFX_PLAYER_WISECRACKING_CRASH_11,
+ SFX_PLAYER_WISECRACKING_CRASH_12,
+ SFX_PLAYER_WISECRACKING_CRASH_13,
+ SFX_PLAYER_WISECRACKING_CRASH_14,
+ SFX_PLAYER_WISECRACKING_CRASH_15,
+ SFX_PLAYER_WISECRACKING_CRASH_16,
+ SFX_PLAYER_WISECRACKING_CRASH_17,
+ SFX_PLAYER_WISECRACKING_CRASH_18,
+ SFX_PLAYER_WISECRACKING_CRASH_19,
+ SFX_PLAYER_WISECRACKING_FIGHT_1,
+ SFX_PLAYER_WISECRACKING_FIGHT_2,
+ SFX_PLAYER_WISECRACKING_FIGHT_3,
+ SFX_PLAYER_WISECRACKING_FIGHT_4,
+ SFX_PLAYER_WISECRACKING_FIGHT_5,
+ SFX_PLAYER_WISECRACKING_FIGHT_6,
+ SFX_PLAYER_WISECRACKING_FIGHT_7,
+ SFX_PLAYER_WISECRACKING_FIGHT_8,
+ SFX_PLAYER_WISECRACKING_FIGHT_9,
+ SFX_PLAYER_WISECRACKING_FIGHT_10,
+ SFX_PLAYER_WISECRACKING_FIGHT_11,
+ SFX_PLAYER_WISECRACKING_FIGHT_12,
+ SFX_PLAYER_WISECRACKING_FIGHT_13,
+ SFX_PLAYER_WISECRACKING_FIGHT_14,
+ SFX_PLAYER_WISECRACKING_FIGHT_15,
+ SFX_PLAYER_WISECRACKING_FIGHT_16,
+ SFX_PLAYER_WISECRACKING_FIGHT_17,
+ SFX_PLAYER_WISECRACKING_FIGHT_18,
+ SFX_PLAYER_WISECRACKING_FIGHT_19,
+ SFX_PLAYER_WISECRACKING_FIGHT_20,
+ SFX_PLAYER_WISECRACKING_FIGHT_21,
+ SFX_PLAYER_WISECRACKING_FIGHT_22,
+ SFX_PLAYER_WISECRACKING_FIGHT_23,
+ SFX_PLAYER_WISECRACKING_FIGHT_24,
+ SFX_PLAYER_WISECRACKING_FIGHT_25,
+ SFX_PLAYER_WISECRACKING_FIGHT_26,
+ SFX_PLAYER_WISECRACKING_FIGHT_27,
+ SFX_PLAYER_WISECRACKING_JACKED_1,
+ SFX_PLAYER_WISECRACKING_JACKED_2,
+ SFX_PLAYER_WISECRACKING_JACKED_3,
+ SFX_PLAYER_WISECRACKING_JACKED_4,
+ SFX_PLAYER_WISECRACKING_JACKED_5,
+ SFX_PLAYER_WISECRACKING_JACKED_6,
+ SFX_PLAYER_WISECRACKING_JACKED_7,
+ SFX_PLAYER_WISECRACKING_JACKED_8,
+ SFX_PLAYER_WISECRACKING_JACKED_9,
+ SFX_PLAYER_WISECRACKING_JACKED_10,
+ SFX_PLAYER_WISECRACKING_JACKED_11,
+ SFX_PLAYER_WISECRACKING_JACKED_12,
+ SFX_PLAYER_WISECRACKING_JACKED_13,
+ SFX_PLAYER_WISECRACKING_JACKED_14,
+ SFX_PLAYER_WISECRACKING_JACKED_15,
+ SFX_PLAYER_WISECRACKING_JACKED_16,
+ SFX_PLAYER_WISECRACKING_JACKED_17,
+ SFX_PLAYER_WISECRACKING_JACKED_18,
+ SFX_PLAYER_WISECRACKING_JACKING_1,
+ SFX_PLAYER_WISECRACKING_JACKING_2,
+ SFX_PLAYER_WISECRACKING_JACKING_3,
+ SFX_PLAYER_WISECRACKING_JACKING_4,
+ SFX_PLAYER_WISECRACKING_JACKING_5,
+ SFX_PLAYER_WISECRACKING_JACKING_6,
+ SFX_PLAYER_WISECRACKING_JACKING_7,
+ SFX_PLAYER_WISECRACKING_JACKING_8,
+ SFX_PLAYER_WISECRACKING_JACKING_9,
+ SFX_PLAYER_WISECRACKING_JACKING_10,
+ SFX_PLAYER_WISECRACKING_JACKING_11,
+ SFX_PLAYER_WISECRACKING_JACKING_12,
+ SFX_PLAYER_WISECRACKING_JACKING_13,
+ SFX_PLAYER_WISECRACKING_JACKING_14,
+ SFX_PLAYER_WISECRACKING_JACKING_15,
+ SFX_PLAYER_WISECRACKING_JACKING_16,
+ SFX_PLAYER_WISECRACKING_JACKING_17,
+ SFX_PLAYER_WISECRACKING_JACKING_18,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_1,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_2,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_3,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_4,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_5,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_6,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_7,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_8,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_9,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_10,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_11,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_12,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_13,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_14,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_15,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_16,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_17,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_18,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_19,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_20,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_21,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_22,
+ SFX_PLAYER_WISECRACKING_PICK_UP_CASH_23,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_1,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_2,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_3,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_4,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_5,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_6,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_7,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_8,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_9,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_10,
+ SFX_PLAYER_WISECRACKING_PICK_UP_HOOKER_11,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_1,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_2,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_3,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_4,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_5,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_6,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_7,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_8,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_9,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_10,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_11,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_12,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_13,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_14,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_15,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_16,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_17,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_18,
+ SFX_PLAYER_WISECRACKING_PULL_GUN_19,
+ SFX_PLAYER_WISECRACKING_SEX_1,
+ SFX_PLAYER_WISECRACKING_SEX_2,
+ SFX_PLAYER_WISECRACKING_SEX_3,
+ SFX_PLAYER_WISECRACKING_SEX_4,
+ SFX_PLAYER_WISECRACKING_SEX_5,
+ SFX_PLAYER_WISECRACKING_SEX_6,
+ SFX_PLAYER_WISECRACKING_SEX_7,
+ SFX_PLAYER_WISECRACKING_SEX_8,
+ SFX_PLAYER_WISECRACKING_SEX_9,
+ SFX_PLAYER_WISECRACKING_SEX_10,
+ SFX_PLAYER_WISECRACKING_SHOOT_1,
+ SFX_PLAYER_WISECRACKING_SHOOT_2,
+ SFX_PLAYER_WISECRACKING_SHOOT_3,
+ SFX_PLAYER_WISECRACKING_SHOOT_4,
+ SFX_PLAYER_WISECRACKING_SHOOT_5,
+ SFX_PLAYER_WISECRACKING_SHOOT_6,
+ SFX_PLAYER_WISECRACKING_SHOOT_7,
+ SFX_PLAYER_WISECRACKING_SHOOT_8,
+ SFX_PLAYER_WISECRACKING_SHOOT_9,
+ SFX_PLAYER_DEATH,
+ SFX_PLAYER_AFTERSEX_1,
+ SFX_PLAYER_AFTERSEX_2,
+ SFX_PLAYER_AFTERSEX_3,
+ SFX_PLAYER_AFTERSEX_4,
+ SFX_PLAYER_AFTERSEX_5,
+ SFX_PLAYER_AFTERSEX_6,
+ SFX_PLAYER_AFTERSEX_7,
+ SFX_PLAYER_AFTERSEX_8,
+ SFX_PLAYER_AFTERSEX_9,
+ SFX_PLAYER_AFTERSEX_10,
+ SFX_PLAYER_AFTERSEX_11,
+ SFX_PLAYER_AFTERSEX_12,
+ SFX_PLAYER_AFTERSEX_13,
+ SFX_PLAYER_AFTERSEX_14,
+ SFX_PLAYER_AFTERSEX_15,
+ SFX_PLAYER_AFTERSEX_16,
+ SFX_PLAYER_AFTERSEX_17,
+ SFX_PLAYER_AFTERSEX_18,
+ SFX_PLAYER_HIT_BULLET_1,
+ SFX_PLAYER_HIT_BULLET_2,
+ SFX_PLAYER_HIT_BULLET_3,
+ SFX_PLAYER_HIT_BULLET_4,
+ SFX_PLAYER_HIT_BULLET_5,
+ SFX_PLAYER_HIT_BULLET_6,
+ SFX_PLAYER_HIT_BULLET_7,
+ SFX_PLAYER_HIT_BULLET_8,
+ SFX_PLAYER_HIT_BULLET_9,
+ SFX_PLAYER_HIT_BULLET_10,
+ SFX_PLAYER_HIT_BULLET_11,
+ SFX_PLAYER_HIT_BULLET_12,
+ SFX_PLAYER_HIT_BULLET_13,
+ SFX_PLAYER_HIT_BULLET_14,
+ SFX_PLAYER_HIT_BULLET_15,
+ SFX_PLAYER_HIT_BULLET_16,
+ SFX_PLAYER_HIT_BULLET_17,
+ SFX_PLAYER_HIT_BULLET_18,
+ SFX_PLAYER_HIT_BULLET_19,
+ SFX_PLAYER_HIT_BULLET_20,
+ SFX_PLAYER_HIT_BULLET_21,
+ SFX_PLAYER_HIT_BULLET_22,
+ SFX_PLAYER_HIT_BULLET_23,
+ SFX_PLAYER_HIT_BULLET_24,
+ SFX_PLAYER_HIT_BULLET_25,
+ SFX_PLAYER_HIT_BULLET_26,
+ SFX_PLAYER_HIT_BULLET_27,
+ SFX_PLAYER_HIT_BULLET_28,
+ SFX_PLAYER_HIT_BULLET_29,
+ SFX_PLAYER_HIT_BULLET_30,
+ SFX_PLAYER_HIT_BULLET_31,
+ SFX_PLAYER_HIT_BULLET_32,
+ SFX_PLAYER_HIT_BULLET_33,
+ SFX_PLAYER_HIT_GROUND_1,
+ SFX_PLAYER_HIT_GROUND_2,
+ SFX_PLAYER_HIT_GROUND_3,
+ SFX_PLAYER_HIT_GROUND_4,
+ SFX_PLAYER_HIT_GROUND_5,
+ SFX_PLAYER_HIT_GROUND_6,
+ SFX_PLAYER_HIT_GROUND_7,
+ SFX_PLAYER_HIT_GROUND_8,
+ SFX_PLAYER_HIT_GROUND_9,
+ SFX_PLAYER_HIT_GROUND_10,
+ SFX_PLAYER_HIT_GROUND_11,
+ SFX_PLAYER_HIT_GROUND_12,
+ SFX_PLAYER_HIT_GROUND_13,
+ SFX_PLAYER_HIT_GROUND_14,
+ SFX_PLAYER_HIT_GROUND_15,
+ SFX_PLAYER_HIT_GROUND_16,
+ SFX_PLAYER_HIT_GROUND_17,
+ SFX_PLAYER_HIT_GROUND_18,
+ SFX_PLAYER_HIT_GROUND_19,
+ SFX_PLAYER_HIT_GROUND_20,
+ SFX_PLAYER_HIT_GROUND_21,
+ SFX_PLAYER_HIT_GROUND_22,
+ SFX_PLAYER_HIT_GROUND_23,
+ SFX_PLAYER_HIT_GROUND_24,
+ SFX_PLAYER_HIT_GROUND_25,
+ SFX_PLAYER_HIT_GROUND_26,
+ SFX_PLAYER_HIT_GROUND_27,
+ SFX_PLAYER_HIT_GROUND_28,
+ SFX_PLAYER_HIT_GROUND_29,
+ SFX_PLAYER_HIT_GROUND_30,
+ SFX_PLAYER_HIT_GROUND_31,
+ SFX_PLAYER_HIT_GROUND_32,
+ SFX_PLAYER_HIT_GROUND_33,
+ SFX_PLAYER_HIT_GROUND_34,
+ SFX_PLAYER_HIT_GROUND_35,
+ SFX_PLAYER_HIT_FIST_1,
+ SFX_PLAYER_HIT_FIST_2,
+ SFX_PLAYER_HIT_FIST_3,
+ SFX_PLAYER_HIT_FIST_4,
+ SFX_PLAYER_HIT_FIST_5,
+ SFX_PLAYER_HIT_FIST_6,
+ SFX_PLAYER_HIT_FIST_7,
+ SFX_PLAYER_HIT_FIST_8,
+ SFX_PLAYER_HIT_FIST_9,
+ SFX_PLAYER_HIT_FIST_10,
+ SFX_PLAYER_HIT_FIST_11,
+ SFX_PLAYER_HIT_FIST_12,
+ SFX_PLAYER_HIT_FIST_13,
+ SFX_PLAYER_HIT_FIST_14,
+ SFX_PLAYER_HIT_FIST_15,
+ SFX_PLAYER_HIT_FIST_16,
+ SFX_PLAYER_HIT_FIST_17,
+ SFX_PLAYER_HIT_FIST_18,
+ SFX_PLAYER_HIT_FIST_19,
+ SFX_PLAYER_HIT_FIST_20,
+ SFX_PLAYER_HIT_FIST_21,
+ SFX_PLAYER_HIT_FIST_22,
+ SFX_PLAYER_HIT_FIST_23,
+ SFX_PLAYER_HIT_FIST_24,
+ SFX_PLAYER_HIT_FIST_25,
+ SFX_PLAYER_HIT_FIST_26,
+ SFX_PLAYER_HIT_FIST_27,
+ SFX_PLAYER_HIT_FIST_28,
+ SFX_PLAYER_HIT_FIST_29,
+ SFX_PLAYER_HIT_FIST_30,
+ SFX_PLAYER_HIT_FIST_31,
+ SFX_PLAYER_HIT_FIST_32,
+ SFX_PLAYER_HIT_FIST_33,
+ SFX_PLAYER_HIT_FIST_34,
+ SFX_PLAYER_HIT_FIST_35,
+ SFX_PLAYER_HIT_FIST_36,
+ SFX_PLAYER_HIT_FIST_37,
+ SFX_PLAYER_HIT_FIST_38,
+ SFX_PLAYER_HIT_FIST_39,
+ SFX_PLAYER_HIT_FIST_40,
+ SFX_PLAYER_HIT_FIST_41,
+ SFX_PLAYER_HIT_FIST_42,
+ SFX_PLAYER_ON_FIRE_1,
+ SFX_PLAYER_ON_FIRE_2,
+ SFX_PLAYER_ON_FIRE_3,
+ SFX_PLAYER_ON_FIRE_4,
+ SFX_PLAYER_ON_FIRE_5,
+ SFX_PLAYER_ON_FIRE_6,
+ SFX_PLAYER_ON_FIRE_7,
+ SFX_PLAYER_ON_FIRE_8,
+ SFX_PLAYER_ON_FIRE_9,
+ SFX_PLAYER_ON_FIRE_10,
+ SFX_PLAYER_ON_FIRE_11,
+ SFX_PLAYER_ON_FIRE_12,
+ SFX_PLAYER_ON_FIRE_13,
+ SFX_PLAYER_ON_FIRE_14,
+ SFX_PLAYER_ON_FIRE_15,
+ SFX_PLAYER_ON_FIRE_16,
+ TOTAL_AUDIO_SAMPLES,
NO_SAMPLE,
// shorthands
diff --git a/src/audio/AudioScriptObject.cpp b/src/audio/AudioScriptObject.cpp
index ac30f757..ac4bebcb 100644
--- a/src/audio/AudioScriptObject.cpp
+++ b/src/audio/AudioScriptObject.cpp
@@ -3,6 +3,7 @@
#include "AudioScriptObject.h"
#include "Pools.h"
#include "DMAudio.h"
+#include "SaveBuf.h"
cAudioScriptObject::cAudioScriptObject()
{
@@ -23,25 +24,25 @@ cAudioScriptObject::Reset()
}
void *
-cAudioScriptObject::operator new(size_t sz)
+cAudioScriptObject::operator new(size_t sz) throw()
{
return CPools::GetAudioScriptObjectPool()->New();
}
void *
-cAudioScriptObject::operator new(size_t sz, int handle)
+cAudioScriptObject::operator new(size_t sz, int handle) throw()
{
return CPools::GetAudioScriptObjectPool()->New(handle);
}
void
-cAudioScriptObject::operator delete(void *p, size_t sz)
+cAudioScriptObject::operator delete(void *p, size_t sz) throw()
{
CPools::GetAudioScriptObjectPool()->Delete((cAudioScriptObject *)p);
}
void
-cAudioScriptObject::operator delete(void *p, int handle)
+cAudioScriptObject::operator delete(void *p, int handle) throw()
{
CPools::GetAudioScriptObjectPool()->Delete((cAudioScriptObject *)p);
}
@@ -53,12 +54,14 @@ cAudioScriptObject::LoadAllAudioScriptObjects(uint8 *buf, uint32 size)
CheckSaveHeader(buf, 'A', 'U', 'D', '\0', size - SAVE_HEADER_SIZE);
- int32 pool_size = ReadSaveBuf(buf);
+ int32 pool_size;
+ ReadSaveBuf(&pool_size, buf);
for (int32 i = 0; i < pool_size; i++) {
- int handle = ReadSaveBuf(buf);
+ int32 handle;
+ ReadSaveBuf(&handle, buf);
cAudioScriptObject *p = new(handle) cAudioScriptObject;
assert(p != nil);
- *p = ReadSaveBuf(buf);
+ ReadSaveBuf(p, buf);
p->AudioEntity = DMAudio.CreateLoopingScriptObject(p);
}
@@ -90,6 +93,8 @@ cAudioScriptObject::SaveAllAudioScriptObjects(uint8 *buf, uint32 *size)
void
PlayOneShotScriptObject(uint8 id, CVector const &pos)
{
+ if (!DMAudio.IsAudioInitialised()) return;
+
cAudioScriptObject *audioScriptObject = new cAudioScriptObject();
audioScriptObject->Posn = pos;
audioScriptObject->AudioId = id;
diff --git a/src/audio/AudioScriptObject.h b/src/audio/AudioScriptObject.h
index 8110b2bb..b9a7e61b 100644
--- a/src/audio/AudioScriptObject.h
+++ b/src/audio/AudioScriptObject.h
@@ -12,10 +12,10 @@ public:
void Reset(); /// ok
- static void* operator new(size_t);
- static void* operator new(size_t, int);
- static void operator delete(void*, size_t);
- static void operator delete(void*, int);
+ static void* operator new(size_t) throw();
+ static void* operator new(size_t, int) throw();
+ static void operator delete(void*, size_t) throw();
+ static void operator delete(void*, int) throw();
static void LoadAllAudioScriptObjects(uint8 *buf, uint32 size);
static void SaveAllAudioScriptObjects(uint8 *buf, uint32 *size);
diff --git a/src/audio/DMAudio.cpp b/src/audio/DMAudio.cpp
index 7c99e89f..bc77361f 100644
--- a/src/audio/DMAudio.cpp
+++ b/src/audio/DMAudio.cpp
@@ -39,7 +39,7 @@ cDMAudio::DestroyEntity(int32 audioEntity)
}
void
-cDMAudio::SetEntityStatus(int32 audioEntity, uint8 status)
+cDMAudio::SetEntityStatus(int32 audioEntity, bool8 status)
{
AudioManager.SetEntityStatus(audioEntity, status);
}
@@ -57,7 +57,7 @@ cDMAudio::DestroyAllGameCreatedEntities(void)
}
void
-cDMAudio::SetMonoMode(uint8 mono)
+cDMAudio::SetMonoMode(bool8 mono)
{
AudioManager.SetMonoMode(mono);
}
@@ -142,7 +142,7 @@ cDMAudio::SetSpeakerConfig(int32 config)
AudioManager.SetSpeakerConfig(config);
}
-bool
+bool8
cDMAudio::IsMP3RadioChannelAvailable(void)
{
return AudioManager.IsMP3RadioChannelAvailable();
@@ -161,12 +161,12 @@ cDMAudio::ReacquireDigitalHandle(void)
}
void
-cDMAudio::SetDynamicAcousticModelingStatus(uint8 status)
+cDMAudio::SetDynamicAcousticModelingStatus(bool8 status)
{
AudioManager.SetDynamicAcousticModelingStatus(status);
}
-bool
+bool8
cDMAudio::CheckForAnAudioFileOnCD(void)
{
return AudioManager.CheckForAnAudioFileOnCD();
@@ -178,7 +178,7 @@ cDMAudio::GetCDAudioDriveLetter(void)
return AudioManager.GetCDAudioDriveLetter();
}
-bool
+bool8
cDMAudio::IsAudioInitialised(void)
{
return AudioManager.IsAudioInitialised();
@@ -196,7 +196,7 @@ cDMAudio::CreateLoopingScriptObject(cAudioScriptObject *scriptObject)
int32 audioEntity = AudioManager.CreateEntity(AUDIOTYPE_SCRIPTOBJECT, scriptObject);
if ( AEHANDLE_IS_OK(audioEntity) )
- AudioManager.SetEntityStatus(audioEntity, true);
+ AudioManager.SetEntityStatus(audioEntity, TRUE);
return audioEntity;
}
@@ -214,7 +214,7 @@ cDMAudio::CreateOneShotScriptObject(cAudioScriptObject *scriptObject)
if ( AEHANDLE_IS_OK(audioEntity) )
{
- AudioManager.SetEntityStatus(audioEntity, true);
+ AudioManager.SetEntityStatus(audioEntity, TRUE);
AudioManager.PlayOneShot(audioEntity, scriptObject->AudioId, 0.0f);
}
}
@@ -244,7 +244,7 @@ cDMAudio::PlayRadioAnnouncement(uint32 announcement)
}
void
-cDMAudio::PlayFrontEndTrack(uint32 track, uint8 frontendFlag)
+cDMAudio::PlayFrontEndTrack(uint32 track, bool8 frontendFlag)
{
MusicManager.PlayFrontEndTrack(track, frontendFlag);
}
@@ -309,7 +309,7 @@ cDMAudio::PlayLoadedMissionAudio(uint8 slot)
AudioManager.PlayLoadedMissionAudio(slot);
}
-bool
+bool8
cDMAudio::IsMissionAudioSampleFinished(uint8 slot)
{
return AudioManager.IsMissionAudioSampleFinished(slot);
@@ -340,7 +340,7 @@ cDMAudio::SetRadioChannel(uint32 radio, int32 pos)
}
void
-cDMAudio::SetStartingTrackPositions(uint8 isStartGame)
+cDMAudio::SetStartingTrackPositions(bool8 isStartGame)
{
MusicManager.SetStartingTrackPositions(isStartGame);
}
@@ -364,7 +364,7 @@ cDMAudio::GetRadioPosition(uint32 station)
}
void
-cDMAudio::SetPedTalkingStatus(CPed *ped, uint8 status)
+cDMAudio::SetPedTalkingStatus(CPed *ped, bool8 status)
{
return AudioManager.SetPedTalkingStatus(ped, status);
}
@@ -376,7 +376,7 @@ cDMAudio::SetPlayersMood(uint8 mood, uint32 time)
}
void
-cDMAudio::ShutUpPlayerTalking(uint8 state)
+cDMAudio::ShutUpPlayerTalking(bool8 state)
{
AudioManager.m_bIsPlayerShutUp = state;
}
\ No newline at end of file
diff --git a/src/audio/DMAudio.h b/src/audio/DMAudio.h
index 2c10043f..5b684fd3 100644
--- a/src/audio/DMAudio.h
+++ b/src/audio/DMAudio.h
@@ -25,11 +25,11 @@ public:
int32 CreateEntity(eAudioType type, void *UID);
void DestroyEntity(int32 audioEntity);
- void SetEntityStatus(int32 audioEntity, uint8 status);
+ void SetEntityStatus(int32 audioEntity, bool8 status);
void PlayOneShot(int32 audioEntity, uint16 oneShot, float volume);
void DestroyAllGameCreatedEntities(void);
- void SetMonoMode(uint8 mono);
+ void SetMonoMode(bool8 mono);
void SetMP3BoostVolume(uint8 volume);
void SetEffectsMasterVolume(uint8 volume);
void SetMusicMasterVolume(uint8 volume);
@@ -46,17 +46,17 @@ public:
void SetSpeakerConfig(int32 config);
- bool IsMP3RadioChannelAvailable(void);
+ bool8 IsMP3RadioChannelAvailable(void);
void ReleaseDigitalHandle(void);
void ReacquireDigitalHandle(void);
- void SetDynamicAcousticModelingStatus(uint8 status);
+ void SetDynamicAcousticModelingStatus(bool8 status);
- bool CheckForAnAudioFileOnCD(void);
+ bool8 CheckForAnAudioFileOnCD(void);
char GetCDAudioDriveLetter(void);
- bool IsAudioInitialised(void);
+ bool8 IsAudioInitialised(void);
void ReportCrime(eCrimeType crime, CVector const &pos);
@@ -70,7 +70,7 @@ public:
void PlayFrontEndSound(uint16 frontend, uint32 volume);
void PlayRadioAnnouncement(uint32 announcement);
- void PlayFrontEndTrack(uint32 track, uint8 frontendFlag);
+ void PlayFrontEndTrack(uint32 track, bool8 frontendFlag);
void StopFrontEndTrack(void);
void ResetTimers(uint32 time);
@@ -85,19 +85,19 @@ public:
uint8 GetMissionAudioLoadingStatus(uint8 slot);
void SetMissionAudioLocation(uint8 slot, float x, float y, float z);
void PlayLoadedMissionAudio(uint8 slot);
- bool IsMissionAudioSampleFinished(uint8 slot);
+ bool8 IsMissionAudioSampleFinished(uint8 slot);
void ClearMissionAudio(uint8 slot);
uint8 GetRadioInCar(void);
void SetRadioInCar(uint32 radio);
void SetRadioChannel(uint32 radio, int32 pos);
- void SetStartingTrackPositions(uint8 isStartGame);
+ void SetStartingTrackPositions(bool8 isStartGame);
float *GetListenTimeArray();
uint32 GetFavouriteRadioStation();
int32 GetRadioPosition(uint32 station);
- void SetPedTalkingStatus(class CPed *ped, uint8 status);
+ void SetPedTalkingStatus(class CPed *ped, bool8 status);
void SetPlayersMood(uint8 mood, uint32 time);
- void ShutUpPlayerTalking(uint8 state);
+ void ShutUpPlayerTalking(bool8 state);
};
extern cDMAudio DMAudio;
diff --git a/src/audio/MusicManager.cpp b/src/audio/MusicManager.cpp
index 9c6f61f6..e569f8c7 100644
--- a/src/audio/MusicManager.cpp
+++ b/src/audio/MusicManager.cpp
@@ -28,7 +28,7 @@ static_assert(false, "R*'s radio implementation is quite buggy, RADIO_SCROLL_TO_
cMusicManager MusicManager;
int32 gNumRetunePresses;
int32 gRetuneCounter;
-bool g_bAnnouncementReadPosAlready;
+bool8 g_bAnnouncementReadPosAlready;
uint8 RadioStaticCounter = 5;
uint32 RadioStaticTimer;
@@ -50,13 +50,13 @@ uint32 NewGameRadioTimers[10] =
cMusicManager::cMusicManager()
{
- m_bIsInitialised = false;
- m_bDisabled = false;
+ m_bIsInitialised = FALSE;
+ m_bDisabled = FALSE;
m_nFrontendTrack = NO_TRACK;
m_nPlayingTrack = NO_TRACK;
m_nUpcomingMusicMode = MUSICMODE_DISABLED;
m_nMusicMode = MUSICMODE_DISABLED;
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
for (int i = 0; i < NUM_RADIOS; i++)
aListenTimeArray[i] = 0.0f;
@@ -66,7 +66,7 @@ cMusicManager::cMusicManager()
m_nCurrentVolume = 0;
m_nMaxVolume = 0;
m_nAnnouncement = NO_TRACK;
- m_bAnnouncementInProgress = false;
+ m_bAnnouncementInProgress = FALSE;
}
void
@@ -74,38 +74,38 @@ cMusicManager::ResetMusicAfterReload()
{
float afRadioTime[NUM_RADIOS];
- m_bRadioSetByScript = false;
+ m_bRadioSetByScript = FALSE;
m_nRadioStationScript = WILDSTYLE;
m_nRadioPosition = -1;
m_nAnnouncement = NO_TRACK;
- m_bAnnouncementInProgress = false;
- m_bSetNextStation = false;
+ m_bAnnouncementInProgress = FALSE;
+ m_bSetNextStation = FALSE;
RadioStaticTimer = 0;
gNumRetunePresses = 0;
gRetuneCounter = 0;
m_nFrontendTrack = NO_TRACK;
m_nPlayingTrack = NO_TRACK;
- m_FrontendLoopFlag = false;
- m_bTrackChangeStarted = false;
+ m_FrontendLoopFlag = FALSE;
+ m_bTrackChangeStarted = FALSE;
m_nNextTrack = NO_TRACK;
- m_nNextLoopFlag = false;
- m_bVerifyNextTrackStartedToPlay = false;
- m_bGameplayAllowsRadio = false;
- m_bRadioStreamReady = false;
+ m_nNextLoopFlag = FALSE;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
+ m_bGameplayAllowsRadio = FALSE;
+ m_bRadioStreamReady = FALSE;
nFramesSinceCutsceneEnded = -1;
- m_bUserResumedGame = false;
- m_bMusicModeChangeStarted = false;
- m_bEarlyFrontendTrack = false;
+ m_bUserResumedGame = FALSE;
+ m_bMusicModeChangeStarted = FALSE;
+ m_bEarlyFrontendTrack = FALSE;
m_nVolumeLatency = 0;
m_nCurrentVolume = 0;
m_nMaxVolume = 0;
- bool bRadioWasEverListened = false;
+ bool8 bRadioWasEverListened = FALSE;
for (int i = 0; i < NUM_RADIOS; i++) {
afRadioTime[i] = CStats::GetFavoriteRadioStationList(i);
if (!bRadioWasEverListened && afRadioTime[i] != 0.0f)
- bRadioWasEverListened = true;
+ bRadioWasEverListened = TRUE;
}
if (!bRadioWasEverListened) return;
@@ -125,7 +125,7 @@ cMusicManager::ResetMusicAfterReload()
}
void
-cMusicManager::SetStartingTrackPositions(uint8 isNewGameTimer)
+cMusicManager::SetStartingTrackPositions(bool8 isNewGameTimer)
{
int pos;
@@ -174,15 +174,15 @@ cMusicManager::SetStartingTrackPositions(uint8 isNewGameTimer)
}
}
-bool
+bool8
cMusicManager::Initialise()
{
if (!IsInitialised()) {
- m_bIsInitialised = true;
- SetStartingTrackPositions(false);
- m_bResetTimers = false;
+ m_bIsInitialised = TRUE;
+ SetStartingTrackPositions(FALSE);
+ m_bResetTimers = FALSE;
m_nResetTime = 0;
- m_bRadioSetByScript = false;
+ m_bRadioSetByScript = FALSE;
m_nRadioStationScript = WILDSTYLE;
m_nRadioPosition = -1;
m_nRadioInCar = NO_TRACK;
@@ -192,18 +192,18 @@ cMusicManager::Initialise()
m_nPlayingTrack = NO_TRACK;
m_nUpcomingMusicMode = MUSICMODE_DISABLED;
m_nMusicMode = MUSICMODE_DISABLED;
- m_FrontendLoopFlag = false;
- m_bTrackChangeStarted = false;
+ m_FrontendLoopFlag = FALSE;
+ m_bTrackChangeStarted = FALSE;
m_nNextTrack = NO_TRACK;
- m_nNextLoopFlag = false;
- m_bVerifyNextTrackStartedToPlay = false;
- m_bGameplayAllowsRadio = false;
- m_bRadioStreamReady = false;
+ m_nNextLoopFlag = FALSE;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
+ m_bGameplayAllowsRadio = FALSE;
+ m_bRadioStreamReady = FALSE;
nFramesSinceCutsceneEnded = -1;
- m_bUserResumedGame = false;
- m_bMusicModeChangeStarted = false;
+ m_bUserResumedGame = FALSE;
+ m_bMusicModeChangeStarted = FALSE;
m_nMusicModeToBeSet = MUSICMODE_DISABLED;
- m_bEarlyFrontendTrack = false;
+ m_bEarlyFrontendTrack = FALSE;
m_nVolumeLatency = 0;
m_nCurrentVolume = 0;
m_nMaxVolume = 0;
@@ -216,11 +216,11 @@ cMusicManager::Terminate()
{
if (!IsInitialised()) return;
- if (SampleManager.IsStreamPlaying(0)) {
- SampleManager.StopStreamedFile(0);
+ if (SampleManager.IsStreamPlaying()) {
+ SampleManager.StopStreamedFile();
m_nPlayingTrack = NO_TRACK;
}
- m_bIsInitialised = false;
+ m_bIsInitialised = FALSE;
}
void
@@ -230,29 +230,29 @@ cMusicManager::SetRadioChannelByScript(uint32 station, int32 pos)
if (station == STREAMED_SOUND_RADIO_MP3_PLAYER)
station = STREAMED_SOUND_CITY_AMBIENT;
if (station <= STREAMED_SOUND_RADIO_POLICE) {
- m_bRadioSetByScript = true;
+ m_bRadioSetByScript = TRUE;
m_nRadioStationScript = station;
m_nRadioPosition = pos == -1 ? -1 : pos % m_aTracks[station].m_nLength;
}
}
}
-bool
+bool8
cMusicManager::PlayerInCar()
{
CVehicle *vehicle = AudioManager.FindVehicleOfPlayer();
if(!vehicle)
- return false;
+ return FALSE;
int32 State = FindPlayerPed()->m_nPedState;
if(State == PED_DRAG_FROM_CAR || State == PED_EXIT_CAR || State == PED_ARRESTED)
- return false;
+ return FALSE;
if (vehicle->GetStatus() == STATUS_WRECKED)
- return false;
+ return FALSE;
- return true;
+ return TRUE;
}
uint32
@@ -310,31 +310,42 @@ cMusicManager::ChangeMusicMode(uint8 mode)
switch (mode)
{
- case MUSICMODE_FRONTEND: m_nUpcomingMusicMode = MUSICMODE_FRONTEND; break;
+ case MUSICMODE_FRONTEND:
+ m_nUpcomingMusicMode = MUSICMODE_FRONTEND;
+
+#ifdef PAUSE_RADIO_IN_FRONTEND
+ // rewind those streams we weren't listening right now
+ for( uint32 i = STREAMED_SOUND_RADIO_WILD; i < STREAMED_SOUND_CUTSCENE_ASS_1; i++ ) {
+ m_aTracks[i].m_nPosition = GetTrackStartPos(i);
+ m_aTracks[i].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
+ }
+#endif
+
+ break;
case MUSICMODE_GAME: m_nUpcomingMusicMode = MUSICMODE_GAME; break;
case MUSICMODE_CUTSCENE:
m_nUpcomingMusicMode = MUSICMODE_CUTSCENE;
- if (SampleManager.IsStreamPlaying(0)) {
+ if (SampleManager.IsStreamPlaying()) {
if (m_nPlayingTrack != NO_TRACK) {
RecordRadioStats();
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
}
}
- SampleManager.StopStreamedFile(0);
- while (SampleManager.IsStreamPlaying(0))
- SampleManager.StopStreamedFile(0);
+ SampleManager.StopStreamedFile();
+ while (SampleManager.IsStreamPlaying())
+ SampleManager.StopStreamedFile();
m_nMusicMode = m_nUpcomingMusicMode;
- m_bMusicModeChangeStarted = false;
- m_bTrackChangeStarted = false;
+ m_bMusicModeChangeStarted = FALSE;
+ m_bTrackChangeStarted = FALSE;
m_nNextTrack = NO_TRACK;
- m_nNextLoopFlag = false;
- m_bVerifyNextTrackStartedToPlay = false;
+ m_nNextLoopFlag = FALSE;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
m_nPlayingTrack = NO_TRACK;
m_nFrontendTrack = NO_TRACK;
- m_bAnnouncementInProgress = false;
+ m_bAnnouncementInProgress = FALSE;
m_nAnnouncement = NO_TRACK;
- g_bAnnouncementReadPosAlready = false;
+ g_bAnnouncementReadPosAlready = FALSE;
break;
case MUSICMODE_DISABLE: m_nUpcomingMusicMode = MUSICMODE_DISABLED; break;
default: return;
@@ -344,7 +355,7 @@ cMusicManager::ChangeMusicMode(uint8 mode)
void
cMusicManager::ResetTimers(int32 time)
{
- m_bResetTimers = true;
+ m_bResetTimers = TRUE;
m_nResetTime = time;
}
@@ -352,11 +363,11 @@ void
cMusicManager::Service()
{
if (m_bResetTimers) {
- m_bResetTimers = false;
+ m_bResetTimers = FALSE;
m_nLastTrackServiceTime = m_nResetTime;
}
- static bool bRadioStatsRecorded = false;
+ static bool8 bRadioStatsRecorded = FALSE;
if (!m_bIsInitialised || m_bDisabled) return;
@@ -369,39 +380,39 @@ cMusicManager::Service()
{
case MUSICMODE_FRONTEND: ServiceFrontEndMode(); break;
case MUSICMODE_GAME: ServiceGameMode(); break;
- case MUSICMODE_CUTSCENE: SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 0); break;
+ case MUSICMODE_CUTSCENE: SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, TRUE); break;
}
}
else
m_nMusicMode = MUSICMODE_DISABLED;
} else {
- m_bMusicModeChangeStarted = true;
+ m_bMusicModeChangeStarted = TRUE;
if (!m_bUserResumedGame && !AudioManager.m_nUserPause && AudioManager.m_nPreviousUserPause)
- m_bUserResumedGame = true;
+ m_bUserResumedGame = TRUE;
if (AudioManager.m_FrameCounter % 4 == 0) {
gNumRetunePresses = 0;
gRetuneCounter = 0;
- m_bSetNextStation = false;
- if (SampleManager.IsStreamPlaying(0)) {
+ m_bSetNextStation = FALSE;
+ if (SampleManager.IsStreamPlaying()) {
if (m_nPlayingTrack != NO_TRACK && !bRadioStatsRecorded)
{
RecordRadioStats();
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
- bRadioStatsRecorded = true;
+ bRadioStatsRecorded = TRUE;
}
- SampleManager.StopStreamedFile(0);
+ SampleManager.StopStreamedFile();
} else {
- bRadioStatsRecorded = false;
+ bRadioStatsRecorded = FALSE;
m_nMusicMode = m_nMusicModeToBeSet;
- m_bMusicModeChangeStarted = false;
- m_bTrackChangeStarted = false;
+ m_bMusicModeChangeStarted = FALSE;
+ m_bTrackChangeStarted = FALSE;
m_nNextTrack = NO_TRACK;
- m_nNextLoopFlag = false;
- m_bVerifyNextTrackStartedToPlay = false;
+ m_nNextLoopFlag = FALSE;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
m_nPlayingTrack = NO_TRACK;
if (m_bEarlyFrontendTrack)
- m_bEarlyFrontendTrack = false;
+ m_bEarlyFrontendTrack = FALSE;
else
m_nFrontendTrack = NO_TRACK;
}
@@ -412,15 +423,21 @@ cMusicManager::Service()
void
cMusicManager::ServiceFrontEndMode()
{
- static bool bRadioStatsRecorded = false;
+ static bool8 bRadioStatsRecorded = FALSE;
+
+#ifdef PAUSE_RADIO_IN_FRONTEND
+ // pause radio
+ for (uint32 i = STREAMED_SOUND_RADIO_WILD; i < STREAMED_SOUND_CUTSCENE_ASS_1; i++)
+ m_aTracks[i].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
+#endif
if (m_bAnnouncementInProgress) {
- SampleManager.StopStreamedFile(0);
- if (SampleManager.IsStreamPlaying(0))
+ SampleManager.StopStreamedFile();
+ if (SampleManager.IsStreamPlaying())
return;
- g_bAnnouncementReadPosAlready = false;
+ g_bAnnouncementReadPosAlready = FALSE;
m_nAnnouncement = NO_TRACK;
- m_bAnnouncementInProgress = false;
+ m_bAnnouncementInProgress = FALSE;
m_nNextTrack = NO_TRACK;
m_nFrontendTrack = NO_TRACK;
m_nPlayingTrack = NO_TRACK;
@@ -434,50 +451,50 @@ cMusicManager::ServiceFrontEndMode()
}
if (m_nNextTrack == m_nPlayingTrack) {
- if (SampleManager.IsStreamPlaying(0)) {
+ if (SampleManager.IsStreamPlaying()) {
if (m_nVolumeLatency > 0) m_nVolumeLatency--;
else {
if (m_nCurrentVolume < m_nMaxVolume)
m_nCurrentVolume = Min(m_nMaxVolume, m_nCurrentVolume + 6);
- SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, FALSE);
}
} else {
if (m_nPlayingTrack == STREAMED_SOUND_RADIO_MP3_PLAYER)
- SampleManager.StartStreamedFile(STREAMED_SOUND_RADIO_MP3_PLAYER, 0, 0);
+ SampleManager.StartStreamedFile(STREAMED_SOUND_RADIO_MP3_PLAYER, 0);
else if (m_nPlayingTrack == STREAMED_SOUND_MISSION_COMPLETED && AudioManager.m_nUserPause == 0)
ChangeMusicMode(MUSICMODE_GAME);
}
} else {
- m_bTrackChangeStarted = true;
- if (m_bVerifyNextTrackStartedToPlay || !SampleManager.IsStreamPlaying(0)) {
- bRadioStatsRecorded = false;
- if (SampleManager.IsStreamPlaying(0) || m_nNextTrack == NO_TRACK) {
+ m_bTrackChangeStarted = TRUE;
+ if (m_bVerifyNextTrackStartedToPlay || !SampleManager.IsStreamPlaying()) {
+ bRadioStatsRecorded = FALSE;
+ if (SampleManager.IsStreamPlaying() || m_nNextTrack == NO_TRACK) {
m_nPlayingTrack = m_nNextTrack;
- m_bVerifyNextTrackStartedToPlay = false;
- m_bTrackChangeStarted = false;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
+ m_bTrackChangeStarted = FALSE;
} else {
uint32 trackStartPos = (m_nNextTrack > STREAMED_SOUND_RADIO_POLICE) ? 0 : GetTrackStartPos(m_nNextTrack);
if (m_nNextTrack != NO_TRACK) {
- SampleManager.SetStreamedFileLoopFlag(m_nNextLoopFlag, 0);
- SampleManager.StartStreamedFile(m_nNextTrack, trackStartPos, 0);
+ SampleManager.SetStreamedFileLoopFlag(m_nNextLoopFlag);
+ SampleManager.StartStreamedFile(m_nNextTrack, trackStartPos);
m_nVolumeLatency = 3;
m_nCurrentVolume = 0;
m_nMaxVolume = 100;
- SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, FALSE);
if (m_nNextTrack < STREAMED_SOUND_CITY_AMBIENT)
m_nLastTrackServiceTime = CTimer::GetTimeInMillisecondsPauseMode();
- m_bVerifyNextTrackStartedToPlay = true;
+ m_bVerifyNextTrackStartedToPlay = TRUE;
}
}
} else {
if (m_nPlayingTrack != NO_TRACK && !bRadioStatsRecorded) {
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
RecordRadioStats();
- bRadioStatsRecorded = true;
+ bRadioStatsRecorded = TRUE;
}
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
- SampleManager.StopStreamedFile(0);
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
+ SampleManager.StopStreamedFile();
}
}
}
@@ -488,7 +505,7 @@ cMusicManager::ServiceGameMode()
CPed *ped = FindPlayerPed();
CVehicle *vehicle = AudioManager.FindVehicleOfPlayer();
m_bRadioStreamReady = m_bGameplayAllowsRadio;
- m_bGameplayAllowsRadio = false;
+ m_bGameplayAllowsRadio = FALSE;
switch (CGame::currArea)
{
@@ -499,14 +516,14 @@ cMusicManager::ServiceGameMode()
case AREA_BLOOD:
case AREA_OVALRING:
case AREA_MALIBU_CLUB:
- m_bGameplayAllowsRadio = false;
+ m_bGameplayAllowsRadio = FALSE;
break;
default:
if (SampleManager.GetMusicVolume()) {
if (PlayerInCar())
- m_bGameplayAllowsRadio = true;
+ m_bGameplayAllowsRadio = TRUE;
} else
- m_bGameplayAllowsRadio = false;
+ m_bGameplayAllowsRadio = FALSE;
break;
}
@@ -514,7 +531,7 @@ cMusicManager::ServiceGameMode()
nFramesSinceCutsceneEnded = -1;
gNumRetunePresses = 0;
gRetuneCounter = 0;
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
} else if (ped) {
if(!ped->DyingOrDead() && vehicle) {
#ifdef GTA_PC
@@ -567,11 +584,11 @@ cMusicManager::ServiceGameMode()
if (m_bUserResumedGame)
{
- m_bRadioStreamReady = false;
- m_bUserResumedGame = false;
+ m_bRadioStreamReady = FALSE;
+ m_bUserResumedGame = FALSE;
}
if (m_nPlayingTrack == NO_TRACK && m_nFrontendTrack == NO_TRACK)
- m_bRadioStreamReady = false;
+ m_bRadioStreamReady = FALSE;
if (m_bGameplayAllowsRadio)
{
@@ -594,7 +611,7 @@ cMusicManager::ServiceGameMode()
m_aTracks[m_nFrontendTrack].m_nPosition = m_nRadioPosition;
m_aTracks[m_nFrontendTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
}
- m_bRadioSetByScript = false;
+ m_bRadioSetByScript = FALSE;
return;
}
@@ -605,7 +622,7 @@ cMusicManager::ServiceGameMode()
if (m_nAnnouncement < NO_TRACK) {
if ((m_bAnnouncementInProgress || m_nFrontendTrack == m_nPlayingTrack) && ServiceAnnouncement()) {
if (m_bAnnouncementInProgress) {
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
gNumRetunePresses = 0;
gRetuneCounter = 0;
return;
@@ -613,7 +630,7 @@ cMusicManager::ServiceGameMode()
if(m_nAnnouncement == NO_TRACK) {
m_nNextTrack = NO_TRACK;
m_nFrontendTrack = GetCarTuning();
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
gRetuneCounter = 0;
gNumRetunePresses = 0;
}
@@ -622,9 +639,9 @@ cMusicManager::ServiceGameMode()
if (!m_bAnnouncementInProgress
&& m_nAnnouncement == NO_TRACK
&& m_nPlayingTrack == STREAMED_SOUND_RADIO_MP3_PLAYER
- && !SampleManager.IsStreamPlaying(0))
+ && !SampleManager.IsStreamPlaying())
{
- SampleManager.StartStreamedFile(STREAMED_SOUND_RADIO_MP3_PLAYER, 0, 0);
+ SampleManager.StartStreamedFile(STREAMED_SOUND_RADIO_MP3_PLAYER, 0);
}
if (!m_bRadioSetByScript)
@@ -635,7 +652,7 @@ cMusicManager::ServiceGameMode()
if(gRetuneCounter > 1)
gRetuneCounter--;
else if(gRetuneCounter == 1) {
- m_bSetNextStation = true;
+ m_bSetNextStation = TRUE;
gRetuneCounter = 0;
}
}
@@ -644,7 +661,7 @@ cMusicManager::ServiceGameMode()
{
if (--gRetuneCounter == 0)
{
- m_bSetNextStation = true;
+ m_bSetNextStation = TRUE;
gRetuneCounter = 0;
}
}
@@ -694,7 +711,7 @@ cMusicManager::ServiceGameMode()
SetUpCorrectAmbienceTrack();
ServiceTrack(vehicle, ped);
if (m_bSetNextStation)
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
return;
}
if (UsesPoliceRadio(vehicle))
@@ -713,24 +730,24 @@ cMusicManager::ServiceGameMode()
gRetuneCounter = 0;
gNumRetunePresses = 0;
- m_bSetNextStation = false;
- m_bRadioSetByScript = false;
+ m_bSetNextStation = FALSE;
+ m_bRadioSetByScript = FALSE;
if (m_nFrontendTrack >= STREAMED_SOUND_CITY_AMBIENT && m_nFrontendTrack <= STREAMED_SOUND_AMBSIL_AMBIENT)
SetUpCorrectAmbienceTrack();
ServiceTrack(vehicle, ped);
if (m_bSetNextStation)
- m_bSetNextStation = false;
+ m_bSetNextStation = FALSE;
return;
}
if (m_bAnnouncementInProgress)
{
- SampleManager.StopStreamedFile(0);
- if (SampleManager.IsStreamPlaying(0))
+ SampleManager.StopStreamedFile();
+ if (SampleManager.IsStreamPlaying())
return;
- g_bAnnouncementReadPosAlready = false;
+ g_bAnnouncementReadPosAlready = FALSE;
m_nAnnouncement = NO_TRACK;
- m_bAnnouncementInProgress = false;
+ m_bAnnouncementInProgress = FALSE;
m_nNextTrack = NO_TRACK;
m_nFrontendTrack = NO_TRACK;
m_nPlayingTrack = NO_TRACK;
@@ -808,7 +825,7 @@ GetHeightScale()
}
void
-cMusicManager::ComputeAmbienceVol(uint8 reset, uint8& outVolume)
+cMusicManager::ComputeAmbienceVol(bool8 reset, uint8& outVolume)
{
static float fVol = 0.0f;
@@ -868,77 +885,77 @@ cMusicManager::ComputeAmbienceVol(uint8 reset, uint8& outVolume)
outVolume = (90.0f - fHeightScale) / 50.0f * fVol;
}
-bool
+bool8
cMusicManager::ServiceAnnouncement()
{
if (m_bAnnouncementInProgress) {
- if (SampleManager.IsStreamPlaying(0))
+ if (SampleManager.IsStreamPlaying())
m_nPlayingTrack = m_nNextTrack;
else if (m_nPlayingTrack != NO_TRACK) {
m_nAnnouncement = NO_TRACK;
- m_bAnnouncementInProgress = false;
+ m_bAnnouncementInProgress = FALSE;
m_nPlayingTrack = NO_TRACK;
}
- return true;
- } else if (SampleManager.IsStreamPlaying(0)) {
+ return TRUE;
+ } else if (SampleManager.IsStreamPlaying()) {
if (m_nPlayingTrack != NO_TRACK && !g_bAnnouncementReadPosAlready) {
RecordRadioStats();
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
- g_bAnnouncementReadPosAlready = true;
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
+ g_bAnnouncementReadPosAlready = TRUE;
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
}
- SampleManager.StopStreamedFile(0);
+ SampleManager.StopStreamedFile();
} else {
- g_bAnnouncementReadPosAlready = false;
+ g_bAnnouncementReadPosAlready = FALSE;
m_nPlayingTrack = NO_TRACK;
m_nNextTrack = m_nAnnouncement;
- SampleManager.SetStreamedFileLoopFlag(0, 0);
- SampleManager.StartStreamedFile(m_nNextTrack, 0, 0);
- SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 0, 0);
- m_bAnnouncementInProgress = true;
+ SampleManager.SetStreamedFileLoopFlag(FALSE);
+ SampleManager.StartStreamedFile(m_nNextTrack, 0);
+ SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, FALSE);
+ m_bAnnouncementInProgress = TRUE;
}
- return true;
+ return TRUE;
}
void
cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
{
- static bool bRadioStatsRecorded = false;
- static bool bRadioStatsRecorded2 = false;
+ static bool8 bRadioStatsRecorded = FALSE;
+ static bool8 bRadioStatsRecorded2 = FALSE;
uint8 volume;
if (!m_bTrackChangeStarted)
m_nNextTrack = m_nFrontendTrack;
if (gRetuneCounter != 0 || m_bSetNextStation) {
- if (SampleManager.IsStreamPlaying(0)) {
+ if (SampleManager.IsStreamPlaying()) {
if (m_nPlayingTrack != NO_TRACK && !bRadioStatsRecorded) {
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
RecordRadioStats();
- bRadioStatsRecorded = true;
+ bRadioStatsRecorded = TRUE;
}
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
- SampleManager.StopStreamedFile(0);
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
+ SampleManager.StopStreamedFile();
}
return;
}
if (bRadioStatsRecorded) {
- bRadioStatsRecorded = false;
+ bRadioStatsRecorded = FALSE;
m_nPlayingTrack = NO_TRACK;
}
if (m_nNextTrack != m_nPlayingTrack)
{
- m_bTrackChangeStarted = true;
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
+ m_bTrackChangeStarted = TRUE;
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
if (!(AudioManager.m_FrameCounter & 1)) {
- if (m_bVerifyNextTrackStartedToPlay || !SampleManager.IsStreamPlaying(0)) {
- bRadioStatsRecorded2 = false;
- if (SampleManager.IsStreamPlaying(0)) {
+ if (m_bVerifyNextTrackStartedToPlay || !SampleManager.IsStreamPlaying()) {
+ bRadioStatsRecorded2 = FALSE;
+ if (SampleManager.IsStreamPlaying()) {
m_nPlayingTrack = m_nNextTrack;
- m_bVerifyNextTrackStartedToPlay = false;
- m_bTrackChangeStarted = false;
+ m_bVerifyNextTrackStartedToPlay = FALSE;
+ m_bTrackChangeStarted = FALSE;
if (veh) {
#ifdef FIX_BUGS
if (m_nPlayingTrack >= STREAMED_SOUND_CITY_AMBIENT && m_nPlayingTrack <= STREAMED_SOUND_AMBSIL_AMBIENT)
@@ -955,23 +972,23 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
} else {
uint32 pos = GetTrackStartPos(m_nNextTrack);
if (m_nNextTrack != NO_TRACK) {
- SampleManager.SetStreamedFileLoopFlag(1, 0);
- SampleManager.StartStreamedFile(m_nNextTrack, pos, 0);
+ SampleManager.SetStreamedFileLoopFlag(TRUE);
+ SampleManager.StartStreamedFile(m_nNextTrack, pos);
if (m_nFrontendTrack < STREAMED_SOUND_CITY_AMBIENT || m_nFrontendTrack > STREAMED_SOUND_AMBSIL_AMBIENT)
{
m_nVolumeLatency = 10;
m_nCurrentVolume = 0;
m_nMaxVolume = 100;
- SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, FALSE);
}
else
{
- ComputeAmbienceVol(true, volume);
- SampleManager.SetStreamedVolumeAndPan(volume, 63, 1, 0);
+ ComputeAmbienceVol(TRUE, volume);
+ SampleManager.SetStreamedVolumeAndPan(volume, 63, TRUE);
}
if (m_nNextTrack < STREAMED_SOUND_CITY_AMBIENT)
m_nLastTrackServiceTime = CTimer::GetTimeInMillisecondsPauseMode();
- m_bVerifyNextTrackStartedToPlay = true;
+ m_bVerifyNextTrackStartedToPlay = TRUE;
}
}
} else {
@@ -979,9 +996,9 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
debug("m_nPlayingTrack == NO_TRACK, yet track playing - tidying up\n");
else if (!bRadioStatsRecorded2)
{
- m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition(0);
+ m_aTracks[m_nPlayingTrack].m_nPosition = SampleManager.GetStreamedFilePosition();
m_aTracks[m_nPlayingTrack].m_nLastPosCheckTimer = CTimer::GetTimeInMillisecondsPauseMode();
- bRadioStatsRecorded2 = true;
+ bRadioStatsRecorded2 = TRUE;
RecordRadioStats();
if (m_nPlayingTrack >= STREAMED_SOUND_HAVANA_CITY_AMBIENT && m_nPlayingTrack <= STREAMED_SOUND_HAVANA_BEACH_AMBIENT)
{
@@ -989,8 +1006,8 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
AudioManager.PlayOneShot(AudioManager.m_nFrontEndEntity, SOUND_FRONTEND_HURRICANE, 0.0);
}
}
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
- SampleManager.StopStreamedFile(0);
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
+ SampleManager.StopStreamedFile();
}
}
return;
@@ -998,8 +1015,8 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
if (m_nPlayingTrack >= STREAMED_SOUND_CITY_AMBIENT && m_nPlayingTrack <= STREAMED_SOUND_AMBSIL_AMBIENT)
{
- ComputeAmbienceVol(false, volume);
- SampleManager.SetStreamedVolumeAndPan(volume, 63, 1, 0);
+ ComputeAmbienceVol(FALSE, volume);
+ SampleManager.SetStreamedVolumeAndPan(volume, 63, TRUE);
return;
}
if (CTimer::GetIsSlowMotionActive())
@@ -1009,7 +1026,7 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
float DistToTargetSq = (TheCamera.pTargetEntity->GetPosition() - TheCamera.GetPosition()).MagnitudeSqr();
if (DistToTargetSq >= SQR(55.0f))
{
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
}
else if (DistToTargetSq >= SQR(10.0f))
{
@@ -1026,17 +1043,17 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
}
if (gRetuneCounter != 0)
volume = 0;
- SampleManager.SetStreamedVolumeAndPan(volume, pan, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(volume, pan, FALSE);
}
else if (AudioManager.ShouldDuckMissionAudio(0) || AudioManager.ShouldDuckMissionAudio(1))
- SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, FALSE);
else if (gRetuneCounter != 0)
- SampleManager.SetStreamedVolumeAndPan(0, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(0, 63, FALSE);
else
- SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(m_nCurrentVolume, 63, FALSE);
}
} else if (AudioManager.ShouldDuckMissionAudio(0) || AudioManager.ShouldDuckMissionAudio(1)) {
- SampleManager.SetStreamedVolumeAndPan(Min(m_nCurrentVolume, 25), 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(Min(m_nCurrentVolume, 25), 63, FALSE);
nFramesSinceCutsceneEnded = 0;
} else {
if (nFramesSinceCutsceneEnded == -1)
@@ -1058,7 +1075,7 @@ cMusicManager::ServiceTrack(CVehicle *veh, CPed *ped)
}
if (gRetuneCounter != 0)
volume = 0;
- SampleManager.SetStreamedVolumeAndPan(volume, 63, 0, 0);
+ SampleManager.SetStreamedVolumeAndPan(volume, 63, FALSE);
}
if (m_nVolumeLatency > 0)
m_nVolumeLatency--;
@@ -1071,10 +1088,10 @@ cMusicManager::PreloadCutSceneMusic(uint32 track)
{
if (IsInitialised() && !m_bDisabled && track < TOTAL_STREAMED_SOUNDS && m_nMusicMode == MUSICMODE_CUTSCENE) {
AudioManager.ResetPoliceRadio();
- while (SampleManager.IsStreamPlaying(0))
- SampleManager.StopStreamedFile(0);
- SampleManager.PreloadStreamedFile(track, 0);
- SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 0);
+ while (SampleManager.IsStreamPlaying())
+ SampleManager.StopStreamedFile();
+ SampleManager.PreloadStreamedFile(track);
+ SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, TRUE);
m_nPlayingTrack = track;
}
}
@@ -1083,27 +1100,27 @@ void
cMusicManager::PlayPreloadedCutSceneMusic(void)
{
if (IsInitialised() && !m_bDisabled && m_nMusicMode == MUSICMODE_CUTSCENE)
- SampleManager.StartPreloadedStreamedFile(0);
+ SampleManager.StartPreloadedStreamedFile();
}
void
cMusicManager::StopCutSceneMusic(void)
{
if (IsInitialised() && !m_bDisabled && m_nMusicMode == MUSICMODE_CUTSCENE) {
- SampleManager.StopStreamedFile(0);
+ SampleManager.StopStreamedFile();
m_nPlayingTrack = NO_TRACK;
}
}
void
-cMusicManager::PlayFrontEndTrack(uint32 track, uint8 loopFlag)
+cMusicManager::PlayFrontEndTrack(uint32 track, bool8 loopFlag)
{
if (IsInitialised() && !m_bDisabled && track < TOTAL_STREAMED_SOUNDS && (m_nUpcomingMusicMode == MUSICMODE_FRONTEND || m_nMusicMode == MUSICMODE_FRONTEND))
{
m_nFrontendTrack = track;
m_FrontendLoopFlag = loopFlag;
if (m_nMusicMode != MUSICMODE_FRONTEND)
- m_bEarlyFrontendTrack = true;
+ m_bEarlyFrontendTrack = TRUE;
}
}
@@ -1201,7 +1218,7 @@ cMusicManager::GetFavouriteRadioStation()
return favstation;
}
-bool
+bool8
cMusicManager::CheckForMusicInterruptions()
{
return (m_nPlayingTrack == STREAMED_SOUND_MISSION_COMPLETED) || (m_nPlayingTrack == STREAMED_SOUND_CUTSCENE_FINALE);
@@ -1265,7 +1282,8 @@ cMusicManager::DisplayRadioStationName()
if (vehicle)
{
-#if defined RADIO_SCROLL_TO_PREV_STATION || defined FIX_BUGS // Because m_nFrontendTrack can have NO_TRACK
+ // Prev scroll needs it to be signed, and m_nFrontendTrack can be NO_TRACK thus FIX_BUGS
+#if defined RADIO_SCROLL_TO_PREV_STATION || defined FIX_BUGS
int track;
#else
uint8 track;
@@ -1281,13 +1299,16 @@ cMusicManager::DisplayRadioStationName()
#endif
while (track >= NUM_RADIOS + 1) track -= NUM_RADIOS + 1;
- // We already handle this condition while scrolling back, on key press. No need to change this.
+ // On scrolling back we handle this condition on key press. No need to change this.
if (!DMAudio.IsMP3RadioChannelAvailable() && track == USERTRACK)
gNumRetunePresses++;
}
else
+#ifdef RADIO_OFF_TEXT
+ track = GetCarTuning(); // gStreamedSound or veh->m_nRadioStation would also work, but these don't cover police/taxi radios
+#else
track = m_nFrontendTrack;
-
+#endif
wchar* string = nil;
switch (track) {
case WILDSTYLE: string = TheText.Get("FEA_FM0"); break;
@@ -1304,10 +1325,11 @@ cMusicManager::DisplayRadioStationName()
return;
string = TheText.Get("FEA_MP3"); break;
#ifdef RADIO_OFF_TEXT
- case STREAMED_SOUND_RADIO_POLICE:
- case STREAMED_SOUND_RADIO_TAXI:
- return;
- default: {
+ case RADIO_OFF: {
+ // Otherwise RADIO OFF will be seen after pausing-resuming game and Mission Complete text
+ if (!m_bRadioStreamReady || !m_bGameplayAllowsRadio)
+ return;
+
extern wchar WideErrorString[];
string = TheText.Get("FEA_NON");
@@ -1317,9 +1339,8 @@ cMusicManager::DisplayRadioStationName()
}
break;
}
-#else
- default: return;
#endif
+ default: return;
};
if (pCurrentStation != string) {
@@ -1328,7 +1349,11 @@ cMusicManager::DisplayRadioStationName()
}
else {
if (cDisplay == 0) return;
+#ifdef FIX_BUGS
+ cDisplay -= CTimer::GetLogicalFramesPassed();
+#else
cDisplay--;
+#endif
}
CFont::SetJustifyOff();
@@ -1357,7 +1382,7 @@ cMusicManager::DisplayRadioStationName()
#endif
}
-bool
+bool8
cMusicManager::UsesPoliceRadio(CVehicle *veh)
{
switch (veh->GetModelIndex())
@@ -1367,18 +1392,18 @@ cMusicManager::UsesPoliceRadio(CVehicle *veh)
case MI_COASTG:
case MI_RHINO:
case MI_BARRACKS:
- return true;
+ return TRUE;
case MI_MRWHOOP:
case MI_HUNTER:
- return false;
+ return FALSE;
}
return veh->UsesSiren();
}
-bool
+bool8
cMusicManager::UsesTaxiRadio(CVehicle *veh)
{
- if (veh->GetModelIndex() != MI_KAUFMAN) return false;
+ if (veh->GetModelIndex() != MI_KAUFMAN) return FALSE;
return CTheScripts::bPlayerHasMetDebbieHarry;
}
@@ -1387,10 +1412,10 @@ cMusicManager::ServiceAmbience()
{
}
-bool
+bool8
cMusicManager::ChangeRadioChannel()
{
- return true;
+ return TRUE;
}
// these two are empty
diff --git a/src/audio/MusicManager.h b/src/audio/MusicManager.h
index 27456d79..3d2b7cee 100644
--- a/src/audio/MusicManager.h
+++ b/src/audio/MusicManager.h
@@ -16,18 +16,18 @@ class CPed;
class cMusicManager
{
public:
- bool m_bIsInitialised;
- bool m_bDisabled;
- bool m_bSetNextStation;
+ bool8 m_bIsInitialised;
+ bool8 m_bDisabled;
+ bool8 m_bSetNextStation;
uint8 m_nVolumeLatency;
uint8 m_nCurrentVolume;
uint8 m_nMaxVolume;
uint32 m_nAnnouncement;
- bool m_bAnnouncementInProgress;
+ bool8 m_bAnnouncementInProgress;
tStreamedSample m_aTracks[TOTAL_STREAMED_SOUNDS];
- bool m_bResetTimers;
+ bool8 m_bResetTimers;
uint32 m_nResetTime;
- bool m_bRadioSetByScript;
+ bool8 m_bRadioSetByScript;
uint8 m_nRadioStationScript;
int32 m_nRadioPosition;
uint32 m_nRadioInCar;
@@ -35,40 +35,40 @@ public:
uint32 m_nPlayingTrack;
uint8 m_nUpcomingMusicMode;
uint8 m_nMusicMode;
- bool m_FrontendLoopFlag;
- bool m_bTrackChangeStarted;
+ bool8 m_FrontendLoopFlag;
+ bool8 m_bTrackChangeStarted;
uint32 m_nNextTrack;
- bool m_nNextLoopFlag;
- bool m_bVerifyNextTrackStartedToPlay;
- bool m_bGameplayAllowsRadio;
- bool m_bRadioStreamReady;
+ bool8 m_nNextLoopFlag;
+ bool8 m_bVerifyNextTrackStartedToPlay;
+ bool8 m_bGameplayAllowsRadio;
+ bool8 m_bRadioStreamReady;
int8 nFramesSinceCutsceneEnded;
- bool m_bUserResumedGame;
- bool m_bMusicModeChangeStarted;
+ bool8 m_bUserResumedGame;
+ bool8 m_bMusicModeChangeStarted;
uint8 m_nMusicModeToBeSet;
- bool m_bEarlyFrontendTrack;
+ bool8 m_bEarlyFrontendTrack;
float aListenTimeArray[NUM_RADIOS];
float m_nLastTrackServiceTime;
public:
cMusicManager();
- bool IsInitialised() { return m_bIsInitialised; }
+ bool8 IsInitialised() { return m_bIsInitialised; }
uint8 GetMusicMode() { return m_nMusicMode; }
uint32 GetCurrentTrack() { return m_nPlayingTrack; }
void ResetMusicAfterReload();
- void SetStartingTrackPositions(uint8 isNewGameTimer);
- bool Initialise();
+ void SetStartingTrackPositions(bool8 isNewGameTimer);
+ bool8 Initialise();
void Terminate();
void ChangeMusicMode(uint8 mode);
void StopFrontEndTrack();
- bool PlayerInCar();
+ bool8 PlayerInCar();
void DisplayRadioStationName();
void PlayAnnouncement(uint32);
- void PlayFrontEndTrack(uint32, uint8);
+ void PlayFrontEndTrack(uint32, bool8);
void PreloadCutSceneMusic(uint32);
void PlayPreloadedCutSceneMusic(void);
void StopCutSceneMusic(void);
@@ -83,16 +83,16 @@ public:
void ServiceAmbience();
void ServiceTrack(CVehicle *veh, CPed *ped);
- bool UsesPoliceRadio(CVehicle *veh);
- bool UsesTaxiRadio(CVehicle *veh);
+ bool8 UsesPoliceRadio(CVehicle *veh);
+ bool8 UsesTaxiRadio(CVehicle *veh);
uint32 GetTrackStartPos(uint32 track);
- void ComputeAmbienceVol(uint8 reset, uint8& outVolume);
- bool ServiceAnnouncement();
+ void ComputeAmbienceVol(bool8 reset, uint8& outVolume);
+ bool8 ServiceAnnouncement();
uint32 GetCarTuning();
uint32 GetNextCarTuning();
- bool ChangeRadioChannel();
+ bool8 ChangeRadioChannel();
void RecordRadioStats();
void SetUpCorrectAmbienceTrack();
float *GetListenTimeArray();
@@ -100,7 +100,7 @@ public:
uint32 GetFavouriteRadioStation();
void SetMalibuClubTrackPos(uint8 pos);
void SetStripClubTrackPos(uint8 pos);
- bool CheckForMusicInterruptions();
+ bool8 CheckForMusicInterruptions();
void Enable();
void Disable();
@@ -109,5 +109,5 @@ public:
VALIDATE_SIZE(cMusicManager, 0x95C);
extern cMusicManager MusicManager;
-extern bool g_bAnnouncementReadPosAlready; // we have a symbol of this so it was declared in .h
+extern bool8 g_bAnnouncementReadPosAlready; // we have a symbol of this so it was declared in .h
float GetHeightScale();
diff --git a/src/audio/PoliceRadio.cpp b/src/audio/PolRadio.cpp
similarity index 90%
rename from src/audio/PoliceRadio.cpp
rename to src/audio/PolRadio.cpp
index 227d27d0..ce0e9a6d 100644
--- a/src/audio/PoliceRadio.cpp
+++ b/src/audio/PolRadio.cpp
@@ -7,7 +7,7 @@
#include "AudioSamples.h"
#include "MusicManager.h"
#include "PlayerPed.h"
-#include "PoliceRadio.h"
+#include "PolRadio.h"
#include "Replay.h"
#include "Vehicle.h"
#include "World.h"
@@ -15,9 +15,6 @@
#include "sampman.h"
#include "Wanted.h"
-const int channels = ARRAY_SIZE(AudioManager.m_asActiveSamples);
-const int policeChannel = channels + 1;
-
struct tPoliceRadioZone {
char m_aName[8];
uint32 m_nSampleIndex;
@@ -48,8 +45,8 @@ cAudioManager::InitialisePoliceRadioZones()
SETZONESFX(4, "BEACH2", SFX_POLICE_RADIO_WASHINGTON_BEACH);
SETZONESFX(5, "BEACH3", SFX_POLICE_RADIO_VICE_POINT);
SETZONESFX(6, "GOLFC", SFX_POLICE_RADIO_LEAF_LINKS);
- SETZONESFX(7, "STARI", SFX_POLICE_RADIO_STRAFISH_ISLAND);
- SETZONESFX(8, "DOCKS", SFX_POLICE_RADIO_VICE_PORT);
+ SETZONESFX(7, "STARI", SFX_POLICE_RADIO_STARFISH_ISLAND);
+ SETZONESFX(8, "DOCKS", SFX_POLICE_RADIO_VICEPORT);
SETZONESFX(9, "HAVANA", SFX_POLICE_RADIO_LITTLE_HAVANA);
SETZONESFX(10, "HAITI", SFX_POLICE_RADIO_LITTLE_HAITI);
SETZONESFX(11, "PORNI", SFX_POLICE_RADIO_PRAWN_ISLAND);
@@ -68,8 +65,8 @@ cAudioManager::InitialisePoliceRadio()
for (int32 i = 0; i < ARRAY_SIZE(m_sPoliceRadioQueue.crimes); i++)
m_sPoliceRadioQueue.crimes[i].type = CRIME_NONE;
- SampleManager.SetChannelReverbFlag(policeChannel, false);
- gSpecialSuspectLastSeenReport = false;
+ SampleManager.SetChannelReverbFlag(CHANNEL_POLICE_RADIO, FALSE);
+ gSpecialSuspectLastSeenReport = FALSE;
for (int32 i = 0; i < ARRAY_SIZE(gMinTimeToNextReport); i++)
gMinTimeToNextReport[i] = m_FrameCounter;
}
@@ -78,7 +75,7 @@ void
cAudioManager::ResetPoliceRadio()
{
if (!m_bIsInitialised) return;
- if (SampleManager.GetChannelUsedFlag(policeChannel)) SampleManager.StopChannel(policeChannel);
+ if (SampleManager.GetChannelUsedFlag(CHANNEL_POLICE_RADIO)) SampleManager.StopChannel(CHANNEL_POLICE_RADIO);
InitialisePoliceRadio();
}
@@ -105,19 +102,18 @@ cAudioManager::DoPoliceRadioCrackle()
m_sQueueSample.m_nCounter = 0;
m_sQueueSample.m_nSampleIndex = SFX_POLICE_RADIO_CRACKLE;
m_sQueueSample.m_nBankIndex = SFX_BANK_0;
- m_sQueueSample.m_bIs2D = true;
+ m_sQueueSample.m_bIs2D = TRUE;
m_sQueueSample.m_nReleasingVolumeModificator = 10;
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_POLICE_RADIO_CRACKLE);
m_sQueueSample.m_nVolume = m_anRandomTable[2] % 20 + 15;
m_sQueueSample.m_nLoopCount = 0;
m_sQueueSample.m_nEmittingVolume = m_sQueueSample.m_nVolume;
- m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(SFX_POLICE_RADIO_CRACKLE);
- m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(SFX_POLICE_RADIO_CRACKLE);
- m_sQueueSample.m_bReleasingSoundFlag = false;
- m_sQueueSample.m_bReverbFlag = false;
+ SET_LOOP_OFFSETS(SFX_POLICE_RADIO_CRACKLE)
+ m_sQueueSample.m_bReleasingSoundFlag = FALSE;
+ m_sQueueSample.m_bReverbFlag = FALSE;
m_sQueueSample.m_nOffset = 63;
m_sQueueSample.m_nReleasingVolumeDivider = 3;
- m_sQueueSample.m_bRequireReflection = false;
+ m_sQueueSample.m_bRequireReflection = FALSE;
AddSampleToRequestedQueue();
}
@@ -130,7 +126,7 @@ cAudioManager::ServicePoliceRadio()
if(!m_bIsInitialised) return;
if(m_nUserPause == 0) {
- bool crimeReport = SetupCrimeReport();
+ bool8 crimeReport = SetupCrimeReport();
#ifdef FIX_BUGS // Crash at 0x5fe6ef
if(CReplay::IsPlayingBack() || !FindPlayerPed() || !FindPlayerPed()->m_pWanted)
return;
@@ -141,7 +137,11 @@ cAudioManager::ServicePoliceRadio()
if (!crimeReport) {
if (wantedLevel != 0) {
if (nLastSeen != 0)
+#ifdef FIX_BUGS
+ nLastSeen -= CTimer::GetLogicalFramesPassed();
+#else
--nLastSeen;
+#endif
else {
nLastSeen = m_anRandomTable[1] % 1000 + 2000;
SetupSuspectLastSeenReport();
@@ -156,31 +156,35 @@ cAudioManager::ServicePoliceRadio()
void
cAudioManager::ServicePoliceRadioChannel(uint8 wantedLevel)
{
- bool processed = false;
+ bool8 processed = FALSE;
uint32 sample;
int32 freq;
static int cWait = 0;
- static bool bChannelOpen = false;
+ static bool8 bChannelOpen = FALSE;
static uint8 bMissionAudioPhysicalPlayingStatus = 0;
static int32 PoliceChannelFreq = 22050;
if (!m_bIsInitialised) return;
if (m_nUserPause != 0) {
- if (SampleManager.GetChannelUsedFlag(policeChannel)) SampleManager.StopChannel(policeChannel);
+ if (SampleManager.GetChannelUsedFlag(CHANNEL_POLICE_RADIO)) SampleManager.StopChannel(CHANNEL_POLICE_RADIO);
if (g_nMissionAudioSfx != NO_SAMPLE && bMissionAudioPhysicalPlayingStatus == 1 &&
SampleManager.IsStreamPlaying(1)) {
- SampleManager.PauseStream(1, 1);
+ SampleManager.PauseStream(TRUE, 1);
}
} else {
if (m_nPreviousUserPause && g_nMissionAudioSfx != NO_SAMPLE &&
bMissionAudioPhysicalPlayingStatus == 1) {
- SampleManager.PauseStream(0, 1);
+ SampleManager.PauseStream(FALSE, 1);
}
- if (m_sPoliceRadioQueue.policeChannelTimer == 0) bChannelOpen = false;
+ if (m_sPoliceRadioQueue.policeChannelTimer == 0) bChannelOpen = FALSE;
if (cWait) {
+#ifdef FIX_BUGS
+ cWait -= CTimer::GetLogicalFramesPassed();
+#else
--cWait;
+#endif
return;
}
if (g_nMissionAudioSfx != NO_SAMPLE && !bChannelOpen) {
@@ -200,9 +204,9 @@ cAudioManager::ServicePoliceRadioChannel(uint8 wantedLevel)
}
return;
}
- } else if (!SampleManager.GetChannelUsedFlag(policeChannel)) {
+ } else if (!SampleManager.GetChannelUsedFlag(CHANNEL_POLICE_RADIO)) {
SampleManager.PreloadStreamedFile(g_nMissionAudioSfx, 1);
- SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 1);
+ SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, TRUE, 1);
SampleManager.StartPreloadedStreamedFile(1);
g_nMissionAudioPlayingStatus = 1;
bMissionAudioPhysicalPlayingStatus = 0;
@@ -211,7 +215,7 @@ cAudioManager::ServicePoliceRadioChannel(uint8 wantedLevel)
}
if (bChannelOpen) DoPoliceRadioCrackle();
if ((g_nMissionAudioSfx == NO_SAMPLE || g_nMissionAudioPlayingStatus != 1) &&
- !SampleManager.GetChannelUsedFlag(policeChannel) && m_sPoliceRadioQueue.policeChannelTimer) {
+ !SampleManager.GetChannelUsedFlag(CHANNEL_POLICE_RADIO) && m_sPoliceRadioQueue.policeChannelTimer) {
if (m_sPoliceRadioQueue.policeChannelTimer) {
sample = m_sPoliceRadioQueue.crimesSamples[m_sPoliceRadioQueue.policeChannelCounterSeconds];
m_sPoliceRadioQueue.policeChannelTimer--;
@@ -223,35 +227,35 @@ cAudioManager::ServicePoliceRadioChannel(uint8 wantedLevel)
if (gSpecialSuspectLastSeenReport) {
gSpecialSuspectLastSeenReport = 0;
} else if (sample == SFX_POLICE_RADIO_MESSAGE_NOISE_1) {
- bChannelOpen = false;
- processed = true;
+ bChannelOpen = FALSE;
+ processed = TRUE;
}
}
if (sample == NO_SAMPLE) {
if (!processed) cWait = 30;
} else {
- SampleManager.InitialiseChannel(policeChannel, sample, 0);
+ SampleManager.InitialiseChannel(CHANNEL_POLICE_RADIO, sample, SFX_BANK_0);
switch (sample) {
case SFX_POLICE_RADIO_MESSAGE_NOISE_1:
freq = m_anRandomTable[4] % 2000 + 10025;
- bChannelOpen = bChannelOpen == false;
+ bChannelOpen = bChannelOpen == FALSE;
break;
default: freq = SampleManager.GetSampleBaseFrequency(sample); break;
}
PoliceChannelFreq = freq;
- SampleManager.SetChannelFrequency(policeChannel, freq);
- SampleManager.SetChannelVolume(policeChannel, 100);
- SampleManager.SetChannelPan(policeChannel, 63);
- SampleManager.SetChannelLoopCount(policeChannel, 1);
- SampleManager.SetChannelLoopPoints(policeChannel, 0, -1);
- SampleManager.StartChannel(policeChannel);
+ SampleManager.SetChannelFrequency(CHANNEL_POLICE_RADIO, freq);
+ SampleManager.SetChannelVolume(CHANNEL_POLICE_RADIO, 100);
+ SampleManager.SetChannelPan(CHANNEL_POLICE_RADIO, 63);
+ SampleManager.SetChannelLoopCount(CHANNEL_POLICE_RADIO, 1);
+ SampleManager.SetChannelLoopPoints(CHANNEL_POLICE_RADIO, 0, -1);
+ SampleManager.StartChannel(CHANNEL_POLICE_RADIO);
}
if (processed) ResetPoliceRadio();
}
}
}
-bool
+bool8
cAudioManager::SetupCrimeReport()
{
int16 audioZoneId;
@@ -264,13 +268,13 @@ cAudioManager::SetupCrimeReport()
float quarterY;
int i;
int32 sampleIndex;
- bool processed = false;
+ bool8 processed = FALSE;
- if (MusicManager.m_nMusicMode == MUSICMODE_CUTSCENE) return false;
+ if (MusicManager.m_nMusicMode == MUSICMODE_CUTSCENE) return FALSE;
if (60 - m_sPoliceRadioQueue.policeChannelTimer <= 9) {
AgeCrimes();
- return true;
+ return TRUE;
}
for (i = 0; i < ARRAY_SIZE(m_sPoliceRadioQueue.crimes); i++) {
@@ -278,7 +282,7 @@ cAudioManager::SetupCrimeReport()
break;
}
- if (i == ARRAY_SIZE(m_sPoliceRadioQueue.crimes)) return false;
+ if (i == ARRAY_SIZE(m_sPoliceRadioQueue.crimes)) return FALSE;
audioZoneId = CTheZones::FindAudioZone(&m_sPoliceRadioQueue.crimes[i].position);
if (audioZoneId >= 0 && audioZoneId < NUMAUDIOZONES) {
zone = CTheZones::GetAudioZone(audioZoneId);
@@ -317,10 +321,10 @@ cAudioManager::SetupCrimeReport()
if (m_sPoliceRadioQueue.crimes[i].position.y > halfY + quarterY) {
m_sPoliceRadioQueue.Add(SFX_NORTH);
- processed = true;
+ processed = TRUE;
} else if (m_sPoliceRadioQueue.crimes[i].position.y < halfY - quarterY) {
m_sPoliceRadioQueue.Add(SFX_SOUTH);
- processed = true;
+ processed = TRUE;
}
if (m_sPoliceRadioQueue.crimes[i].position.x > halfX + quarterX)
@@ -339,7 +343,7 @@ cAudioManager::SetupCrimeReport()
}
m_sPoliceRadioQueue.crimes[i].type = CRIME_NONE;
AgeCrimes();
- return true;
+ return TRUE;
}
void
@@ -479,7 +483,7 @@ cAudioManager::SetupSuspectLastSeenReport()
case MI_SABRETUR:
case MI_VIRGO:
case MI_BLISTAC:
- sample = SFX_POLICE_RADIO_2_DOOR;
+ sample = SFX_POLICE_RADIO_TUDOOR;
break;
case MI_STINGER:
case MI_INFERNUS:
@@ -688,7 +692,7 @@ cAudioManager::PlaySuspectLastSeen(float x, float y, float z)
float quarterX;
float quarterY;
int32 sample;
- bool processed = false;
+ bool8 processed = FALSE;
CVector vec = CVector(x, y, z);
if (!m_bIsInitialised) return;
@@ -713,10 +717,10 @@ cAudioManager::PlaySuspectLastSeen(float x, float y, float z)
if (vec.y > halfY + quarterY) {
m_sPoliceRadioQueue.Add(SFX_NORTH);
- processed = true;
+ processed = TRUE;
} else if (vec.y < halfY - quarterY) {
m_sPoliceRadioQueue.Add(SFX_SOUTH);
- processed = true;
+ processed = TRUE;
}
if (vec.x > halfX + quarterX)
@@ -728,7 +732,7 @@ cAudioManager::PlaySuspectLastSeen(float x, float y, float z)
m_sPoliceRadioQueue.Add(sample);
m_sPoliceRadioQueue.Add(SFX_POLICE_RADIO_MESSAGE_NOISE_1);
m_sPoliceRadioQueue.Add(NO_SAMPLE);
- gSpecialSuspectLastSeenReport = true;
+ gSpecialSuspectLastSeenReport = TRUE;
break;
}
}
diff --git a/src/audio/PoliceRadio.h b/src/audio/PolRadio.h
similarity index 100%
rename from src/audio/PoliceRadio.h
rename to src/audio/PolRadio.h
diff --git a/src/audio/audio_enums.h b/src/audio/audio_enums.h
index 990b2d73..5a14d312 100644
--- a/src/audio/audio_enums.h
+++ b/src/audio/audio_enums.h
@@ -1295,3 +1295,26 @@ enum eAudioType
AUDIOTYPE_POLICERADIO,
TOTAL_AUDIO_TYPES,
};
+
+#ifdef GTA_PS2
+enum
+{
+ NUM_CHANNELS_GENERIC = 42,
+ CHANNEL_POLICE_RADIO = NUM_CHANNELS_GENERIC,
+ CHANNEL_MISSION_AUDIO_1,
+ CHANNEL_MISSION_AUDIO_2,
+ CHANNEL_PLAYER_VEHICLE_ENGINE,
+ NUM_CHANNELS
+};
+#else
+enum
+{
+#ifdef PS2_AUDIO_CHANNELS
+ NUM_CHANNELS_GENERIC = 42,
+#else
+ NUM_CHANNELS_GENERIC = 27,
+#endif
+ CHANNEL_POLICE_RADIO,
+ NUM_CHANNELS
+};
+#endif
diff --git a/src/audio/oal/aldlist.cpp b/src/audio/oal/aldlist.cpp
index 881418c1..6024adf2 100644
--- a/src/audio/oal/aldlist.cpp
+++ b/src/audio/oal/aldlist.cpp
@@ -24,12 +24,6 @@
#include "aldlist.h"
-#ifndef _WIN32
-#define _stricmp strcasecmp
-#define _strnicmp strncasecmp
-#define _strdup strdup
-#endif
-
#ifdef AUDIO_OAL
/*
* Init call
@@ -47,8 +41,8 @@ ALDeviceList::ALDeviceList()
defaultDeviceIndex = 0;
if (alcIsExtensionPresent(NULL, "ALC_ENUMERATION_EXT")) {
- devices = (char *)alcGetString(NULL, ALC_DEVICE_SPECIFIER);
- defaultDeviceName = (char *)alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER);
+ devices = (char *)alcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);
+ defaultDeviceName = (char *)alcGetString(NULL, ALC_DEFAULT_ALL_DEVICES_SPECIFIER);
index = 0;
// go through device list (each device terminated with a single NULL, list terminated with double NULL)
@@ -62,17 +56,11 @@ ALDeviceList::ALDeviceList()
if (context) {
alcMakeContextCurrent(context);
// if new actual device name isn't already in the list, then add it...
- actualDeviceName = alcGetString(device, ALC_DEVICE_SPECIFIER);
- bool bNewName = true;
- for (unsigned int i = 0; i < GetNumDevices(); i++) {
- if (strcmp(GetDeviceName(i), actualDeviceName) == 0) {
- bNewName = false;
- }
- }
- if ((bNewName) && (actualDeviceName != NULL) && (strlen(actualDeviceName) > 0)) {
- ALDEVICEINFO ALDeviceInfo;
+ actualDeviceName = alcGetString(device, ALC_ALL_DEVICES_SPECIFIER);
+ if ((actualDeviceName != NULL) && (strlen(actualDeviceName) > 0)) {
+ ALDEVICEINFO &ALDeviceInfo = aDeviceInfo[nNumOfDevices++];
ALDeviceInfo.bSelected = true;
- ALDeviceInfo.strDeviceName = _strdup(actualDeviceName);
+ ALDeviceInfo.SetName(actualDeviceName);
alcGetIntegerv(device, ALC_MAJOR_VERSION, sizeof(int), &ALDeviceInfo.iMajorVersion);
alcGetIntegerv(device, ALC_MINOR_VERSION, sizeof(int), &ALDeviceInfo.iMinorVersion);
@@ -105,8 +93,6 @@ ALDeviceList::ALDeviceList()
// Get Source Count
ALDeviceInfo.uiSourceCount = GetMaxNumSources();
-
- aDeviceInfo[nNumOfDevices++] = ALDeviceInfo;
}
alcMakeContextCurrent(NULL);
alcDestroyContext(context);
diff --git a/src/audio/oal/aldlist.h b/src/audio/oal/aldlist.h
index 417bd314..bebb6791 100644
--- a/src/audio/oal/aldlist.h
+++ b/src/audio/oal/aldlist.h
@@ -21,7 +21,7 @@ enum
};
struct ALDEVICEINFO {
- const char *strDeviceName;
+ char *strDeviceName;
int iMajorVersion;
int iMinorVersion;
unsigned int uiSourceCount;
@@ -33,6 +33,19 @@ struct ALDEVICEINFO {
strDeviceName = NULL;
Extensions = 0;
}
+
+ ~ALDEVICEINFO()
+ {
+ delete[] strDeviceName;
+ strDeviceName = NULL;
+ }
+
+ void SetName(const char *name)
+ {
+ if(strDeviceName) delete[] strDeviceName;
+ strDeviceName = new char[strlen(name) + 1];
+ strcpy(strDeviceName, name);
+ }
};
typedef ALDEVICEINFO *LPALDEVICEINFO;
diff --git a/src/audio/oal/channel.cpp b/src/audio/oal/channel.cpp
index 826a3cd7..6c9cb837 100644
--- a/src/audio/oal/channel.cpp
+++ b/src/audio/oal/channel.cpp
@@ -10,20 +10,22 @@
extern bool IsFXSupported();
-ALuint alSources[MAXCHANNELS+MAX2DCHANNELS];
-ALuint alFilters[MAXCHANNELS+MAX2DCHANNELS];
-ALuint alBuffers[MAXCHANNELS+MAX2DCHANNELS];
+ALuint alSources[NUM_CHANNELS];
+ALuint alFilters[NUM_CHANNELS];
+ALuint alBuffers[NUM_CHANNELS];
bool bChannelsCreated = false;
int32 CChannel::channelsThatNeedService = 0;
+uint8 tempStereoBuffer[PED_BLOCKSIZE * 2];
+
void
CChannel::InitChannels()
{
- alGenSources(MAXCHANNELS+MAX2DCHANNELS, alSources);
- alGenBuffers(MAXCHANNELS+MAX2DCHANNELS, alBuffers);
+ alGenSources(NUM_CHANNELS, alSources);
+ alGenBuffers(NUM_CHANNELS, alBuffers);
if (IsFXSupported())
- alGenFilters(MAXCHANNELS + MAX2DCHANNELS, alFilters);
+ alGenFilters(NUM_CHANNELS, alFilters);
bChannelsCreated = true;
}
@@ -32,13 +34,13 @@ CChannel::DestroyChannels()
{
if (bChannelsCreated)
{
- alDeleteSources(MAXCHANNELS + MAX2DCHANNELS, alSources);
+ alDeleteSources(NUM_CHANNELS, alSources);
memset(alSources, 0, sizeof(alSources));
- alDeleteBuffers(MAXCHANNELS + MAX2DCHANNELS, alBuffers);
+ alDeleteBuffers(NUM_CHANNELS, alBuffers);
memset(alBuffers, 0, sizeof(alBuffers));
if (IsFXSupported())
{
- alDeleteFilters(MAXCHANNELS + MAX2DCHANNELS, alFilters);
+ alDeleteFilters(NUM_CHANNELS, alFilters);
memset(alFilters, 0, sizeof(alFilters));
}
bChannelsCreated = false;
@@ -50,6 +52,7 @@ CChannel::CChannel()
{
Data = nil;
DataSize = 0;
+ bIs2D = false;
SetDefault();
}
@@ -90,6 +93,7 @@ void CChannel::Init(uint32 _id, bool Is2D)
if ( Is2D )
{
+ bIs2D = true;
alSource3f(alSources[id], AL_POSITION, 0.0f, 0.0f, 0.0f);
alSourcef(alSources[id], AL_GAIN, 1.0f);
}
@@ -113,7 +117,20 @@ void CChannel::Start()
if ( !HasSource() ) return;
if ( !Data ) return;
- alBufferData(alBuffers[id], AL_FORMAT_MONO16, Data, DataSize, Frequency);
+ if ( bIs2D )
+ {
+ // convert mono data to stereo
+ int16 *monoData = (int16*)Data;
+ int16 *stereoData = (int16*)tempStereoBuffer;
+ for (size_t i = 0; i < DataSize / 2; i++)
+ {
+ *(stereoData++) = *monoData;
+ *(stereoData++) = *(monoData++);
+ }
+ alBufferData(alBuffers[id], AL_FORMAT_STEREO16, tempStereoBuffer, DataSize * 2, Frequency);
+ }
+ else
+ alBufferData(alBuffers[id], AL_FORMAT_MONO16, Data, DataSize, Frequency);
if ( LoopPoints[0] != 0 && LoopPoints[0] != -1 )
alBufferiv(alBuffers[id], AL_LOOP_POINTS_SOFT, LoopPoints);
alSourcei(alSources[id], AL_BUFFER, alBuffers[id]);
diff --git a/src/audio/oal/channel.h b/src/audio/oal/channel.h
index b081be25..872646c8 100644
--- a/src/audio/oal/channel.h
+++ b/src/audio/oal/channel.h
@@ -20,6 +20,7 @@ class CChannel
int32 LoopCount;
ALint LoopPoints[2];
ALint LastProcessedOffset;
+ bool bIs2D;
public:
static int32 channelsThatNeedService;
diff --git a/src/audio/oal/stream.cpp b/src/audio/oal/stream.cpp
index e1c848cd..7e68f042 100644
--- a/src/audio/oal/stream.cpp
+++ b/src/audio/oal/stream.cpp
@@ -1,9 +1,7 @@
#include "common.h"
#ifdef AUDIO_OAL
-#include "stream.h"
-#include "sampman.h"
-#include
+
#include
#if defined _MSC_VER && !defined CMAKE_NO_AUTOLINK
@@ -28,6 +26,29 @@
#include
#endif
+#include
+#include
+
+#ifdef MULTITHREADED_AUDIO
+#include
+#include
+#include
+#include
+#include "MusicManager.h"
+#include "stream.h"
+
+std::thread gAudioThread;
+std::mutex gAudioThreadQueueMutex;
+std::condition_variable gAudioThreadCv;
+bool gAudioThreadTerm = false;
+std::queue gStreamsToProcess; // values are not unique, we will handle that ourself
+std::queue> gStreamsToClose;
+#else
+#include "stream.h"
+#endif
+
+#include "sampman.h"
+
#ifndef _WIN32
#include "crossplatform.h"
#endif
@@ -45,6 +66,10 @@ class CSortStereoBuffer
{
uint16* PcmBuf;
size_t BufSize;
+//#ifdef MULTITHREADED_AUDIO
+// std::mutex Mutex;
+//#endif
+
public:
CSortStereoBuffer() : PcmBuf(nil), BufSize(0) {}
~CSortStereoBuffer()
@@ -71,6 +96,9 @@ public:
void SortStereo(void* buf, size_t size)
{
+//#ifdef MULTITHREADED_AUDIO
+// std::lock_guard lock(Mutex);
+//#endif
uint16* InBuf = (uint16*)buf;
uint16* OutBuf = GetBuffer(size);
@@ -140,7 +168,7 @@ public:
else
StepIndex--;
- StepIndex = clamp(StepIndex, 0, 88);
+ StepIndex = Clamp(StepIndex, 0, 88);
int delta = step >> 3;
if (adpcm & 1) delta += step >> 2;
@@ -149,7 +177,7 @@ public:
if (adpcm & 8) delta = -delta;
int newSample = Sample + delta;
- Sample = clamp(newSample, -32768, 32767);
+ Sample = Clamp(newSample, -32768, 32767);
return Sample;
}
};
@@ -285,6 +313,10 @@ public:
#undef CLOSE_ON_ERROR
}
+ void FileOpen()
+ {
+ }
+
~CWavFile()
{
Close();
@@ -295,6 +327,7 @@ public:
return m_bIsOpen;
}
+
uint32 GetSampleSize()
{
return sizeof(uint16);
@@ -464,6 +497,10 @@ public:
m_pfSound = sf_open_virtual(&vio, SFM_READ, &m_soundInfo, m_fileHandle);
}
+ void FileOpen()
+ {
+ }
+
~CSndFile()
{
if ( m_pfSound )
@@ -642,18 +679,6 @@ public:
#endif
#ifdef AUDIO_OAL_USE_MPG123
-// fuzzy seek eliminates stutter when playing ADF but spams errors a lot (nothing breaks though)
-//#define MP3_USE_FUZZY_SEEK
-static ssize_t mpg123_read_replacement(void* handle, void* data, size_t size)
-{
- return fread(data, 1, size, (FILE*)handle);
-}
-
-static off_t mpg123_seek_replacement(void* handle, off_t offset, int whence)
-{
- fseek((FILE*)handle, (uint32) offset, whence);
- return ftell((FILE*)handle);
-}
class CMP3File : public IDecoder
{
@@ -662,62 +687,58 @@ protected:
bool m_bOpened;
uint32 m_nRate;
uint32 m_nChannels;
- FILE* m_fileHandle;
- char* m_buffer;
-
+ const char* m_pPath;
+ bool m_bFileNotOpenedYet;
+
CMP3File() :
m_pMH(nil),
m_bOpened(false),
m_nRate(0),
- m_nChannels(0),
- m_fileHandle(NULL),
- m_buffer(NULL) {}
+ m_bFileNotOpenedYet(false),
+ m_nChannels(0) {}
public:
CMP3File(const char *path) :
m_pMH(nil),
m_bOpened(false),
m_nRate(0),
m_nChannels(0),
- m_fileHandle(NULL),
- m_buffer(NULL)
+ m_pPath(path),
+ m_bFileNotOpenedYet(false)
{
m_pMH = mpg123_new(nil, nil);
if ( m_pMH )
{
-#ifdef MP3_USE_FUZZY_SEEK
- mpg123_param(m_pMH, MPG123_FLAGS, MPG123_FUZZY | MPG123_SEEKBUFFER | MPG123_GAPLESS | MPG123_QUIET, 0.0);
-#else
mpg123_param(m_pMH, MPG123_FLAGS, MPG123_SEEKBUFFER | MPG123_GAPLESS, 0.0);
+
+ m_bOpened = true;
+ m_bFileNotOpenedYet = true;
+ // It's possible to move this to audioFileOpsThread(), but effect isn't noticable + probably not compatible with our current cutscene audio handling
+#if 1
+ FileOpen();
#endif
- long rate = 0;
- int channels = 0;
- int encoding = 0;
-
- m_buffer = (char*) memalign(0x40, IO_BUFFER_SIZE);
-
- m_fileHandle = fopen(path, "rb");
- if (!m_fileHandle) {
- m_bOpened = false;
- return;
- }
-
- setvbuf(m_fileHandle, m_buffer, _IOFBF, IO_BUFFER_SIZE);
-
- m_bOpened = mpg123_replace_reader_handle(m_pMH, mpg123_read_replacement, mpg123_seek_replacement, NULL) == MPG123_OK
- && mpg123_open_handle(m_pMH, m_fileHandle) == MPG123_OK
- && mpg123_getformat(m_pMH, &rate, &channels, &encoding) == MPG123_OK;
-
- m_nRate = rate;
- m_nChannels = channels;
-
- if ( IsOpened() )
- {
- mpg123_format_none(m_pMH);
- mpg123_format(m_pMH, rate, channels, encoding);
- }
}
}
+ void FileOpen()
+ {
+ if(!m_bFileNotOpenedYet) return;
+
+ long rate = 0;
+ int channels = 0;
+ int encoding = 0;
+ m_bOpened = mpg123_open(m_pMH, m_pPath) == MPG123_OK
+ && mpg123_getformat(m_pMH, &rate, &channels, &encoding) == MPG123_OK;
+
+ m_nRate = rate;
+ m_nChannels = channels;
+
+ if(IsOpened()) {
+ mpg123_format_none(m_pMH);
+ mpg123_format(m_pMH, rate, channels, encoding);
+ }
+ m_bFileNotOpenedYet = false;
+ }
+
~CMP3File()
{
if ( m_pMH )
@@ -725,13 +746,6 @@ public:
mpg123_close(m_pMH);
mpg123_delete(m_pMH);
- if (m_fileHandle) {
- fclose(m_fileHandle);
- }
- free(m_buffer);
-
- m_fileHandle = nil;
- m_buffer = nil;
m_pMH = nil;
}
}
@@ -748,7 +762,7 @@ public:
uint32 GetSampleCount()
{
- if ( !IsOpened() ) return 0;
+ if ( !IsOpened() || m_bFileNotOpenedYet ) return 0;
return mpg123_length(m_pMH);
}
@@ -764,19 +778,19 @@ public:
void Seek(uint32 milliseconds)
{
- if ( !IsOpened() ) return;
+ if ( !IsOpened() || m_bFileNotOpenedYet ) return;
mpg123_seek(m_pMH, ms2samples(milliseconds), SEEK_SET);
}
uint32 Tell()
{
- if ( !IsOpened() ) return 0;
+ if ( !IsOpened() || m_bFileNotOpenedYet ) return 0;
return samples2ms(mpg123_tell(m_pMH));
}
uint32 Decode(void *buffer)
{
- if ( !IsOpened() ) return 0;
+ if ( !IsOpened() || m_bFileNotOpenedYet ) return 0;
size_t size;
int err = mpg123_read(m_pMH, (unsigned char *)buffer, GetBufferSize(), &size);
@@ -805,43 +819,52 @@ class CADFFile : public CMP3File
fseek((FILE*)fh, pos, seekType);
return ftell((FILE*)fh);
}
+ static void r_close(void* fh)
+ {
+ fclose((FILE*)fh);
+ }
public:
CADFFile(const char* path)
{
m_pMH = mpg123_new(nil, nil);
if (m_pMH)
{
-#ifdef MP3_USE_FUZZY_SEEK
- mpg123_param(m_pMH, MPG123_FLAGS, MPG123_FUZZY | MPG123_SEEKBUFFER | MPG123_GAPLESS | MPG123_QUIET, 0.0);
-#else
mpg123_param(m_pMH, MPG123_FLAGS, MPG123_SEEKBUFFER | MPG123_GAPLESS, 0.0);
+
+ m_bOpened = true;
+ m_bFileNotOpenedYet = true;
+ m_pPath = path;
+ // It's possible to move this to audioFileOpsThread(), but effect isn't noticable + probably not compatible with our current cutscene audio handling
+#if 1
+ FileOpen();
#endif
- long rate = 0;
- int channels = 0;
- int encoding = 0;
- m_buffer = (char*) memalign(0x40, IO_BUFFER_SIZE);
-
- FILE* m_fileHandle = fopen(path, "rb");
- if (!m_fileHandle) {
- m_bOpened = false;
- return;
- }
-
- setvbuf(m_fileHandle, m_buffer, _IOFBF, IO_BUFFER_SIZE);
-
- m_bOpened = mpg123_replace_reader_handle(m_pMH, r_read, r_seek, NULL) == MPG123_OK
- && mpg123_open_handle(m_pMH, m_fileHandle) == MPG123_OK && mpg123_getformat(m_pMH, &rate, &channels, &encoding) == MPG123_OK;
- m_nRate = rate;
- m_nChannels = channels;
-
- if (IsOpened())
- {
- mpg123_format_none(m_pMH);
- mpg123_format(m_pMH, rate, channels, encoding);
- }
}
}
+
+ void FileOpen()
+ {
+ if(!m_bFileNotOpenedYet) return;
+
+ long rate = 0;
+ int channels = 0;
+ int encoding = 0;
+
+ FILE *f = fopen(m_pPath, "rb");
+
+ m_bOpened = f && mpg123_replace_reader_handle(m_pMH, r_read, r_seek, r_close) == MPG123_OK
+ && mpg123_open_handle(m_pMH, f) == MPG123_OK && mpg123_getformat(m_pMH, &rate, &channels, &encoding) == MPG123_OK;
+
+ m_nRate = rate;
+ m_nChannels = channels;
+
+ if(IsOpened()) {
+ mpg123_format_none(m_pMH);
+ mpg123_format(m_pMH, rate, channels, encoding);
+ }
+
+ m_bFileNotOpenedYet = false;
+ }
};
#endif
@@ -872,7 +895,7 @@ public:
static short quantize(double sample)
{
int a = int(sample + 0.5);
- return short(clamp(a, -32768, 32767));
+ return short(Clamp(a, -32768, 32767));
}
void Decode(void* _inbuf, int16* _outbuf, size_t size)
@@ -966,6 +989,10 @@ public:
m_ppVagBuffers[i] = new uint8[VB_BLOCK_SIZE];
}
+ void FileOpen()
+ {
+ }
+
~CVbFile()
{
if (m_pFile)
@@ -1119,6 +1146,10 @@ public:
m_bOpened = true;
}
}
+
+ void FileOpen()
+ {
+ }
~COpusFile()
{
@@ -1184,11 +1215,173 @@ public:
};
#endif
+
+// For multi-thread: Someone always acquire stream's mutex before entering here
+void
+CStream::BuffersShouldBeFilled()
+{
+#ifdef MULTITHREADED_AUDIO
+ if (MusicManager.m_nMusicMode != MUSICMODE_CUTSCENE) {
+ std::queue> tempQueue;
+ for(int i = 0; i < NUM_STREAMBUFFERS / 2; i++) {
+ tempQueue.push(std::pair(m_alBuffers[i * 2], m_alBuffers[i * 2 + 1]));
+ }
+ m_fillBuffers.swap(tempQueue);
+
+ FlagAsToBeProcessed();
+
+ m_bActive = true; // to allow Update() to queue the filled buffers & play
+ return;
+ }
+ std::queue>().swap(m_fillBuffers);
+#endif
+ if ( FillBuffers() != 0 )
+ {
+ SetPlay(true);
+ }
+}
+
+// returns whether it's queued (not on multi-thread)
+bool
+CStream::BufferShouldBeFilledAndQueued(std::pair* bufs)
+{
+#ifdef MULTITHREADED_AUDIO
+ if (MusicManager.m_nMusicMode != MUSICMODE_CUTSCENE)
+ m_fillBuffers.push(*bufs);
+ else
+#endif
+ {
+ ALuint alBuffers[2] = {(*bufs).first, (*bufs).second}; // left - right
+ if (FillBuffer(alBuffers)) {
+ alSourceQueueBuffers(m_pAlSources[0], 1, &alBuffers[0]);
+ alSourceQueueBuffers(m_pAlSources[1], 1, &alBuffers[1]);
+ return true;
+ }
+ }
+ return false;
+}
+
+#ifdef MULTITHREADED_AUDIO
+void
+CStream::FlagAsToBeProcessed(bool close)
+{
+ if (!close && MusicManager.m_nMusicMode == MUSICMODE_CUTSCENE)
+ return;
+
+ gAudioThreadQueueMutex.lock();
+ if (close)
+ gStreamsToClose.push(std::pair(m_pSoundFile ? m_pSoundFile : nil, m_pBuffer ? m_pBuffer : nil));
+ else
+ gStreamsToProcess.push(this);
+
+ gAudioThreadQueueMutex.unlock();
+
+ gAudioThreadCv.notify_one();
+}
+
+void audioFileOpsThread()
+{
+ do
+ {
+ CStream *stream;
+ {
+ // Just a semaphore
+ std::unique_lock queueMutex(gAudioThreadQueueMutex);
+ gAudioThreadCv.wait(queueMutex, [] { return gStreamsToProcess.size() > 0 || gStreamsToClose.size() > 0 || gAudioThreadTerm; });
+ if (gAudioThreadTerm)
+ return;
+
+ if (!gStreamsToClose.empty()) {
+ auto streamToClose = gStreamsToClose.front();
+ gStreamsToClose.pop();
+ if (streamToClose.first) { // pSoundFile
+ delete streamToClose.first;
+ }
+
+ if (streamToClose.second) { // pBuffer
+ free(streamToClose.second);
+ }
+ }
+
+ if (!gStreamsToProcess.empty()) {
+ stream = gStreamsToProcess.front();
+ gStreamsToProcess.pop();
+ } else
+ continue;
+ }
+
+ std::unique_lock lock(stream->m_mutex);
+
+ std::pair buffers, *lastBufAddr;
+ bool insertBufsAfterCheck = false;
+
+ do {
+ if (!stream->IsOpened()) {
+ break;
+ }
+
+ if (stream->m_bReset)
+ break;
+
+ // We gave up this idea for now
+ /*
+ stream->m_pSoundFile->FileOpen();
+
+ // Deffered allocation, do it now
+ if (stream->m_pBuffer == nil) {
+ stream->m_pBuffer = malloc(stream->m_pSoundFile->GetBufferSize());
+ ASSERT(stream->m_pBuffer != nil);
+ }
+ */
+
+ if (stream->m_bDoSeek) {
+ stream->m_bDoSeek = false;
+ int pos = stream->m_SeekPos;
+ lock.unlock();
+ stream->m_pSoundFile->Seek(pos);
+ lock.lock();
+
+ continue; // let's do the checks again, make sure we didn't miss anything while Seeking
+ }
+
+ if (insertBufsAfterCheck) {
+ stream->m_queueBuffers.push(buffers);
+ insertBufsAfterCheck = false;
+ }
+
+ if (!stream->m_fillBuffers.empty()) {
+ lastBufAddr = &stream->m_fillBuffers.front();
+ buffers = *lastBufAddr;
+ lock.unlock();
+
+ ALuint alBuffers[2] = {buffers.first, buffers.second}; // left - right
+ bool filled = stream->FillBuffer(alBuffers);
+
+ lock.lock();
+
+ // Make sure queue isn't touched after we released mutex
+ if (!stream->m_fillBuffers.empty() && lastBufAddr == &stream->m_fillBuffers.front()) {
+ stream->m_fillBuffers.pop();
+ if (filled)
+ insertBufsAfterCheck = true; // Also make sure stream's properties aren't changed. So make one more pass, and push it to m_queueBuffers only if it pass checks again.
+ }
+ } else
+ break;
+
+ } while (true);
+
+ } while(true);
+}
+#endif
+
void CStream::Initialise()
{
#ifdef AUDIO_OAL_USE_MPG123
mpg123_init();
#endif
+#ifdef MULTITHREADED_AUDIO
+ gAudioThread = std::thread(audioFileOpsThread);
+#endif
}
void CStream::Terminate()
@@ -1196,14 +1389,27 @@ void CStream::Terminate()
#ifdef AUDIO_OAL_USE_MPG123
mpg123_exit();
#endif
+#ifdef MULTITHREADED_AUDIO
+ gAudioThreadQueueMutex.lock();
+ gAudioThreadTerm = true;
+ gAudioThreadQueueMutex.unlock();
+
+ gAudioThreadCv.notify_one();
+ gAudioThread.join();
+#endif
}
-CStream::CStream(char *filename, ALuint *sources, ALuint (&buffers)[NUM_STREAMBUFFERS], uint32 overrideSampleRate) :
+CStream::CStream(ALuint *sources, ALuint (&buffers)[NUM_STREAMBUFFERS]) :
m_pAlSources(sources),
m_alBuffers(buffers),
m_pBuffer(nil),
m_bPaused(false),
m_bActive(false),
+#ifdef MULTITHREADED_AUDIO
+ m_bIExist(false),
+ m_bDoSeek(false),
+ m_SeekPos(0),
+#endif
m_pSoundFile(nil),
m_bReset(false),
m_nVolume(0),
@@ -1212,6 +1418,27 @@ CStream::CStream(char *filename, ALuint *sources, ALuint (&buffers)[NUM_STREAMBU
m_nLoopCount(1)
{
+}
+
+bool CStream::Open(const char* filename, uint32 overrideSampleRate)
+{
+ if (IsOpened()) return false;
+
+#ifdef MULTITHREADED_AUDIO
+ std::unique_lock lock(m_mutex);
+
+ m_bDoSeek = false;
+ m_SeekPos = 0;
+#endif
+
+ m_bPaused = false;
+ m_bActive = false;
+ m_bReset = false;
+ m_nVolume = 0;
+ m_nPan = 0;
+ m_nPosBeforeReset = 0;
+ m_nLoopCount = 1;
+
// Be case-insensitive on linux (from https://github.com/OneSadCookie/fcaseopen/)
#if !defined(_WIN32)
char *real = casepath(filename);
@@ -1250,44 +1477,67 @@ CStream::CStream(char *filename, ALuint *sources, ALuint (&buffers)[NUM_STREAMBU
else
m_pSoundFile = nil;
- if ( IsOpened() )
+ if ( m_pSoundFile && m_pSoundFile->IsOpened() )
{
- m_pBuffer = malloc(m_pSoundFile->GetBufferSize());
- ASSERT(m_pBuffer!=nil);
-
- DEV("AvgSamplesPerSec: %d\n", m_pSoundFile->GetAvgSamplesPerSec());
- DEV("SampleCount: %d\n", m_pSoundFile->GetSampleCount());
- DEV("SampleRate: %d\n", m_pSoundFile->GetSampleRate());
- DEV("Channels: %d\n", m_pSoundFile->GetChannels());
- DEV("Buffer Samples: %d\n", m_pSoundFile->GetBufferSamples());
- DEV("Buffer sec: %f\n", (float(m_pSoundFile->GetBufferSamples()) / float(m_pSoundFile->GetChannels())/ float(m_pSoundFile->GetSampleRate())));
- DEV("Length MS: %02d:%02d\n", (m_pSoundFile->GetLength() / 1000) / 60, (m_pSoundFile->GetLength() / 1000) % 60);
-
- return;
+ uint32 bufSize = m_pSoundFile->GetBufferSize();
+ if(bufSize != 0) { // Otherwise it's deferred
+ m_pBuffer = malloc(bufSize);
+ ASSERT(m_pBuffer != nil);
+
+ DEV("AvgSamplesPerSec: %d\n", m_pSoundFile->GetAvgSamplesPerSec());
+ DEV("SampleCount: %d\n", m_pSoundFile->GetSampleCount());
+ DEV("SampleRate: %d\n", m_pSoundFile->GetSampleRate());
+ DEV("Channels: %d\n", m_pSoundFile->GetChannels());
+ DEV("Buffer Samples: %d\n", m_pSoundFile->GetBufferSamples());
+ DEV("Buffer sec: %f\n", (float(m_pSoundFile->GetBufferSamples()) / float(m_pSoundFile->GetChannels())/ float(m_pSoundFile->GetSampleRate())));
+ DEV("Length MS: %02d:%02d\n", (m_pSoundFile->GetLength() / 1000) / 60, (m_pSoundFile->GetLength() / 1000) % 60);
+ }
+#ifdef MULTITHREADED_AUDIO
+ m_bIExist = true;
+#endif
+ return true;
}
+ return false;
}
CStream::~CStream()
{
- Delete();
+ assert(!IsOpened());
}
-void CStream::Delete()
+void CStream::Close()
{
+ if(!IsOpened()) return;
+
+#ifdef MULTITHREADED_AUDIO
+ {
+ std::lock_guard lock(m_mutex);
+
+ Stop();
+ ClearBuffers();
+ m_bIExist = false;
+ std::queue>().swap(m_fillBuffers);
+ tsQueue>().swapNts(m_queueBuffers); // TSness not required, mutex is acquired
+ }
+
+ FlagAsToBeProcessed(true);
+#else
+
Stop();
ClearBuffers();
-
+
if ( m_pSoundFile )
{
delete m_pSoundFile;
m_pSoundFile = nil;
}
-
+
if ( m_pBuffer )
{
free(m_pBuffer);
m_pBuffer = nil;
}
+#endif
}
bool CStream::HasSource()
@@ -1295,9 +1545,14 @@ bool CStream::HasSource()
return (m_pAlSources[0] != AL_NONE) && (m_pAlSources[1] != AL_NONE);
}
+// m_bIExist only written in main thread, thus mutex is not needed on main thread
bool CStream::IsOpened()
{
+#ifdef MULTITHREADED_AUDIO
+ return m_bIExist;
+#else
return m_pSoundFile && m_pSoundFile->IsOpened();
+#endif
}
bool CStream::IsPlaying()
@@ -1311,6 +1566,14 @@ bool CStream::IsPlaying()
alGetSourcei(m_pAlSources[1], AL_SOURCE_STATE, &sourceState[1]);
if (sourceState[0] == AL_PLAYING || sourceState[1] == AL_PLAYING)
return true;
+
+#ifdef MULTITHREADED_AUDIO
+ std::lock_guard lock(m_mutex);
+
+ // Streams are designed in such a way that m_fillBuffers and m_queueBuffers will be *always* filled if audio is playing, and mutex is acquired
+ if (!m_fillBuffers.empty() || !m_queueBuffers.emptyNts())
+ return true;
+#endif
}
return false;
@@ -1372,10 +1635,10 @@ void CStream::SetVolume(uint32 nVol)
void CStream::SetPan(uint8 nPan)
{
- m_nPan = clamp((int8)nPan - 63, 0, 63);
+ m_nPan = Clamp((int8)nPan - 63, 0, 63);
SetPosition(0, (m_nPan - 63) / 64.0f, 0.0f, Sqrt(1.0f - SQR((m_nPan - 63) / 64.0f)));
- m_nPan = clamp((int8)nPan + 64, 64, 127);
+ m_nPan = Clamp((int8)nPan + 64, 64, 127);
SetPosition(1, (m_nPan - 63) / 64.0f, 0.0f, Sqrt(1.0f - SQR((m_nPan - 63) / 64.0f)));
m_nPan = nPan;
@@ -1385,8 +1648,24 @@ void CStream::SetPan(uint8 nPan)
void CStream::SetPosMS(uint32 nPos)
{
if ( !IsOpened() ) return;
- m_pSoundFile->Seek(nPos);
+
+#ifdef MULTITHREADED_AUDIO
+ std::lock_guard lock(m_mutex);
+
+ std::queue>().swap(m_fillBuffers);
+ tsQueue>().swapNts(m_queueBuffers); // TSness not required, second thread always access it when stream mutex acquired
+
+ if (MusicManager.m_nMusicMode != MUSICMODE_CUTSCENE) {
+ m_bDoSeek = true;
+ m_SeekPos = nPos;
+ } else
+#endif
+ {
+ m_pSoundFile->Seek(nPos);
+ }
ClearBuffers();
+
+ // adding to gStreamsToProcess not needed, someone always calls Start() / BuffersShouldBeFilled() after SetPosMS
}
uint32 CStream::GetPosMS()
@@ -1394,10 +1673,16 @@ uint32 CStream::GetPosMS()
if ( !HasSource() ) return 0;
if ( !IsOpened() ) return 0;
+ // Deferred init causes division by zero
+ if (m_pSoundFile->GetChannels() == 0)
+ return 0;
+
ALint offset;
//alGetSourcei(m_alSource, AL_SAMPLE_OFFSET, &offset);
alGetSourcei(m_pAlSources[0], AL_BYTE_OFFSET, &offset);
+ //std::lock_guard lock(m_mutex);
+
return m_pSoundFile->Tell()
- m_pSoundFile->samples2ms(m_pSoundFile->GetBufferSamples() * (NUM_STREAMBUFFERS/2-1)) / m_pSoundFile->GetChannels()
+ m_pSoundFile->samples2ms(offset/m_pSoundFile->GetSampleSize()) / m_pSoundFile->GetChannels();
@@ -1411,6 +1696,7 @@ uint32 CStream::GetLengthMS()
bool CStream::FillBuffer(ALuint *alBuffer)
{
+#ifndef MULTITHREADED_AUDIO
if ( !HasSource() )
return false;
if ( !IsOpened() )
@@ -1419,13 +1705,14 @@ bool CStream::FillBuffer(ALuint *alBuffer)
return false;
if ( !(alBuffer[1] != AL_NONE && alIsBuffer(alBuffer[1])) )
return false;
-
+#endif
+
uint32 size = m_pSoundFile->Decode(m_pBuffer);
if( size == 0 )
return false;
-
- uint32 channelSize = size / m_pSoundFile->GetChannels();
+ uint32 channelSize = size / m_pSoundFile->GetChannels();
+
alBufferData(alBuffer[0], AL_FORMAT_MONO16, m_pBuffer, channelSize, m_pSoundFile->GetSampleRate());
// TODO: use just one buffer if we play mono
if (m_pSoundFile->GetChannels() == 1)
@@ -1435,6 +1722,26 @@ bool CStream::FillBuffer(ALuint *alBuffer)
return true;
}
+#ifdef MULTITHREADED_AUDIO
+bool CStream::QueueBuffers()
+{
+ bool buffersQueued = false;
+ std::pair buffers;
+ while (m_queueBuffers.peekPop(&buffers)) // beware: m_queueBuffers is tsQueue
+ {
+ ALuint leftBuf = buffers.first;
+ ALuint rightBuf = buffers.second;
+
+ alSourceQueueBuffers(m_pAlSources[0], 1, &leftBuf);
+ alSourceQueueBuffers(m_pAlSources[1], 1, &rightBuf);
+
+ buffersQueued = true;
+ }
+ return buffersQueued;
+}
+#endif
+
+// Only used in single-threaded audio or cutscene audio
int32 CStream::FillBuffers()
{
int32 i = 0;
@@ -1464,17 +1771,33 @@ void CStream::ClearBuffers()
alSourceUnqueueBuffers(m_pAlSources[1], 1, &value);
}
-bool CStream::Setup(bool imSureQueueIsEmpty)
+bool CStream::Setup(bool imSureQueueIsEmpty, bool lock)
{
if ( IsOpened() )
{
- alSourcei(m_pAlSources[0], AL_LOOPING, AL_FALSE);
- alSourcei(m_pAlSources[1], AL_LOOPING, AL_FALSE);
+#ifdef MULTITHREADED_AUDIO
+ if (lock)
+ m_mutex.lock();
+#endif
+
if (!imSureQueueIsEmpty) {
- SetPlay(false);
+ Stop();
ClearBuffers();
}
+#ifdef MULTITHREADED_AUDIO
+ if (MusicManager.m_nMusicMode == MUSICMODE_CUTSCENE) {
+ m_pSoundFile->Seek(0);
+ } else {
+ m_bDoSeek = true;
+ m_SeekPos = 0;
+ }
+
+ if (lock)
+ m_mutex.unlock();
+#else
m_pSoundFile->Seek(0);
+#endif
+
//SetPosition(0.0f, 0.0f, 0.0f);
SetPitch(1.0f);
//SetPan(m_nPan);
@@ -1512,7 +1835,7 @@ void CStream::SetPlay(bool state)
{
ALint sourceState = AL_STOPPED;
alGetSourcei(m_pAlSources[0], AL_SOURCE_STATE, &sourceState);
- if (sourceState != AL_STOPPED )
+ if (sourceState != AL_STOPPED)
alSourceStop(m_pAlSources[0]);
sourceState = AL_STOPPED;
@@ -1527,8 +1850,12 @@ void CStream::SetPlay(bool state)
void CStream::Start()
{
if ( !HasSource() ) return;
- if ( FillBuffers() != 0 )
- SetPlay(true);
+
+#ifdef MULTITHREADED_AUDIO
+ std::lock_guard lock(m_mutex);
+ tsQueue>().swapNts(m_queueBuffers); // TSness not required, second thread always access it when stream mutex acquired
+#endif
+ BuffersShouldBeFilled();
}
void CStream::Stop()
@@ -1550,9 +1877,23 @@ void CStream::Update()
if ( !m_bPaused )
{
- ALint totalBuffers[2] = { 0, 0 };
- ALint buffersProcessed[2] = { 0, 0 };
+ bool buffersQueuedAndStarted = false;
+ bool buffersQueuedButNotStarted = false;
+#ifdef MULTITHREADED_AUDIO
+ // Put it in here because we need totalBuffers after queueing to decide when to loop audio
+ if (m_bActive)
+ {
+ buffersQueuedAndStarted = QueueBuffers();
+ if(buffersQueuedAndStarted) {
+ SetPlay(true);
+ }
+ }
+#endif
+
+ ALint totalBuffers[2] = {0, 0};
+ ALint buffersProcessed[2] = {0, 0};
+
// Relying a lot on left buffer states in here
do
@@ -1564,44 +1905,66 @@ void CStream::Update()
alGetSourcei(m_pAlSources[1], AL_BUFFERS_QUEUED, &totalBuffers[1]);
alGetSourcei(m_pAlSources[1], AL_BUFFERS_PROCESSED, &buffersProcessed[1]);
} while (buffersProcessed[0] != buffersProcessed[1]);
-
+
assert(buffersProcessed[0] == buffersProcessed[1]);
// Correcting OpenAL concepts here:
// AL_BUFFERS_QUEUED = Number of *all* buffers in queue, including processed, processing and pending
// AL_BUFFERS_PROCESSED = Index of the buffer being processing right now. Buffers coming after that(have greater index) are pending buffers.
// which means: totalBuffers[0] - buffersProcessed[0] = pending buffers
-
- bool buffersRefilled = false;
-
+
// We should wait queue to be cleared to loop track, because position calculation relies on queue.
if (m_nLoopCount != 1 && m_bActive && totalBuffers[0] == 0)
{
- Setup(true);
- buffersRefilled = FillBuffers() != 0;
- if (m_nLoopCount != 0)
- m_nLoopCount--;
+#ifdef MULTITHREADED_AUDIO
+ std::lock_guard lock(m_mutex);
+
+ if (m_fillBuffers.empty() && m_queueBuffers.emptyNts()) // we already acquired stream mutex, which is enough for second thread. thus Nts variant
+#endif
+ {
+ Setup(true, false);
+ BuffersShouldBeFilled(); // will also call SetPlay(true)
+ if (m_nLoopCount != 0)
+ m_nLoopCount--;
+ }
}
else
{
- while( buffersProcessed[0]-- )
+ static std::queue> tempFillBuffer;
+
+ while ( buffersProcessed[0]-- )
{
ALuint buffer[2];
alSourceUnqueueBuffers(m_pAlSources[0], 1, &buffer[0]);
alSourceUnqueueBuffers(m_pAlSources[1], 1, &buffer[1]);
-
- if (m_bActive && FillBuffer(buffer))
+
+ if (m_bActive)
{
- buffersRefilled = true;
- alSourceQueueBuffers(m_pAlSources[0], 1, &buffer[0]);
- alSourceQueueBuffers(m_pAlSources[1], 1, &buffer[1]);
+ tempFillBuffer.push(std::pair(buffer[0], buffer[1]));
}
}
+
+ if (m_bActive && buffersProcessed[1])
+ {
+#ifdef MULTITHREADED_AUDIO
+ m_mutex.lock();
+#endif
+ while (!tempFillBuffer.empty()) {
+ auto elem = tempFillBuffer.front();
+ tempFillBuffer.pop();
+ buffersQueuedButNotStarted = BufferShouldBeFilledAndQueued(&elem);
+ }
+#ifdef MULTITHREADED_AUDIO
+ m_mutex.unlock();
+ FlagAsToBeProcessed();
+#endif
+
+ }
}
- // Two reasons: 1-Source may be starved to audio and stopped itself, 2- We're already waiting it to starve and die for looping track!
- if (m_bActive && (buffersRefilled || (totalBuffers[1] - buffersProcessed[1] != 0)))
+ // Source may be starved to audio and stopped itself
+ if (m_bActive && !buffersQueuedAndStarted && (buffersQueuedButNotStarted || (totalBuffers[1] - buffersProcessed[1] != 0)))
SetPlay(true);
}
}
@@ -1610,28 +1973,45 @@ void CStream::ProviderInit()
{
if ( m_bReset )
{
- if ( Setup(true) )
+ if ( Setup(true, false) ) // lock not needed, thread can't process streams with m_bReset set
{
SetPan(m_nPan);
SetVolume(m_nVolume);
SetLoopCount(m_nLoopCount);
SetPosMS(m_nPosBeforeReset);
- if (m_bActive)
- FillBuffers();
- SetPlay(m_bActive);
- if ( m_bPaused )
+#ifdef MULTITHREADED_AUDIO
+ std::unique_lock lock(m_mutex);
+#endif
+ if(m_bActive)
+ BuffersShouldBeFilled();
+
+ if (m_bPaused)
Pause();
+
+ m_bReset = false;
+
+ } else {
+#ifdef MULTITHREADED_AUDIO
+ std::unique_lock lock(m_mutex);
+#endif
+ m_bReset = false;
}
-
- m_bReset = false;
}
}
void CStream::ProviderTerm()
{
+#ifdef MULTITHREADED_AUDIO
+ std::lock_guard lock(m_mutex);
+
+ // unlike Close() we will reuse this stream, so clearing queues are important.
+ std::queue>().swap(m_fillBuffers);
+ tsQueue>().swapNts(m_queueBuffers); // stream mutex is already acquired, thus Nts variant
+#endif
m_bReset = true;
m_nPosBeforeReset = GetPosMS();
-
+
+ Stop();
ClearBuffers();
}
diff --git a/src/audio/oal/stream.h b/src/audio/oal/stream.h
index 9a2a2fbe..f0456925 100644
--- a/src/audio/oal/stream.h
+++ b/src/audio/oal/stream.h
@@ -11,6 +11,7 @@ public:
virtual ~IDecoder() { }
virtual bool IsOpened() = 0;
+ virtual void FileOpen() = 0;
virtual uint32 GetSampleSize() = 0;
virtual uint32 GetSampleCount() = 0;
@@ -48,12 +49,70 @@ public:
uint32 GetLength()
{
+ FileOpen(); // abort deferred init, we need length now - game has to cache audio file sizes
return float(GetSampleCount()) * 1000.0f / float(GetSampleRate());
}
virtual uint32 Decode(void *buffer) = 0;
};
+#ifdef MULTITHREADED_AUDIO
+template class tsQueue
+{
+public:
+ tsQueue() : count(0) { }
+
+ void push(const T &value)
+ {
+ std::lock_guard lock(m_mutex);
+ m_queue.push(value);
+ count++;
+ }
+ bool peekPop(T *retVal)
+ {
+ std::lock_guard lock(m_mutex);
+ if (count == 0)
+ return false;
+
+ *retVal = m_queue.front();
+ m_queue.pop();
+ count--;
+ return true;
+ }
+
+ void swapNts(tsQueue &replaceWith)
+ {
+ m_queue.swap(replaceWith.m_queue);
+ replaceWith.count = count;
+ }
+
+ /*
+ void swapTs(tsQueue &replaceWith)
+ {
+ std::lock_guard lock(m_mutex);
+ std::lock_guard lock2(replaceWith.m_mutex);
+ swapNts(replaceWith);
+ }
+ */
+
+ bool emptyNts()
+ {
+ return count == 0;
+ }
+
+ /*
+ bool emptyTs()
+ {
+ std::lock_guard lock(m_mutex);
+ return emptyNts();
+ }
+ */
+
+ std::queue m_queue;
+ int count;
+ mutable std::mutex m_mutex;
+};
+#endif
class CStream
{
char m_aFilename[128];
@@ -63,6 +122,17 @@ class CStream
bool m_bPaused;
bool m_bActive;
+public:
+#ifdef MULTITHREADED_AUDIO
+ std::mutex m_mutex;
+ std::queue> m_fillBuffers; // left and right buffer
+ tsQueue> m_queueBuffers;
+// std::condition_variable m_closeCv;
+ bool m_bDoSeek;
+ uint32 m_SeekPos;
+ bool m_bIExist;
+#endif
+
void *m_pBuffer;
bool m_bReset;
@@ -72,7 +142,14 @@ class CStream
int32 m_nLoopCount;
IDecoder *m_pSoundFile;
-
+
+ void BuffersShouldBeFilled(); // all
+ bool BufferShouldBeFilledAndQueued(std::pair*); // two (left-right)
+#ifdef MULTITHREADED_AUDIO
+ void FlagAsToBeProcessed(bool close = false);
+ bool QueueBuffers();
+#endif
+
bool HasSource();
void SetPosition(int i, float x, float y, float z);
void SetPitch(float pitch);
@@ -81,15 +158,17 @@ class CStream
void SetPlay(bool state);
bool FillBuffer(ALuint *alBuffer);
- int32 FillBuffers();
+ int32 FillBuffers();
void ClearBuffers();
-public:
+//public:
static void Initialise();
static void Terminate();
- CStream(char *filename, ALuint *sources, ALuint (&buffers)[NUM_STREAMBUFFERS], uint32 overrideSampleRate = 32000);
+ CStream(ALuint *sources, ALuint (&buffers)[NUM_STREAMBUFFERS]);
~CStream();
void Delete();
+ bool Open(const char *filename, uint32 overrideSampleRate = 32000);
+ void Close();
bool IsOpened();
bool IsPlaying();
@@ -100,12 +179,11 @@ public:
uint32 GetPosMS();
uint32 GetLengthMS();
- bool Setup(bool imSureQueueIsEmpty = false);
+ bool Setup(bool imSureQueueIsEmpty = false, bool lock = true);
void Start();
void Stop();
void Update(void);
void SetLoopCount(int32);
-
void ProviderInit();
void ProviderTerm();
diff --git a/src/audio/sampman.h b/src/audio/sampman.h
index c0cec95e..1e1e4bc7 100644
--- a/src/audio/sampman.h
+++ b/src/audio/sampman.h
@@ -1,5 +1,6 @@
#pragma once
#include "AudioSamples.h"
+#include "audio_enums.h"
#define MAX_VOLUME 127
#define MAX_FREQ DIGITALRATE
@@ -115,10 +116,9 @@ enum
#define MAXPROVIDERS 64
-#define MAXCHANNELS 28
-#define MAXCHANNELS_SURROUND 24
+#define MAXCHANNELS (NUM_CHANNELS_GENERIC+1)
+#define MAXCHANNELS_SURROUND (MAXCHANNELS-4)
#define MAX2DCHANNELS 1
-#define CHANNEL2D MAXCHANNELS
#define MAX_STREAMS 3
@@ -130,7 +130,13 @@ enum
#define DIGITALBITS 16
#define DIGITALCHANNELS 2
-#define MAX_DIGITAL_MIXER_CHANNELS 32
+#ifdef FIX_BUGS
+#define MAX_DIGITAL_MIXER_CHANNELS (MAXCHANNELS+MAX_STREAMS*2+MAX2DCHANNELS)
+#else
+#define MAX_DIGITAL_MIXER_CHANNELS (MAXCHANNELS+MAX_STREAMS*2)
+#endif
+
+static_assert( NUM_CHANNELS == MAXCHANNELS + MAX2DCHANNELS, "The number of channels doesn't match with an enum" );
class cSampleManager
{
@@ -139,9 +145,9 @@ class cSampleManager
uint8 m_nMP3BoostVolume;
uint8 m_nEffectsFadeVolume;
uint8 m_nMusicFadeVolume;
- uint8 m_nMonoMode;
+ bool8 m_nMonoMode;
char m_szCDRomRootPath[80];
- bool m_bInitialised;
+ bool8 m_bInitialised;
uint8 m_nNumberOfProviders;
char *m_aAudioProviders[MAXPROVIDERS];
tSample m_aSamples[TOTAL_AUDIO_SAMPLES];
@@ -171,16 +177,16 @@ public:
int8 AutoDetect3DProviders();
- bool IsMP3RadioChannelAvailable(void);
+ bool8 IsMP3RadioChannelAvailable(void);
void ReleaseDigitalHandle (void);
void ReacquireDigitalHandle(void);
- bool Initialise(void);
- void Terminate (void);
+ bool8 Initialise(void);
+ void Terminate (void);
- bool CheckForAnAudioFileOnCD(void);
- char GetCDAudioDriveLetter (void);
+ bool8 CheckForAnAudioFileOnCD(void);
+ char GetCDAudioDriveLetter (void);
void UpdateEffectsVolume(void);
@@ -189,14 +195,14 @@ public:
void SetMP3BoostVolume (uint8 nVolume);
void SetEffectsFadeVolume (uint8 nVolume);
void SetMusicFadeVolume (uint8 nVolume);
- void SetMonoMode (uint8 nMode);
+ void SetMonoMode (bool8 nMode);
- bool LoadSampleBank (uint8 nBank);
- void UnloadSampleBank (uint8 nBank);
- bool IsSampleBankLoaded(uint8 nBank);
+ bool8 LoadSampleBank (uint8 nBank);
+ void UnloadSampleBank (uint8 nBank);
+ bool8 IsSampleBankLoaded(uint8 nBank);
- bool IsPedCommentLoaded(uint32 nComment);
- bool LoadPedComment (uint32 nComment);
+ bool8 IsPedCommentLoaded(uint32 nComment);
+ bool8 LoadPedComment (uint32 nComment);
int32 GetBankContainingSound(uint32 offset);
int32 _GetPedCommentSlot(uint32 nComment);
@@ -206,10 +212,10 @@ public:
int32 GetSampleLoopEndOffset (uint32 nSample);
uint32 GetSampleLength (uint32 nSample);
- bool UpdateReverb(void);
+ bool8 UpdateReverb(void);
- void SetChannelReverbFlag (uint32 nChannel, uint8 nReverbFlag);
- bool InitialiseChannel (uint32 nChannel, uint32 nSfx, uint8 nBank);
+ void SetChannelReverbFlag (uint32 nChannel, bool8 nReverbFlag);
+ bool8 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);
@@ -218,68 +224,33 @@ public:
void SetChannelFrequency (uint32 nChannel, uint32 nFreq);
void SetChannelLoopPoints (uint32 nChannel, uint32 nLoopStart, int32 nLoopEnd);
void SetChannelLoopCount (uint32 nChannel, uint32 nLoopCount);
- bool GetChannelUsedFlag (uint32 nChannel);
+ bool8 GetChannelUsedFlag (uint32 nChannel);
void StartChannel (uint32 nChannel);
void StopChannel (uint32 nChannel);
- void PreloadStreamedFile (uint32 nFile, uint8 nStream);
- void PauseStream (uint8 nPauseFlag, uint8 nStream);
- void StartPreloadedStreamedFile (uint8 nStream);
- bool StartStreamedFile (uint32 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);
+ void PreloadStreamedFile (uint32 nFile, uint8 nStream = 0);
+ void PauseStream (bool8 nPauseFlag, uint8 nStream = 0);
+ void StartPreloadedStreamedFile (uint8 nStream = 0);
+ bool8 StartStreamedFile (uint32 nFile, uint32 nPos, uint8 nStream = 0);
+ void StopStreamedFile (uint8 nStream = 0);
+ int32 GetStreamedFilePosition (uint8 nStream = 0);
+ void SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, bool8 nEffectFlag, uint8 nStream = 0);
+ int32 GetStreamedFileLength (uint8 nStream = 0);
+ bool8 IsStreamPlaying (uint8 nStream = 0);
+ void SetStreamedFileLoopFlag (bool8 nLoopFlag, uint8 nStream = 0);
#ifdef AUDIO_OAL
void Service(void);
#endif
- bool InitialiseSampleBanks(void);
+ bool8 InitialiseSampleBanks(void);
uint8 GetMusicVolume() const { return m_nMusicVolume; }
- void SetStreamedFileLoopFlag(uint8 nLoopFlag, uint8 nStream);
};
extern cSampleManager SampleManager;
extern uint32 BankStartOffset[MAX_SFX_BANKS];
-#if defined(OPUS_AUDIO_PATHS)
-static char StreamedNameTable[][25] = {
- "AUDIO\\HEAD.OPUS", "AUDIO\\CLASS.OPUS", "AUDIO\\KJAH.OPUS", "AUDIO\\RISE.OPUS", "AUDIO\\LIPS.OPUS", "AUDIO\\GAME.OPUS",
- "AUDIO\\MSX.OPUS", "AUDIO\\FLASH.OPUS", "AUDIO\\CHAT.OPUS", "AUDIO\\HEAD.OPUS", "AUDIO\\POLICE.OPUS", "AUDIO\\CITY.OPUS",
- "AUDIO\\WATER.OPUS", "AUDIO\\COMOPEN.OPUS", "AUDIO\\SUBOPEN.OPUS", "AUDIO\\JB.OPUS", "AUDIO\\BET.OPUS", "AUDIO\\L1_LG.OPUS",
- "AUDIO\\L2_DSB.OPUS", "AUDIO\\L3_DM.OPUS", "AUDIO\\L4_PAP.OPUS", "AUDIO\\L5_TFB.OPUS", "AUDIO\\J0_DM2.OPUS", "AUDIO\\J1_LFL.OPUS",
- "AUDIO\\J2_KCL.OPUS", "AUDIO\\J3_VH.OPUS", "AUDIO\\J4_ETH.OPUS", "AUDIO\\J5_DST.OPUS", "AUDIO\\J6_TBJ.OPUS", "AUDIO\\T1_TOL.OPUS",
- "AUDIO\\T2_TPU.OPUS", "AUDIO\\T3_MAS.OPUS", "AUDIO\\T4_TAT.OPUS", "AUDIO\\T5_BF.OPUS", "AUDIO\\S0_MAS.OPUS", "AUDIO\\S1_PF.OPUS",
- "AUDIO\\S2_CTG.OPUS", "AUDIO\\S3_RTC.OPUS", "AUDIO\\S5_LRQ.OPUS", "AUDIO\\S4_BDBA.OPUS", "AUDIO\\S4_BDBB.OPUS", "AUDIO\\S2_CTG2.OPUS",
- "AUDIO\\S4_BDBD.OPUS", "AUDIO\\S5_LRQB.OPUS", "AUDIO\\S5_LRQC.OPUS", "AUDIO\\A1_SSO.OPUS", "AUDIO\\A2_PP.OPUS", "AUDIO\\A3_SS.OPUS",
- "AUDIO\\A4_PDR.OPUS", "AUDIO\\A5_K2FT.OPUS", "AUDIO\\K1_KBO.OPUS", "AUDIO\\K2_GIS.OPUS", "AUDIO\\K3_DS.OPUS", "AUDIO\\K4_SHI.OPUS",
- "AUDIO\\K5_SD.OPUS", "AUDIO\\R0_PDR2.OPUS", "AUDIO\\R1_SW.OPUS", "AUDIO\\R2_AP.OPUS", "AUDIO\\R3_ED.OPUS", "AUDIO\\R4_GF.OPUS",
- "AUDIO\\R5_PB.OPUS", "AUDIO\\R6_MM.OPUS", "AUDIO\\D1_STOG.OPUS", "AUDIO\\D2_KK.OPUS", "AUDIO\\D3_ADO.OPUS", "AUDIO\\D5_ES.OPUS",
- "AUDIO\\D7_MLD.OPUS", "AUDIO\\D4_GTA.OPUS", "AUDIO\\D4_GTA2.OPUS", "AUDIO\\D6_STS.OPUS", "AUDIO\\A6_BAIT.OPUS", "AUDIO\\A7_ETG.OPUS",
- "AUDIO\\A8_PS.OPUS", "AUDIO\\A9_ASD.OPUS", "AUDIO\\K4_SHI2.OPUS", "AUDIO\\C1_TEX.OPUS", "AUDIO\\EL_PH1.OPUS", "AUDIO\\EL_PH2.OPUS",
- "AUDIO\\EL_PH3.OPUS", "AUDIO\\EL_PH4.OPUS", "AUDIO\\YD_PH1.OPUS", "AUDIO\\YD_PH2.OPUS", "AUDIO\\YD_PH3.OPUS", "AUDIO\\YD_PH4.OPUS",
- "AUDIO\\HD_PH1.OPUS", "AUDIO\\HD_PH2.OPUS", "AUDIO\\HD_PH3.OPUS", "AUDIO\\HD_PH4.OPUS", "AUDIO\\HD_PH5.OPUS", "AUDIO\\MT_PH1.OPUS",
- "AUDIO\\MT_PH2.OPUS", "AUDIO\\MT_PH3.OPUS", "AUDIO\\MT_PH4.OPUS", "AUDIO\\MISCOM.OPUS", "AUDIO\\END.OPUS", "AUDIO\\lib_a1.OPUS",
- "AUDIO\\lib_a2.OPUS", "AUDIO\\lib_a.OPUS", "AUDIO\\lib_b.OPUS", "AUDIO\\lib_c.OPUS", "AUDIO\\lib_d.OPUS", "AUDIO\\l2_a.OPUS",
- "AUDIO\\j4t_1.OPUS", "AUDIO\\j4t_2.OPUS", "AUDIO\\j4t_3.OPUS", "AUDIO\\j4t_4.OPUS", "AUDIO\\j4_a.OPUS", "AUDIO\\j4_b.OPUS",
- "AUDIO\\j4_c.OPUS", "AUDIO\\j4_d.OPUS", "AUDIO\\j4_e.OPUS", "AUDIO\\j4_f.OPUS", "AUDIO\\j6_1.OPUS", "AUDIO\\j6_a.OPUS",
- "AUDIO\\j6_b.OPUS", "AUDIO\\j6_c.OPUS", "AUDIO\\j6_d.OPUS", "AUDIO\\t4_a.OPUS", "AUDIO\\s1_a.OPUS", "AUDIO\\s1_a1.OPUS",
- "AUDIO\\s1_b.OPUS", "AUDIO\\s1_c.OPUS", "AUDIO\\s1_c1.OPUS", "AUDIO\\s1_d.OPUS", "AUDIO\\s1_e.OPUS", "AUDIO\\s1_f.OPUS",
- "AUDIO\\s1_g.OPUS", "AUDIO\\s1_h.OPUS", "AUDIO\\s1_i.OPUS", "AUDIO\\s1_j.OPUS", "AUDIO\\s1_k.OPUS", "AUDIO\\s1_l.OPUS",
- "AUDIO\\s3_a.OPUS", "AUDIO\\s3_b.OPUS", "AUDIO\\el3_a.OPUS", "AUDIO\\mf1_a.OPUS", "AUDIO\\mf2_a.OPUS", "AUDIO\\mf3_a.OPUS",
- "AUDIO\\mf3_b.OPUS", "AUDIO\\mf3_b1.OPUS", "AUDIO\\mf3_c.OPUS", "AUDIO\\mf4_a.OPUS", "AUDIO\\mf4_b.OPUS", "AUDIO\\mf4_c.OPUS",
- "AUDIO\\a1_a.OPUS", "AUDIO\\a3_a.OPUS", "AUDIO\\a5_a.OPUS", "AUDIO\\a4_a.OPUS", "AUDIO\\a4_b.OPUS", "AUDIO\\a4_c.OPUS",
- "AUDIO\\a4_d.OPUS", "AUDIO\\k1_a.OPUS", "AUDIO\\k3_a.OPUS", "AUDIO\\r1_a.OPUS", "AUDIO\\r2_a.OPUS", "AUDIO\\r2_b.OPUS",
- "AUDIO\\r2_c.OPUS", "AUDIO\\r2_d.OPUS", "AUDIO\\r2_e.OPUS", "AUDIO\\r2_f.OPUS", "AUDIO\\r2_g.OPUS", "AUDIO\\r2_h.OPUS",
- "AUDIO\\r5_a.OPUS", "AUDIO\\r6_a.OPUS", "AUDIO\\r6_a1.OPUS", "AUDIO\\r6_b.OPUS", "AUDIO\\lo2_a.OPUS", "AUDIO\\lo6_a.OPUS",
- "AUDIO\\yd2_a.OPUS", "AUDIO\\yd2_b.OPUS", "AUDIO\\yd2_c.OPUS", "AUDIO\\yd2_c1.OPUS", "AUDIO\\yd2_d.OPUS", "AUDIO\\yd2_e.OPUS",
- "AUDIO\\yd2_f.OPUS", "AUDIO\\yd2_g.OPUS", "AUDIO\\yd2_h.OPUS", "AUDIO\\yd2_ass.OPUS", "AUDIO\\yd2_ok.OPUS", "AUDIO\\h5_a.OPUS",
- "AUDIO\\h5_b.OPUS", "AUDIO\\h5_c.OPUS", "AUDIO\\ammu_a.OPUS", "AUDIO\\ammu_b.OPUS", "AUDIO\\ammu_c.OPUS", "AUDIO\\door_1.OPUS",
- "AUDIO\\door_2.OPUS", "AUDIO\\door_3.OPUS", "AUDIO\\door_4.OPUS", "AUDIO\\door_5.OPUS", "AUDIO\\door_6.OPUS", "AUDIO\\t3_a.OPUS",
- "AUDIO\\t3_b.OPUS", "AUDIO\\t3_c.OPUS", "AUDIO\\k1_b.OPUS", "AUDIO\\cat1.OPUS"};
-#elif defined(PS2_AUDIO_PATHS)
-static char StreamedNameTable[][40] =
+#ifdef PS2_AUDIO_PATHS
+static char PS2StreamedNameTable[][40] =
{
"AUDIO\\MUSIC\\WILD.VB",
"AUDIO\\MUSIC\\FLASH.VB",
@@ -384,7 +355,1130 @@ static char StreamedNameTable[][40] =
"AUDIO\\MUSIC\\MISCOM.VB",
"AUDIO\\MUSIC\\MISCOM.VB",
"AUDIO\\MUSIC\\MISCOM.VB",
-#else
+ "AUDIO\\MOBR1.WAV",
+ "AUDIO\\PAGER.WAV",
+ "AUDIO\\CARREV.WAV",
+ "AUDIO\\BIKEREV.WAV",
+ "AUDIO\\LIFTOP.WAV",
+ "AUDIO\\LIFTCL.WAV",
+ "AUDIO\\LIFTRUN.WAV",
+ "AUDIO\\LIFTBEL.WAV",
+ "AUDIO\\INLIFT.WAV",
+ "AUDIO\\SFX_01.WAV",
+ "AUDIO\\SFX_02.WAV",
+ "AUDIO\\CAMERAL.WAV",
+ "AUDIO\\CAMERAR.WAV",
+ "AUDIO\\CHEER1.WAV",
+ "AUDIO\\CHEER2.WAV",
+ "AUDIO\\CHEER3.WAV",
+ "AUDIO\\CHEER4.WAV",
+ "AUDIO\\OOH1.WAV",
+ "AUDIO\\OOH2.WAV",
+ "AUDIO\\RACE1.WAV",
+ "AUDIO\\RACE2.WAV",
+ "AUDIO\\RACE3.WAV",
+ "AUDIO\\RACE4.WAV",
+ "AUDIO\\RACE5.WAV",
+ "AUDIO\\RACE6.WAV",
+ "AUDIO\\RACE7.WAV",
+ "AUDIO\\RACE8.WAV",
+ "AUDIO\\RACE9.WAV",
+ "AUDIO\\RACE10.WAV",
+ "AUDIO\\RACE11.WAV",
+ "AUDIO\\RACE12.WAV",
+ "AUDIO\\RACE13.WAV",
+ "AUDIO\\RACE14.WAV",
+ "AUDIO\\RACE15.WAV",
+ "AUDIO\\HOT1.WAV",
+ "AUDIO\\HOT2.WAV",
+ "AUDIO\\HOT3.WAV",
+ "AUDIO\\HOT4.WAV",
+ "AUDIO\\HOT5.WAV",
+ "AUDIO\\HOT6.WAV",
+ "AUDIO\\HOT7.WAV",
+ "AUDIO\\HOT8.WAV",
+ "AUDIO\\HOT9.WAV",
+ "AUDIO\\HOT10.WAV",
+ "AUDIO\\HOT11.WAV",
+ "AUDIO\\HOT12.WAV",
+ "AUDIO\\HOT13.WAV",
+ "AUDIO\\HOT14.WAV",
+ "AUDIO\\HOT15.WAV",
+ "AUDIO\\LANSTP1.WAV",
+ "AUDIO\\LANSTP2.WAV",
+ "AUDIO\\LANAMU1.WAV",
+ "AUDIO\\LANAMU2.WAV",
+ "AUDIO\\AIRHORNL.WAV",
+ "AUDIO\\AIRHORNR.WAV",
+ "AUDIO\\SNIPSCRL.WAV",
+ "AUDIO\\SNIPSHORT.WAV",
+ "AUDIO\\BLOWROOF.WAV",
+ "AUDIO\\ASS_1.WAV",
+ "AUDIO\\ASS_2.WAV",
+ "AUDIO\\ASS_3.WAV",
+ "AUDIO\\ASS_4.WAV",
+ "AUDIO\\ASS_5.WAV",
+ "AUDIO\\ASS_6.WAV",
+ "AUDIO\\ASS_7.WAV",
+ "AUDIO\\ASS_8.WAV",
+ "AUDIO\\ASS_9.WAV",
+ "AUDIO\\ASS_10.WAV",
+ "AUDIO\\ASS_11.WAV",
+ "AUDIO\\ASS_12.WAV",
+ "AUDIO\\ASS_13.WAV",
+ "AUDIO\\ASS_14.WAV",
+ "AUDIO\\BIKE1_1.WAV",
+ "AUDIO\\BIKE1_2.WAV",
+ "AUDIO\\BIKE1_3.WAV",
+ "AUDIO\\BNK1_1.WAV",
+ "AUDIO\\BNK1_2.WAV",
+ "AUDIO\\BNK1_3.WAV",
+ "AUDIO\\BNK1_4.WAV",
+ "AUDIO\\BNK1_5.WAV",
+ "AUDIO\\BNK1_6.WAV",
+ "AUDIO\\BNK1_7.WAV",
+ "AUDIO\\BNK1_8.WAV",
+ "AUDIO\\BNK1_10.WAV",
+ "AUDIO\\BNK1_11.WAV",
+ "AUDIO\\BNK1_12.WAV",
+ "AUDIO\\BNK1_13.WAV",
+ "AUDIO\\BNK1_14.WAV",
+ "AUDIO\\BNK2_1.WAV",
+ "AUDIO\\BNK2_2.WAV",
+ "AUDIO\\BNK2_3.WAV",
+ "AUDIO\\BNK2_4.WAV",
+ "AUDIO\\BNK2_5.WAV",
+ "AUDIO\\BNK2_6.WAV",
+ "AUDIO\\BNK2_7.WAV",
+ "AUDIO\\BNK2_8.WAV",
+ "AUDIO\\BNK2_9.WAV",
+ "AUDIO\\BNK3_1.WAV",
+ "AUDIO\\BNK3_2.WAV",
+ "AUDIO\\BNK3_3A.WAV",
+ "AUDIO\\BNK3_3B.WAV",
+ "AUDIO\\BNK3_3C.WAV",
+ "AUDIO\\BNK3_4A.WAV",
+ "AUDIO\\BNK3_4B.WAV",
+ "AUDIO\\BNK3_4C.WAV",
+ "AUDIO\\BNK4_1.WAV",
+ "AUDIO\\BNK4_2.WAV",
+ "AUDIO\\BNK4_3A.WAV",
+ "AUDIO\\BNK4_3B.WAV",
+ "AUDIO\\BNK4_3C.WAV",
+ "AUDIO\\BNK4_3D.WAV",
+ "AUDIO\\BNK4_3E.WAV",
+ "AUDIO\\BNK4_3F.WAV",
+ "AUDIO\\BNK4_3G.WAV",
+ "AUDIO\\BNK4_3H.WAV",
+ "AUDIO\\BNK4_3I.WAV",
+ "AUDIO\\BNK4_3J.WAV",
+ "AUDIO\\BNK4_3K.WAV",
+ "AUDIO\\BNK4_3M.WAV",
+ "AUDIO\\BNK4_3O.WAV",
+ "AUDIO\\BNK4_3P.WAV",
+ "AUDIO\\BNK4_3Q.WAV",
+ "AUDIO\\BNK4_3R.WAV",
+ "AUDIO\\BNK4_3S.WAV",
+ "AUDIO\\BNK4_3T.WAV",
+ "AUDIO\\BNK4_3U.WAV",
+ "AUDIO\\BNK4_3V.WAV",
+ "AUDIO\\BNK4_4A.WAV",
+ "AUDIO\\BNK4_4B.WAV",
+ "AUDIO\\BNK4_5.WAV",
+ "AUDIO\\BNK4_6.WAV",
+ "AUDIO\\BNK4_7.WAV",
+ "AUDIO\\BNK4_8.WAV",
+ "AUDIO\\BNK4_9.WAV",
+ "AUDIO\\BNK4_10.WAV",
+ "AUDIO\\BNK4_11.WAV",
+ "AUDIO\\BK4_12A.WAV",
+ "AUDIO\\BK4_12B.WAV",
+ "AUDIO\\BK4_12C.WAV",
+ "AUDIO\\BNK4_13.WAV",
+ "AUDIO\\BK4_14A.WAV",
+ "AUDIO\\BK4_14B.WAV",
+ "AUDIO\\BNK4_15.WAV",
+ "AUDIO\\BNK4_16.WAV",
+ "AUDIO\\BNK4_17.WAV",
+ "AUDIO\\BNK4_18.WAV",
+ "AUDIO\\BK4_19A.WAV",
+ "AUDIO\\BK4_19B.WAV",
+ "AUDIO\\BK4_20A.WAV",
+ "AUDIO\\BK4_20B.WAV",
+ "AUDIO\\BNK4_21.WAV",
+ "AUDIO\\BNK422A.WAV",
+ "AUDIO\\BNK422B.WAV",
+ "AUDIO\\BK4_23A.WAV",
+ "AUDIO\\BK4_23B.WAV",
+ "AUDIO\\BK4_23C.WAV",
+ "AUDIO\\BK4_23D.WAV",
+ "AUDIO\\BK4_24A.WAV",
+ "AUDIO\\BK4_24B.WAV",
+ "AUDIO\\BNK4_25.WAV",
+ "AUDIO\\BNK4_26.WAV",
+ "AUDIO\\BNK4_27.WAV",
+ "AUDIO\\BNK4_28.WAV",
+ "AUDIO\\BNK4_29.WAV",
+ "AUDIO\\BNK4_30.WAV",
+ "AUDIO\\BK4_31A.WAV",
+ "AUDIO\\BK4_31B.WAV",
+ "AUDIO\\BNK4_32.WAV",
+ "AUDIO\\BK4_34A.WAV",
+ "AUDIO\\BK4_34B.WAV",
+ "AUDIO\\BK4_35A.WAV",
+ "AUDIO\\BK4_35B.WAV",
+ "AUDIO\\BNK4_36.WAV",
+ "AUDIO\\BNK4_37.WAV",
+ "AUDIO\\BNK4_38.WAV",
+ "AUDIO\\BNK4_39.WAV",
+ "AUDIO\\BK4_40A.WAV",
+ "AUDIO\\BK4_40B.WAV",
+ "AUDIO\\BNK4_41.WAV",
+ "AUDIO\\BNK4_42.WAV",
+ "AUDIO\\BNK4_43.WAV",
+ "AUDIO\\BNK4_44.WAV",
+ "AUDIO\\BNK4_45.WAV",
+ "AUDIO\\BNK4_46.WAV",
+ "AUDIO\\BNK4_47.WAV",
+ "AUDIO\\BNK4_48.WAV",
+ "AUDIO\\BNK4_49.WAV",
+ "AUDIO\\BNK450A.WAV",
+ "AUDIO\\BNK450B.WAV",
+ "AUDIO\\BNK4_51.WAV",
+ "AUDIO\\BNK4_94.WAV",
+ "AUDIO\\BNK4_95.WAV",
+ "AUDIO\\BNK4_96.WAV",
+ "AUDIO\\BNK4_97.WAV",
+ "AUDIO\\BNK4_98.WAV",
+ "AUDIO\\BNK4_99.WAV",
+ "AUDIO\\BUD1_1.WAV",
+ "AUDIO\\BUD1_2.WAV",
+ "AUDIO\\BUD1_3.WAV",
+ "AUDIO\\BUD1_4.WAV",
+ "AUDIO\\BUD1_5.WAV",
+ "AUDIO\\BUD1_9.WAV",
+ "AUDIO\\BUD1_10.WAV",
+ "AUDIO\\BUD2_1.WAV",
+ "AUDIO\\BUD2_2.WAV",
+ "AUDIO\\BUD2_3.WAV",
+ "AUDIO\\BUD2_4.WAV",
+ "AUDIO\\BUD2_5.WAV",
+ "AUDIO\\BUD2_6.WAV",
+ "AUDIO\\BUD2_7.WAV",
+ "AUDIO\\BUD3_1.WAV",
+ "AUDIO\\BUD3_1A.WAV",
+ "AUDIO\\BUD3_1B.WAV",
+ "AUDIO\\BUD3_1C.WAV",
+ "AUDIO\\BUD3_2.WAV",
+ "AUDIO\\BUD3_3.WAV",
+ "AUDIO\\BUD3_4.WAV",
+ "AUDIO\\BUD3_5.WAV",
+ "AUDIO\\BUD3_6.WAV",
+ "AUDIO\\BUD3_7.WAV",
+ "AUDIO\\BUD3_8A.WAV",
+ "AUDIO\\BUD3_8B.WAV",
+ "AUDIO\\BUD3_8C.WAV",
+ "AUDIO\\BUD3_9A.WAV",
+ "AUDIO\\BUD3_9B.WAV",
+ "AUDIO\\BUD3_9C.WAV",
+ "AUDIO\\CAP1_2.WAV",
+ "AUDIO\\CAP1_3.WAV",
+ "AUDIO\\CAP1_4.WAV",
+ "AUDIO\\CAP1_5.WAV",
+ "AUDIO\\CAP1_6.WAV",
+ "AUDIO\\CAP1_7.WAV",
+ "AUDIO\\CAP1_8.WAV",
+ "AUDIO\\CAP1_9.WAV",
+ "AUDIO\\CAP1_10.WAV",
+ "AUDIO\\CAP1_11.WAV",
+ "AUDIO\\CAP1_12.WAV",
+ "AUDIO\\CNT1_1.WAV",
+ "AUDIO\\CNT1_2.WAV",
+ "AUDIO\\CNT1_3.WAV",
+ "AUDIO\\CNT1_4.WAV",
+ "AUDIO\\CNT1_5.WAV",
+ "AUDIO\\CNT2_1.WAV",
+ "AUDIO\\CNT2_2.WAV",
+ "AUDIO\\CNT2_3.WAV",
+ "AUDIO\\CNT2_4.WAV",
+ "AUDIO\\COK1_1.WAV",
+ "AUDIO\\COK1_2.WAV",
+ "AUDIO\\COK1_3.WAV",
+ "AUDIO\\COK1_4.WAV",
+ "AUDIO\\COK1_5.WAV",
+ "AUDIO\\COK1_6.WAV",
+ "AUDIO\\COK2_1.WAV",
+ "AUDIO\\COK2_2.WAV",
+ "AUDIO\\COK2_3.WAV",
+ "AUDIO\\COK2_4.WAV",
+ "AUDIO\\COK2_5.WAV",
+ "AUDIO\\COK2_6.WAV",
+ "AUDIO\\COK2_7A.WAV",
+ "AUDIO\\COK2_7B.WAV",
+ "AUDIO\\COK2_7C.WAV",
+ "AUDIO\\COK2_8A.WAV",
+ "AUDIO\\COK2_8B.WAV",
+ "AUDIO\\COK2_8C.WAV",
+ "AUDIO\\COK2_8D.WAV",
+ "AUDIO\\COK2_9.WAV",
+ "AUDIO\\COK210A.WAV",
+ "AUDIO\\COK210B.WAV",
+ "AUDIO\\COK210C.WAV",
+ "AUDIO\\COK212A.WAV",
+ "AUDIO\\COK212B.WAV",
+ "AUDIO\\COK2_13.WAV",
+ "AUDIO\\COK2_14.WAV",
+ "AUDIO\\COK2_15.WAV",
+ "AUDIO\\COK2_16.WAV",
+ "AUDIO\\COK2_20.WAV",
+ "AUDIO\\COK2_21.WAV",
+ "AUDIO\\COK2_2.WAV", // this is probably a typo of COK2_22
+ "AUDIO\\COK3_1.WAV",
+ "AUDIO\\COK3_2.WAV",
+ "AUDIO\\COK3_3.WAV",
+ "AUDIO\\COK3_4.WAV",
+ "AUDIO\\COK4_1.WAV",
+ "AUDIO\\COK4_2.WAV",
+ "AUDIO\\COK4_3.WAV",
+ "AUDIO\\COK4_4.WAV",
+ "AUDIO\\COK4_5.WAV",
+ "AUDIO\\COK4_6.WAV",
+ "AUDIO\\COK4_7.WAV",
+ "AUDIO\\COK4_8.WAV",
+ "AUDIO\\COK4_9.WAV",
+ "AUDIO\\COK4_9A.WAV",
+ "AUDIO\\COK4_10.WAV",
+ "AUDIO\\COK4_11.WAV",
+ "AUDIO\\COK4_12.WAV",
+ "AUDIO\\COK4_13.WAV",
+ "AUDIO\\COK4_14.WAV",
+ "AUDIO\\COK4_15.WAV",
+ "AUDIO\\COK4_16.WAV",
+ "AUDIO\\COK4_17.WAV",
+ "AUDIO\\COK4_18.WAV",
+ "AUDIO\\COK4_19.WAV",
+ "AUDIO\\COK4_20.WAV",
+ "AUDIO\\COK4_21.WAV",
+ "AUDIO\\COK4_22.WAV",
+ "AUDIO\\COK4_23.WAV",
+ "AUDIO\\COK4_24.WAV",
+ "AUDIO\\COK4_25.WAV",
+ "AUDIO\\COK4_26.WAV",
+ "AUDIO\\COK4_27.WAV",
+ "AUDIO\\COL1_1.WAV",
+ "AUDIO\\COL1_2.WAV",
+ "AUDIO\\COL1_3.WAV",
+ "AUDIO\\COL1_4.WAV",
+ "AUDIO\\COL1_5.WAV",
+ "AUDIO\\COL1_6.WAV",
+ "AUDIO\\COL1_7.WAV",
+ "AUDIO\\COL1_8.WAV",
+ "AUDIO\\COL2_1.WAV",
+ "AUDIO\\COL2_2.WAV",
+ "AUDIO\\COL2_3.WAV",
+ "AUDIO\\COL2_4.WAV",
+ "AUDIO\\COL2_5.WAV",
+ "AUDIO\\COL2_6A.WAV",
+ "AUDIO\\COL2_7.WAV",
+ "AUDIO\\COL2_8.WAV",
+ "AUDIO\\COL2_9.WAV",
+ "AUDIO\\COL2_10.WAV",
+ "AUDIO\\COL2_11.WAV",
+ "AUDIO\\COL2_12.WAV",
+ "AUDIO\\COL2_13.WAV",
+ "AUDIO\\COL2_14.WAV",
+ "AUDIO\\COL2_15.WAV",
+ "AUDIO\\COL2_16.WAV",
+ "AUDIO\\COL3_1.WAV",
+ "AUDIO\\COL3_2.WAV",
+ "AUDIO\\COL3_2A.WAV",
+ "AUDIO\\COL3_2B.WAV",
+ "AUDIO\\COL3_3.WAV",
+ "AUDIO\\COL3_4.WAV",
+ "AUDIO\\COL3_5.WAV",
+ "AUDIO\\COL3_6.WAV",
+ "AUDIO\\COL3_7.WAV",
+ "AUDIO\\COL3_8.WAV",
+ "AUDIO\\COL3_9.WAV",
+ "AUDIO\\COL3_10.WAV",
+ "AUDIO\\COL3_11.WAV",
+ "AUDIO\\COL3_12.WAV",
+ "AUDIO\\COL3_13.WAV",
+ "AUDIO\\COL3_14.WAV",
+ "AUDIO\\COL3_15.WAV",
+ "AUDIO\\COL3_16.WAV",
+ "AUDIO\\COL3_17.WAV",
+ "AUDIO\\COL3_18.WAV",
+ "AUDIO\\COL3_19.WAV",
+ "AUDIO\\COL3_20.WAV",
+ "AUDIO\\COL3_21.WAV",
+ "AUDIO\\COL3_23.WAV",
+ "AUDIO\\COL3_24.WAV",
+ "AUDIO\\COL3_25.WAV",
+ "AUDIO\\COL4_1.WAV",
+ "AUDIO\\COL4_2.WAV",
+ "AUDIO\\COL4_3.WAV",
+ "AUDIO\\COL4_4.WAV",
+ "AUDIO\\COL4_5.WAV",
+ "AUDIO\\COL4_6.WAV",
+ "AUDIO\\COL4_7.WAV",
+ "AUDIO\\COL4_8.WAV",
+ "AUDIO\\COL4_9.WAV",
+ "AUDIO\\COL4_10.WAV",
+ "AUDIO\\COL4_11.WAV",
+ "AUDIO\\COL4_12.WAV",
+ "AUDIO\\COL4_13.WAV",
+ "AUDIO\\COL4_14.WAV",
+ "AUDIO\\COL4_15.WAV",
+ "AUDIO\\COL4_16.WAV",
+ "AUDIO\\COL4_17.WAV",
+ "AUDIO\\COL4_18.WAV",
+ "AUDIO\\COL4_19.WAV",
+ "AUDIO\\COL4_20.WAV",
+ "AUDIO\\COL4_21.WAV",
+ "AUDIO\\COL4_22.WAV",
+ "AUDIO\\COL4_23.WAV",
+ "AUDIO\\COL4_24.WAV",
+ "AUDIO\\COL4_25.WAV",
+ "AUDIO\\COL4_26.WAV",
+ "AUDIO\\COL5_1.WAV",
+ "AUDIO\\COL5_2.WAV",
+ "AUDIO\\COL5_3.WAV",
+ "AUDIO\\COL5_4.WAV",
+ "AUDIO\\COL5_5.WAV",
+ "AUDIO\\COL5_6.WAV",
+ "AUDIO\\COL5_7.WAV",
+ "AUDIO\\COL5_8.WAV",
+ "AUDIO\\COL5_9.WAV",
+ "AUDIO\\COL5_10.WAV",
+ "AUDIO\\COL5_11.WAV",
+ "AUDIO\\COL5_12.WAV",
+ "AUDIO\\COL5_13.WAV",
+ "AUDIO\\COL5_14.WAV",
+ "AUDIO\\COL5_15.WAV",
+ "AUDIO\\COL5_16.WAV",
+ "AUDIO\\COL5_17.WAV",
+ "AUDIO\\COL5_18.WAV",
+ "AUDIO\\COL5_19.WAV",
+ "AUDIO\\COL5_20.WAV",
+ "AUDIO\\COL5_21.WAV",
+ "AUDIO\\COL5_22.WAV",
+ "AUDIO\\CUB1_1.WAV",
+ "AUDIO\\CUB1_2.WAV",
+ "AUDIO\\CUB1_3.WAV",
+ "AUDIO\\CUB1_4.WAV",
+ "AUDIO\\CUB1_5.WAV",
+ "AUDIO\\CUB1_6.WAV",
+ "AUDIO\\CUB1_7.WAV",
+ "AUDIO\\CUB1_8.WAV",
+ "AUDIO\\CUB1_9.WAV",
+ "AUDIO\\CUB1_10.WAV",
+ "AUDIO\\CUB2_1.WAV",
+ "AUDIO\\CUB2_2.WAV",
+ "AUDIO\\CUB2_3A.WAV",
+ "AUDIO\\CUB2_3B.WAV",
+ "AUDIO\\CUB2_3C.WAV",
+ "AUDIO\\CUB2_4A.WAV",
+ "AUDIO\\CUB2_5.WAV",
+ "AUDIO\\CUB2_6.WAV",
+ "AUDIO\\CUB2_7.WAV",
+ "AUDIO\\CUB2_8.WAV",
+ "AUDIO\\CUB2_9.WAV",
+ "AUDIO\\CUB2_10.WAV",
+ "AUDIO\\CUB2_11.WAV",
+ "AUDIO\\CUB3_1.WAV",
+ "AUDIO\\CUB3_2.WAV",
+ "AUDIO\\CUB3_3.WAV",
+ "AUDIO\\CUB3_4.WAV",
+ "AUDIO\\CUB4_1.WAV",
+ "AUDIO\\CUB4_2.WAV",
+ "AUDIO\\CUB4_3.WAV",
+ "AUDIO\\CUB4_4.WAV",
+ "AUDIO\\CUB4_5.WAV",
+ "AUDIO\\CUB4_5A.WAV",
+ "AUDIO\\CUB4_6.WAV",
+ "AUDIO\\CUB4_7.WAV",
+ "AUDIO\\CUB4_8.WAV",
+ "AUDIO\\CUB4_9.WAV",
+ "AUDIO\\CUB4_10.WAV",
+ "AUDIO\\CUB4_11.WAV",
+ "AUDIO\\CUB4_12.WAV",
+ "AUDIO\\CUB4_13.WAV",
+ "AUDIO\\CUB4_14.WAV",
+ "AUDIO\\CUB4_15.WAV",
+ "AUDIO\\CUB4_16.WAV",
+ "AUDIO\\GOLF_1.WAV",
+ "AUDIO\\GOLF_2.WAV",
+ "AUDIO\\GOLF_3.WAV",
+ "AUDIO\\BAR_1.WAV",
+ "AUDIO\\BAR_2.WAV",
+ "AUDIO\\BAR_3.WAV",
+ "AUDIO\\BAR_4.WAV",
+ "AUDIO\\BAR_5.WAV",
+ "AUDIO\\BAR_6.WAV",
+ "AUDIO\\BAR_7.WAV",
+ "AUDIO\\BAR_8.WAV",
+ "AUDIO\\STRIP_1.WAV",
+ "AUDIO\\STRIP_2.WAV",
+ "AUDIO\\STRIP_3.WAV",
+ "AUDIO\\STRIP_4.WAV",
+ "AUDIO\\STRIP_5.WAV",
+ "AUDIO\\STRIP_6.WAV",
+ "AUDIO\\STRIP_7.WAV",
+ "AUDIO\\STRIP_8.WAV",
+ "AUDIO\\STRIP_9.WAV",
+ "AUDIO\\STAR_1.WAV",
+ "AUDIO\\STAR_2.WAV",
+ "AUDIO\\STAR_3.WAV",
+ "AUDIO\\STAR_4.WAV",
+ "AUDIO\\FIN_1A.WAV",
+ "AUDIO\\FIN_1B.WAV",
+ "AUDIO\\FIN_1C.WAV",
+ "AUDIO\\FIN_2B.WAV",
+ "AUDIO\\FIN_2C.WAV",
+ "AUDIO\\FIN_3.WAV",
+ "AUDIO\\FIN_4.WAV",
+ "AUDIO\\FIN_5.WAV",
+ "AUDIO\\FIN_6.WAV",
+ "AUDIO\\FIN_10.WAV",
+ "AUDIO\\FIN_11A.WAV",
+ "AUDIO\\FIN_11B.WAV",
+ "AUDIO\\FIN_12A.WAV",
+ "AUDIO\\FIN_12B.WAV",
+ "AUDIO\\FIN_12C.WAV",
+ "AUDIO\\FIN_13.WAV",
+ "AUDIO\\FINKILL.WAV",
+ "AUDIO\\LAW1_1.WAV",
+ "AUDIO\\LAW1_2.WAV",
+ "AUDIO\\LAW1_3.WAV",
+ "AUDIO\\LAW1_4.WAV",
+ "AUDIO\\LAW1_5.WAV",
+ "AUDIO\\LAW1_6.WAV",
+ "AUDIO\\LAW1_7.WAV",
+ "AUDIO\\LAW1_8.WAV",
+ "AUDIO\\LAW1_9.WAV",
+ "AUDIO\\LAW1_10.WAV",
+ "AUDIO\\LAW2_1.WAV",
+ "AUDIO\\LAW2_2.WAV",
+ "AUDIO\\LAW2_3.WAV",
+ "AUDIO\\LAW2_4.WAV",
+ "AUDIO\\LAW2_5.WAV",
+ "AUDIO\\LAW2_6.WAV",
+ "AUDIO\\LAW2_7.WAV",
+ "AUDIO\\LAW2_8.WAV",
+ "AUDIO\\LAW2_9.WAV",
+ "AUDIO\\LAW2_10.WAV",
+ "AUDIO\\LAW3_1.WAV",
+ "AUDIO\\LAW3_2.WAV",
+ "AUDIO\\LAW3_3.WAV",
+ "AUDIO\\LAW3_4.WAV",
+ "AUDIO\\LAW3_5.WAV",
+ "AUDIO\\LAW3_6.WAV",
+ "AUDIO\\LAW3_10.WAV",
+ "AUDIO\\LAW3_11.WAV",
+ "AUDIO\\LAW3_12.WAV",
+ "AUDIO\\LAW3_13.WAV",
+ "AUDIO\\LAW3_14.WAV",
+ "AUDIO\\LAW3_16.WAV",
+ "AUDIO\\LAW3_17.WAV",
+ "AUDIO\\LAW3_18.WAV",
+ "AUDIO\\LAW3_19.WAV",
+ "AUDIO\\LAW3_20.WAV",
+ "AUDIO\\LAW3_21.WAV",
+ "AUDIO\\LAW3_22.WAV",
+ "AUDIO\\LAW3_23.WAV",
+ "AUDIO\\LAW3_24.WAV",
+ "AUDIO\\LAW3_25.WAV",
+ "AUDIO\\LAW4_1A.WAV",
+ "AUDIO\\LAW4_1B.WAV",
+ "AUDIO\\LAW4_1C.WAV",
+ "AUDIO\\LAW4_1D.WAV",
+ "AUDIO\\LAW4_10.WAV",
+ "AUDIO\\LAW4_3.WAV",
+ "AUDIO\\LAW4_4.WAV",
+ "AUDIO\\LAW4_5.WAV",
+ "AUDIO\\LAW4_6.WAV",
+ "AUDIO\\LAW4_7.WAV",
+ "AUDIO\\LAW4_8.WAV",
+ "AUDIO\\LAW4_9.WAV",
+ "AUDIO\\PHIL1_2.WAV",
+ "AUDIO\\PHIL1_3.WAV",
+ "AUDIO\\PHIL2_1.WAV",
+ "AUDIO\\PHIL2_2.WAV",
+ "AUDIO\\PHIL2_3.WAV",
+ "AUDIO\\PHIL2_4.WAV",
+ "AUDIO\\PHIL2_5.WAV",
+ "AUDIO\\PHIL2_6.WAV",
+ "AUDIO\\PHIL2_7.WAV",
+ "AUDIO\\PHIL2_8.WAV",
+ "AUDIO\\PHIL2_9.WAV",
+ "AUDIO\\PHIL210.WAV",
+ "AUDIO\\PHIL211.WAV",
+ "AUDIO\\PORN1_1.WAV",
+ "AUDIO\\PORN1_2.WAV",
+ "AUDIO\\PORN1_3.WAV",
+ "AUDIO\\PRN1_3A.WAV",
+ "AUDIO\\PORN1_4.WAV",
+ "AUDIO\\PORN1_5.WAV",
+ "AUDIO\\PORN1_6.WAV",
+ "AUDIO\\PORN1_7.WAV",
+ "AUDIO\\PORN1_8.WAV",
+ "AUDIO\\PORN1_9.WAV",
+ "AUDIO\\PRN1_10.WAV",
+ "AUDIO\\PRN1_11.WAV",
+ "AUDIO\\PRN1_12.WAV",
+ "AUDIO\\PRN1_13.WAV",
+ "AUDIO\\PRN1_14.WAV",
+ "AUDIO\\PRN1_15.WAV",
+ "AUDIO\\PRN1_16.WAV",
+ "AUDIO\\PRN1_17.WAV",
+ "AUDIO\\PRN1_18.WAV",
+ "AUDIO\\PRN1_19.WAV",
+ "AUDIO\\PRN1_20.WAV",
+ "AUDIO\\PRN1_21.WAV",
+ "AUDIO\\PORN3_1.WAV",
+ "AUDIO\\PORN3_2.WAV",
+ "AUDIO\\PORN3_3.WAV",
+ "AUDIO\\PORN3_4.WAV",
+ "AUDIO\\PSYCH_1.WAV",
+ "AUDIO\\PSYCH_2.WAV",
+ "AUDIO\\ROK2_01.WAV",
+ "AUDIO\\ROK3_1.WAV",
+ "AUDIO\\ROK3_2.WAV",
+ "AUDIO\\ROK3_3.WAV",
+ "AUDIO\\ROK3_4.WAV",
+ "AUDIO\\ROK3_5.WAV",
+ "AUDIO\\ROK3_6.WAV",
+ "AUDIO\\ROK3_7.WAV",
+ "AUDIO\\ROK3_8.WAV",
+ "AUDIO\\ROK3_9.WAV",
+ "AUDIO\\ROK3_10.WAV",
+ "AUDIO\\ROK3_11.WAV",
+ "AUDIO\\ROK3_12.WAV",
+ "AUDIO\\ROK3_13.WAV",
+ "AUDIO\\ROK3_14.WAV",
+ "AUDIO\\ROK3_15.WAV",
+ "AUDIO\\ROK3_16.WAV",
+ "AUDIO\\ROK3_17.WAV",
+ "AUDIO\\ROK3_18.WAV",
+ "AUDIO\\ROK3_19.WAV",
+ "AUDIO\\ROK3_20.WAV",
+ "AUDIO\\ROK3_21.WAV",
+ "AUDIO\\ROK3_22.WAV",
+ "AUDIO\\ROK3_23.WAV",
+ "AUDIO\\ROK3_24.WAV",
+ "AUDIO\\ROK3_25.WAV",
+ "AUDIO\\ROK3_26.WAV",
+ "AUDIO\\ROK3_27.WAV",
+ "AUDIO\\ROK3_62.WAV",
+ "AUDIO\\ROK3_63.WAV",
+ "AUDIO\\ROK3_64.WAV",
+ "AUDIO\\ROK3_65.WAV",
+ "AUDIO\\ROK3_66.WAV",
+ "AUDIO\\ROK3_67.WAV",
+ "AUDIO\\ROK3_68.WAV",
+ "AUDIO\\ROK3_69.WAV",
+ "AUDIO\\ROK3_70.WAV",
+ "AUDIO\\ROK3_71.WAV",
+ "AUDIO\\ROK3_73.WAV",
+ "AUDIO\\RESC_1.WAV",
+ "AUDIO\\RESC_2.WAV",
+ "AUDIO\\RESC_3.WAV",
+ "AUDIO\\RESC_4.WAV",
+ "AUDIO\\RESC_5.WAV",
+ "AUDIO\\RESC_6.WAV",
+ "AUDIO\\RESC_7.WAV",
+ "AUDIO\\RESC_8.WAV",
+ "AUDIO\\RESC_9.WAV",
+ "AUDIO\\RESC_10.WAV",
+ "AUDIO\\ROK1_1A.WAV",
+ "AUDIO\\ROK1_1B.WAV",
+ "AUDIO\\ROK1_5.WAV",
+ "AUDIO\\ROK1_6.WAV",
+ "AUDIO\\ROK1_7.WAV",
+ "AUDIO\\ROK1_8.WAV",
+ "AUDIO\\ROK1_9.WAV",
+ "AUDIO\\TAX1_1.WAV",
+ "AUDIO\\TAX1_2.WAV",
+ "AUDIO\\TAX1_3.WAV",
+ "AUDIO\\TAX1_4.WAV",
+ "AUDIO\\TAX1_5.WAV",
+ "AUDIO\\TAX2_1.WAV",
+ "AUDIO\\TAX2_2.WAV",
+ "AUDIO\\TAX2_3.WAV",
+ "AUDIO\\TAX2_4.WAV",
+ "AUDIO\\TAX2_5.WAV",
+ "AUDIO\\TAX2_6.WAV",
+ "AUDIO\\TAX2_7.WAV",
+ "AUDIO\\TAX3_1.WAV",
+ "AUDIO\\TAX3_2.WAV",
+ "AUDIO\\TAX3_3.WAV",
+ "AUDIO\\TAX3_4.WAV",
+ "AUDIO\\TAX3_5.WAV",
+ "AUDIO\\TEX1_1.WAV",
+ "AUDIO\\TEX1_2.WAV",
+ "AUDIO\\TEX1_3.WAV",
+ "AUDIO\\TEX1_4.WAV",
+ "AUDIO\\TEX1_5.WAV",
+ "AUDIO\\TEX1_6.WAV",
+ "AUDIO\\TEX2_1.WAV",
+ "AUDIO\\TEX3_1.WAV",
+ "AUDIO\\TEX3_2.WAV",
+ "AUDIO\\TEX3_3.WAV",
+ "AUDIO\\TEX3_4.WAV",
+ "AUDIO\\TEX3_5.WAV",
+ "AUDIO\\TEX3_6.WAV",
+ "AUDIO\\TEX3_7.WAV",
+ "AUDIO\\TEX3_8.WAV",
+ "AUDIO\\HAT_1A.WAV",
+ "AUDIO\\INTRO1.WAV",
+ "AUDIO\\INTRO2.WAV",
+ "AUDIO\\INTRO3.WAV",
+ "AUDIO\\INTRO4.WAV",
+ "AUDIO\\MOB_01A.WAV",
+ "AUDIO\\MOB_01B.WAV",
+ "AUDIO\\MOB_01C.WAV",
+ "AUDIO\\MOB_02A.WAV",
+ "AUDIO\\MOB_02B.WAV",
+ "AUDIO\\MOB_02C.WAV",
+ "AUDIO\\MOB_03A.WAV",
+ "AUDIO\\MOB_03B.WAV",
+ "AUDIO\\MOB_03C.WAV",
+ "AUDIO\\MOB_03D.WAV",
+ "AUDIO\\MOB_03E.WAV",
+ "AUDIO\\SHARK_1.WAV",
+ "AUDIO\\SHARK_2.WAV",
+ "AUDIO\\SHARK_3.WAV",
+ "AUDIO\\SHARK_4.WAV",
+ "AUDIO\\SHARK_5.WAV",
+ "AUDIO\\MOB_04A.WAV",
+ "AUDIO\\MOB_04B.WAV",
+ "AUDIO\\MOB_04C.WAV",
+ "AUDIO\\MOB_04D.WAV",
+ "AUDIO\\MOB_05A.WAV",
+ "AUDIO\\MOB_05B.WAV",
+ "AUDIO\\MOB_05C.WAV",
+ "AUDIO\\MOB_05D.WAV",
+ "AUDIO\\MOB_06A.WAV",
+ "AUDIO\\MOB_06B.WAV",
+ "AUDIO\\MOB_06C.WAV",
+ "AUDIO\\MOB_07A.WAV",
+ "AUDIO\\MOB_07B.WAV",
+ "AUDIO\\MOB_08A.WAV",
+ "AUDIO\\MOB_08B.WAV",
+ "AUDIO\\MOB_08C.WAV",
+ "AUDIO\\MOB_08D.WAV",
+ "AUDIO\\MOB_08E.WAV",
+ "AUDIO\\MOB_08F.WAV",
+ "AUDIO\\MOB_08G.WAV",
+ "AUDIO\\MOB_09A.WAV",
+ "AUDIO\\MOB_09B.WAV",
+ "AUDIO\\MOB_09C.WAV",
+ "AUDIO\\MOB_09D.WAV",
+ "AUDIO\\MOB_09E.WAV",
+ "AUDIO\\MOB_09F.WAV",
+ "AUDIO\\MOB_10A.WAV",
+ "AUDIO\\MOB_10B.WAV",
+ "AUDIO\\MOB_10C.WAV",
+ "AUDIO\\MOB_10D.WAV",
+ "AUDIO\\MOB_10E.WAV",
+ "AUDIO\\MOB_11A.WAV",
+ "AUDIO\\MOB_11B.WAV",
+ "AUDIO\\MOB_11C.WAV",
+ "AUDIO\\MOB_11D.WAV",
+ "AUDIO\\MOB_11E.WAV",
+ "AUDIO\\MOB_11F.WAV",
+ "AUDIO\\MOB_14A.WAV",
+ "AUDIO\\MOB_14B.WAV",
+ "AUDIO\\MOB_14C.WAV",
+ "AUDIO\\MOB_14D.WAV",
+ "AUDIO\\MOB_14E.WAV",
+ "AUDIO\\MOB_14F.WAV",
+ "AUDIO\\MOB_14G.WAV",
+ "AUDIO\\MOB_14H.WAV",
+ "AUDIO\\MOB_16A.WAV",
+ "AUDIO\\MOB_16B.WAV",
+ "AUDIO\\MOB_16C.WAV",
+ "AUDIO\\MOB_16D.WAV",
+ "AUDIO\\MOB_16E.WAV",
+ "AUDIO\\MOB_16F.WAV",
+ "AUDIO\\MOB_16G.WAV",
+ "AUDIO\\MOB_17A.WAV",
+ "AUDIO\\MOB_17B.WAV",
+ "AUDIO\\MOB_17C.WAV",
+ "AUDIO\\MOB_17D.WAV",
+ "AUDIO\\MOB_17E.WAV",
+ "AUDIO\\MOB_17G.WAV",
+ "AUDIO\\MOB_17H.WAV",
+ "AUDIO\\MOB_17I.WAV",
+ "AUDIO\\MOB_17J.WAV",
+ "AUDIO\\MOB_17K.WAV",
+ "AUDIO\\MOB_17L.WAV",
+ "AUDIO\\MOB_18A.WAV",
+ "AUDIO\\MOB_18B.WAV",
+ "AUDIO\\MOB_18C.WAV",
+ "AUDIO\\MOB_18D.WAV",
+ "AUDIO\\MOB_18E.WAV",
+ "AUDIO\\MOB_18F.WAV",
+ "AUDIO\\MOB_18G.WAV",
+ "AUDIO\\MOB_20A.WAV",
+ "AUDIO\\MOB_20B.WAV",
+ "AUDIO\\MOB_20C.WAV",
+ "AUDIO\\MOB_20D.WAV",
+ "AUDIO\\MOB_20E.WAV",
+ "AUDIO\\MOB_24A.WAV",
+ "AUDIO\\MOB_24B.WAV",
+ "AUDIO\\MOB_24C.WAV",
+ "AUDIO\\MOB_24D.WAV",
+ "AUDIO\\MOB_24E.WAV",
+ "AUDIO\\MOB_24F.WAV",
+ "AUDIO\\MOB_24G.WAV",
+ "AUDIO\\MOB_24H.WAV",
+ "AUDIO\\MOB_25A.WAV",
+ "AUDIO\\MOB_25B.WAV",
+ "AUDIO\\MOB_25C.WAV",
+ "AUDIO\\MOB_25D.WAV",
+ "AUDIO\\MOB_26A.WAV",
+ "AUDIO\\MOB_26B.WAV",
+ "AUDIO\\MOB_26C.WAV",
+ "AUDIO\\MOB_26D.WAV",
+ "AUDIO\\MOB_26E.WAV",
+ "AUDIO\\MOB_29A.WAV",
+ "AUDIO\\MOB_29B.WAV",
+ "AUDIO\\MOB_29C.WAV",
+ "AUDIO\\MOB_29D.WAV",
+ "AUDIO\\MOB_29E.WAV",
+ "AUDIO\\MOB_29F.WAV",
+ "AUDIO\\MOB_29G.WAV",
+ "AUDIO\\MOB_30A.WAV",
+ "AUDIO\\MOB_30B.WAV",
+ "AUDIO\\MOB_30C.WAV",
+ "AUDIO\\MOB_30D.WAV",
+ "AUDIO\\MOB_30E.WAV",
+ "AUDIO\\MOB_30F.WAV",
+ "AUDIO\\MOB_33A.WAV",
+ "AUDIO\\MOB_33B.WAV",
+ "AUDIO\\MOB_33C.WAV",
+ "AUDIO\\MOB_33D.WAV",
+ "AUDIO\\MOB_34A.WAV",
+ "AUDIO\\MOB_34B.WAV",
+ "AUDIO\\MOB_34C.WAV",
+ "AUDIO\\MOB_34D.WAV",
+ "AUDIO\\MOB_35A.WAV",
+ "AUDIO\\MOB_35B.WAV",
+ "AUDIO\\MOB_35C.WAV",
+ "AUDIO\\MOB_35D.WAV",
+ "AUDIO\\MOB_36A.WAV",
+ "AUDIO\\MOB_36B.WAV",
+ "AUDIO\\MOB_36C.WAV",
+ "AUDIO\\MOB_40A.WAV",
+ "AUDIO\\MOB_40B.WAV",
+ "AUDIO\\MOB_40C.WAV",
+ "AUDIO\\MOB_40D.WAV",
+ "AUDIO\\MOB_40E.WAV",
+ "AUDIO\\MOB_40F.WAV",
+ "AUDIO\\MOB_40G.WAV",
+ "AUDIO\\MOB_40H.WAV",
+ "AUDIO\\MOB_40I.WAV",
+ "AUDIO\\MOB_41A.WAV",
+ "AUDIO\\MOB_41B.WAV",
+ "AUDIO\\MOB_41C.WAV",
+ "AUDIO\\MOB_41D.WAV",
+ "AUDIO\\MOB_41E.WAV",
+ "AUDIO\\MOB_41F.WAV",
+ "AUDIO\\MOB_41G.WAV",
+ "AUDIO\\MOB_41H.WAV",
+ "AUDIO\\MOB_42A.WAV",
+ "AUDIO\\MOB_42B.WAV",
+ "AUDIO\\MOB_42C.WAV",
+ "AUDIO\\MOB_42D.WAV",
+ "AUDIO\\MOB_42E.WAV",
+ "AUDIO\\MOB_43A.WAV",
+ "AUDIO\\MOB_43B.WAV",
+ "AUDIO\\MOB_43C.WAV",
+ "AUDIO\\MOB_43D.WAV",
+ "AUDIO\\MOB_43E.WAV",
+ "AUDIO\\MOB_43F.WAV",
+ "AUDIO\\MOB_43G.WAV",
+ "AUDIO\\MOB_43H.WAV",
+ "AUDIO\\MOB_45A.WAV",
+ "AUDIO\\MOB_45B.WAV",
+ "AUDIO\\MOB_45C.WAV",
+ "AUDIO\\MOB_45D.WAV",
+ "AUDIO\\MOB_45E.WAV",
+ "AUDIO\\MOB_45F.WAV",
+ "AUDIO\\MOB_45G.WAV",
+ "AUDIO\\MOB_45H.WAV",
+ "AUDIO\\MOB_45I.WAV",
+ "AUDIO\\MOB_45J.WAV",
+ "AUDIO\\MOB_45K.WAV",
+ "AUDIO\\MOB_45L.WAV",
+ "AUDIO\\MOB_45M.WAV",
+ "AUDIO\\MOB_45N.WAV",
+ "AUDIO\\MOB_46A.WAV",
+ "AUDIO\\MOB_46B.WAV",
+ "AUDIO\\MOB_46C.WAV",
+ "AUDIO\\MOB_46D.WAV",
+ "AUDIO\\MOB_46E.WAV",
+ "AUDIO\\MOB_46F.WAV",
+ "AUDIO\\MOB_46G.WAV",
+ "AUDIO\\MOB_46H.WAV",
+ "AUDIO\\MOB_47A.WAV",
+ "AUDIO\\MOB_52A.WAV",
+ "AUDIO\\MOB_52B.WAV",
+ "AUDIO\\MOB_52C.WAV",
+ "AUDIO\\MOB_52D.WAV",
+ "AUDIO\\MOB_52E.WAV",
+ "AUDIO\\MOB_52F.WAV",
+ "AUDIO\\MOB_52G.WAV",
+ "AUDIO\\MOB_52H.WAV",
+ "AUDIO\\MOB_54A.WAV",
+ "AUDIO\\MOB_54B.WAV",
+ "AUDIO\\MOB_54C.WAV",
+ "AUDIO\\MOB_54D.WAV",
+ "AUDIO\\MOB_54E.WAV",
+ "AUDIO\\MOB_55A.WAV",
+ "AUDIO\\MOB_55B.WAV",
+ "AUDIO\\MOB_55C.WAV",
+ "AUDIO\\MOB_55D.WAV",
+ "AUDIO\\MOB_55E.WAV",
+ "AUDIO\\MOB_55F.WAV",
+ "AUDIO\\MOB_56A.WAV",
+ "AUDIO\\MOB_56B.WAV",
+ "AUDIO\\MOB_56C.WAV",
+ "AUDIO\\MOB_56D.WAV",
+ "AUDIO\\MOB_56E.WAV",
+ "AUDIO\\MOB_56F.WAV",
+ "AUDIO\\MOB_57A.WAV",
+ "AUDIO\\MOB_57B.WAV",
+ "AUDIO\\MOB_57C.WAV",
+ "AUDIO\\MOB_57D.WAV",
+ "AUDIO\\MOB_57E.WAV",
+ "AUDIO\\MOB_58A.WAV",
+ "AUDIO\\MOB_58B.WAV",
+ "AUDIO\\MOB_58C.WAV",
+ "AUDIO\\MOB_58D.WAV",
+ "AUDIO\\MOB_58E.WAV",
+ "AUDIO\\MOB_58F.WAV",
+ "AUDIO\\MOB_58G.WAV",
+ "AUDIO\\MOB_61A.WAV",
+ "AUDIO\\MOB_61B.WAV",
+ "AUDIO\\MOB_62A.WAV",
+ "AUDIO\\MOB_62B.WAV",
+ "AUDIO\\MOB_62C.WAV",
+ "AUDIO\\MOB_62D.WAV",
+ "AUDIO\\MOB_63A.WAV",
+ "AUDIO\\MOB_63B.WAV",
+ "AUDIO\\MOB_63C.WAV",
+ "AUDIO\\MOB_63D.WAV",
+ "AUDIO\\MOB_63E.WAV",
+ "AUDIO\\MOB_63F.WAV",
+ "AUDIO\\MOB_63G.WAV",
+ "AUDIO\\MOB_63H.WAV",
+ "AUDIO\\MOB_63I.WAV",
+ "AUDIO\\MOB_63J.WAV",
+ "AUDIO\\MOB_66A.WAV",
+ "AUDIO\\MOB_66B.WAV",
+ "AUDIO\\MOB_68A.WAV",
+ "AUDIO\\MOB_68B.WAV",
+ "AUDIO\\MOB_68C.WAV",
+ "AUDIO\\MOB_68D.WAV",
+ "AUDIO\\MOB_70A.WAV",
+ "AUDIO\\MOB_70B.WAV",
+ "AUDIO\\MOB_71A.WAV",
+ "AUDIO\\MOB_71B.WAV",
+ "AUDIO\\MOB_71C.WAV",
+ "AUDIO\\MOB_71D.WAV",
+ "AUDIO\\MOB_71E.WAV",
+ "AUDIO\\MOB_71F.WAV",
+ "AUDIO\\MOB_71G.WAV",
+ "AUDIO\\MOB_71H.WAV",
+ "AUDIO\\MOB_71I.WAV",
+ "AUDIO\\MOB_71J.WAV",
+ "AUDIO\\MOB_71K.WAV",
+ "AUDIO\\MOB_71L.WAV",
+ "AUDIO\\MOB_71M.WAV",
+ "AUDIO\\MOB_71N.WAV",
+ "AUDIO\\MOB_72A.WAV",
+ "AUDIO\\MOB_72B.WAV",
+ "AUDIO\\MOB_72C.WAV",
+ "AUDIO\\MOB_72D.WAV",
+ "AUDIO\\MOB_72E.WAV",
+ "AUDIO\\MOB_72F.WAV",
+ "AUDIO\\MOB_72G.WAV",
+ "AUDIO\\MOB_73A.WAV",
+ "AUDIO\\MOB_73C.WAV",
+ "AUDIO\\MOB_73D.WAV",
+ "AUDIO\\MOB_73F.WAV",
+ "AUDIO\\MOB_73G.WAV",
+ "AUDIO\\MOB_73I.WAV",
+ "AUDIO\\MOB_95A.WAV",
+ "AUDIO\\MOB_96A.WAV",
+ "AUDIO\\MOB_98A.WAV",
+ "AUDIO\\MOB_99A.WAV",
+ "AUDIO\\JOB1_1B.WAV",
+ "AUDIO\\JOB1_1C.WAV",
+ "AUDIO\\JOB1_1D.WAV",
+ "AUDIO\\JOB2_1B.WAV",
+ "AUDIO\\JOB2_2.WAV",
+ "AUDIO\\JOB2_3.WAV",
+ "AUDIO\\JOB2_4.WAV",
+ "AUDIO\\JOB2_5.WAV",
+ "AUDIO\\JOB2_6.WAV",
+ "AUDIO\\JOB2_7.WAV",
+ "AUDIO\\JOB2_8.WAV",
+ "AUDIO\\JOB2_9.WAV",
+ "AUDIO\\JOB3_1.WAV",
+ "AUDIO\\JOB3_2.WAV",
+ "AUDIO\\JOB3_3.WAV",
+ "AUDIO\\JOB4_1.WAV",
+ "AUDIO\\JOB4_2.WAV",
+ "AUDIO\\JOB4_3.WAV",
+ "AUDIO\\JOB5_1.WAV",
+ "AUDIO\\JOB5_2.WAV",
+ "AUDIO\\JOB5_3.WAV",
+ "AUDIO\\BJM1_20.WAV",
+ "AUDIO\\BJM1_4.WAV",
+ "AUDIO\\BJM1_5.WAV",
+ "AUDIO\\MERC_39.WAV",
+ "AUDIO\\MONO_1.WAV",
+ "AUDIO\\MONO_2.WAV",
+ "AUDIO\\MONO_3.WAV",
+ "AUDIO\\MONO_4.WAV",
+ "AUDIO\\MONO_5.WAV",
+ "AUDIO\\MONO_6.WAV",
+ "AUDIO\\MONO_7.WAV",
+ "AUDIO\\MONO_8.WAV",
+ "AUDIO\\MONO_9.WAV",
+ "AUDIO\\MONO10.WAV",
+ "AUDIO\\MONO11.WAV",
+ "AUDIO\\MONO12.WAV",
+ "AUDIO\\MONO13.WAV",
+ "AUDIO\\MONO14.WAV",
+ "AUDIO\\MONO15.WAV",
+ "AUDIO\\MONO16.WAV",
+ "AUDIO\\FUD_01.WAV",
+ "AUDIO\\FUD_02.WAV",
+ "AUDIO\\FUD_03.WAV",
+ "AUDIO\\FUD_04.WAV",
+ "AUDIO\\FUD_05.WAV",
+ "AUDIO\\FUD_06.WAV",
+ "AUDIO\\FUD_07.WAV",
+ "AUDIO\\FUD_08.WAV",
+ "AUDIO\\FUD_09.WAV",
+ "AUDIO\\FUD_10.WAV",
+ "AUDIO\\FUD_11.WAV",
+ "AUDIO\\FUD_12.WAV",
+ "AUDIO\\FUD_13.WAV",
+ "AUDIO\\FUD_14.WAV",
+ "AUDIO\\FUD_15.WAV",
+ "AUDIO\\FUD_16.WAV",
+ "AUDIO\\FUD_17.WAV",
+ "AUDIO\\FUD_18.WAV",
+ "AUDIO\\FUD_19.WAV",
+ "AUDIO\\FUD_20.WAV",
+ "AUDIO\\BURG_01.WAV",
+ "AUDIO\\BURG_02.WAV",
+ "AUDIO\\BURG_03.WAV",
+ "AUDIO\\BURG_04.WAV",
+ "AUDIO\\BURG_05.WAV",
+ "AUDIO\\BURG_06.WAV",
+ "AUDIO\\BURG_07.WAV",
+ "AUDIO\\BURG_08.WAV",
+ "AUDIO\\BURG_09.WAV",
+ "AUDIO\\BURG_10.WAV",
+ "AUDIO\\BURG_11.WAV",
+ "AUDIO\\BURG_12.WAV",
+ "AUDIO\\CRUST01.WAV",
+ "AUDIO\\CRUST02.WAV",
+ "AUDIO\\CRUST03.WAV",
+ "AUDIO\\CRUST04.WAV",
+ "AUDIO\\CRUST05.WAV",
+ "AUDIO\\CRUST06.WAV",
+ "AUDIO\\CRUST07.WAV",
+ "AUDIO\\CRUST08.WAV",
+ "AUDIO\\CRUST09.WAV",
+ "AUDIO\\BAND_01.WAV",
+ "AUDIO\\BAND_02.WAV",
+ "AUDIO\\BAND_03.WAV",
+ "AUDIO\\BAND_04.WAV",
+ "AUDIO\\BAND_05.WAV",
+ "AUDIO\\BAND_06.WAV",
+ "AUDIO\\BAND_07.WAV",
+ "AUDIO\\BAND_08.WAV",
+ "AUDIO\\SHAFT01.WAV",
+ "AUDIO\\SHAFT02.WAV",
+ "AUDIO\\SHAFT03.WAV",
+ "AUDIO\\SHAFT04.WAV",
+ "AUDIO\\SHAFT05.WAV",
+ "AUDIO\\SHAFT06.WAV",
+ "AUDIO\\SHAFT07.WAV",
+ "AUDIO\\SHAFT08.WAV",
+ "AUDIO\\PISS_01.WAV",
+ "AUDIO\\PISS_02.WAV",
+ "AUDIO\\PISS_03.WAV",
+ "AUDIO\\PISS_04.WAV",
+ "AUDIO\\PISS_05.WAV",
+ "AUDIO\\PISS_06.WAV",
+ "AUDIO\\PISS_07.WAV",
+ "AUDIO\\PISS_08.WAV",
+ "AUDIO\\PISS_09.WAV",
+ "AUDIO\\PISS_10.WAV",
+ "AUDIO\\PISS_11.WAV",
+ "AUDIO\\PISS_12.WAV",
+ "AUDIO\\PISS_13.WAV",
+ "AUDIO\\PISS_14.WAV",
+ "AUDIO\\PISS_15.WAV",
+ "AUDIO\\PISS_16.WAV",
+ "AUDIO\\PISS_17.WAV",
+ "AUDIO\\PISS_18.WAV",
+ "AUDIO\\PISS_19.WAV",
+ "AUDIO\\GIMME01.WAV",
+ "AUDIO\\GIMME02.WAV",
+ "AUDIO\\GIMME03.WAV",
+ "AUDIO\\GIMME04.WAV",
+ "AUDIO\\GIMME05.WAV",
+ "AUDIO\\GIMME06.WAV",
+ "AUDIO\\GIMME07.WAV",
+ "AUDIO\\GIMME08.WAV",
+ "AUDIO\\GIMME09.WAV",
+ "AUDIO\\GIMME10.WAV",
+ "AUDIO\\GIMME11.WAV",
+ "AUDIO\\GIMME12.WAV",
+ "AUDIO\\GIMME13.WAV",
+ "AUDIO\\GIMME14.WAV",
+ "AUDIO\\GIMME15.WAV",
+ "AUDIO\\BUST_01.WAV",
+ "AUDIO\\BUST_02.WAV",
+ "AUDIO\\BUST_03.WAV",
+ "AUDIO\\BUST_04.WAV",
+ "AUDIO\\BUST_05.WAV",
+ "AUDIO\\BUST_06.WAV",
+ "AUDIO\\BUST_07.WAV",
+ "AUDIO\\BUST_08.WAV",
+ "AUDIO\\BUST_09.WAV",
+ "AUDIO\\BUST_10.WAV",
+ "AUDIO\\BUST_11.WAV",
+ "AUDIO\\BUST_12.WAV",
+ "AUDIO\\BUST_13.WAV",
+ "AUDIO\\BUST_14.WAV",
+ "AUDIO\\BUST_15.WAV",
+ "AUDIO\\BUST_16.WAV",
+ "AUDIO\\BUST_17.WAV",
+ "AUDIO\\BUST_18.WAV",
+ "AUDIO\\BUST_19.WAV",
+ "AUDIO\\BUST_20.WAV",
+ "AUDIO\\BUST_21.WAV",
+ "AUDIO\\BUST_22.WAV",
+ "AUDIO\\BUST_23.WAV",
+ "AUDIO\\BUST_24.WAV",
+ "AUDIO\\BUST_25.WAV",
+ "AUDIO\\BUST_26.WAV",
+ "AUDIO\\BUST_27.WAV",
+ "AUDIO\\BUST_28.WAV",
+};
+#endif
+
static char StreamedNameTable[][25] =
{
"AUDIO\\WILD.ADF",
@@ -490,7 +1584,6 @@ static char StreamedNameTable[][25] =
"AUDIO\\MISCOM.MP3",
"AUDIO\\MISCOM.MP3",
"AUDIO\\MISCOM.MP3",
-#endif
"AUDIO\\MOBR1.WAV",
"AUDIO\\PAGER.WAV",
"AUDIO\\CARREV.WAV",
diff --git a/src/audio/sampman_miles.cpp b/src/audio/sampman_miles.cpp
index 36f230b4..b77584d0 100644
--- a/src/audio/sampman_miles.cpp
+++ b/src/audio/sampman_miles.cpp
@@ -1,3 +1,4 @@
+#define WITHWINDOWS
#include "common.h"
#ifdef AUDIO_MSS
@@ -28,7 +29,7 @@ char SampleBankDataFilename[] = "AUDIO\\SFX.RAW";
FILE *fpSampleDescHandle;
FILE *fpSampleDataHandle;
-bool bSampleBankLoaded [MAX_SFX_BANKS];
+bool8 bSampleBankLoaded [MAX_SFX_BANKS];
int32 nSampleBankDiscStartOffset [MAX_SFX_BANKS];
int32 nSampleBankSize [MAX_SFX_BANKS];
int32 nSampleBankMemoryStartAddress[MAX_SFX_BANKS];
@@ -60,14 +61,14 @@ char _mp3DirectoryPath[MAX_PATH];
HSTREAM mp3Stream [MAX_STREAMS];
int8 nStreamPan [MAX_STREAMS];
int8 nStreamVolume[MAX_STREAMS];
-uint8 nStreamLoopedFlag[MAX_STREAMS];
+bool8 nStreamLoopedFlag[MAX_STREAMS];
uint32 _CurMP3Index;
int32 _CurMP3Pos;
-bool _bIsMp3Active;
+bool8 _bIsMp3Active;
///////////////////////////////////////////////////////////////
-bool _bSampmanInitialised = false;
+bool8 _bSampmanInitialised = FALSE;
//
// Miscellaneous globals / defines
@@ -94,7 +95,7 @@ S32 speaker_type=0;
U32 _maxSamples;
float _fPrevEaxRatioDestination;
-bool _usingMilesFast2D;
+bool8 _usingMilesFast2D;
float _fEffectsLevel;
@@ -166,17 +167,17 @@ release_existing()
}
_fPrevEaxRatioDestination = 0.0f;
- _usingMilesFast2D = false;
+ _usingMilesFast2D = FALSE;
_fEffectsLevel = 0.0f;
}
-static bool
+static bool8
set_new_provider(S32 index)
{
DWORD result;
if ( curprovider == index )
- return true;
+ return TRUE;
//close the already opened provider
curprovider = index;
@@ -203,7 +204,7 @@ set_new_provider(S32 index)
release_existing();
- return false;
+ return FALSE;
}
else
{
@@ -234,7 +235,7 @@ set_new_provider(S32 index)
AIL_set_3D_room_type(opened_provider, ENVIRONMENT_CAVE);
if ( !strcmp(providers[index].name, "Miles Fast 2D Positional Audio") )
- _usingMilesFast2D = true;
+ _usingMilesFast2D = TRUE;
}
AIL_3D_provider_attribute(opened_provider, "Maximum supported samples", &_maxSamples);
@@ -252,11 +253,11 @@ set_new_provider(S32 index)
AIL_set_3D_sample_effects_level(opened_samples[i], 0.0f);
}
- return true;
+ return TRUE;
}
}
- return false;
+ return FALSE;
}
U32 RadioHandlers[9];
@@ -459,7 +460,7 @@ cSampleManager::AutoDetect3DProviders()
return -1;
}
-static bool
+static bool8
_ResolveLink(char const *path, char *out)
{
IShellLink* psl;
@@ -495,7 +496,7 @@ _ResolveLink(char const *path, char *out)
ppf->Release();
psl->Release();
#endif
- return true;
+ return TRUE;
}
}
}
@@ -505,15 +506,15 @@ _ResolveLink(char const *path, char *out)
psl->Release();
}
- return false;
+ return FALSE;
}
static void
_FindMP3s(void)
{
tMP3Entry *pList;
- bool bShortcut;
- bool bInitFirstEntry;
+ bool8 bShortcut;
+ bool8 bInitFirstEntry;
HANDLE hFind;
char path[MAX_PATH];
char filepath[MAX_PATH*2];
@@ -565,10 +566,10 @@ _FindMP3s(void)
OutputDebugString(filepath);
}
- bShortcut = true;
+ bShortcut = TRUE;
}
else
- bShortcut = false;
+ bShortcut = FALSE;
}
mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
@@ -608,7 +609,7 @@ _FindMP3s(void)
{
_pMP3List->pLinkPath = NULL;
}
- bInitFirstEntry = false;
+ bInitFirstEntry = FALSE;
}
else
{
@@ -616,10 +617,10 @@ _FindMP3s(void)
OutputDebugString(filepath);
- bInitFirstEntry = true;
+ bInitFirstEntry = TRUE;
}
- while ( true )
+ while ( TRUE )
{
if ( !FindNextFile(hFind, &fd) )
break;
@@ -643,11 +644,11 @@ _FindMP3s(void)
OutputDebugString(filepath);
}
- bShortcut = true;
+ bShortcut = TRUE;
}
else
{
- bShortcut = false;
+ bShortcut = FALSE;
if ( filepathlen > MAX_PATH )
{
@@ -690,7 +691,7 @@ _FindMP3s(void)
pList = _pMP3List;
- bInitFirstEntry = false;
+ bInitFirstEntry = FALSE;
}
else
{
@@ -718,11 +719,11 @@ _FindMP3s(void)
OutputDebugString(filepath);
}
- bShortcut = true;
+ bShortcut = TRUE;
}
else
{
- bShortcut = false;
+ bShortcut = FALSE;
}
}
@@ -834,7 +835,7 @@ _GetMP3EntryByIndex(uint32 idx)
return NULL;
}
-static inline bool
+static inline bool8
_GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
{
_CurMP3Index = 0;
@@ -847,7 +848,7 @@ _GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
*pPosition -= (*pEntry)->nTrackStreamPos;
_CurMP3Pos = *pPosition;
- return true;
+ return TRUE;
}
_CurMP3Index++;
@@ -858,10 +859,10 @@ _GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
_CurMP3Pos = 0;
_CurMP3Index = 0;
- return false;
+ return FALSE;
}
-bool
+bool8
cSampleManager::IsMP3RadioChannelAvailable(void)
{
return nNumMP3s != 0;
@@ -890,13 +891,13 @@ cSampleManager::ReacquireDigitalHandle(void)
}
}
-bool
+bool8
cSampleManager::Initialise(void)
{
TRACE("start");
if ( _bSampmanInitialised )
- return true;
+ return TRUE;
{
for ( int32 i = 0; i < TOTAL_AUDIO_SAMPLES; i++ )
@@ -922,7 +923,7 @@ cSampleManager::Initialise(void)
curprovider = -1;
prevprovider = -1;
- _usingMilesFast2D = false;
+ _usingMilesFast2D = FALSE;
usingEAX=0;
usingEAX3=0;
@@ -947,7 +948,7 @@ cSampleManager::Initialise(void)
for ( int32 i = 0; i < MAX_SFX_BANKS; i++ )
{
- bSampleBankLoaded[i] = false;
+ bSampleBankLoaded[i] = FALSE;
nSampleBankDiscStartOffset[i] = 0;
nSampleBankSize[i] = 0;
nSampleBankMemoryStartAddress[i] = 0;
@@ -988,24 +989,24 @@ cSampleManager::Initialise(void)
#ifdef AUDIO_CACHE
TRACE("cache");
FILE *cacheFile = fcaseopen("audio\\sound.cache", "rb");
- bool CreateCache = false;
+ bool8 CreateCache = FALSE;
if (cacheFile) {
fread(nStreamLength, sizeof(uint32), TOTAL_STREAMED_SOUNDS, cacheFile);
fclose(cacheFile);
}else
- CreateCache = true;
+ CreateCache = TRUE;
#endif
char filepath[MAX_PATH];
- bool bFileNotFound;
+ bool8 bFileNotFound;
S32 tatalms;
TRACE("cdrom");
{
- m_bInitialised = false;
+ m_bInitialised = FALSE;
- while (true)
+ while (TRUE)
{
// Find path of WAVs (originally in HDD)
@@ -1046,7 +1047,7 @@ cSampleManager::Initialise(void)
{
OutputDebugString(AIL_last_error());
Terminate();
- return false;
+ return FALSE;
}
add_providers();
@@ -1060,10 +1061,20 @@ cSampleManager::Initialise(void)
#endif
for ( int32 i = STREAMED_SOUND_MISSION_MOBR1; i < TOTAL_STREAMED_SOUNDS; i++ )
{
+#ifdef PS2_AUDIO_PATHS
strcpy(filepath, m_szCDRomRootPath);
- strcat(filepath, StreamedNameTable[i]);
-
+ strcat(filepath, PS2StreamedNameTable[i]);
+
mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+
+ if ( !mp3Stream[0] )
+#endif
+ {
+ strcpy(filepath, m_szCDRomRootPath);
+ strcat(filepath, StreamedNameTable[i]);
+
+ mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+ }
if ( mp3Stream[0] )
{
@@ -1076,9 +1087,9 @@ cSampleManager::Initialise(void)
}
else
{
- m_bInitialised = false;
+ m_bInitialised = FALSE;
Terminate();
- return false;
+ return FALSE;
}
}
@@ -1101,11 +1112,21 @@ cSampleManager::Initialise(void)
for (int32 i = 0; i < STREAMED_SOUND_MISSION_MOBR1; i++)
{
+#ifdef PS2_AUDIO_PATHS
strcpy(filepath, m_MP3FilesPath);
- strcat(filepath, StreamedNameTable[i]);
+ strcat(filepath, PS2StreamedNameTable[i]);
mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+ if ( !mp3Stream[0] )
+#endif
+ {
+ strcpy(filepath, m_MP3FilesPath);
+ strcat(filepath, StreamedNameTable[i]);
+
+ mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+ }
+
if (mp3Stream[0])
{
AIL_stream_ms_position(mp3Stream[0], &tatalms, NULL);
@@ -1113,7 +1134,7 @@ cSampleManager::Initialise(void)
AIL_close_stream(mp3Stream[0]);
mp3Stream[0] = NULL;
- bFileNotFound = false;
+ bFileNotFound = FALSE;
#ifdef AUDIO_CACHE
if (!CreateCache)
break;
@@ -1124,7 +1145,7 @@ cSampleManager::Initialise(void)
}
else
{
- bFileNotFound = true;
+ bFileNotFound = TRUE;
break;
}
}
@@ -1146,10 +1167,20 @@ cSampleManager::Initialise(void)
#endif
for ( int32 i = STREAMED_SOUND_MISSION_COMPLETED4; i < STREAMED_SOUND_MISSION_PAGER; i++ )
{
+#ifdef PS2_AUDIO_PATHS
strcpy(filepath, m_MiscomPath);
- strcat(filepath, StreamedNameTable[i]);
-
+ strcat(filepath, PS2StreamedNameTable[i]);
+
mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+
+ if ( !mp3Stream[0] )
+#endif
+ {
+ strcpy(filepath, m_MiscomPath);
+ strcat(filepath, StreamedNameTable[i]);
+
+ mp3Stream[0] = AIL_open_stream(DIG, filepath, 0);
+ }
if ( mp3Stream[0] )
{
@@ -1159,11 +1190,11 @@ cSampleManager::Initialise(void)
mp3Stream[0] = NULL;
nStreamLength[i] = tatalms;
- bFileNotFound = false;
+ bFileNotFound = FALSE;
}
else
{
- bFileNotFound = true;
+ bFileNotFound = TRUE;
break;
}
}
@@ -1178,11 +1209,11 @@ cSampleManager::Initialise(void)
if ( FrontEndMenuManager.m_bQuitGameNoCD )
{
Terminate();
- return false;
+ return FALSE;
}
continue;
#else
- m_bInitialised = true;
+ m_bInitialised = TRUE;
#endif
}
@@ -1201,14 +1232,14 @@ cSampleManager::Initialise(void)
if ( !InitialiseSampleBanks() )
{
Terminate();
- return false;
+ return FALSE;
}
nSampleBankMemoryStartAddress[SFX_BANK_0] = (int32)AIL_mem_alloc_lock(nSampleBankSize[SFX_BANK_0]);
if ( !nSampleBankMemoryStartAddress[SFX_BANK_0] )
{
Terminate();
- return false;
+ return FALSE;
}
nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] = (int32)AIL_mem_alloc_lock(PED_BLOCKSIZE*MAX_PEDSFX);
@@ -1237,7 +1268,7 @@ cSampleManager::Initialise(void)
TRACE("providerset");
{
- _bSampmanInitialised = true;
+ _bSampmanInitialised = TRUE;
U32 n = 0;
@@ -1254,7 +1285,7 @@ cSampleManager::Initialise(void)
if ( n == m_nNumberOfProviders )
{
Terminate();
- return false;
+ return FALSE;
}
}
@@ -1279,13 +1310,13 @@ cSampleManager::Initialise(void)
time_t t = time(NULL);
tm *localtm;
- bool bUseRandomTable;
+ bool8 bUseRandomTable;
if ( t == -1 )
- bUseRandomTable = true;
+ bUseRandomTable = TRUE;
else
{
- bUseRandomTable = false;
+ bUseRandomTable = FALSE;
localtm = localtime(&t);
}
@@ -1317,12 +1348,12 @@ cSampleManager::Initialise(void)
else
_CurMP3Pos = 0;
- _bIsMp3Active = false;
+ _bIsMp3Active = FALSE;
}
TRACE("end");
- return true;
+ return TRUE;
}
void
@@ -1371,10 +1402,10 @@ cSampleManager::Terminate(void)
AIL_shutdown();
- _bSampmanInitialised = false;
+ _bSampmanInitialised = FALSE;
}
-bool
+bool8
cSampleManager::CheckForAnAudioFileOnCD(void)
{
#if !defined(NO_CDCHECK) // TODO: check steam, probably GTAVC_STEAM_PATCH needs to be added
@@ -1392,17 +1423,17 @@ cSampleManager::CheckForAnAudioFileOnCD(void)
DMAudio.SetEffectsMasterVolume(FrontEndMenuManager.m_PrefsSfxVolume);
DMAudio.Service();
- return true;
+ return TRUE;
}
DMAudio.SetMusicMasterVolume(0);
DMAudio.SetEffectsMasterVolume(0);
DMAudio.Service();
- return false;
+ return FALSE;
#else
- return true;
+ return TRUE;
#endif // #if !defined(NO_CDCHECK)
}
@@ -1484,48 +1515,48 @@ cSampleManager::SetMusicFadeVolume(uint8 nVolume)
}
void
-cSampleManager::SetMonoMode(uint8 nMode)
+cSampleManager::SetMonoMode(bool8 nMode)
{
m_nMonoMode = nMode;
}
-bool
+bool8
cSampleManager::LoadSampleBank(uint8 nBank)
{
if ( CTimer::GetIsCodePaused() )
- return false;
+ return FALSE;
if ( MusicManager.IsInitialised()
&& MusicManager.GetMusicMode() == MUSICMODE_CUTSCENE
&& nBank != SFX_BANK_0 )
{
- return false;
+ return FALSE;
}
if ( fseek(fpSampleDataHandle, nSampleBankDiscStartOffset[nBank], SEEK_SET) != 0 )
- return false;
+ return FALSE;
if ( fread((void *)nSampleBankMemoryStartAddress[nBank], 1, nSampleBankSize[nBank],fpSampleDataHandle) != nSampleBankSize[nBank] )
- return false;
+ return FALSE;
- bSampleBankLoaded[nBank] = true;
+ bSampleBankLoaded[nBank] = TRUE;
- return true;
+ return TRUE;
}
void
cSampleManager::UnloadSampleBank(uint8 nBank)
{
- bSampleBankLoaded[nBank] = false;
+ bSampleBankLoaded[nBank] = FALSE;
}
-bool
+bool8
cSampleManager::IsSampleBankLoaded(uint8 nBank)
{
return bSampleBankLoaded[nBank];
}
-bool
+bool8
cSampleManager::IsPedCommentLoaded(uint32 nComment)
{
int8 slot;
@@ -1538,10 +1569,10 @@ cSampleManager::IsPedCommentLoaded(uint32 nComment)
slot += ARRAY_SIZE(nPedSlotSfx);
#endif
if ( nComment == nPedSlotSfx[slot] )
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
int32
@@ -1563,11 +1594,11 @@ cSampleManager::_GetPedCommentSlot(uint32 nComment)
return -1;
}
-bool
+bool8
cSampleManager::LoadPedComment(uint32 nComment)
{
if ( CTimer::GetIsCodePaused() )
- return false;
+ return FALSE;
// no talking peds during cutsenes or the game end
if ( MusicManager.IsInitialised() )
@@ -1576,7 +1607,7 @@ cSampleManager::LoadPedComment(uint32 nComment)
{
case MUSICMODE_CUTSCENE:
{
- return false;
+ return FALSE;
break;
}
@@ -1584,10 +1615,10 @@ cSampleManager::LoadPedComment(uint32 nComment)
}
if ( fseek(fpSampleDataHandle, m_aSamples[nComment].nOffset, SEEK_SET) != 0 )
- return false;
+ return FALSE;
if ( fread((void *)(nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] + PED_BLOCKSIZE*nCurrentPedSlot), 1, m_aSamples[nComment].nSize, fpSampleDataHandle) != m_aSamples[nComment].nSize )
- return false;
+ return FALSE;
nPedSlotSfxAddr[nCurrentPedSlot] = nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] + PED_BLOCKSIZE*nCurrentPedSlot;
nPedSlotSfx [nCurrentPedSlot] = nComment;
@@ -1595,7 +1626,7 @@ cSampleManager::LoadPedComment(uint32 nComment)
if ( ++nCurrentPedSlot >= MAX_PEDSFX )
nCurrentPedSlot = 0;
- return true;
+ return TRUE;
}
int32
@@ -1634,14 +1665,14 @@ cSampleManager::GetSampleLength(uint32 nSample)
return m_aSamples[nSample].nSize >> 1;
}
-bool
+bool8
cSampleManager::UpdateReverb(void)
{
if ( !usingEAX )
- return false;
+ return FALSE;
if ( AudioManager.GetFrameCounter() & 15 )
- return false;
+ return FALSE;
float fRatio = 0.0f;
@@ -1659,10 +1690,10 @@ cSampleManager::UpdateReverb(void)
#undef CALCULATE_RATIO
#undef MIN_DIST
- fRatio = clamp(fRatio, 0.0f, 0.6f);
+ fRatio = Clamp(fRatio, 0.0f, 0.6f);
if ( fRatio == _fPrevEaxRatioDestination )
- return false;
+ return FALSE;
if ( usingEAX3 )
{
@@ -1684,26 +1715,26 @@ cSampleManager::UpdateReverb(void)
_fPrevEaxRatioDestination = fRatio;
- return true;
+ return TRUE;
}
void
-cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
+cSampleManager::SetChannelReverbFlag(uint32 nChannel, bool8 nReverbFlag)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
if ( usingEAX )
{
- if ( nReverbFlag != 0 )
+ if ( nReverbFlag != FALSE )
{
if ( !b2d )
AIL_set_3D_sample_effects_level(opened_samples[nChannel], _fEffectsLevel);
@@ -1716,16 +1747,16 @@ cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
}
}
-bool
+bool8
cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -1735,14 +1766,14 @@ cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
if ( nSfx < SAMPLEBANK_MAX )
{
if ( !IsSampleBankLoaded(nBank) )
- return false;
+ return FALSE;
addr = nSampleBankMemoryStartAddress[nBank] + m_aSamples[nSfx].nOffset - m_aSamples[BankStartOffset[nBank]].nOffset;
}
else
{
if ( !IsPedCommentLoaded(nSfx) )
- return false;
+ return FALSE;
int32 slot = _GetPedCommentSlot(nSfx);
@@ -1754,10 +1785,10 @@ cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
if ( opened_2dsamples[nChannel - MAXCHANNELS] )
{
AIL_set_sample_address(opened_2dsamples[nChannel - MAXCHANNELS], (void *)addr, m_aSamples[nSfx].nSize);
- return true;
+ return TRUE;
}
else
- return false;
+ return FALSE;
}
else
{
@@ -1773,10 +1804,10 @@ cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
if ( AIL_set_3D_sample_info(opened_samples[nChannel], &info) == 0 )
{
OutputDebugString(AIL_last_error());
- return false;
+ return FALSE;
}
- return true;
+ return TRUE;
}
}
@@ -1823,7 +1854,7 @@ cSampleManager::SetChannelVolume(uint32 nChannel, uint32 nVolume)
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
nChannelVolume[nChannel] = vol;
@@ -1850,7 +1881,7 @@ cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
{
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
#ifndef FIX_BUGS
if ( opened_samples[nChannel - MAXCHANNELS] ) // BUG
@@ -1867,13 +1898,13 @@ cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
void
cSampleManager::SetChannelFrequency(uint32 nChannel, uint32 nFreq)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -1893,13 +1924,13 @@ cSampleManager::SetChannelFrequency(uint32 nChannel, uint32 nFreq)
void
cSampleManager::SetChannelLoopPoints(uint32 nChannel, uint32 nLoopStart, int32 nLoopEnd)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -1919,13 +1950,13 @@ cSampleManager::SetChannelLoopPoints(uint32 nChannel, uint32 nLoopStart, int32 n
void
cSampleManager::SetChannelLoopCount(uint32 nChannel, uint32 nLoopCount)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -1942,16 +1973,16 @@ cSampleManager::SetChannelLoopCount(uint32 nChannel, uint32 nLoopCount)
}
}
-bool
+bool8
cSampleManager::GetChannelUsedFlag(uint32 nChannel)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -1961,14 +1992,14 @@ cSampleManager::GetChannelUsedFlag(uint32 nChannel)
if ( opened_2dsamples[nChannel - MAXCHANNELS] )
return AIL_sample_status(opened_2dsamples[nChannel - MAXCHANNELS]) == SMP_PLAYING;
else
- return false;
+ return FALSE;
}
else
{
if ( opened_samples[nChannel] )
return AIL_3D_sample_status(opened_samples[nChannel]) == SMP_PLAYING;
else
- return false;
+ return FALSE;
}
}
@@ -1976,13 +2007,13 @@ cSampleManager::GetChannelUsedFlag(uint32 nChannel)
void
cSampleManager::StartChannel(uint32 nChannel)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -2002,13 +2033,13 @@ cSampleManager::StartChannel(uint32 nChannel)
void
cSampleManager::StopChannel(uint32 nChannel)
{
- bool b2d = false;
+ bool8 b2d = FALSE;
switch ( nChannel )
{
- case CHANNEL2D:
+ case CHANNEL_POLICE_RADIO:
{
- b2d = true;
+ b2d = TRUE;
break;
}
}
@@ -2042,11 +2073,20 @@ cSampleManager::PreloadStreamedFile(uint32 nFile, uint8 nStream)
}
char filepath[MAX_PATH];
-
+#ifdef PS2_AUDIO_PATHS
strcpy(filepath, nFile < STREAMED_SOUND_MISSION_COMPLETED4 ? m_MP3FilesPath : (nFile < STREAMED_SOUND_MISSION_MOBR1 ? m_MiscomPath : m_WavFilesPath));
- strcat(filepath, StreamedNameTable[nFile]);
-
+ strcat(filepath, PS2StreamedNameTable[nFile]);
+
mp3Stream[nStream] = AIL_open_stream(DIG, filepath, 0);
+
+ if ( !mp3Stream[nStream] )
+#endif
+ {
+ strcpy(filepath, nFile < STREAMED_SOUND_MISSION_COMPLETED4 ? m_MP3FilesPath : (nFile < STREAMED_SOUND_MISSION_MOBR1 ? m_MiscomPath : m_WavFilesPath));
+ strcat(filepath, StreamedNameTable[nFile]);
+
+ mp3Stream[nStream] = AIL_open_stream(DIG, filepath, 0);
+ }
if ( mp3Stream[nStream] )
{
@@ -2060,12 +2100,12 @@ cSampleManager::PreloadStreamedFile(uint32 nFile, uint8 nStream)
}
void
-cSampleManager::PauseStream(uint8 nPauseFlag, uint8 nStream)
+cSampleManager::PauseStream(bool8 nPauseFlag, uint8 nStream)
{
if ( m_bInitialised )
{
if ( mp3Stream[nStream] )
- AIL_pause_stream(mp3Stream[nStream], nPauseFlag != 0);
+ AIL_pause_stream(mp3Stream[nStream], nPauseFlag != FALSE);
}
}
@@ -2079,146 +2119,169 @@ cSampleManager::StartPreloadedStreamedFile(uint8 nStream)
}
}
-bool
+bool8
cSampleManager::StartStreamedFile(uint32 nFile, uint32 nPos, uint8 nStream)
{
+ int i = 0;
uint32 position = nPos;
char filename[MAX_PATH];
- if ( m_bInitialised && nFile < TOTAL_STREAMED_SOUNDS )
+ if ( !m_bInitialised || nFile >= TOTAL_STREAMED_SOUNDS )
+ return FALSE;
+
+ if ( mp3Stream[nStream] )
{
- if ( mp3Stream[nStream] )
+ AIL_pause_stream(mp3Stream[nStream], 1);
+ AIL_close_stream(mp3Stream[nStream]);
+ }
+ if ( nFile == STREAMED_SOUND_RADIO_MP3_PLAYER )
+ {
+ do
{
- AIL_pause_stream(mp3Stream[nStream], 1);
- AIL_close_stream(mp3Stream[nStream]);
- }
-
- if ( nFile == STREAMED_SOUND_RADIO_MP3_PLAYER )
- {
- uint32 i = 0;
- do {
- if(i != 0 || _bIsMp3Active) {
- if(++_CurMP3Index >= nNumMP3s) _CurMP3Index = 0;
-
- _CurMP3Pos = 0;
-
- tMP3Entry *mp3 = _GetMP3EntryByIndex(_CurMP3Index);
-
- if(mp3) {
- mp3 = _pMP3List;
- if(mp3 == NULL) {
- _bIsMp3Active = false;
- nFile = 0;
- strcpy(filename, m_MiscomPath);
- strcat(filename, StreamedNameTable[nFile]);
-
- mp3Stream[nStream] =
- AIL_open_stream(DIG, filename, 0);
- if(mp3Stream[nStream]) {
- AIL_set_stream_loop_count(
- mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
- AIL_set_stream_ms_position(
- mp3Stream[nStream], position);
- AIL_pause_stream(mp3Stream[nStream],
- 0);
- return true;
- }
-
- return false;
- }
- }
-
- if(mp3->pLinkPath != NULL)
- mp3Stream[nStream] =
- AIL_open_stream(DIG, mp3->pLinkPath, 0);
- else {
- strcpy(filename, _mp3DirectoryPath);
- strcat(filename, mp3->aFilename);
-
- mp3Stream[nStream] =
- AIL_open_stream(DIG, filename, 0);
- }
-
- if(mp3Stream[nStream]) {
- AIL_set_stream_loop_count(mp3Stream[nStream], 1);
- AIL_set_stream_ms_position(mp3Stream[nStream], 0);
- AIL_pause_stream(mp3Stream[nStream], 0);
- return true;
- }
-
- _bIsMp3Active = false;
- continue;
- }
+ // Just switched to MP3 player
+ if ( !_bIsMp3Active && i == 0 )
+ {
if ( nPos > nStreamLength[STREAMED_SOUND_RADIO_MP3_PLAYER] )
position = 0;
-
- tMP3Entry *e;
- if ( !_GetMP3PosFromStreamPos(&position, &e) )
- {
- if ( e == NULL )
+ tMP3Entry *e = _pMP3List;
+
+ // Try to continue from previous song, if already started
+ if(!_GetMP3PosFromStreamPos(&position, &e) && !e) {
+ nFile = 0;
+#ifdef PS2_AUDIO_PATHS
+ strcpy(filename, m_MiscomPath);
+ strcat(filename, PS2StreamedNameTable[nFile]);
+
+ mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
+
+ if ( !mp3Stream[nStream] )
+#endif
{
- nFile = 0;
strcpy(filename, m_MiscomPath);
strcat(filename, StreamedNameTable[nFile]);
mp3Stream[nStream] =
AIL_open_stream(DIG, filename, 0);
- if(mp3Stream[nStream]) {
- AIL_set_stream_loop_count(mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
- AIL_set_stream_ms_position(mp3Stream[nStream], position);
- AIL_pause_stream(mp3Stream[nStream], 0);
- return true;
- }
+ }
+ if(mp3Stream[nStream]) {
+ AIL_set_stream_loop_count(mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
+ nStreamLoopedFlag[nStream] = TRUE;
+ AIL_set_stream_ms_position(mp3Stream[nStream], position);
+ AIL_pause_stream(mp3Stream[nStream], 0);
+ return TRUE;
+ }
+ return FALSE;
- return false;
+ } else {
+ if ( e->pLinkPath != NULL )
+ mp3Stream[nStream] = AIL_open_stream(DIG, e->pLinkPath, 0);
+ else {
+ strcpy(filename, _mp3DirectoryPath);
+ strcat(filename, e->aFilename);
+
+ mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
+ }
+
+ if ( mp3Stream[nStream] ) {
+ AIL_set_stream_loop_count(mp3Stream[nStream], 1);
+ AIL_set_stream_ms_position(mp3Stream[nStream], position);
+ AIL_pause_stream(mp3Stream[nStream], 0);
+
+ _bIsMp3Active = TRUE;
+
+ return TRUE;
+ }
+ // fall through, start playing from another song
+ }
+ } else {
+ if(++_CurMP3Index >= nNumMP3s) _CurMP3Index = 0;
+
+ _CurMP3Pos = 0;
+
+ tMP3Entry *mp3 = _GetMP3EntryByIndex(_CurMP3Index);
+ if ( !mp3 )
+ {
+ mp3 = _pMP3List;
+ if ( !_pMP3List )
+ {
+ nFile = 0;
+ _bIsMp3Active = 0;
+#ifdef PS2_AUDIO_PATHS
+ strcpy(filename, m_MiscomPath);
+ strcat(filename, PS2StreamedNameTable[nFile]);
+
+ mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
+
+ if ( !mp3Stream[nStream] )
+#endif
+ {
+ strcpy(filename, m_MiscomPath);
+ strcat(filename, StreamedNameTable[nFile]);
+ mp3Stream[nStream] =
+ AIL_open_stream(DIG, filename, 0);
+ }
+ if(mp3Stream[nStream]) {
+ AIL_set_stream_loop_count(
+ mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
+ nStreamLoopedFlag[nStream] = TRUE;
+ AIL_set_stream_ms_position(
+ mp3Stream[nStream], position);
+ AIL_pause_stream(mp3Stream[nStream],
+ 0);
+ return TRUE;
+ }
+ return FALSE;
}
}
-
- if ( e->pLinkPath != NULL )
- mp3Stream[nStream] = AIL_open_stream(DIG, e->pLinkPath, 0);
- else
- {
+ if(mp3->pLinkPath != NULL)
+ mp3Stream[nStream] = AIL_open_stream(DIG, mp3->pLinkPath, 0);
+ else {
strcpy(filename, _mp3DirectoryPath);
- strcat(filename, e->aFilename);
-
- mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
+ strcat(filename, mp3->aFilename);
+
+ mp3Stream[nStream] =
+ AIL_open_stream(DIG, filename, 0);
}
-
- if ( mp3Stream[nStream] )
- {
+
+ if(mp3Stream[nStream]) {
AIL_set_stream_loop_count(mp3Stream[nStream], 1);
- AIL_set_stream_ms_position(mp3Stream[nStream], position);
+ AIL_set_stream_ms_position(mp3Stream[nStream], 0);
AIL_pause_stream(mp3Stream[nStream], 0);
-
- _bIsMp3Active = true;
-
- return true;
+#ifdef FIX_BUGS
+ _bIsMp3Active = TRUE;
+#endif
+ return TRUE;
}
-
- _bIsMp3Active = false;
- } while(++i < nNumMP3s);
-
- position = 0;
- nFile = 0;
+ }
+ _bIsMp3Active = 0;
}
-
+ while ( ++i < nNumMP3s );
+ position = 0;
+ nFile = 0;
+ }
+#ifdef PS2_AUDIO_PATHS
+ strcpy(filename, m_MiscomPath);
+ strcat(filename, PS2StreamedNameTable[nFile]);
+
+ mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
+
+ if ( !mp3Stream[nStream] )
+#endif
+ {
strcpy(filename, m_MiscomPath);
strcat(filename, StreamedNameTable[nFile]);
-
mp3Stream[nStream] = AIL_open_stream(DIG, filename, 0);
- if ( mp3Stream[nStream] )
- {
- AIL_set_stream_loop_count(mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
- AIL_set_stream_ms_position(mp3Stream[nStream], position);
- AIL_pause_stream(mp3Stream[nStream], 0);
- return true;
- }
}
-
- return false;
+
+ if ( mp3Stream[nStream] )
+ {
+ AIL_set_stream_loop_count(mp3Stream[nStream], nStreamLoopedFlag[nStream] ? 0 : 1);
+ nStreamLoopedFlag[nStream] = TRUE;
+ AIL_set_stream_ms_position(mp3Stream[nStream], position);
+ AIL_pause_stream(mp3Stream[nStream], 0);
+ return TRUE;
+ }
+ return FALSE;
}
void
@@ -2234,7 +2297,7 @@ cSampleManager::StopStreamedFile(uint8 nStream)
mp3Stream[nStream] = NULL;
if ( nStream == 0 )
- _bIsMp3Active = false;
+ _bIsMp3Active = FALSE;
}
}
}
@@ -2272,7 +2335,7 @@ cSampleManager::GetStreamedFilePosition(uint8 nStream)
}
void
-cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffectFlag, uint8 nStream)
+cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, bool8 nEffectFlag, uint8 nStream)
{
uint8 vol = nVolume;
float boostMult = 0.0f;
@@ -2313,7 +2376,7 @@ cSampleManager::GetStreamedFileLength(uint8 nStream)
return 0;
}
-bool
+bool8
cSampleManager::IsStreamPlaying(uint8 nStream)
{
if ( m_bInitialised )
@@ -2321,23 +2384,23 @@ cSampleManager::IsStreamPlaying(uint8 nStream)
if ( mp3Stream[nStream] )
{
if ( AIL_stream_status(mp3Stream[nStream]) == SMP_PLAYING )
- return true;
+ return TRUE;
else
- return false;
+ return FALSE;
}
}
- return false;
+ return FALSE;
}
-bool
+bool8
cSampleManager::InitialiseSampleBanks(void)
{
int32 nBank = SFX_BANK_0;
fpSampleDescHandle = fopen(SampleBankDescFilename, "rb");
if ( fpSampleDescHandle == NULL )
- return false;
+ return FALSE;
fpSampleDataHandle = fopen(SampleBankDataFilename, "rb");
if ( fpSampleDataHandle == NULL )
@@ -2345,7 +2408,7 @@ cSampleManager::InitialiseSampleBanks(void)
fclose(fpSampleDescHandle);
fpSampleDescHandle = NULL;
- return false;
+ return FALSE;
}
fseek(fpSampleDataHandle, 0, SEEK_END);
@@ -2372,12 +2435,12 @@ cSampleManager::InitialiseSampleBanks(void)
nSampleBankSize[SFX_BANK_0] = nSampleBankDiscStartOffset[SFX_BANK_PED_COMMENTS] - nSampleBankDiscStartOffset[SFX_BANK_0];
nSampleBankSize[SFX_BANK_PED_COMMENTS] = _nSampleDataEndOffset - nSampleBankDiscStartOffset[SFX_BANK_PED_COMMENTS];
- return true;
+ return TRUE;
}
void
-cSampleManager::SetStreamedFileLoopFlag(uint8 nLoopFlag, uint8 nChannel)
+cSampleManager::SetStreamedFileLoopFlag(bool8 nLoopFlag, uint8 nChannel)
{
if (m_bInitialised)
nStreamLoopedFlag[nChannel] = nLoopFlag;
diff --git a/src/audio/sampman_null.cpp b/src/audio/sampman_null.cpp
index e9a9eaa1..af4c54ad 100644
--- a/src/audio/sampman_null.cpp
+++ b/src/audio/sampman_null.cpp
@@ -4,7 +4,7 @@
#include "AudioManager.h"
cSampleManager SampleManager;
-bool _bSampmanInitialised = false;
+bool8 _bSampmanInitialised = FALSE;
uint32 BankStartOffset[MAX_SFX_BANKS];
uint32 nNumMP3s;
@@ -60,7 +60,7 @@ int8 cSampleManager::SetCurrent3DProvider(uint8 nProvider)
return 0;
}
-bool
+bool8
cSampleManager::IsMP3RadioChannelAvailable(void)
{
return nNumMP3s != 0;
@@ -75,10 +75,10 @@ void cSampleManager::ReacquireDigitalHandle(void)
{
}
-bool
+bool8
cSampleManager::Initialise(void)
{
- return true;
+ return TRUE;
}
void
@@ -87,9 +87,9 @@ cSampleManager::Terminate(void)
}
-bool cSampleManager::CheckForAnAudioFileOnCD(void)
+bool8 cSampleManager::CheckForAnAudioFileOnCD(void)
{
- return true;
+ return TRUE;
}
char cSampleManager::GetCDAudioDriveLetter(void)
@@ -114,7 +114,7 @@ cSampleManager::SetMusicMasterVolume(uint8 nVolume)
}
void
-cSampleManager::SetMusicMasterVolume(uint8 nVolume)
+cSampleManager::SetMP3BoostVolume(uint8 nVolume)
{
}
@@ -129,15 +129,15 @@ cSampleManager::SetMusicFadeVolume(uint8 nVolume)
}
void
-cSampleManager::SetMonoMode(uint8 nMode)
+cSampleManager::SetMonoMode(bool8 nMode)
{
}
-bool
+bool8
cSampleManager::LoadSampleBank(uint8 nBank)
{
ASSERT( nBank < MAX_SFX_BANKS );
- return false;
+ return FALSE;
}
void
@@ -146,20 +146,20 @@ cSampleManager::UnloadSampleBank(uint8 nBank)
ASSERT( nBank < MAX_SFX_BANKS );
}
-bool
+bool8
cSampleManager::IsSampleBankLoaded(uint8 nBank)
{
ASSERT( nBank < MAX_SFX_BANKS );
- return false;
+ return FALSE;
}
-bool
+bool8
cSampleManager::IsPedCommentLoaded(uint32 nComment)
{
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
- return false;
+ return FALSE;
}
@@ -169,11 +169,11 @@ cSampleManager::_GetPedCommentSlot(uint32 nComment)
return -1;
}
-bool
+bool8
cSampleManager::LoadPedComment(uint32 nComment)
{
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
- return false;
+ return FALSE;
}
int32
@@ -210,56 +210,56 @@ cSampleManager::GetSampleLength(uint32 nSample)
return 0;
}
-bool cSampleManager::UpdateReverb(void)
+bool8 cSampleManager::UpdateReverb(void)
{
- return false;
+ return FALSE;
}
void
-cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
+cSampleManager::SetChannelReverbFlag(uint32 nChannel, bool8 nReverbFlag)
{
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
-bool
+bool8
cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
{
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
- return false;
+ return FALSE;
}
void
cSampleManager::SetChannelEmittingVolume(uint32 nChannel, uint32 nVolume)
{
- ASSERT( nChannel != CHANNEL2D );
+ ASSERT( nChannel < MAXCHANNELS );
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
void
cSampleManager::SetChannel3DPosition(uint32 nChannel, float fX, float fY, float fZ)
{
- ASSERT( nChannel != CHANNEL2D );
+ ASSERT( nChannel < MAXCHANNELS );
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
void
cSampleManager::SetChannel3DDistances(uint32 nChannel, float fMax, float fMin)
{
- ASSERT( nChannel != CHANNEL2D );
+ ASSERT( nChannel < MAXCHANNELS );
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
void
cSampleManager::SetChannelVolume(uint32 nChannel, uint32 nVolume)
{
- ASSERT( nChannel == CHANNEL2D );
+ ASSERT( nChannel >= MAXCHANNELS );
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
void
cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
{
- ASSERT(nChannel == CHANNEL2D);
+ ASSERT( nChannel >= MAXCHANNELS );
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
@@ -281,12 +281,12 @@ cSampleManager::SetChannelLoopCount(uint32 nChannel, uint32 nLoopCount)
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
}
-bool
+bool8
cSampleManager::GetChannelUsedFlag(uint32 nChannel)
{
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
- return false;
+ return FALSE;
}
void
@@ -308,7 +308,7 @@ cSampleManager::PreloadStreamedFile(uint32 nFile, uint8 nStream)
}
void
-cSampleManager::PauseStream(uint8 nPauseFlag, uint8 nStream)
+cSampleManager::PauseStream(bool8 nPauseFlag, uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
}
@@ -319,12 +319,12 @@ cSampleManager::StartPreloadedStreamedFile(uint8 nStream)
ASSERT( nStream < MAX_STREAMS );
}
-bool
+bool8
cSampleManager::StartStreamedFile(uint32 nFile, uint32 nPos, uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
- return false;
+ return FALSE;
}
void
@@ -342,7 +342,7 @@ cSampleManager::GetStreamedFilePosition(uint8 nStream)
}
void
-cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffectFlag, uint8 nStream)
+cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, bool8 nEffectFlag, uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
}
@@ -355,23 +355,23 @@ cSampleManager::GetStreamedFileLength(uint8 nStream)
return 1;
}
-bool
+bool8
cSampleManager::IsStreamPlaying(uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
- return false;
+ return FALSE;
}
-bool
+bool8
cSampleManager::InitialiseSampleBanks(void)
{
- return true;
+ return TRUE;
}
void
-cSampleManager::SetStreamedFileLoopFlag(uint8 nLoopFlag, uint8 nChannel)
+cSampleManager::SetStreamedFileLoopFlag(bool8 nLoopFlag, uint8 nChannel)
{
}
diff --git a/src/audio/sampman_oal.cpp b/src/audio/sampman_oal.cpp
index 59a9a667..bd6601ef 100644
--- a/src/audio/sampman_oal.cpp
+++ b/src/audio/sampman_oal.cpp
@@ -34,6 +34,13 @@
#include "oal/oal_utils.h"
#include "oal/aldlist.h"
#include "oal/channel.h"
+
+#include
+#ifdef MULTITHREADED_AUDIO
+#include
+#include
+#include
+#endif
#include "oal/stream.h"
#include "AudioManager.h"
@@ -45,7 +52,6 @@
#endif
//TODO: fix eax3 reverb
-//TODO: max channels
#ifdef __WIIU__
extern "C" char *_getcwd (char *__buf, size_t __size);
@@ -54,7 +60,7 @@ extern "C" char *_getcwd (char *__buf, size_t __size);
#endif
cSampleManager SampleManager;
-bool _bSampmanInitialised = false;
+bool8 _bSampmanInitialised = FALSE;
uint32 BankStartOffset[MAX_SFX_BANKS];
@@ -66,16 +72,18 @@ int usingEAX3=0;
ALCdevice *ALDevice = NULL;
ALCcontext *ALContext = NULL;
unsigned int _maxSamples;
-float _fPrevEaxRatioDestination;
+float _fPrevEaxRatioDestination;
+bool _effectsSupported = false;
bool _usingEFX;
float _fEffectsLevel;
ALuint ALEffect = AL_EFFECT_NULL;
ALuint ALEffectSlot = AL_EFFECTSLOT_NULL;
struct
-{
- char id[256];
+{
+ const char *id;
char name[256];
int sources;
+ bool bSupportsFx;
}providers[MAXPROVIDERS];
int defaultProvider;
@@ -90,7 +98,7 @@ OggOpusFile *fpSampleDataHandle;
#else
FILE *fpSampleDataHandle;
#endif
-bool bSampleBankLoaded [MAX_SFX_BANKS];
+bool8 bSampleBankLoaded [MAX_SFX_BANKS];
int32 nSampleBankDiscStartOffset [MAX_SFX_BANKS];
int32 nSampleBankSize [MAX_SFX_BANKS];
uintptr nSampleBankMemoryStartAddress[MAX_SFX_BANKS];
@@ -100,8 +108,8 @@ int32 nPedSlotSfx [MAX_PEDSFX];
int32 nPedSlotSfxAddr[MAX_PEDSFX];
uint8 nCurrentPedSlot;
-CChannel aChannel[MAXCHANNELS+MAX2DCHANNELS];
-uint8 nChannelVolume[MAXCHANNELS+MAX2DCHANNELS];
+CChannel aChannel[NUM_CHANNELS];
+uint8 nChannelVolume[NUM_CHANNELS];
uint32 nStreamLength[TOTAL_STREAMED_SOUNDS];
ALuint ALStreamSources[MAX_STREAMS][2];
@@ -124,10 +132,10 @@ char _mp3DirectoryPath[MAX_PATH];
CStream *aStream[MAX_STREAMS];
uint8 nStreamPan [MAX_STREAMS];
uint8 nStreamVolume[MAX_STREAMS];
-uint8 nStreamLoopedFlag[MAX_STREAMS];
+bool8 nStreamLoopedFlag[MAX_STREAMS];
uint32 _CurMP3Index;
int32 _CurMP3Pos;
-bool _bIsMp3Active;
+bool8 _bIsMp3Active;
///////////////////////////////////////////////////////////////
// Env Size Diffus Room RoomHF RoomLF DecTm DcHF DcLF Refl RefDel Ref Pan Revb RevDel Rev Pan EchTm EchDp ModTm ModDp AirAbs HFRef LFRef RRlOff FLAGS
EAXLISTENERPROPERTIES StartEAX3 =
@@ -141,7 +149,7 @@ EAXLISTENERPROPERTIES EAX3Params;
bool IsFXSupported()
{
- return usingEAX || usingEAX3 || _usingEFX;
+ return _effectsSupported; // usingEAX || usingEAX3 || _usingEFX;
}
void EAX_SetAll(const EAXLISTENERPROPERTIES *allparameters)
@@ -156,21 +164,22 @@ static void
add_providers()
{
SampleManager.SetNum3DProvidersAvailable(0);
-
- ALDeviceList *pDeviceList = NULL;
- pDeviceList = new ALDeviceList();
+
+ static ALDeviceList DeviceList;
+ ALDeviceList *pDeviceList = &DeviceList;
if ((pDeviceList) && (pDeviceList->GetNumDevices()))
{
const int devNumber = Min(pDeviceList->GetNumDevices(), MAXPROVIDERS);
int n = 0;
- for (int i = 0; i < devNumber; i++)
+ //for (int i = 0; i < devNumber; i++)
+ int i = pDeviceList->GetDefaultDevice();
{
if ( n < MAXPROVIDERS )
- {
- strcpy(providers[n].id, pDeviceList->GetDeviceName(i));
- strncpy(providers[n].name, pDeviceList->GetDeviceName(i), sizeof(providers[n].name));
+ {
+ providers[n].id = pDeviceList->GetDeviceName(i);
+ strcpy(providers[n].name, "OPENAL SOFT");
providers[n].sources = pDeviceList->GetMaxNumSources(i);
SampleManager.Set3DProviderName(n, providers[n].name);
n++;
@@ -181,23 +190,24 @@ add_providers()
|| pDeviceList->IsExtensionSupported(i, ADEXT_EAX3)
|| pDeviceList->IsExtensionSupported(i, ADEXT_EAX4)
|| pDeviceList->IsExtensionSupported(i, ADEXT_EAX5) )
- {
+ {
+ providers[n - 1].bSupportsFx = true;
if ( n < MAXPROVIDERS )
- {
- strcpy(providers[n].id, pDeviceList->GetDeviceName(i));
- strncpy(providers[n].name, pDeviceList->GetDeviceName(i), sizeof(providers[n].name));
- strcat(providers[n].name, " EAX");
+ {
+ providers[n].id = pDeviceList->GetDeviceName(i);
+ strcpy(providers[n].name, "OPENAL SOFT EAX");
providers[n].sources = pDeviceList->GetMaxNumSources(i);
+ providers[n].bSupportsFx = true;
SampleManager.Set3DProviderName(n, providers[n].name);
n++;
}
if ( n < MAXPROVIDERS )
- {
- strcpy(providers[n].id, pDeviceList->GetDeviceName(i));
- strncpy(providers[n].name, pDeviceList->GetDeviceName(i), sizeof(providers[n].name));
- strcat(providers[n].name, " EAX3");
+ {
+ providers[n].id = pDeviceList->GetDeviceName(i);
+ strcpy(providers[n].name, "OPENAL SOFT EAX3");
providers[n].sources = pDeviceList->GetMaxNumSources(i);
+ providers[n].bSupportsFx = true;
SampleManager.Set3DProviderName(n, providers[n].name);
n++;
}
@@ -207,76 +217,38 @@ add_providers()
for(int j=n;jGetDefaultDevice();
- if ( defaultProvider > MAXPROVIDERS )
- defaultProvider = 0;
+
+ // devices are gone now
+ //defaultProvider = pDeviceList->GetDefaultDevice();
+ //if ( defaultProvider > MAXPROVIDERS )
+ defaultProvider = 0;
}
-
- delete pDeviceList;
}
static void
release_existing()
{
- for ( int32 i = 0; i < MAXCHANNELS; i++ )
- aChannel[i].Term();
- aChannel[CHANNEL2D].Term();
-
if ( IsFXSupported() )
{
if ( alIsEffect(ALEffect) )
{
alEffecti(ALEffect, AL_EFFECT_TYPE, AL_EFFECT_NULL);
- alDeleteEffects(1, &ALEffect);
- ALEffect = AL_EFFECT_NULL;
}
if (alIsAuxiliaryEffectSlot(ALEffectSlot))
{
alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, AL_EFFECT_NULL);
-
- alDeleteAuxiliaryEffectSlots(1, &ALEffectSlot);
- ALEffectSlot = AL_EFFECTSLOT_NULL;
}
}
-
- for ( int32 i = 0; i < MAX_STREAMS; i++ )
- {
- CStream *stream = aStream[i];
- if (stream)
- stream->ProviderTerm();
-
- alDeleteBuffers(NUM_STREAMBUFFERS, ALStreamBuffers[i]);
- }
- alDeleteSources(MAX_STREAMS*2, ALStreamSources[0]);
-
- CChannel::DestroyChannels();
-
- if ( ALContext )
- {
- alcMakeContextCurrent(NULL);
- alcSuspendContext(ALContext);
- alcDestroyContext(ALContext);
- }
- if ( ALDevice )
- alcCloseDevice(ALDevice);
-
- ALDevice = NULL;
- ALContext = NULL;
-
- _fPrevEaxRatioDestination = 0.0f;
- _usingEFX = false;
- _fEffectsLevel = 0.0f;
-
+
DEV("release_existing()\n");
}
-static bool
+static bool8
set_new_provider(int index)
{
if ( curprovider == index )
- return true;
+ return TRUE;
curprovider = index;
@@ -286,61 +258,6 @@ set_new_provider(int index)
{
DEV("set_new_provider()\n");
- //TODO:
- _maxSamples = MAXCHANNELS;
-
- ALCint attr[] = {ALC_FREQUENCY,MAX_FREQ,
- ALC_MONO_SOURCES, MAX_STREAMS * 2 + MAXCHANNELS,
- 0,
- };
-
- ALDevice = alcOpenDevice(providers[index].id);
- ASSERT(ALDevice != NULL);
-
- ALContext = alcCreateContext(ALDevice, attr);
- ASSERT(ALContext != NULL);
-
- alcMakeContextCurrent(ALContext);
-
- const char* ext=(const char*)alGetString(AL_EXTENSIONS);
- ASSERT(strstr(ext,"AL_SOFT_loop_points")!=NULL);
- if ( strstr(ext,"AL_SOFT_loop_points")==NULL )
- {
- curprovider=-1;
- release_existing();
- return false;
- }
-
- alListenerf (AL_GAIN, 1.0f);
- alListener3f(AL_POSITION, 0.0f, 0.0f, 0.0f);
- alListener3f(AL_VELOCITY, 0.0f, 0.0f, 0.0f);
- ALfloat orientation[6] = { 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f };
- alListenerfv(AL_ORIENTATION, orientation);
-
- alDistanceModel(AL_INVERSE_DISTANCE_CLAMPED);
-
- if ( alcIsExtensionPresent(ALDevice, (ALCchar*)ALC_EXT_EFX_NAME) )
- {
- alGenAuxiliaryEffectSlots(1, &ALEffectSlot);
- alGenEffects(1, &ALEffect);
- }
-
- alGenSources(MAX_STREAMS*2, ALStreamSources[0]);
- for ( int32 i = 0; i < MAX_STREAMS; i++ )
- {
- alGenBuffers(NUM_STREAMBUFFERS, ALStreamBuffers[i]);
- alSourcei(ALStreamSources[i][0], AL_SOURCE_RELATIVE, AL_TRUE);
- alSource3f(ALStreamSources[i][0], AL_POSITION, 0.0f, 0.0f, 0.0f);
- alSourcef(ALStreamSources[i][0], AL_GAIN, 1.0f);
- alSourcei(ALStreamSources[i][1], AL_SOURCE_RELATIVE, AL_TRUE);
- alSource3f(ALStreamSources[i][1], AL_POSITION, 0.0f, 0.0f, 0.0f);
- alSourcef(ALStreamSources[i][1], AL_GAIN, 1.0f);
-
- CStream *stream = aStream[i];
- if (stream)
- stream->ProviderInit();
- }
-
usingEAX = 0;
usingEAX3 = 0;
_usingEFX = false;
@@ -348,16 +265,16 @@ set_new_provider(int index)
if ( !strcmp(&providers[index].name[strlen(providers[index].name) - strlen(" EAX3")], " EAX3")
&& alcIsExtensionPresent(ALDevice, (ALCchar*)ALC_EXT_EFX_NAME) )
{
- EAX_SetAll(&FinishEAX3);
usingEAX = 1;
usingEAX3 = 1;
+ alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, ALEffect);
+ EAX_SetAll(&FinishEAX3);
DEV("EAX3\n");
}
else if ( alcIsExtensionPresent(ALDevice, (ALCchar*)ALC_EXT_EFX_NAME) )
{
- EAX_SetAll(&EAX30_ORIGINAL_PRESETS[EAX_ENVIRONMENT_CAVE]);
if ( !strcmp(&providers[index].name[strlen(providers[index].name) - strlen(" EAX")], " EAX"))
{
@@ -369,33 +286,25 @@ set_new_provider(int index)
_usingEFX = true;
DEV("EFX\n");
}
+ alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, ALEffect);
+ EAX_SetAll(&EAX30_ORIGINAL_PRESETS[EAX_ENVIRONMENT_CAVE]);
}
//SampleManager.SetSpeakerConfig(speaker_type);
- CChannel::InitChannels();
-
- for ( int32 i = 0; i < MAXCHANNELS; i++ )
- aChannel[i].Init(i);
- aChannel[CHANNEL2D].Init(CHANNEL2D, true);
-
if ( IsFXSupported() )
{
- /**/
- alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, ALEffect);
- /**/
-
for ( int32 i = 0; i < MAXCHANNELS; i++ )
aChannel[i].SetReverbMix(ALEffectSlot, 0.0f);
}
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
-static bool
+static bool8
IsThisTrackAt16KHz(uint32 track)
{
return track == STREAMED_SOUND_RADIO_KCHAT || track == STREAMED_SOUND_RADIO_VCPR || track == STREAMED_SOUND_RADIO_POLICE;
@@ -453,7 +362,7 @@ int8 cSampleManager::SetCurrent3DProvider(uint8 nProvider)
{
int savedprovider = curprovider;
- nProvider = clamp(nProvider, 0, m_nNumberOfProviders - 1);
+ nProvider = Clamp(nProvider, 0, m_nNumberOfProviders - 1);
if ( set_new_provider(nProvider) )
return curprovider;
@@ -488,13 +397,13 @@ cSampleManager::AutoDetect3DProviders()
return -1;
}
-static bool
+static bool8
_ResolveLink(char const *path, char *out)
{
#ifdef _WIN32
size_t len = strlen(path);
if (len < 4 || strcmp(&path[len - 4], ".lnk") != 0)
- return false;
+ return FALSE;
IShellLink* psl;
WIN32_FIND_DATA fd;
@@ -529,7 +438,7 @@ _ResolveLink(char const *path, char *out)
ppf->Release();
psl->Release();
#endif
- return true;
+ return TRUE;
}
}
}
@@ -539,33 +448,33 @@ _ResolveLink(char const *path, char *out)
psl->Release();
}
- return false;
+ return FALSE;
#elif defined __WIIU__
- return false;
+ return FALSE;
#else
struct stat sb;
if (lstat(path, &sb) == -1) {
perror("lstat: ");
- return false;
+ return FALSE;
}
if (S_ISLNK(sb.st_mode)) {
char* linkname = (char*)alloca(sb.st_size + 1);
if (linkname == NULL) {
fprintf(stderr, "insufficient memory\n");
- return false;
+ return FALSE;
}
if (readlink(path, linkname, sb.st_size + 1) < 0) {
perror("readlink: ");
- return false;
+ return FALSE;
}
linkname[sb.st_size] = '\0';
strcpy(out, linkname);
- return true;
+ return TRUE;
} else {
- return false;
+ return FALSE;
}
#endif
}
@@ -574,22 +483,36 @@ static void
_FindMP3s(void)
{
tMP3Entry *pList;
- bool bShortcut;
- bool bInitFirstEntry;
+ bool8 bShortcut;
+ bool8 bInitFirstEntry;
HANDLE hFind;
char path[MAX_PATH];
- char filepath[MAX_PATH*2];
int total_ms;
WIN32_FIND_DATA fd;
+ char filepath[MAX_PATH + sizeof(fd.cFileName)];
if (_getcwd(_mp3DirectoryPath, MAX_PATH) == NULL) {
perror("getcwd: ");
return;
}
+
+ if (strlen(_mp3DirectoryPath) + 1 > MAX_PATH - 10) {
+ // This is not gonna end well
+ printf("MP3 folder path is too long, no place left for file names. MP3 finding aborted.\n");
+ return;
+ }
OutputDebugString("Finding MP3s...");
strcpy(path, _mp3DirectoryPath);
strcat(path, "\\MP3\\");
+
+#if !defined(_WIN32)
+ char *actualPath = casepath(path);
+ if (actualPath) {
+ strcpy(path, actualPath);
+ free(actualPath);
+ }
+#endif
strcpy(_mp3DirectoryPath, path);
OutputDebugString(_mp3DirectoryPath);
@@ -602,135 +525,69 @@ _FindMP3s(void)
{
return;
}
-
- strcpy(filepath, _mp3DirectoryPath);
- strcat(filepath, fd.cFileName);
-
- size_t filepathlen = strlen(filepath);
-
- if ( filepathlen <= 0)
- {
- FindClose(hFind);
- return;
- }
- if ( _ResolveLink(filepath, filepath) )
- {
- OutputDebugString("Resolving Link");
- OutputDebugString(filepath);
- bShortcut = true;
- } else
- bShortcut = false;
-
- aStream[0] = new CStream(filepath, ALStreamSources[0], ALStreamBuffers[0]);
+ bShortcut = FALSE;
+ bInitFirstEntry = TRUE;
- if (aStream[0] && aStream[0]->IsOpened())
- {
- total_ms = aStream[0]->GetLengthMS();
- delete aStream[0];
- aStream[0] = NULL;
+ do
+ {
+ strcpy(filepath, _mp3DirectoryPath);
+ strcat(filepath, fd.cFileName);
+
+ if (!strcmp(fd.cFileName, ".") || !strcmp(fd.cFileName, ".."))
+ continue;
- OutputDebugString(fd.cFileName);
-
- _pMP3List = new tMP3Entry;
-
- if ( _pMP3List == NULL )
- {
- FindClose(hFind);
- return;
- }
-
- nNumMP3s = 1;
-
- strcpy(_pMP3List->aFilename, fd.cFileName);
-
- _pMP3List->nTrackLength = total_ms;
-
- _pMP3List->pNext = NULL;
-
- pList = _pMP3List;
-
- if ( bShortcut )
- {
- _pMP3List->pLinkPath = new char[MAX_PATH*2];
- strcpy(_pMP3List->pLinkPath, filepath);
- }
- else
- {
- _pMP3List->pLinkPath = NULL;
- }
+ size_t filepathlen = strlen(filepath);
- bInitFirstEntry = false;
- }
- else
- {
- strcat(filepath, " - NOT A VALID MP3");
-
- OutputDebugString(filepath);
-
- bInitFirstEntry = true;
- }
-
- while ( true )
- {
- if ( !FindNextFile(hFind, &fd) )
- break;
-
if ( bInitFirstEntry )
{
- strcpy(filepath, _mp3DirectoryPath);
- strcat(filepath, fd.cFileName);
-
- size_t filepathlen = strlen(filepath);
-
- if ( filepathlen > 0 )
+ if (filepathlen > 0)
{
- if ( _ResolveLink(filepath, filepath) )
+ if (_ResolveLink(filepath, filepath))
{
OutputDebugString("Resolving Link");
OutputDebugString(filepath);
- bShortcut = true;
- } else {
- bShortcut = false;
+ bShortcut = TRUE;
+ }
+ else
+ {
+ bShortcut = FALSE;
if (filepathlen > MAX_PATH) {
continue;
}
}
- aStream[0] = new CStream(filepath, ALStreamSources[0], ALStreamBuffers[0]);
-
- if (aStream[0] && aStream[0]->IsOpened())
+ if (aStream[0] && aStream[0]->Open(filepath))
{
total_ms = aStream[0]->GetLengthMS();
- delete aStream[0];
- aStream[0] = NULL;
+ aStream[0]->Close();
OutputDebugString(fd.cFileName);
-
+
_pMP3List = new tMP3Entry;
-
- if ( _pMP3List == NULL)
+
+ if (_pMP3List == NULL)
break;
-
+
nNumMP3s = 1;
-
+
strcpy(_pMP3List->aFilename, fd.cFileName);
-
+
_pMP3List->nTrackLength = total_ms;
_pMP3List->pNext = NULL;
-
- if ( bShortcut )
+
+ if (bShortcut)
{
- _pMP3List->pLinkPath = new char [MAX_PATH*2];
+ _pMP3List->pLinkPath = new char[MAX_PATH + sizeof(fd.cFileName)];
strcpy(_pMP3List->pLinkPath, filepath);
}
else
{
_pMP3List->pLinkPath = NULL;
}
-
+
pList = _pMP3List;
- bInitFirstEntry = false;
+ bInitFirstEntry = FALSE;
}
else
{
@@ -738,31 +595,26 @@ _FindMP3s(void)
OutputDebugString(filepath);
}
}
+ else
+ break;
}
else
{
- strcpy(filepath, _mp3DirectoryPath);
- strcat(filepath, fd.cFileName);
-
- size_t filepathlen = strlen(filepath);
-
if ( filepathlen > 0 )
{
if ( _ResolveLink(filepath, filepath) )
{
OutputDebugString("Resolving Link");
OutputDebugString(filepath);
- bShortcut = true;
- } else
- bShortcut = false;
+ bShortcut = TRUE;
+ }
+ else
+ bShortcut = FALSE;
- aStream[0] = new CStream(filepath, ALStreamSources[0], ALStreamBuffers[0]);
-
- if (aStream[0] && aStream[0]->IsOpened())
+ if (aStream[0] && aStream[0]->Open(filepath))
{
total_ms = aStream[0]->GetLengthMS();
- delete aStream[0];
- aStream[0] = NULL;
+ aStream[0]->Close();
OutputDebugString(fd.cFileName);
@@ -781,7 +633,7 @@ _FindMP3s(void)
if ( bShortcut )
{
- e->pLinkPath = new char [MAX_PATH*2];
+ e->pLinkPath = new char [MAX_PATH + sizeof(fd.cFileName)];
strcpy(e->pLinkPath, filepath);
}
else
@@ -800,7 +652,7 @@ _FindMP3s(void)
}
}
}
- }
+ } while (FindNextFile(hFind, &fd));
FindClose(hFind);
}
@@ -866,7 +718,7 @@ _GetMP3EntryByIndex(uint32 idx)
return NULL;
}
-static inline bool
+static inline bool8
_GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
{
_CurMP3Index = 0;
@@ -879,7 +731,7 @@ _GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
*pPosition -= (*pEntry)->nTrackStreamPos;
_CurMP3Pos = *pPosition;
- return true;
+ return TRUE;
}
_CurMP3Index++;
@@ -890,10 +742,10 @@ _GetMP3PosFromStreamPos(uint32 *pPosition, tMP3Entry **pEntry)
_CurMP3Pos = 0;
_CurMP3Index = 0;
- return false;
+ return FALSE;
}
-bool
+bool8
cSampleManager::IsMP3RadioChannelAvailable(void)
{
return nNumMP3s != 0;
@@ -902,30 +754,25 @@ cSampleManager::IsMP3RadioChannelAvailable(void)
void cSampleManager::ReleaseDigitalHandle(void)
{
- if ( ALDevice )
- {
- prevprovider = curprovider;
- release_existing();
- curprovider = -1;
- }
+ // TODO? alcSuspendContext
}
void cSampleManager::ReacquireDigitalHandle(void)
{
- if ( ALDevice )
- {
- if ( prevprovider != -1 )
- set_new_provider(prevprovider);
- }
+ // TODO? alcProcessContext
}
-bool
+bool8
cSampleManager::Initialise(void)
{
if ( _bSampmanInitialised )
- return true;
+ return TRUE;
EFXInit();
+
+ for(int i = 0; i < MAX_STREAMS; i++)
+ aStream[i] = new CStream(ALStreamSources[i], ALStreamBuffers[i]);
+
CStream::Initialise();
{
@@ -933,7 +780,7 @@ cSampleManager::Initialise(void)
{
m_aSamples[i].nOffset = 0;
m_aSamples[i].nSize = 0;
- m_aSamples[i].nFrequency = MAX_FREQ;
+ m_aSamples[i].nFrequency = 22050;
m_aSamples[i].nLoopStart = 0;
m_aSamples[i].nLoopEnd = -1;
}
@@ -968,7 +815,7 @@ cSampleManager::Initialise(void)
for ( int32 i = 0; i < MAX_SFX_BANKS; i++ )
{
- bSampleBankLoaded[i] = false;
+ bSampleBankLoaded[i] = FALSE;
nSampleBankDiscStartOffset[i] = 0;
nSampleBankSize[i] = 0;
nSampleBankMemoryStartAddress[i] = 0;
@@ -986,16 +833,87 @@ cSampleManager::Initialise(void)
}
{
- for ( int32 i = 0; i < MAXCHANNELS+MAX2DCHANNELS; i++ )
+ for ( int32 i = 0; i < NUM_CHANNELS; i++ )
nChannelVolume[i] = 0;
}
+
+ add_providers();
+
+ {
+ int index = 0;
+ _maxSamples = Min(MAXCHANNELS, providers[index].sources);
+
+ ALCint attr[] = {ALC_FREQUENCY,MAX_FREQ,
+ ALC_MONO_SOURCES, MAX_DIGITAL_MIXER_CHANNELS - MAX2DCHANNELS,
+ ALC_STEREO_SOURCES, MAX2DCHANNELS,
+ 0,
+ };
+
+ ALDevice = alcOpenDevice(providers[index].id);
+ ASSERT(ALDevice != NULL);
+
+ ALContext = alcCreateContext(ALDevice, attr);
+ ASSERT(ALContext != NULL);
+
+ alcMakeContextCurrent(ALContext);
+ const char* ext=(const char*)alGetString(AL_EXTENSIONS);
+ ASSERT(strstr(ext,"AL_SOFT_loop_points")!=NULL);
+ if ( strstr(ext,"AL_SOFT_loop_points")==NULL )
+ {
+ Terminate();
+ return FALSE;
+ }
+
+ alListenerf (AL_GAIN, 1.0f);
+ alListener3f(AL_POSITION, 0.0f, 0.0f, 0.0f);
+ alListener3f(AL_VELOCITY, 0.0f, 0.0f, 0.0f);
+ ALfloat orientation[6] = { 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f };
+ alListenerfv(AL_ORIENTATION, orientation);
+
+ alDistanceModel(AL_INVERSE_DISTANCE_CLAMPED);
+
+ if ( alcIsExtensionPresent(ALDevice, (ALCchar*)ALC_EXT_EFX_NAME) )
+ {
+ _effectsSupported = providers[index].bSupportsFx;
+ alGenAuxiliaryEffectSlots(1, &ALEffectSlot);
+ alGenEffects(1, &ALEffect);
+ }
+
+ alGenSources(MAX_STREAMS*2, ALStreamSources[0]);
+ for ( int32 i = 0; i < MAX_STREAMS; i++ )
+ {
+ alGenBuffers(NUM_STREAMBUFFERS, ALStreamBuffers[i]);
+ alSourcei(ALStreamSources[i][0], AL_SOURCE_RELATIVE, AL_TRUE);
+ alSource3f(ALStreamSources[i][0], AL_POSITION, 0.0f, 0.0f, 0.0f);
+ alSourcef(ALStreamSources[i][0], AL_GAIN, 1.0f);
+ alSourcei(ALStreamSources[i][1], AL_SOURCE_RELATIVE, AL_TRUE);
+ alSource3f(ALStreamSources[i][1], AL_POSITION, 0.0f, 0.0f, 0.0f);
+ alSourcef(ALStreamSources[i][1], AL_GAIN, 1.0f);
+ }
+
+ CChannel::InitChannels();
+
+ for ( int32 i = 0; i < MAXCHANNELS; i++ )
+ aChannel[i].Init(i);
+ for ( int32 i = 0; i < MAX2DCHANNELS; i++ )
+ aChannel[MAXCHANNELS+i].Init(MAXCHANNELS+i, true);
+
+ if ( IsFXSupported() )
+ {
+ /**/
+ alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, ALEffect);
+ /**/
+
+ for ( int32 i = 0; i < MAXCHANNELS; i++ )
+ aChannel[i].SetReverbMix(ALEffectSlot, 0.0f);
+ }
+ }
+
{
for ( int32 i = 0; i < TOTAL_STREAMED_SOUNDS; i++ )
nStreamLength[i] = 0;
}
-
- add_providers();
#ifdef AUDIO_CACHE
#ifdef WIIU_CHANNEL
@@ -1014,13 +932,14 @@ cSampleManager::Initialise(void)
for ( int32 i = 0; i < TOTAL_STREAMED_SOUNDS; i++ )
{
- aStream[0] = new CStream(StreamedNameTable[i], ALStreamSources[0], ALStreamBuffers[0], IsThisTrackAt16KHz(i) ? 16000 : 32000);
-
- if ( aStream[0] && aStream[0]->IsOpened() )
+ if ( aStream[0] && (
+#ifdef PS2_AUDIO_PATHS
+ aStream[0]->Open(PS2StreamedNameTable[i], IsThisTrackAt16KHz(i) ? 16000 : 32000) ||
+#endif
+ aStream[0]->Open(StreamedNameTable[i], IsThisTrackAt16KHz(i) ? 16000 : 32000)) )
{
uint32 tatalms = aStream[0]->GetLengthMS();
- delete aStream[0];
- aStream[0] = NULL;
+ aStream[0]->Close();
nStreamLength[i] = tatalms;
}
@@ -1047,7 +966,7 @@ cSampleManager::Initialise(void)
if ( !InitialiseSampleBanks() )
{
Terminate();
- return false;
+ return FALSE;
}
nSampleBankMemoryStartAddress[SFX_BANK_0] = (uintptr)malloc(nSampleBankSize[SFX_BANK_0]);
@@ -1056,7 +975,7 @@ cSampleManager::Initialise(void)
if ( nSampleBankMemoryStartAddress[SFX_BANK_0] == 0 )
{
Terminate();
- return false;
+ return FALSE;
}
nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] = (uintptr)malloc(PED_BLOCKSIZE*MAX_PEDSFX);
@@ -1068,14 +987,15 @@ cSampleManager::Initialise(void)
{
for ( int32 i = 0; i < MAX_STREAMS; i++ )
{
- aStream[i] = NULL;
+ aStream[i]->Close();
+
nStreamVolume[i] = 100;
nStreamPan[i] = 63;
}
}
-
+
{
- _bSampmanInitialised = true;
+ _bSampmanInitialised = TRUE;
if ( defaultProvider >= 0 && defaultProvider < m_nNumberOfProviders )
{
@@ -1084,7 +1004,7 @@ cSampleManager::Initialise(void)
else
{
Terminate();
- return false;
+ return FALSE;
}
}
@@ -1107,13 +1027,13 @@ cSampleManager::Initialise(void)
time_t t = time(NULL);
tm *localtm;
- bool bUseRandomTable;
+ bool8 bUseRandomTable;
if ( t == -1 )
- bUseRandomTable = true;
+ bUseRandomTable = TRUE;
else
{
- bUseRandomTable = false;
+ bUseRandomTable = FALSE;
localtm = localtime(&t);
}
@@ -1145,31 +1065,70 @@ cSampleManager::Initialise(void)
else
_CurMP3Pos = 0;
- _bIsMp3Active = false;
+ _bIsMp3Active = FALSE;
}
- return true;
+ return TRUE;
}
void
cSampleManager::Terminate(void)
{
for (int32 i = 0; i < MAX_STREAMS; i++)
+ aStream[i]->Close();
+
+ for ( int32 i = 0; i < NUM_CHANNELS; i++ )
+ aChannel[i].Term();
+
+ if ( IsFXSupported() )
{
- CStream *stream = aStream[i];
- if (stream)
+ if ( alIsEffect(ALEffect) )
{
- delete stream;
- aStream[i] = NULL;
+ alEffecti(ALEffect, AL_EFFECT_TYPE, AL_EFFECT_NULL);
+ alDeleteEffects(1, &ALEffect);
+ ALEffect = AL_EFFECT_NULL;
+ }
+
+ if (alIsAuxiliaryEffectSlot(ALEffectSlot))
+ {
+ alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, AL_EFFECT_NULL);
+
+ alDeleteAuxiliaryEffectSlots(1, &ALEffectSlot);
+ ALEffectSlot = AL_EFFECTSLOT_NULL;
}
}
- release_existing();
-
+ for ( int32 i = 0; i < MAX_STREAMS; i++ )
+ {
+ alDeleteBuffers(NUM_STREAMBUFFERS, ALStreamBuffers[i]);
+ }
+ alDeleteSources(MAX_STREAMS*2, ALStreamSources[0]);
+
+ CChannel::DestroyChannels();
+
+ if ( ALContext )
+ {
+ alcMakeContextCurrent(NULL);
+ alcSuspendContext(ALContext);
+ alcDestroyContext(ALContext);
+ }
+ if ( ALDevice )
+ alcCloseDevice(ALDevice);
+
+ ALDevice = NULL;
+ ALContext = NULL;
+
+ _fPrevEaxRatioDestination = 0.0f;
+ _usingEFX = false;
+ _fEffectsLevel = 0.0f;
+
_DeleteMP3Entries();
CStream::Terminate();
+ for(int32 i = 0; i < MAX_STREAMS; i++)
+ delete aStream[i];
+
if ( nSampleBankMemoryStartAddress[SFX_BANK_0] != 0 )
{
free((void *)nSampleBankMemoryStartAddress[SFX_BANK_0]);
@@ -1182,12 +1141,12 @@ cSampleManager::Terminate(void)
nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] = 0;
}
- _bSampmanInitialised = false;
+ _bSampmanInitialised = FALSE;
}
-bool cSampleManager::CheckForAnAudioFileOnCD(void)
+bool8 cSampleManager::CheckForAnAudioFileOnCD(void)
{
- return true;
+ return TRUE;
}
char cSampleManager::GetCDAudioDriveLetter(void)
@@ -1200,7 +1159,7 @@ cSampleManager::UpdateEffectsVolume(void)
{
if ( _bSampmanInitialised )
{
- for ( int32 i = 0; i < MAXCHANNELS+MAX2DCHANNELS; i++ )
+ for ( int32 i = 0; i < NUM_CHANNELS; i++ )
{
if ( GetChannelUsedFlag(i) )
{
@@ -1244,24 +1203,24 @@ cSampleManager::SetMusicFadeVolume(uint8 nVolume)
}
void
-cSampleManager::SetMonoMode(uint8 nMode)
+cSampleManager::SetMonoMode(bool8 nMode)
{
m_nMonoMode = nMode;
}
-bool
+bool8
cSampleManager::LoadSampleBank(uint8 nBank)
{
ASSERT( nBank < MAX_SFX_BANKS);
if ( CTimer::GetIsCodePaused() )
- return false;
+ return FALSE;
if ( MusicManager.IsInitialised()
&& MusicManager.GetMusicMode() == MUSICMODE_CUTSCENE
&& nBank != SFX_BANK_0 )
{
- return false;
+ return FALSE;
}
#ifdef OPUS_SFX
@@ -1280,14 +1239,14 @@ cSampleManager::LoadSampleBank(uint8 nBank)
}
#else
if ( fseek(fpSampleDataHandle, nSampleBankDiscStartOffset[nBank], SEEK_SET) != 0 )
- return false;
+ return FALSE;
if ( fread((void *)nSampleBankMemoryStartAddress[nBank], 1, nSampleBankSize[nBank], fpSampleDataHandle) != nSampleBankSize[nBank] )
- return false;
+ return FALSE;
#endif
- bSampleBankLoaded[nBank] = true;
+ bSampleBankLoaded[nBank] = TRUE;
- return true;
+ return TRUE;
}
void
@@ -1295,10 +1254,10 @@ cSampleManager::UnloadSampleBank(uint8 nBank)
{
ASSERT( nBank < MAX_SFX_BANKS);
- bSampleBankLoaded[nBank] = false;
+ bSampleBankLoaded[nBank] = FALSE;
}
-bool
+bool8
cSampleManager::IsSampleBankLoaded(uint8 nBank)
{
ASSERT( nBank < MAX_SFX_BANKS);
@@ -1306,39 +1265,39 @@ cSampleManager::IsSampleBankLoaded(uint8 nBank)
return bSampleBankLoaded[nBank];
}
-bool
+bool8
cSampleManager::IsPedCommentLoaded(uint32 nComment)
{
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
- int8 slot;
-
for ( int32 i = 0; i < _TODOCONST(3); i++ )
{
- slot = nCurrentPedSlot - i - 1;
#ifdef FIX_BUGS
+ int8 slot = (int8)nCurrentPedSlot - i - 1;
if (slot < 0)
slot += ARRAY_SIZE(nPedSlotSfx);
+#else
+ uint8 slot = nCurrentPedSlot - i - 1;
#endif
if ( nComment == nPedSlotSfx[slot] )
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
int32
cSampleManager::_GetPedCommentSlot(uint32 nComment)
{
- int8 slot;
-
for (int32 i = 0; i < _TODOCONST(3); i++)
{
- slot = nCurrentPedSlot - i - 1;
#ifdef FIX_BUGS
+ int8 slot = (int8)nCurrentPedSlot - i - 1;
if (slot < 0)
slot += ARRAY_SIZE(nPedSlotSfx);
+#else
+ uint8 slot = nCurrentPedSlot - i - 1;
#endif
if (nComment == nPedSlotSfx[slot])
return slot;
@@ -1347,13 +1306,13 @@ cSampleManager::_GetPedCommentSlot(uint32 nComment)
return -1;
}
-bool
+bool8
cSampleManager::LoadPedComment(uint32 nComment)
{
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
if ( CTimer::GetIsCodePaused() )
- return false;
+ return FALSE;
// no talking peds during cutsenes or the game end
if ( MusicManager.IsInitialised() )
@@ -1362,7 +1321,7 @@ cSampleManager::LoadPedComment(uint32 nComment)
{
case MUSICMODE_CUTSCENE:
{
- return false;
+ return FALSE;
break;
}
@@ -1377,17 +1336,17 @@ cSampleManager::LoadPedComment(uint32 nComment)
int size = op_read(fpSampleDataHandle, (opus_int16 *)(nSampleBankMemoryStartAddress[SAMPLEBANK_PED] + PED_BLOCKSIZE * nCurrentPedSlot + samplesRead),
samplesSize, NULL);
if (size <= 0) {
- return false;
+ return FALSE;
}
samplesRead += size * 2;
samplesSize -= size;
}
#else
if ( fseek(fpSampleDataHandle, m_aSamples[nComment].nOffset, SEEK_SET) != 0 )
- return false;
+ return FALSE;
if ( fread((void *)(nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] + PED_BLOCKSIZE*nCurrentPedSlot), 1, m_aSamples[nComment].nSize, fpSampleDataHandle) != m_aSamples[nComment].nSize )
- return false;
+ return FALSE;
#endif
nPedSlotSfx[nCurrentPedSlot] = nComment;
@@ -1395,7 +1354,7 @@ cSampleManager::LoadPedComment(uint32 nComment)
if ( ++nCurrentPedSlot >= MAX_PEDSFX )
nCurrentPedSlot = 0;
- return true;
+ return TRUE;
}
int32
@@ -1438,13 +1397,13 @@ cSampleManager::GetSampleLength(uint32 nSample)
return m_aSamples[nSample].nSize / sizeof(uint16);
}
-bool cSampleManager::UpdateReverb(void)
+bool8 cSampleManager::UpdateReverb(void)
{
if ( !usingEAX && !_usingEFX )
- return false;
+ return FALSE;
if ( AudioManager.GetFrameCounter() & 15 )
- return false;
+ return FALSE;
float fRatio = 0.0f;
@@ -1462,10 +1421,10 @@ bool cSampleManager::UpdateReverb(void)
#undef CALCULATE_RATIO
#undef MIN_DIST
- fRatio = clamp(fRatio, 0.0f, 0.6f);
+ fRatio = Clamp(fRatio, 0.0f, 0.6f);
if ( fRatio == _fPrevEaxRatioDestination )
- return false;
+ return FALSE;
#ifdef JUICY_OAL
if ( usingEAX3 || _usingEFX )
@@ -1502,13 +1461,13 @@ bool cSampleManager::UpdateReverb(void)
_fPrevEaxRatioDestination = fRatio;
- return true;
+ return TRUE;
}
void
-cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
+cSampleManager::SetChannelReverbFlag(uint32 nChannel, bool8 nReverbFlag)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
if ( usingEAX || _usingEFX )
{
@@ -1516,7 +1475,7 @@ cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
{
alAuxiliaryEffectSloti(ALEffectSlot, AL_EFFECTSLOT_EFFECT, ALEffect);
- if ( nReverbFlag != 0 )
+ if ( nReverbFlag != FALSE )
aChannel[nChannel].SetReverbMix(ALEffectSlot, _fEffectsLevel);
else
aChannel[nChannel].SetReverbMix(ALEffectSlot, 0.0f);
@@ -1524,24 +1483,24 @@ cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
}
}
-bool
+bool8
cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
uintptr addr;
if ( nSfx < SAMPLEBANK_MAX )
{
if ( !IsSampleBankLoaded(nBank) )
- return false;
+ return FALSE;
addr = nSampleBankMemoryStartAddress[nBank] + m_aSamples[nSfx].nOffset - m_aSamples[BankStartOffset[nBank]].nOffset;
}
else
{
if ( !IsPedCommentLoaded(nSfx) )
- return false;
+ return FALSE;
int32 slot = _GetPedCommentSlot(nSfx);
addr = (nSampleBankMemoryStartAddress[SFX_BANK_PED_COMMENTS] + PED_BLOCKSIZE * slot);
@@ -1559,17 +1518,16 @@ cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
aChannel[nChannel].SetSampleData ((void*)addr, m_aSamples[nSfx].nSize, m_aSamples[nSfx].nFrequency);
aChannel[nChannel].SetLoopPoints (0, -1);
aChannel[nChannel].SetPitch (1.0f);
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
void
cSampleManager::SetChannelEmittingVolume(uint32 nChannel, uint32 nVolume)
{
- ASSERT( nChannel != CHANNEL2D );
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < MAXCHANNELS );
uint32 vol = nVolume;
if ( vol > MAX_VOLUME ) vol = MAX_VOLUME;
@@ -1590,8 +1548,7 @@ cSampleManager::SetChannelEmittingVolume(uint32 nChannel, uint32 nVolume)
void
cSampleManager::SetChannel3DPosition(uint32 nChannel, float fX, float fY, float fZ)
{
- ASSERT( nChannel != CHANNEL2D );
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < MAXCHANNELS );
aChannel[nChannel].SetPosition(-fX, fY, fZ);
}
@@ -1599,18 +1556,17 @@ cSampleManager::SetChannel3DPosition(uint32 nChannel, float fX, float fY, float
void
cSampleManager::SetChannel3DDistances(uint32 nChannel, float fMax, float fMin)
{
- ASSERT( nChannel != CHANNEL2D );
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < MAXCHANNELS );
aChannel[nChannel].SetDistances(fMax, fMin);
}
void
cSampleManager::SetChannelVolume(uint32 nChannel, uint32 nVolume)
{
- ASSERT( nChannel == CHANNEL2D );
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel >= MAXCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
- if ( nChannel == CHANNEL2D )
+ if ( nChannel == CHANNEL_POLICE_RADIO )
{
uint32 vol = nVolume;
if ( vol > MAX_VOLUME ) vol = MAX_VOLUME;
@@ -1632,10 +1588,10 @@ cSampleManager::SetChannelVolume(uint32 nChannel, uint32 nVolume)
void
cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
{
- ASSERT(nChannel == CHANNEL2D);
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel >= MAXCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
- if ( nChannel == CHANNEL2D )
+ if ( nChannel == CHANNEL_POLICE_RADIO )
{
aChannel[nChannel].SetPan(nPan);
}
@@ -1644,7 +1600,7 @@ cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
void
cSampleManager::SetChannelFrequency(uint32 nChannel, uint32 nFreq)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
aChannel[nChannel].SetCurrentFreq(nFreq);
}
@@ -1652,7 +1608,7 @@ cSampleManager::SetChannelFrequency(uint32 nChannel, uint32 nFreq)
void
cSampleManager::SetChannelLoopPoints(uint32 nChannel, uint32 nLoopStart, int32 nLoopEnd)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
aChannel[nChannel].SetLoopPoints(nLoopStart / (DIGITALBITS / 8), nLoopEnd / (DIGITALBITS / 8));
}
@@ -1660,15 +1616,15 @@ cSampleManager::SetChannelLoopPoints(uint32 nChannel, uint32 nLoopStart, int32 n
void
cSampleManager::SetChannelLoopCount(uint32 nChannel, uint32 nLoopCount)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
aChannel[nChannel].SetLoopCount(nLoopCount);
}
-bool
+bool8
cSampleManager::GetChannelUsedFlag(uint32 nChannel)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
return aChannel[nChannel].IsUsed();
}
@@ -1676,7 +1632,7 @@ cSampleManager::GetChannelUsedFlag(uint32 nChannel)
void
cSampleManager::StartChannel(uint32 nChannel)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
aChannel[nChannel].Start();
}
@@ -1684,50 +1640,42 @@ cSampleManager::StartChannel(uint32 nChannel)
void
cSampleManager::StopChannel(uint32 nChannel)
{
- ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
+ ASSERT( nChannel < NUM_CHANNELS );
aChannel[nChannel].Stop();
}
void
cSampleManager::PreloadStreamedFile(uint32 nFile, uint8 nStream)
-{
- char filename[MAX_PATH];
-
+{
ASSERT( nStream < MAX_STREAMS );
if ( nFile < TOTAL_STREAMED_SOUNDS )
{
- if ( aStream[nStream] )
- {
- delete aStream[nStream];
- aStream[nStream] = NULL;
- }
-
- strcpy(filename, StreamedNameTable[nFile]);
-
- CStream *stream = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
- ASSERT(stream != NULL);
-
- aStream[nStream] = stream;
+ CStream *stream = aStream[nStream];
+
+ stream->Close();
+#ifdef PS2_AUDIO_PATHS
+ if(!stream->Open(PS2StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000))
+#endif
+ stream->Open(StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
if ( !stream->Setup() )
{
- delete stream;
- aStream[nStream] = NULL;
+ stream->Close();
}
}
}
void
-cSampleManager::PauseStream(uint8 nPauseFlag, uint8 nStream)
+cSampleManager::PauseStream(bool8 nPauseFlag, uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
CStream *stream = aStream[nStream];
- if ( stream )
+ if ( stream->IsOpened() )
{
- stream->SetPause(nPauseFlag != 0);
+ stream->SetPause(nPauseFlag != FALSE);
}
}
@@ -1738,179 +1686,165 @@ cSampleManager::StartPreloadedStreamedFile(uint8 nStream)
CStream *stream = aStream[nStream];
- if ( stream )
+ if ( stream->IsOpened() )
{
- if ( stream->IsOpened() )
- {
- stream->Start();
- }
+ stream->Start();
}
}
-bool
+bool8
cSampleManager::StartStreamedFile(uint32 nFile, uint32 nPos, uint8 nStream)
{
+ int i = 0;
uint32 position = nPos;
- char filename[256];
+ char filename[MAX_PATH];
- ASSERT( nStream < MAX_STREAMS );
-
- if ( nFile < TOTAL_STREAMED_SOUNDS )
+ if ( nFile >= TOTAL_STREAMED_SOUNDS )
+ return FALSE;
+
+ aStream[nStream]->Close();
+
+ if ( nFile == STREAMED_SOUND_RADIO_MP3_PLAYER )
{
- if ( aStream[nStream] )
+ do
{
- delete aStream[nStream];
- aStream[nStream] = NULL;
- }
-
- if ( nFile == STREAMED_SOUND_RADIO_MP3_PLAYER )
- {
- uint32 i = 0;
- do {
- if(i != 0 || _bIsMp3Active) {
- if(++_CurMP3Index >= nNumMP3s) _CurMP3Index = 0;
+ // Just switched to MP3 player
+ if ( !_bIsMp3Active && i == 0 )
+ {
+ if ( nPos > nStreamLength[STREAMED_SOUND_RADIO_MP3_PLAYER] )
+ position = 0;
+ tMP3Entry *e = _pMP3List;
- _CurMP3Pos = 0;
+ // Try to continue from previous song, if already started
+ if(!_GetMP3PosFromStreamPos(&position, &e) && !e) {
+ nFile = 0;
- tMP3Entry *mp3 = _GetMP3EntryByIndex(_CurMP3Index);
+ CStream *stream = aStream[nStream];
+#ifdef PS2_AUDIO_PATHS
+ if(!stream->Open(PS2StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000))
+#endif
+ stream->Open(StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
+ if ( stream->Setup() ) {
+ stream->SetLoopCount(nStreamLoopedFlag[nStream] ? 0 : 1);
+ nStreamLoopedFlag[nStream] = TRUE;
+ if (position != 0)
+ stream->SetPosMS(position);
- if(mp3) {
- mp3 = _pMP3List;
- if(mp3 == NULL) {
- _bIsMp3Active = false;
- nFile = 0;
- strcat(filename, StreamedNameTable[nFile]);
+ stream->Start();
- CStream* stream = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
- ASSERT(stream != NULL);
-
- aStream[nStream] = stream;
-
- if (stream->Setup()) {
- stream->SetLoopCount(nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
- if (position != 0)
- stream->SetPosMS(position);
-
- stream->Start();
-
- return true;
- } else {
- delete stream;
- aStream[nStream] = NULL;
- }
-
- return false;
- }
+ return TRUE;
+ } else {
+ stream->Close();
}
+ return FALSE;
- if (mp3->pLinkPath != NULL)
- aStream[nStream] = new CStream(mp3->pLinkPath, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
+ } else {
+
+ if (e->pLinkPath != NULL)
+ aStream[nStream]->Open(e->pLinkPath, IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
else {
strcpy(filename, _mp3DirectoryPath);
- strcat(filename, mp3->aFilename);
+ strcat(filename, e->aFilename);
- aStream[nStream] = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
+ aStream[nStream]->Open(filename);
}
if (aStream[nStream]->Setup()) {
+ if (position != 0)
+ aStream[nStream]->SetPosMS(position);
+
aStream[nStream]->Start();
- return true;
+ _bIsMp3Active = TRUE;
+ return TRUE;
} else {
- delete aStream[nStream];
- aStream[nStream] = NULL;
+ aStream[nStream]->Close();
}
-
- _bIsMp3Active = false;
- continue;
+ // fall through, start playing from another song
}
- if ( nPos > nStreamLength[STREAMED_SOUND_RADIO_MP3_PLAYER] )
- position = 0;
-
- tMP3Entry *e;
- if ( !_GetMP3PosFromStreamPos(&position, &e) )
+ } else {
+ if(++_CurMP3Index >= nNumMP3s) _CurMP3Index = 0;
+
+ _CurMP3Pos = 0;
+
+ tMP3Entry *mp3 = _GetMP3EntryByIndex(_CurMP3Index);
+ if ( !mp3 )
{
- if ( e == NULL )
+ mp3 = _pMP3List;
+ if ( !_pMP3List )
{
nFile = 0;
- strcat(filename, StreamedNameTable[nFile]);
- CStream* stream = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
- ASSERT(stream != NULL);
+ _bIsMp3Active = 0;
- aStream[nStream] = stream;
+ CStream *stream = aStream[nStream];
+#ifdef PS2_AUDIO_PATHS
+ if(!stream->Open(PS2StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000))
+#endif
+ stream->Open(StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
if (stream->Setup()) {
stream->SetLoopCount(nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
+ nStreamLoopedFlag[nStream] = TRUE;
if (position != 0)
stream->SetPosMS(position);
stream->Start();
- return true;
+ return TRUE;
} else {
- delete stream;
- aStream[nStream] = NULL;
+ stream->Close();
}
-
- return false;
+ return FALSE;
}
}
-
- if (e->pLinkPath != NULL)
- aStream[nStream] = new CStream(e->pLinkPath, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
+ if (mp3->pLinkPath != NULL)
+ aStream[nStream]->Open(mp3->pLinkPath, IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
else {
strcpy(filename, _mp3DirectoryPath);
- strcat(filename, e->aFilename);
+ strcat(filename, mp3->aFilename);
- aStream[nStream] = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream]);
+ aStream[nStream]->Open(filename, IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
}
if (aStream[nStream]->Setup()) {
- if (position != 0)
- aStream[nStream]->SetPosMS(position);
-
aStream[nStream]->Start();
-
- _bIsMp3Active = true;
- return true;
+#ifdef FIX_BUGS
+ _bIsMp3Active = TRUE;
+#endif
+ return TRUE;
} else {
- delete aStream[nStream];
- aStream[nStream] = NULL;
+ aStream[nStream]->Close();
}
-
- _bIsMp3Active = false;
- } while(++i < nNumMP3s);
-
- position = 0;
- nFile = 0;
- }
-
- strcpy(filename, StreamedNameTable[nFile]);
-
- CStream *stream = new CStream(filename, ALStreamSources[nStream], ALStreamBuffers[nStream], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
- ASSERT(stream != NULL);
-
- aStream[nStream] = stream;
-
- if ( stream->Setup() ) {
- stream->SetLoopCount(nStreamLoopedFlag[nStream] ? 0 : 1);
- nStreamLoopedFlag[nStream] = true;
- if (position != 0)
- stream->SetPosMS(position);
-
- stream->Start();
-
- return true;
- } else {
- delete stream;
- aStream[nStream] = NULL;
+ }
+ _bIsMp3Active = 0;
}
+ while ( ++i < nNumMP3s );
+ position = 0;
+ nFile = 0;
}
+ strcpy(filename, StreamedNameTable[nFile]);
- return false;
+ CStream *stream = aStream[nStream];
+
+#ifdef PS2_AUDIO_PATHS
+ if(!stream->Open(PS2StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000))
+#endif
+ stream->Open(StreamedNameTable[nFile], IsThisTrackAt16KHz(nFile) ? 16000 : 32000);
+
+ if ( stream->Setup() ) {
+ stream->SetLoopCount(nStreamLoopedFlag[nStream] ? 0 : 1);
+ nStreamLoopedFlag[nStream] = TRUE;
+ if (position != 0)
+ stream->SetPosMS(position);
+
+ stream->Start();
+
+ return TRUE;
+ } else {
+ stream->Close();
+ }
+ return FALSE;
}
void
@@ -1920,14 +1854,10 @@ cSampleManager::StopStreamedFile(uint8 nStream)
CStream *stream = aStream[nStream];
- if ( stream )
- {
- delete stream;
- aStream[nStream] = NULL;
+ stream->Close();
- if ( nStream == 0 )
- _bIsMp3Active = false;
- }
+ if ( nStream == 0 )
+ _bIsMp3Active = FALSE;
}
int32
@@ -1937,7 +1867,7 @@ cSampleManager::GetStreamedFilePosition(uint8 nStream)
CStream *stream = aStream[nStream];
- if ( stream )
+ if ( stream->IsOpened() )
{
if ( _bIsMp3Active )
{
@@ -1960,7 +1890,7 @@ cSampleManager::GetStreamedFilePosition(uint8 nStream)
}
void
-cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffectFlag, uint8 nStream)
+cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, bool8 nEffectFlag, uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
@@ -1980,7 +1910,7 @@ cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffect
CStream *stream = aStream[nStream];
- if ( stream )
+ if ( stream->IsOpened() )
{
if ( nEffectFlag ) {
if ( nStream == 1 || nStream == 2 )
@@ -2003,20 +1933,20 @@ cSampleManager::GetStreamedFileLength(uint8 nStream)
return nStreamLength[nStream];
}
-bool
+bool8
cSampleManager::IsStreamPlaying(uint8 nStream)
{
ASSERT( nStream < MAX_STREAMS );
CStream *stream = aStream[nStream];
- if ( stream )
+ if ( stream->IsOpened() )
{
if ( stream->IsPlaying() )
- return true;
+ return TRUE;
}
- return false;
+ return FALSE;
}
void
@@ -2026,25 +1956,25 @@ cSampleManager::Service(void)
{
CStream *stream = aStream[i];
- if ( stream )
+ if ( stream->IsOpened() )
stream->Update();
}
int refCount = CChannel::channelsThatNeedService;
- for ( int32 i = 0; refCount && i < MAXCHANNELS+MAX2DCHANNELS; i++ )
+ for ( int32 i = 0; refCount && i < NUM_CHANNELS; i++ )
{
if ( aChannel[i].Update() )
refCount--;
}
}
-bool
+bool8
cSampleManager::InitialiseSampleBanks(void)
{
int32 nBank = SFX_BANK_0;
fpSampleDescHandle = fcaseopen(SampleBankDescFilename, "rb");
if ( fpSampleDescHandle == NULL )
- return false;
+ return FALSE;
#ifndef OPUS_SFX
fpSampleDataHandle = fcaseopen(SampleBankDataFilename, "rb");
if ( fpSampleDataHandle == NULL )
@@ -2052,7 +1982,7 @@ cSampleManager::InitialiseSampleBanks(void)
fclose(fpSampleDescHandle);
fpSampleDescHandle = NULL;
- return false;
+ return FALSE;
}
fseek(fpSampleDataHandle, 0, SEEK_END);
@@ -2095,11 +2025,11 @@ cSampleManager::InitialiseSampleBanks(void)
nSampleBankSize[SFX_BANK_0] = nSampleBankDiscStartOffset[SFX_BANK_PED_COMMENTS] - nSampleBankDiscStartOffset[SFX_BANK_0];
nSampleBankSize[SFX_BANK_PED_COMMENTS] = _nSampleDataEndOffset - nSampleBankDiscStartOffset[SFX_BANK_PED_COMMENTS];
- return true;
+ return TRUE;
}
void
-cSampleManager::SetStreamedFileLoopFlag(uint8 nLoopFlag, uint8 nChannel)
+cSampleManager::SetStreamedFileLoopFlag(bool8 nLoopFlag, uint8 nChannel)
{
nStreamLoopedFlag[nChannel] = nLoopFlag;
}
diff --git a/src/audio/soundlist.h b/src/audio/soundlist.h
index e86b13ee..c6dbb634 100644
--- a/src/audio/soundlist.h
+++ b/src/audio/soundlist.h
@@ -54,8 +54,8 @@ enum eSound
SOUND_49,
SOUND_WEAPON_BAT_ATTACK,
SOUND_WEAPON_KNIFE_ATTACK,
- SOUND_WEAPON_CHAINSAW_ATTACK,
SOUND_WEAPON_CHAINSAW_IDLE,
+ SOUND_WEAPON_CHAINSAW_ATTACK,
SOUND_WEAPON_CHAINSAW_MADECONTACT,
SOUND_WEAPON_SHOT_FIRED,
SOUND_WEAPON_RELOAD,
@@ -116,8 +116,8 @@ enum eSound
SOUND_PED_MIAMIVICE_EXITING_CAR,
SOUND_PED_COP_HELIPILOTPHRASE,
SOUND_PED_PULLOUTWEAPON,
- SOUND_PED_HELI_PLAYER_FOUND = 114,
- SOUND_PED_VCPA_PLAYER_FOUND = 115,
+ SOUND_PED_HELI_PLAYER_FOUND,
+ SOUND_PED_VCPA_PLAYER_FOUND,
SOUND_PED_ON_FIRE,
SOUND_PED_AIMING,
SOUND_PED_HANDS_UP,
@@ -128,15 +128,15 @@ enum eSound
SOUND_PED_CAR_JACKED,
SOUND_PED_ROBBED,
SOUND_PED_ACCIDENTREACTION1,
- SOUND_PED_UNK_126,
+ SOUND_PED_INNOCENT,
SOUND_PED_PLAYER_AFTERSEX,
SOUND_PED_PLAYER_BEFORESEX,
- SOUND_PED_COP_UNK_129, // also used for medics
+ SOUND_PED_COP_TARGETING, // also used for medics
SOUND_PED_COP_MANYCOPSAROUND, // also used for medics
SOUND_PED_GUNAIMEDAT2,
SOUND_PED_COP_ALONE, // also used for medics
SOUND_PED_GUNAIMEDAT3,
- SOUND_PED_COP_REACTION,
+ SOUND_PED_COP_ASK_FOR_ID,
SOUND_PED_COP_LITTLECOPSAROUND, // also used for medics
SOUND_PED_PLAYER_FARFROMCOPS, // also used for medics
SOUND_PED_TAXI_WAIT,
@@ -151,12 +151,12 @@ enum eSound
SOUND_PED_ANNOYED_DRIVER,
SOUND_PED_147,
SOUND_PED_SOLICIT,
- SOUND_PED_149,
+ SOUND_PED_JEER,
SOUND_PED_150,
SOUND_PED_EXTINGUISHING_FIRE,
SOUND_PED_WAIT_DOUBLEBACK,
- SOUND_153,
- SOUND_PED_CHAT_SEXY,
+ SOUND_PED_CHAT_SEXY_FEMALE,
+ SOUND_PED_CHAT_SEXY_MALE,
SOUND_PED_CHAT_EVENT,
SOUND_PED_PED_COLLISION,
SOUND_PED_CHAT,
diff --git a/src/buildings/Building.cpp b/src/buildings/Building.cpp
index 8035cf25..92c787e5 100644
--- a/src/buildings/Building.cpp
+++ b/src/buildings/Building.cpp
@@ -4,8 +4,8 @@
#include "Streaming.h"
#include "Pools.h"
-void *CBuilding::operator new(size_t sz) { return CPools::GetBuildingPool()->New(); }
-void CBuilding::operator delete(void *p, size_t sz) { CPools::GetBuildingPool()->Delete((CBuilding*)p); }
+void *CBuilding::operator new(size_t sz) throw() { return CPools::GetBuildingPool()->New(); }
+void CBuilding::operator delete(void *p, size_t sz) throw() { CPools::GetBuildingPool()->Delete((CBuilding*)p); }
void
CBuilding::ReplaceWithNewModel(int32 id)
diff --git a/src/buildings/Building.h b/src/buildings/Building.h
index 2c2dfb1f..f8ddfa46 100644
--- a/src/buildings/Building.h
+++ b/src/buildings/Building.h
@@ -9,8 +9,8 @@ public:
m_type = ENTITY_TYPE_BUILDING;
bUsesCollision = true;
}
- static void *operator new(size_t);
- static void operator delete(void*, size_t);
+ static void *operator new(size_t) throw();
+ static void operator delete(void*, size_t) throw();
void ReplaceWithNewModel(int32 id);
diff --git a/src/buildings/Treadable.cpp b/src/buildings/Treadable.cpp
index 00abbe13..d84603a6 100644
--- a/src/buildings/Treadable.cpp
+++ b/src/buildings/Treadable.cpp
@@ -4,5 +4,5 @@
#include "Treadable.h"
#include "Pools.h"
-void *CTreadable::operator new(size_t sz) { return CPools::GetTreadablePool()->New(); }
-void CTreadable::operator delete(void *p, size_t sz) { CPools::GetTreadablePool()->Delete((CTreadable*)p); }
+void *CTreadable::operator new(size_t sz) throw() { return CPools::GetTreadablePool()->New(); }
+void CTreadable::operator delete(void *p, size_t sz) throw() { CPools::GetTreadablePool()->Delete((CTreadable*)p); }
diff --git a/src/buildings/Treadable.h b/src/buildings/Treadable.h
index c3ab755e..6a183c63 100644
--- a/src/buildings/Treadable.h
+++ b/src/buildings/Treadable.h
@@ -5,8 +5,8 @@
class CTreadable : public CBuilding
{
public:
- static void *operator new(size_t);
- static void operator delete(void*, size_t);
+ static void *operator new(size_t) throw();
+ static void operator delete(void*, size_t) throw();
bool GetIsATreadable(void) { return true; }
};
diff --git a/src/collision/ColModel.cpp b/src/collision/ColModel.cpp
index 49847dbd..2224a804 100644
--- a/src/collision/ColModel.cpp
+++ b/src/collision/ColModel.cpp
@@ -27,7 +27,7 @@ CColModel::~CColModel(void)
}
void*
-CColModel::operator new(size_t)
+CColModel::operator new(size_t) throw()
{
CColModel* node = CPools::GetColModelPool()->New();
assert(node);
@@ -35,7 +35,7 @@ CColModel::operator new(size_t)
}
void
-CColModel::operator delete(void *p, size_t)
+CColModel::operator delete(void *p, size_t) throw()
{
CPools::GetColModelPool()->Delete((CColModel*)p);
}
diff --git a/src/collision/ColModel.h b/src/collision/ColModel.h
index cd5ae651..64f05f76 100644
--- a/src/collision/ColModel.h
+++ b/src/collision/ColModel.h
@@ -33,7 +33,7 @@ struct CColModel
void SetLinkPtr(CLink*);
void GetTrianglePoint(CVector &v, int i) const;
- void *operator new(size_t);
- void operator delete(void *p, size_t);
+ void *operator new(size_t) throw();
+ void operator delete(void *p, size_t) throw();
CColModel& operator=(const CColModel& other);
};
\ No newline at end of file
diff --git a/src/collision/ColStore.cpp b/src/collision/ColStore.cpp
index f1e695fe..c74bf5ba 100644
--- a/src/collision/ColStore.cpp
+++ b/src/collision/ColStore.cpp
@@ -186,7 +186,7 @@ CColStore::LoadCollision(const CVector2D &pos)
}else{
for (int j = 0; j < MAX_CLEANUP; j++) {
CPhysical* pEntity = nil;
- cleanup_entity_struct* pCleanup = &CTheScripts::MissionCleanUp.m_sEntities[i];
+ cleanup_entity_struct* pCleanup = &CTheScripts::MissionCleanUp.m_sEntities[j];
if (pCleanup->type == CLEANUP_CAR) {
pEntity = CPools::GetVehiclePool()->GetAt(pCleanup->id);
if (!pEntity || pEntity->GetStatus() == STATUS_WRECKED)
diff --git a/src/collision/Collision.cpp b/src/collision/Collision.cpp
index 50c22e32..0ffcd09a 100644
--- a/src/collision/Collision.cpp
+++ b/src/collision/Collision.cpp
@@ -144,11 +144,10 @@ CCollision::SortOutCollisionAfterLoad(void)
void
CCollision::LoadCollisionScreen(eLevelName level)
{
- static Const char *levelNames[4] = {
+ static Const char *levelNames[] = {
"",
"IND_ZON",
"COM_ZON",
- "SUB_ZON"
};
// Why twice?
diff --git a/src/control/AutoPilot.cpp b/src/control/AutoPilot.cpp
index d3de6ac2..d7c17a68 100644
--- a/src/control/AutoPilot.cpp
+++ b/src/control/AutoPilot.cpp
@@ -5,6 +5,7 @@
#include "CarCtrl.h"
#include "Curves.h"
#include "PathFind.h"
+#include "SaveBuf.h"
void CAutoPilot::ModifySpeed(float speed)
{
@@ -49,86 +50,87 @@ void CAutoPilot::RemoveOnePathNode()
#ifdef COMPATIBLE_SAVES
void CAutoPilot::Save(uint8*& buf)
{
- WriteSaveBuf(buf, m_nCurrentRouteNode);
- WriteSaveBuf(buf, m_nNextRouteNode);
- WriteSaveBuf(buf, m_nPrevRouteNode);
- WriteSaveBuf(buf, m_nTimeEnteredCurve);
- WriteSaveBuf(buf, m_nTimeToSpendOnCurrentCurve);
- WriteSaveBuf(buf, m_nCurrentPathNodeInfo);
- WriteSaveBuf(buf, m_nNextPathNodeInfo);
- WriteSaveBuf(buf, m_nPreviousPathNodeInfo);
- WriteSaveBuf(buf, m_nAntiReverseTimer);
- WriteSaveBuf(buf, m_nTimeToStartMission);
- WriteSaveBuf(buf, m_nPreviousDirection);
- WriteSaveBuf(buf, m_nCurrentDirection);
- WriteSaveBuf(buf, m_nNextDirection);
- WriteSaveBuf(buf, m_nCurrentLane);
- WriteSaveBuf(buf, m_nNextLane);
- WriteSaveBuf(buf, m_nDrivingStyle);
- WriteSaveBuf(buf, m_nCarMission);
- WriteSaveBuf(buf, m_nTempAction);
- WriteSaveBuf(buf, m_nTimeTempAction);
- WriteSaveBuf(buf, m_fMaxTrafficSpeed);
- WriteSaveBuf(buf, m_nCruiseSpeed);
- WriteSaveBuf(buf, m_nCruiseSpeedMultiplierType);
- SkipSaveBuf(buf, 2);
- WriteSaveBuf(buf, m_fCruiseSpeedMultiplier);
+ WriteSaveBuf(buf, m_nCurrentRouteNode);
+ WriteSaveBuf(buf, m_nNextRouteNode);
+ WriteSaveBuf(buf, m_nPrevRouteNode);
+ WriteSaveBuf(buf, m_nTimeEnteredCurve);
+ WriteSaveBuf(buf, m_nTimeToSpendOnCurrentCurve);
+ WriteSaveBuf(buf, m_nCurrentPathNodeInfo);
+ WriteSaveBuf(buf, m_nNextPathNodeInfo);
+ WriteSaveBuf(buf, m_nPreviousPathNodeInfo);
+ WriteSaveBuf(buf, m_nAntiReverseTimer);
+ WriteSaveBuf(buf, m_nTimeToStartMission);
+ WriteSaveBuf(buf, m_nPreviousDirection);
+ WriteSaveBuf(buf, m_nCurrentDirection);
+ WriteSaveBuf(buf, m_nNextDirection);
+ WriteSaveBuf(buf, m_nCurrentLane);
+ WriteSaveBuf(buf, m_nNextLane);
+ WriteSaveBuf(buf, m_nDrivingStyle);
+ WriteSaveBuf(buf, m_nCarMission);
+ WriteSaveBuf(buf, m_nTempAction);
+ WriteSaveBuf(buf, m_nTimeTempAction);
+ WriteSaveBuf(buf, m_fMaxTrafficSpeed);
+ WriteSaveBuf(buf, m_nCruiseSpeed);
+ WriteSaveBuf(buf, m_nCruiseSpeedMultiplierType);
+ ZeroSaveBuf(buf, 2);
+ WriteSaveBuf(buf, m_fCruiseSpeedMultiplier);
uint8 flags = 0;
if (m_bSlowedDownBecauseOfCars) flags |= BIT(0);
if (m_bSlowedDownBecauseOfPeds) flags |= BIT(1);
if (m_bStayInCurrentLevel) flags |= BIT(2);
if (m_bStayInFastLane) flags |= BIT(3);
if (m_bIgnorePathfinding) flags |= BIT(4);
- WriteSaveBuf(buf, flags);
- WriteSaveBuf(buf, m_nSwitchDistance);
- SkipSaveBuf(buf, 2);
- WriteSaveBuf(buf, m_vecDestinationCoors.x);
- WriteSaveBuf(buf, m_vecDestinationCoors.y);
- WriteSaveBuf(buf, m_vecDestinationCoors.z);
- SkipSaveBuf(buf, 32);
- WriteSaveBuf(buf, m_nPathFindNodesCount);
- SkipSaveBuf(buf, 6);
+ WriteSaveBuf(buf, flags);
+ WriteSaveBuf(buf, m_nSwitchDistance);
+ ZeroSaveBuf(buf, 2);
+ WriteSaveBuf(buf, m_vecDestinationCoors.x);
+ WriteSaveBuf(buf, m_vecDestinationCoors.y);
+ WriteSaveBuf(buf, m_vecDestinationCoors.z);
+ ZeroSaveBuf(buf, 32);
+ WriteSaveBuf(buf, m_nPathFindNodesCount);
+ ZeroSaveBuf(buf, 6);
}
void CAutoPilot::Load(uint8*& buf)
{
- m_nCurrentRouteNode = ReadSaveBuf(buf);
- m_nNextRouteNode = ReadSaveBuf(buf);
- m_nPrevRouteNode = ReadSaveBuf(buf);
- m_nTimeEnteredCurve = ReadSaveBuf(buf);
- m_nTimeToSpendOnCurrentCurve = ReadSaveBuf(buf);
- m_nCurrentPathNodeInfo = ReadSaveBuf(buf);
- m_nNextPathNodeInfo = ReadSaveBuf(buf);
- m_nPreviousPathNodeInfo = ReadSaveBuf(buf);
- m_nAntiReverseTimer = ReadSaveBuf(buf);
- m_nTimeToStartMission = ReadSaveBuf(buf);
- m_nPreviousDirection = ReadSaveBuf(buf);
- m_nCurrentDirection = ReadSaveBuf(buf);
- m_nNextDirection = ReadSaveBuf(buf);
- m_nCurrentLane = ReadSaveBuf(buf);
- m_nNextLane = ReadSaveBuf(buf);
- m_nDrivingStyle = ReadSaveBuf(buf);
- m_nCarMission = ReadSaveBuf(buf);
- m_nTempAction = ReadSaveBuf(buf);
- m_nTimeTempAction = ReadSaveBuf(buf);
- m_fMaxTrafficSpeed = ReadSaveBuf(buf);
- m_nCruiseSpeed = ReadSaveBuf(buf);
- m_nCruiseSpeedMultiplierType = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_nCurrentRouteNode, buf);
+ ReadSaveBuf(&m_nNextRouteNode, buf);
+ ReadSaveBuf(&m_nPrevRouteNode, buf);
+ ReadSaveBuf(&m_nTimeEnteredCurve, buf);
+ ReadSaveBuf(&m_nTimeToSpendOnCurrentCurve, buf);
+ ReadSaveBuf(&m_nCurrentPathNodeInfo, buf);
+ ReadSaveBuf(&m_nNextPathNodeInfo, buf);
+ ReadSaveBuf(&m_nPreviousPathNodeInfo, buf);
+ ReadSaveBuf(&m_nAntiReverseTimer, buf);
+ ReadSaveBuf(&m_nTimeToStartMission, buf);
+ ReadSaveBuf(&m_nPreviousDirection, buf);
+ ReadSaveBuf(&m_nCurrentDirection, buf);
+ ReadSaveBuf(&m_nNextDirection, buf);
+ ReadSaveBuf(&m_nCurrentLane, buf);
+ ReadSaveBuf(&m_nNextLane, buf);
+ ReadSaveBuf(&m_nDrivingStyle, buf);
+ ReadSaveBuf(&m_nCarMission, buf);
+ ReadSaveBuf(&m_nTempAction, buf);
+ ReadSaveBuf(&m_nTimeTempAction, buf);
+ ReadSaveBuf(&m_fMaxTrafficSpeed, buf);
+ ReadSaveBuf(&m_nCruiseSpeed, buf);
+ ReadSaveBuf(&m_nCruiseSpeedMultiplierType, buf);
SkipSaveBuf(buf, 2);
- m_fCruiseSpeedMultiplier = ReadSaveBuf(buf);
- uint8 flags = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_fCruiseSpeedMultiplier, buf);
+ uint8 flags;
+ ReadSaveBuf(&flags, buf);
m_bSlowedDownBecauseOfCars = !!(flags & BIT(0));
m_bSlowedDownBecauseOfPeds = !!(flags & BIT(1));
m_bStayInCurrentLevel = !!(flags & BIT(2));
m_bStayInFastLane = !!(flags & BIT(3));
m_bIgnorePathfinding = !!(flags & BIT(4));
- m_nSwitchDistance = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_nSwitchDistance, buf);
SkipSaveBuf(buf, 2);
- m_vecDestinationCoors.x = ReadSaveBuf(buf);
- m_vecDestinationCoors.y = ReadSaveBuf(buf);
- m_vecDestinationCoors.z = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_vecDestinationCoors.x, buf);
+ ReadSaveBuf(&m_vecDestinationCoors.y, buf);
+ ReadSaveBuf(&m_vecDestinationCoors.z, buf);
SkipSaveBuf(buf, 32);
- m_nPathFindNodesCount = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_nPathFindNodesCount, buf);
SkipSaveBuf(buf, 6);
}
#endif
\ No newline at end of file
diff --git a/src/control/CarCtrl.cpp b/src/control/CarCtrl.cpp
index d05d9827..5e4e62ee 100644
--- a/src/control/CarCtrl.cpp
+++ b/src/control/CarCtrl.cpp
@@ -1581,8 +1581,8 @@ void CCarCtrl::WeaveForOtherCar(CEntity* pOtherEntity, CVehicle* pVehicle, float
forward.Normalise();
float forwardAngle = CGeneral::GetATanOfXY(forward.x, forward.y);
float angleDiff = angleBetweenVehicles - forwardAngle;
- float lenProjection = ABS(pOtherCar->GetColModel()->boundingBox.max.y * sin(angleDiff));
- float widthProjection = ABS(pOtherCar->GetColModel()->boundingBox.max.x * cos(angleDiff));
+ float lenProjection = ABS(pOtherCar->GetColModel()->boundingBox.max.y * Sin(angleDiff));
+ float widthProjection = ABS(pOtherCar->GetColModel()->boundingBox.max.x * Cos(angleDiff));
float lengthToEvade = (2 * (lenProjection + widthProjection) + WIDTH_COEF_TO_WEAVE_SAFELY * 2 * pVehicle->GetColModel()->boundingBox.max.x) / distance;
float diffToLeftAngle = LimitRadianAngle(angleBetweenVehicles - *pAngleToWeaveLeft);
diffToLeftAngle = ABS(diffToLeftAngle);
@@ -2575,7 +2575,7 @@ void CCarCtrl::SteerAIBoatWithPhysicsHeadingForTarget(CVehicle* pVehicle, float
float angleToTarget = CGeneral::GetATanOfXY(targetX - pVehicle->GetPosition().x, targetY - pVehicle->GetPosition().y);
float angleForward = CGeneral::GetATanOfXY(forward.x, forward.y);
float steerAngle = LimitRadianAngle(angleToTarget - angleForward);
- steerAngle = clamp(steerAngle, -DEFAULT_MAX_STEER_ANGLE, DEFAULT_MAX_STEER_ANGLE);
+ steerAngle = Clamp(steerAngle, -DEFAULT_MAX_STEER_ANGLE, DEFAULT_MAX_STEER_ANGLE);
#ifdef FIX_BUGS
float speedTarget = pVehicle->AutoPilot.GetCruiseSpeed();
#else
@@ -2735,7 +2735,7 @@ void CCarCtrl::SteerAIPlaneTowardsTargetCoors(CAutomobile* pPlane)
{
CVector2D vecToTarget = pPlane->AutoPilot.m_vecDestinationCoors - pPlane->GetPosition();
float fForwardZ = (pPlane->AutoPilot.m_vecDestinationCoors.z - pPlane->GetPosition().z) / vecToTarget.Magnitude();
- fForwardZ = clamp(fForwardZ, -0.3f, 0.3f);
+ fForwardZ = Clamp(fForwardZ, -0.3f, 0.3f);
float angle = CGeneral::GetATanOfXY(vecToTarget.x, vecToTarget.y);
while (angle > TWOPI)
angle -= TWOPI;
@@ -3238,7 +3238,7 @@ bool CCarCtrl::GenerateOneEmergencyServicesCar(uint32 mi, CVector vecPos)
attempts += 1;
}
if (attempts >= 5)
- return nil;
+ return false;
CAutomobile* pVehicle = new CAutomobile(mi, RANDOM_VEHICLE);
pVehicle->AutoPilot.m_vecDestinationCoors = vecPos;
pVehicle->SetPosition(spawnPos);
diff --git a/src/control/GameLogic.cpp b/src/control/GameLogic.cpp
index 33c40c91..11df7b43 100644
--- a/src/control/GameLogic.cpp
+++ b/src/control/GameLogic.cpp
@@ -30,6 +30,7 @@
#include "Automobile.h"
#include "MBlur.h"
#include "screendroplets.h"
+#include "SaveBuf.h"
uint8 CGameLogic::ActivePlayers;
uint8 CGameLogic::ShortCutState;
@@ -157,7 +158,7 @@ CGameLogic::Update()
#endif
CMessages::ClearMessages();
CCarCtrl::ClearInterestingVehicleList();
- CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, 1);
+ CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, true);
CRestart::FindClosestHospitalRestartPoint(pPlayerInfo.GetPos(), &vecRestartPos, &fRestartFloat);
CRestart::OverrideHospitalLevel = LEVEL_GENERIC;
CRestart::OverridePoliceStationLevel = LEVEL_GENERIC;
@@ -190,7 +191,7 @@ CGameLogic::Update()
}
- if (!CTheScripts::IsPlayerOnAMission() && pPlayerInfo.m_nBustedAudioStatus == 0) {
+ if (!CTheScripts::IsPlayerOnAMission() && pPlayerInfo.m_nBustedAudioStatus == BUSTEDAUDIO_NONE) {
if (CGeneral::GetRandomNumberInRange(0, 4) == 0)
pPlayerInfo.m_nBustedAudioStatus = BUSTEDAUDIO_DONE;
else {
@@ -266,7 +267,7 @@ CGameLogic::Update()
#endif
CMessages::ClearMessages();
CCarCtrl::ClearInterestingVehicleList();
- CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, 1);
+ CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, true);
CRestart::FindClosestPoliceRestartPoint(pPlayerInfo.GetPos(), &vecRestartPos, &fRestartFloat);
CRestart::OverrideHospitalLevel = LEVEL_GENERIC;
CRestart::OverridePoliceStationLevel = LEVEL_GENERIC;
@@ -321,7 +322,7 @@ CGameLogic::Update()
#endif
CMessages::ClearMessages();
CCarCtrl::ClearInterestingVehicleList();
- CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, 1);
+ CWorld::ClearExcitingStuffFromArea(pPlayerInfo.GetPos(), 4000.0f, true);
CRestart::FindClosestPoliceRestartPoint(pPlayerInfo.GetPos(), &vecRestartPos, &fRestartFloat);
CRestart::OverridePoliceStationLevel = LEVEL_GENERIC;
CRestart::OverrideHospitalLevel = LEVEL_GENERIC;
@@ -378,10 +379,10 @@ CGameLogic::RestorePlayerStuffDuringResurrection(CPlayerPed *pPlayerPed, CVector
pPlayerPed->m_fRotationDest = pPlayerPed->m_fRotationCur;
pPlayerPed->SetHeading(pPlayerPed->m_fRotationCur);
CTheScripts::ClearSpaceForMissionEntity(pos, pPlayerPed);
- CWorld::ClearExcitingStuffFromArea(pos, 4000.0, 1);
+ CWorld::ClearExcitingStuffFromArea(pos, 4000.0f, true);
pPlayerPed->RestoreHeadingRate();
CGame::currArea = AREA_MAIN_MAP;
- CStreaming::RemoveBuildingsNotInArea(0);
+ CStreaming::RemoveBuildingsNotInArea(AREA_MAIN_MAP);
TheCamera.SetCameraDirectlyInFrontForFollowPed_CamOnAString();
TheCamera.Restore();
CReferences::RemoveReferencesToPlayer();
@@ -488,7 +489,7 @@ CGameLogic::UpdateShortCut()
pShortCutTaxi->AutoPilot.m_nTempAction = TEMPACT_GOFORWARD;
pShortCutTaxi->AutoPilot.m_nTimeTempAction = CTimer::GetTimeInMilliseconds() + 2500;
TheCamera.SetFadeColour(0, 0, 0);
- TheCamera.Fade(2.5f, 0);
+ TheCamera.Fade(2.5f, FADE_OUT);
ShortCutState = SHORTCUT_TRANSITION;
ShortCutTimer = CTimer::GetTimeInMilliseconds() + 3000;
CMessages::AddBigMessage(TheText.Get("TAXI"), 4500, 1);
@@ -508,7 +509,7 @@ CGameLogic::UpdateShortCut()
pShortCutTaxi->SetMoveSpeed(pShortCutTaxi->GetForward() * 0.4f);
ShortCutTimer = CTimer::GetTimeInMilliseconds() + 1500;
TheCamera.SetFadeColour(0, 0, 0);
- TheCamera.Fade(1.0f, 1);
+ TheCamera.Fade(1.0f, FADE_IN);
ShortCutState = SHORTCUT_ARRIVING;
CTimer::Resume();
}
@@ -611,12 +612,12 @@ void
CGameLogic::Load(uint8* buf, uint32 size)
{
INITSAVEBUF
- NumAfterDeathStartPoints = ReadSaveBuf(buf);
+ ReadSaveBuf(&NumAfterDeathStartPoints, buf);
for (int i = 0; i < NUM_SHORTCUT_START_POINTS; i++) {
- AfterDeathStartPoints[i].x = ReadSaveBuf(buf);
- AfterDeathStartPoints[i].y = ReadSaveBuf(buf);
- AfterDeathStartPoints[i].z = ReadSaveBuf(buf);
- AfterDeathStartPointOrientation[i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&AfterDeathStartPoints[i].x, buf);
+ ReadSaveBuf(&AfterDeathStartPoints[i].y, buf);
+ ReadSaveBuf(&AfterDeathStartPoints[i].z, buf);
+ ReadSaveBuf(&AfterDeathStartPointOrientation[i], buf);
}
VALIDATESAVEBUF(size)
}
diff --git a/src/control/Garages.cpp b/src/control/Garages.cpp
index 7cf58d03..d7394902 100644
--- a/src/control/Garages.cpp
+++ b/src/control/Garages.cpp
@@ -24,13 +24,7 @@
#include "Wanted.h"
#include "World.h"
#include "VarConsole.h"
-
-#define CRUSHER_GARAGE_X1 (1135.5f)
-#define CRUSHER_GARAGE_Y1 (57.0f)
-#define CRUSHER_GARAGE_Z1 (-1.0f)
-#define CRUSHER_GARAGE_X2 (1149.5f)
-#define CRUSHER_GARAGE_Y2 (63.7f)
-#define CRUSHER_GARAGE_Z2 (3.5f)
+#include "SaveBuf.h"
#define ROTATED_DOOR_OPEN_SPEED (0.015f)
#define ROTATED_DOOR_CLOSE_SPEED (0.02f)
@@ -158,7 +152,7 @@ void CGarages::Init(void)
}
hGarages = DMAudio.CreateEntity(AUDIOTYPE_GARAGE, (void*)1);
if (hGarages >= 0)
- DMAudio.SetEntityStatus(hGarages, true);
+ DMAudio.SetEntityStatus(hGarages, TRUE);
}
void CGarages::Shutdown(void)
@@ -1843,11 +1837,12 @@ void CStoredCar::StoreCar(CVehicle* pVehicle)
m_nRadioStation = pVehicle->m_nRadioStation;
m_nVariationA = pVehicle->m_aExtras[0];
m_nVariationB = pVehicle->m_aExtras[1];
- m_bBulletproof = pVehicle->bBulletProof;
- m_bFireproof = pVehicle->bFireProof;
- m_bExplosionproof = pVehicle->bExplosionProof;
- m_bCollisionproof = pVehicle->bCollisionProof;
- m_bMeleeproof = pVehicle->bMeleeProof;
+ m_nFlags = 0;
+ if (pVehicle->bBulletProof) m_nFlags |= FLAG_BULLETPROOF;
+ if (pVehicle->bFireProof) m_nFlags |= FLAG_FIREPROOF;
+ if (pVehicle->bExplosionProof) m_nFlags |= FLAG_EXPLOSIONPROOF;
+ if (pVehicle->bCollisionProof) m_nFlags |= FLAG_COLLISIONPROOF;
+ if (pVehicle->bMeleeProof) m_nFlags |= FLAG_MELEEPROOF;
if (pVehicle->IsCar() || pVehicle->IsBike())
m_nCarBombType = ((CAutomobile*)pVehicle)->m_bombType; // NB: cast to CAutomobile is original behaviour
}
@@ -1896,11 +1891,11 @@ CVehicle* CStoredCar::RestoreCar()
}
pVehicle->bHasBeenOwnedByPlayer = true;
pVehicle->m_nDoorLock = CARLOCK_UNLOCKED;
- pVehicle->bBulletProof = m_bBulletproof;
- pVehicle->bFireProof = m_bFireproof;
- pVehicle->bExplosionProof = m_bExplosionproof;
- pVehicle->bCollisionProof = m_bCollisionproof;
- pVehicle->bMeleeProof = m_bMeleeproof;
+ if (m_nFlags & FLAG_BULLETPROOF) pVehicle->bBulletProof = true;
+ if (m_nFlags & FLAG_FIREPROOF) pVehicle->bFireProof = true;
+ if (m_nFlags & FLAG_EXPLOSIONPROOF) pVehicle->bExplosionProof = true;
+ if (m_nFlags & FLAG_COLLISIONPROOF) pVehicle->bCollisionProof = true;
+ if (m_nFlags & FLAG_MELEEPROOF) pVehicle->bMeleeProof = true;
return pVehicle;
}
@@ -2279,8 +2274,53 @@ void CGarages::Save(uint8 * buf, uint32 * size)
WriteSaveBuf(buf, aCarsInSafeHouses[j][i]);
}
}
- for (int i = 0; i < NUM_GARAGES; i++)
+ for (int i = 0; i < NUM_GARAGES; i++) {
+#ifdef COMPATIBLE_SAVES
+ WriteSaveBuf(buf, aGarages[i].m_eGarageType);
+ WriteSaveBuf(buf, aGarages[i].m_eGarageState);
+ WriteSaveBuf(buf, aGarages[i].m_nMaxStoredCars);
+ WriteSaveBuf(buf, aGarages[i].field_2);
+ WriteSaveBuf(buf, aGarages[i].m_bClosingWithoutTargetCar);
+ WriteSaveBuf(buf, aGarages[i].m_bDeactivated);
+ WriteSaveBuf(buf, aGarages[i].m_bResprayHappened);
+ ZeroSaveBuf(buf, 1);
+ WriteSaveBuf(buf, aGarages[i].m_nTargetModelIndex);
+ ZeroSaveBuf(buf, 4 + 4);
+ WriteSaveBuf(buf, aGarages[i].m_bDoor1PoolIndex);
+ WriteSaveBuf(buf, aGarages[i].m_bDoor2PoolIndex);
+ WriteSaveBuf(buf, aGarages[i].m_bDoor1IsDummy);
+ WriteSaveBuf(buf, aGarages[i].m_bDoor2IsDummy);
+ WriteSaveBuf(buf, aGarages[i].m_bRecreateDoorOnNextRefresh);
+ WriteSaveBuf(buf, aGarages[i].m_bRotatedDoor);
+ WriteSaveBuf(buf, aGarages[i].m_bCameraFollowsPlayer);
+ ZeroSaveBuf(buf, 1);
+ WriteSaveBuf(buf, aGarages[i].m_vecCorner1);
+ WriteSaveBuf(buf, aGarages[i].m_fInfZ);
+ WriteSaveBuf(buf, aGarages[i].m_vDir1);
+ WriteSaveBuf(buf, aGarages[i].m_vDir2);
+ WriteSaveBuf(buf, aGarages[i].m_fSupZ);
+ WriteSaveBuf(buf, aGarages[i].m_fDir1Len);
+ WriteSaveBuf(buf, aGarages[i].m_fDir2Len);
+ WriteSaveBuf(buf, aGarages[i].m_fInfX);
+ WriteSaveBuf(buf, aGarages[i].m_fSupX);
+ WriteSaveBuf(buf, aGarages[i].m_fInfY);
+ WriteSaveBuf(buf, aGarages[i].m_fSupY);
+ WriteSaveBuf(buf, aGarages[i].m_fDoorPos);
+ WriteSaveBuf(buf, aGarages[i].m_fDoorHeight);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor1X);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor1Y);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor2X);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor2Y);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor1Z);
+ WriteSaveBuf(buf, aGarages[i].m_fDoor2Z);
+ WriteSaveBuf(buf, aGarages[i].m_nTimeToStartAction);
+ WriteSaveBuf(buf, aGarages[i].m_bCollectedCarsState);
+ ZeroSaveBuf(buf, 3 + 4);
+ ZeroSaveBuf(buf, sizeof(aGarages[i].m_sStoredCar));
+#else
WriteSaveBuf(buf, aGarages[i]);
+#endif
+ }
//VALIDATESAVEBUF(*size);
}
@@ -2289,11 +2329,7 @@ const CStoredCar &CStoredCar::operator=(const CStoredCar & other)
m_nModelIndex = other.m_nModelIndex;
m_vecPos = other.m_vecPos;
m_vecAngle = other.m_vecAngle;
- m_bBulletproof = other.m_bBulletproof;
- m_bFireproof = other.m_bFireproof;
- m_bExplosionproof = other.m_bExplosionproof;
- m_bCollisionproof = other.m_bCollisionproof;
- m_bMeleeproof = other.m_bMeleeproof;
+ m_nFlags = other.m_nFlags;
m_nPrimaryColor = other.m_nPrimaryColor;
m_nSecondaryColor = other.m_nSecondaryColor;
m_nRadioStation = other.m_nRadioStation;
@@ -2306,25 +2342,72 @@ const CStoredCar &CStoredCar::operator=(const CStoredCar & other)
void CGarages::Load(uint8* buf, uint32 size)
{
//INITSAVEBUF
- assert(size = 7876);
+ assert(size == 7876);
//assert(size == (6 * sizeof(uint32) + TOTAL_COLLECTCARS_GARAGES * sizeof(*CarTypesCollected) + sizeof(uint32) + TOTAL_HIDEOUT_GARAGES * NUM_GARAGE_STORED_CARS * sizeof(CStoredCar) + NUM_GARAGES * sizeof(CGarage)));
CloseHideOutGaragesBeforeSave();
- NumGarages = ReadSaveBuf(buf);
- BombsAreFree = ReadSaveBuf(buf);
- RespraysAreFree = ReadSaveBuf(buf);
- CarsCollected = ReadSaveBuf(buf);
- BankVansCollected = ReadSaveBuf(buf);
- PoliceCarsCollected = ReadSaveBuf(buf);
+ ReadSaveBuf(&NumGarages, buf);
+ int32 tempInt;
+ ReadSaveBuf(&tempInt, buf);
+ BombsAreFree = tempInt ? true : false;
+ ReadSaveBuf(&tempInt, buf);
+ RespraysAreFree = tempInt ? true : false;
+ ReadSaveBuf(&CarsCollected, buf);
+ ReadSaveBuf(&BankVansCollected, buf);
+ ReadSaveBuf(&PoliceCarsCollected, buf);
for (int i = 0; i < TOTAL_COLLECTCARS_GARAGES; i++)
- CarTypesCollected[i] = ReadSaveBuf(buf);
- LastTimeHelpMessage = ReadSaveBuf(buf);
+ ReadSaveBuf(&CarTypesCollected[i], buf);
+ ReadSaveBuf(&LastTimeHelpMessage, buf);
for (int i = 0; i < NUM_GARAGE_STORED_CARS; i++) {
for (int j = 0; j < TOTAL_HIDEOUT_GARAGES; j++) {
- aCarsInSafeHouses[j][i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&aCarsInSafeHouses[j][i], buf);
}
}
for (int i = 0; i < NUM_GARAGES; i++) {
- aGarages[i] = ReadSaveBuf(buf);
+#ifdef COMPATIBLE_SAVES
+ ReadSaveBuf(&aGarages[i].m_eGarageType, buf);
+ ReadSaveBuf(&aGarages[i].m_eGarageState, buf);
+ ReadSaveBuf(&aGarages[i].m_nMaxStoredCars, buf);
+ ReadSaveBuf(&aGarages[i].field_2, buf);
+ ReadSaveBuf(&aGarages[i].m_bClosingWithoutTargetCar, buf);
+ ReadSaveBuf(&aGarages[i].m_bDeactivated, buf);
+ ReadSaveBuf(&aGarages[i].m_bResprayHappened, buf);
+ SkipSaveBuf(buf, 1);
+ ReadSaveBuf(&aGarages[i].m_nTargetModelIndex, buf);
+ SkipSaveBuf(buf, 4 + 4);
+ ReadSaveBuf(&aGarages[i].m_bDoor1PoolIndex, buf);
+ ReadSaveBuf(&aGarages[i].m_bDoor2PoolIndex, buf);
+ ReadSaveBuf(&aGarages[i].m_bDoor1IsDummy, buf);
+ ReadSaveBuf(&aGarages[i].m_bDoor2IsDummy, buf);
+ ReadSaveBuf(&aGarages[i].m_bRecreateDoorOnNextRefresh, buf);
+ ReadSaveBuf(&aGarages[i].m_bRotatedDoor, buf);
+ ReadSaveBuf(&aGarages[i].m_bCameraFollowsPlayer, buf);
+ SkipSaveBuf(buf, 1);
+ ReadSaveBuf(&aGarages[i].m_vecCorner1, buf);
+ ReadSaveBuf(&aGarages[i].m_fInfZ, buf);
+ ReadSaveBuf(&aGarages[i].m_vDir1, buf);
+ ReadSaveBuf(&aGarages[i].m_vDir2, buf);
+ ReadSaveBuf(&aGarages[i].m_fSupZ, buf);
+ ReadSaveBuf(&aGarages[i].m_fDir1Len, buf);
+ ReadSaveBuf(&aGarages[i].m_fDir2Len, buf);
+ ReadSaveBuf(&aGarages[i].m_fInfX, buf);
+ ReadSaveBuf(&aGarages[i].m_fSupX, buf);
+ ReadSaveBuf(&aGarages[i].m_fInfY, buf);
+ ReadSaveBuf(&aGarages[i].m_fSupY, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoorPos, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoorHeight, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor1X, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor1Y, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor2X, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor2Y, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor1Z, buf);
+ ReadSaveBuf(&aGarages[i].m_fDoor2Z, buf);
+ ReadSaveBuf(&aGarages[i].m_nTimeToStartAction, buf);
+ ReadSaveBuf(&aGarages[i].m_bCollectedCarsState, buf);
+ SkipSaveBuf(buf, 3 + 4);
+ SkipSaveBuf(buf, sizeof(aGarages[i].m_sStoredCar));
+#else
+ ReadSaveBuf(&aGarages[i], buf);
+#endif
aGarages[i].m_pDoor1 = nil;
aGarages[i].m_pDoor2 = nil;
aGarages[i].m_pTarget = nil;
diff --git a/src/control/Garages.h b/src/control/Garages.h
index 07d5f712..358d404d 100644
--- a/src/control/Garages.h
+++ b/src/control/Garages.h
@@ -63,14 +63,17 @@ enum
class CStoredCar
{
+ enum {
+ FLAG_BULLETPROOF = 0x1,
+ FLAG_FIREPROOF = 0x2,
+ FLAG_EXPLOSIONPROOF = 0x4,
+ FLAG_COLLISIONPROOF = 0x8,
+ FLAG_MELEEPROOF = 0x10,
+ };
int32 m_nModelIndex;
CVector m_vecPos;
CVector m_vecAngle;
- int32 m_bBulletproof : 1;
- int32 m_bFireproof : 1;
- int32 m_bExplosionproof : 1;
- int32 m_bCollisionproof : 1;
- int32 m_bMeleeproof : 1;
+ int32 m_nFlags;
int8 m_nPrimaryColor;
int8 m_nSecondaryColor;
int8 m_nRadioStation;
@@ -100,7 +103,7 @@ public:
bool m_bClosingWithoutTargetCar;
bool m_bDeactivated;
bool m_bResprayHappened;
- int m_nTargetModelIndex;
+ int32 m_nTargetModelIndex;
CEntity *m_pDoor1;
CEntity *m_pDoor2;
uint8 m_bDoor1PoolIndex;
diff --git a/src/control/OnscreenTimer.cpp b/src/control/OnscreenTimer.cpp
index 6544972b..ca8d0d6f 100644
--- a/src/control/OnscreenTimer.cpp
+++ b/src/control/OnscreenTimer.cpp
@@ -9,14 +9,15 @@
#include "OnscreenTimer.h"
#include "Camera.h"
-void COnscreenTimer::Init() {
+void
+COnscreenTimer::Init()
+{
m_bDisabled = false;
for(uint32 i = 0; i < NUMONSCREENCOUNTERS; i++) {
m_sCounters[i].m_nCounterOffset = 0;
- for(uint32 j = 0; j < ARRAY_SIZE(m_sCounters[0].m_aCounterText); j++) {
- m_sCounters[i].m_aCounterText[j] = 0;
- }
+ for(uint32 j = 0; j < ARRAY_SIZE(m_sCounters[0].m_aCounterText); j++)
+ m_sCounters[i].m_aCounterText[j] = '\0';
m_sCounters[i].m_nType = COUNTER_DISPLAY_NUMBER;
m_sCounters[i].m_bCounterProcessed = false;
@@ -24,24 +25,25 @@ void COnscreenTimer::Init() {
for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++) {
m_sClocks[i].m_nClockOffset = 0;
- for(uint32 j = 0; j < ARRAY_SIZE(m_sClocks[0].m_aClockText); j++) {
- m_sClocks[i].m_aClockText[j] = 0;
- }
+ for(uint32 j = 0; j < ARRAY_SIZE(m_sClocks[0].m_aClockText); j++)
+ m_sClocks[i].m_aClockText[j] = '\0';
m_sClocks[i].m_bClockProcessed = false;
m_sClocks[i].m_bClockGoingDown = true;
}
}
-void COnscreenTimer::Process() {
- if(!CReplay::IsPlayingBack() && !m_bDisabled) {
- for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++) {
+void
+COnscreenTimer::Process()
+{
+ if(!CReplay::IsPlayingBack() && !m_bDisabled)
+ for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++)
m_sClocks[i].Process();
- }
- }
}
-void COnscreenTimer::ProcessForDisplay() {
+void
+COnscreenTimer::ProcessForDisplay()
+{
if(CHud::m_Wants_To_Draw_Hud) {
m_bProcessed = false;
for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++) {
@@ -63,67 +65,67 @@ void COnscreenTimer::ProcessForDisplay() {
}
}
-void COnscreenTimer::ClearCounter(uint32 offset) {
+void
+COnscreenTimer::ClearCounter(uint32 offset)
+{
for(uint32 i = 0; i < NUMONSCREENCOUNTERS; i++) {
if(offset == m_sCounters[i].m_nCounterOffset) {
m_sCounters[i].m_nCounterOffset = 0;
- m_sCounters[i].m_aCounterText[0] = 0;
+ m_sCounters[i].m_aCounterText[0] = '\0';
m_sCounters[i].m_nType = COUNTER_DISPLAY_NUMBER;
- m_sCounters[i].m_bCounterProcessed = 0;
+ m_sCounters[i].m_bCounterProcessed = false;
}
}
}
-void COnscreenTimer::ClearClock(uint32 offset) {
- for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++) {
+void
+COnscreenTimer::ClearClock(uint32 offset)
+{
+ for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++)
if(offset == m_sClocks[i].m_nClockOffset) {
m_sClocks[i].m_nClockOffset = 0;
- m_sClocks[i].m_aClockText[0] = 0;
- m_sClocks[i].m_bClockProcessed = 0;
+ m_sClocks[i].m_aClockText[0] = '\0';
+ m_sClocks[i].m_bClockProcessed = false;
m_sClocks[i].m_bClockGoingDown = true;
}
- }
}
-void COnscreenTimer::AddCounter(uint32 offset, uint16 type, char* text, uint16 pos) {
-
+void
+COnscreenTimer::AddCounter(uint32 offset, uint16 type, char* text, uint16 pos)
+{
if (m_sCounters[pos].m_aCounterText[0] != '\0')
return;
m_sCounters[pos].m_nCounterOffset = offset;
- if(text) {
+ if(text)
strncpy(m_sCounters[pos].m_aCounterText, text, ARRAY_SIZE(m_sCounters[0].m_aCounterText));
- } else {
- m_sCounters[pos].m_aCounterText[0] = 0;
- }
+ else
+ m_sCounters[pos].m_aCounterText[0] = '\0';
m_sCounters[pos].m_nType = type;
}
-void COnscreenTimer::AddClock(uint32 offset, char* text, bool bGoingDown) {
-
- // dead code in here
- uint32 i;
- for(i = 0; i < NUMONSCREENCLOCKS; i++) {
+void
+COnscreenTimer::AddClock(uint32 offset, char* text, bool bGoingDown)
+{
+ for(uint32 i = 0; i < NUMONSCREENCLOCKS; i++) {
if(m_sClocks[i].m_nClockOffset == 0) {
+ m_sClocks[i].m_nClockOffset = offset;
+ m_sClocks[i].m_bClockGoingDown = bGoingDown;
+ if(text)
+ strncpy(m_sClocks[i].m_aClockText, text, ARRAY_SIZE(m_sClocks[0].m_aClockText));
+ else
+ m_sClocks[i].m_aClockText[0] = '\0';
break;
}
- return;
- }
-
- m_sClocks[i].m_nClockOffset = offset;
- m_sClocks[i].m_bClockGoingDown = bGoingDown;
- if(text) {
- strncpy(m_sClocks[i].m_aClockText, text, ARRAY_SIZE(m_sClocks[0].m_aClockText));
- } else {
- m_sClocks[i].m_aClockText[0] = 0;
}
}
-void COnscreenTimerEntry::Process() {
- if(m_nClockOffset == 0) {
+void
+COnscreenTimerEntry::Process()
+{
+ if(m_nClockOffset == 0)
return;
- }
int32* timerPtr = CTheScripts::GetPointerToScriptVariable(m_nClockOffset);
int32 oldTime = BSWAP32(*timerPtr);
@@ -147,13 +149,17 @@ void COnscreenTimerEntry::Process() {
*timerPtr = oldTime + int32(CTimer::GetTimeStepInMilliseconds());
}
-void COnscreenTimerEntry::ProcessForDisplayClock() {
+void
+COnscreenTimerEntry::ProcessForDisplayClock()
+{
uint32 time = BSWAP32(*CTheScripts::GetPointerToScriptVariable(m_nClockOffset));
sprintf(m_aClockBuffer, "%02d:%02d", time / 1000 / 60 % 100,
time / 1000 % 60);
}
-void COnscreenCounterEntry::ProcessForDisplayCounter() {
+void
+COnscreenCounterEntry::ProcessForDisplayCounter()
+{
uint32 counter = BSWAP32(*CTheScripts::GetPointerToScriptVariable(m_nCounterOffset));
sprintf(m_aCounterBuffer, "%d", counter);
}
diff --git a/src/control/PathFind.cpp b/src/control/PathFind.cpp
index bf72199d..80d40b45 100644
--- a/src/control/PathFind.cpp
+++ b/src/control/PathFind.cpp
@@ -200,8 +200,8 @@ CPedPath::AddBlockade(CEntity *pEntity, CPedPathNode(*pathNodes)[40], CVector *p
const float fBoundMaxY = boundingBox.max.y + 0.3f;
const float fBoundMinY = boundingBox.min.y - 0.3f;
const float fBoundMaxX = boundingBox.max.x + 0.3f;
- const float fDistanceX = pPosition->x - pEntity->m_matrix.GetPosition().x;
- const float fDistanceY = pPosition->y - pEntity->m_matrix.GetPosition().y;
+ const float fDistanceX = pPosition->x - pEntity->GetMatrix().GetPosition().x;
+ const float fDistanceY = pPosition->y - pEntity->GetMatrix().GetPosition().y;
const float fBoundRadius = pEntity->GetBoundRadius();
CVector vecBoundCentre;
pEntity->GetBoundCentre(vecBoundCentre);
@@ -215,8 +215,8 @@ CPedPath::AddBlockade(CEntity *pEntity, CPedPathNode(*pathNodes)[40], CVector *p
if (!pathNodes[x][y].bBlockade) {
const float pointY = y * 0.7f + fDistanceY;
CVector2D point(pointX, pointY);
- if (fBoundMaxX > Abs(DotProduct2D(point, pEntity->m_matrix.GetRight()))) {
- float fDotProduct = DotProduct2D(point, pEntity->m_matrix.GetForward());
+ if (fBoundMaxX > Abs(DotProduct2D(point, pEntity->GetMatrix().GetRight()))) {
+ float fDotProduct = DotProduct2D(point, pEntity->GetMatrix().GetForward());
if (fBoundMaxY > fDotProduct && fBoundMinY < fDotProduct)
pathNodes[x][y].bBlockade = true;
}
diff --git a/src/control/Phones.cpp b/src/control/Phones.cpp
index 9b50a7ec..41f9d766 100644
--- a/src/control/Phones.cpp
+++ b/src/control/Phones.cpp
@@ -13,10 +13,17 @@
#include "RpAnimBlend.h"
#include "AnimBlendAssociation.h"
#include "soundlist.h"
+#include "SaveBuf.h"
#ifdef FIX_BUGS
#include "Replay.h"
#endif
+#ifdef COMPATIBLE_SAVES
+#define PHONEINFO_SAVE_SIZE 0xA30
+#else
+#define PHONEINFO_SAVE_SIZE sizeof(CPhoneInfo)
+#endif
+
CPhoneInfo gPhoneInfo;
bool CPhoneInfo::bDisplayingPhoneMessage; // is phone picked up
@@ -197,14 +204,27 @@ void
CPhoneInfo::Load(uint8 *buf, uint32 size)
{
INITSAVEBUF
- m_nMax = ReadSaveBuf(buf);
- m_nScriptPhonesMax = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_nMax, buf);
+ ReadSaveBuf(&m_nScriptPhonesMax, buf);
for (int i = 0; i < NUMPHONES; i++) {
- m_aPhones[i] = ReadSaveBuf(buf);
+#ifdef COMPATIBLE_SAVES
+ ReadSaveBuf(&m_aPhones[i].m_vecPos, buf);
+ SkipSaveBuf(buf, 6 * 4);
+ ReadSaveBuf(&m_aPhones[i].m_repeatedMessagePickupStart, buf);
+ int32 tmp;
+ ReadSaveBuf(&tmp, buf);
+ // It's saved as building pool index in save file, convert it to true entity
+ m_aPhones[i].m_pEntity = tmp != 0 ? CPools::GetBuildingPool()->GetSlot(tmp - 1) : nil;
+ ReadSaveBuf(&m_aPhones[i].m_nState, buf);
+ ReadSaveBuf(&m_aPhones[i].m_visibleToCam, buf);
+ SkipSaveBuf(buf, 3);
+#else
+ ReadSaveBuf(&m_aPhones[i], buf);
// It's saved as building pool index in save file, convert it to true entity
if (m_aPhones[i].m_pEntity) {
m_aPhones[i].m_pEntity = CPools::GetBuildingPool()->GetSlot((uintptr)m_aPhones[i].m_pEntity - 1);
}
+#endif
}
VALIDATESAVEBUF(size)
}
@@ -298,17 +318,29 @@ CPhoneInfo::Initialise(void)
void
CPhoneInfo::Save(uint8 *buf, uint32 *size)
{
- *size = sizeof(CPhoneInfo);
+ *size = PHONEINFO_SAVE_SIZE;
INITSAVEBUF
WriteSaveBuf(buf, m_nMax);
WriteSaveBuf(buf, m_nScriptPhonesMax);
for(int phoneId = 0; phoneId < NUMPHONES; phoneId++) {
+#ifdef COMPATIBLE_SAVES
+ WriteSaveBuf(buf, m_aPhones[phoneId].m_vecPos);
+ ZeroSaveBuf(buf, 6 * 4);
+ WriteSaveBuf(buf, m_aPhones[phoneId].m_repeatedMessagePickupStart);
+ // Convert entity pointer to building pool index while saving
+ int32 tmp = m_aPhones[phoneId].m_pEntity ? CPools::GetBuildingPool()->GetJustIndex_NoFreeAssert((CBuilding*)m_aPhones[phoneId].m_pEntity) + 1 : 0;
+ WriteSaveBuf(buf, tmp);
+ WriteSaveBuf(buf, m_aPhones[phoneId].m_nState);
+ WriteSaveBuf(buf, m_aPhones[phoneId].m_visibleToCam);
+ ZeroSaveBuf(buf, 3);
+#else
CPhone* phone = WriteSaveBuf(buf, m_aPhones[phoneId]);
// Convert entity pointer to building pool index while saving
if (phone->m_pEntity) {
phone->m_pEntity = (CEntity*) (CPools::GetBuildingPool()->GetJustIndex_NoFreeAssert((CBuilding*)phone->m_pEntity) + 1);
}
+#endif
}
VALIDATESAVEBUF(*size)
}
diff --git a/src/control/Pickups.cpp b/src/control/Pickups.cpp
index 7bc88321..ab3e0c7c 100644
--- a/src/control/Pickups.cpp
+++ b/src/control/Pickups.cpp
@@ -33,6 +33,13 @@
#include "Hud.h"
#include "Messages.h"
#include "Streaming.h"
+#include "SaveBuf.h"
+
+#ifdef COMPATIBLE_SAVES
+#define PICKUPS_SAVE_SIZE 0x4440
+#else
+#define PICKUPS_SAVE_SIZE sizeof(aPickUps)
+#endif
CPickup CPickups::aPickUps[NUMPICKUPS];
int16 CPickups::NumMessages;
@@ -1008,8 +1015,7 @@ CPickups::DoPickUpEffects(CEntity *entity)
entity->bDoNotRender = CTheScripts::IsPlayerOnAMission() || CDarkel::FrenzyOnGoing() || !CGame::nastyGame;
if (!entity->bDoNotRender) {
- float s = Sin((float)((CTimer::GetTimeInMilliseconds() + (uintptr)entity) & 0x7FF) * DEGTORAD(360.0f / 0x800));
- float modifiedSin = 0.3f * (s + 1.0f);
+ float modifiedSin = 0.3f * (Sin((float)((CTimer::GetTimeInMilliseconds() + (uintptr)entity) & 0x7FF) * DEGTORAD(360.0f / 0x800)) + 1.0f);
#ifdef FIX_BUGS
int16 colorId = 0;
@@ -1149,7 +1155,20 @@ CPickups::DoPickUpEffects(CEntity *entity)
if (model == MI_MINIGUN || model == MI_MINIGUN2)
scale = 1.2f;
- entity->GetMatrix().SetRotateZOnlyScaled((float)(CTimer::GetTimeInMilliseconds() & 0x7FF) * DEGTORAD(360.0f / 0x800), scale);
+ float angle = (float)(CTimer::GetTimeInMilliseconds() & 0x7FF) * DEGTORAD(360.0f / 0x800);
+ float c = Cos(angle) * scale;
+ float s = Sin(angle) * scale;
+
+ // we know from SA they were setting each field manually like this
+ entity->GetMatrix().rx = c;
+ entity->GetMatrix().ry = s;
+ entity->GetMatrix().rz = 0.0f;
+ entity->GetMatrix().fx = -s;
+ entity->GetMatrix().fy = c;
+ entity->GetMatrix().fz = 0.0f;
+ entity->GetMatrix().ux = 0.0f;
+ entity->GetMatrix().uy = 0.0f;
+ entity->GetMatrix().uz = scale;
if (entity->GetModelIndex() == MI_MINIGUN2) {
CMatrix matrix1;
@@ -1429,7 +1448,32 @@ CPickups::Load(uint8 *buf, uint32 size)
INITSAVEBUF
for (int32 i = 0; i < NUMPICKUPS; i++) {
- aPickUps[i] = ReadSaveBuf(buf);
+#ifdef COMPATIBLE_SAVES
+ ReadSaveBuf(&aPickUps[i].m_vecPos, buf);
+ ReadSaveBuf(&aPickUps[i].m_fRevenue, buf);
+ int32 tmp_pObject;
+ ReadSaveBuf(&tmp_pObject, buf);
+ int32 tmp_pExtraObject;
+ ReadSaveBuf(&tmp_pExtraObject, buf);
+ ReadSaveBuf(&aPickUps[i].m_nQuantity, buf);
+ ReadSaveBuf(&aPickUps[i].m_nTimer, buf);
+ ReadSaveBuf(&aPickUps[i].m_nMoneySpeed, buf);
+ ReadSaveBuf(&aPickUps[i].m_eModelIndex, buf);
+ ReadSaveBuf(&aPickUps[i].m_nIndex, buf);
+ memcpy(aPickUps[i].m_sTextKey, buf, sizeof(aPickUps[i].m_sTextKey));
+ SkipSaveBuf(buf, sizeof(aPickUps[i].m_sTextKey));
+ ReadSaveBuf(&aPickUps[i].m_eType, buf);
+ ReadSaveBuf(&aPickUps[i].m_bRemoved, buf);
+ uint8 flags;
+ ReadSaveBuf(&flags, buf);
+ aPickUps[i].m_bWasAmmoCollected = !!(flags & BIT(0));
+ aPickUps[i].m_bWasControlMessageShown = !!(flags & BIT(1));
+ SkipSaveBuf(buf, 3);
+
+ aPickUps[i].m_pObject = aPickUps[i].m_eType != PICKUP_NONE && tmp_pObject != 0 ? CPools::GetObjectPool()->GetSlot(tmp_pObject - 1) : nil;
+ aPickUps[i].m_pExtraObject = aPickUps[i].m_eType != PICKUP_NONE && tmp_pExtraObject != 0 ? CPools::GetObjectPool()->GetSlot(tmp_pExtraObject - 1) : nil;
+#else
+ ReadSaveBuf(&aPickUps[i], buf);
if (aPickUps[i].m_eType != PICKUP_NONE) {
if (aPickUps[i].m_pObject != nil)
@@ -1437,15 +1481,15 @@ INITSAVEBUF
if (aPickUps[i].m_pExtraObject != nil)
aPickUps[i].m_pExtraObject = CPools::GetObjectPool()->GetSlot((uintptr)aPickUps[i].m_pExtraObject - 1);
}
-
+#endif
}
- CollectedPickUpIndex = ReadSaveBuf(buf);
- ReadSaveBuf(buf);
+ ReadSaveBuf(&CollectedPickUpIndex, buf);
+ SkipSaveBuf(buf, 2);
NumMessages = 0;
for (uint16 i = 0; i < NUMCOLLECTEDPICKUPS; i++)
- aPickUpsCollected[i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&aPickUpsCollected[i], buf);
VALIDATESAVEBUF(size)
}
@@ -1453,12 +1497,34 @@ VALIDATESAVEBUF(size)
void
CPickups::Save(uint8 *buf, uint32 *size)
{
- *size = sizeof(aPickUps);
+ *size = PICKUPS_SAVE_SIZE;
*size += sizeof(uint16) + sizeof(uint16) + sizeof(aPickUpsCollected);
INITSAVEBUF
for (int32 i = 0; i < NUMPICKUPS; i++) {
+#ifdef COMPATIBLE_SAVES
+ WriteSaveBuf(buf, aPickUps[i].m_vecPos);
+ WriteSaveBuf(buf, aPickUps[i].m_fRevenue);
+ int32 tmp = aPickUps[i].m_eType != PICKUP_NONE && aPickUps[i].m_pObject != nil ? CPools::GetObjectPool()->GetJustIndex_NoFreeAssert(aPickUps[i].m_pObject) + 1 : 0;
+ WriteSaveBuf(buf, tmp);
+ tmp = aPickUps[i].m_eType != PICKUP_NONE && aPickUps[i].m_pExtraObject != nil ? CPools::GetObjectPool()->GetJustIndex_NoFreeAssert(aPickUps[i].m_pExtraObject) + 1 : 0;
+ WriteSaveBuf(buf, tmp);
+ WriteSaveBuf(buf, aPickUps[i].m_nQuantity);
+ WriteSaveBuf(buf, aPickUps[i].m_nTimer);
+ WriteSaveBuf(buf, aPickUps[i].m_nMoneySpeed);
+ WriteSaveBuf(buf, aPickUps[i].m_eModelIndex);
+ WriteSaveBuf(buf, aPickUps[i].m_nIndex);
+ memcpy(buf, aPickUps[i].m_sTextKey, sizeof(aPickUps[i].m_sTextKey));
+ SkipSaveBuf(buf, sizeof(aPickUps[i].m_sTextKey));
+ WriteSaveBuf(buf, aPickUps[i].m_eType);
+ WriteSaveBuf(buf, aPickUps[i].m_bRemoved);
+ uint8 flags = 0;
+ if (aPickUps[i].m_bWasAmmoCollected) flags |= BIT(0);
+ if (aPickUps[i].m_bWasControlMessageShown) flags |= BIT(1);
+ WriteSaveBuf(buf, flags);
+ ZeroSaveBuf(buf, 3);
+#else
CPickup *buf_pickup = WriteSaveBuf(buf, aPickUps[i]);
if (buf_pickup->m_eType != PICKUP_NONE) {
if (buf_pickup->m_pObject != nil)
@@ -1466,6 +1532,7 @@ INITSAVEBUF
if (buf_pickup->m_pExtraObject != nil)
buf_pickup->m_pExtraObject = (CObject*)(CPools::GetObjectPool()->GetJustIndex_NoFreeAssert(buf_pickup->m_pExtraObject) + 1);
}
+#endif
}
WriteSaveBuf(buf, CollectedPickUpIndex);
diff --git a/src/control/Replay.cpp b/src/control/Replay.cpp
index cd612d5d..71b28f7a 100644
--- a/src/control/Replay.cpp
+++ b/src/control/Replay.cpp
@@ -425,9 +425,9 @@ void CReplay::RecordParticle(tParticleType type, const CVector& vecPos, const CV
pp->pos_x = 4.0f * vecPos.x;
pp->pos_y = 4.0f * vecPos.y;
pp->pos_z = 4.0f * vecPos.z;
- pp->dir_x = 120.0f * clamp(vecDir.x, -1.0f, 1.0f);
- pp->dir_y = 120.0f * clamp(vecDir.y, -1.0f, 1.0f);
- pp->dir_z = 120.0f * clamp(vecDir.z, -1.0f, 1.0f);
+ pp->dir_x = 120.0f * Clamp(vecDir.x, -1.0f, 1.0f);
+ pp->dir_y = 120.0f * Clamp(vecDir.y, -1.0f, 1.0f);
+ pp->dir_z = 120.0f * Clamp(vecDir.z, -1.0f, 1.0f);
pp->size = fSize;
pp->r = color.red;
pp->g = color.green;
@@ -463,8 +463,8 @@ void CReplay::StorePedAnimation(CPed *ped, CStoredAnimationState *state)
CAnimBlendAssociation* main = RpAnimBlendClumpGetMainAssociation((RpClump*)ped->m_rwObject, &second, &blend_amount);
if (main){
state->animId = main->animId;
- state->time = 255.0f / 4.0f * clamp(main->currentTime, 0.0f, 4.0f);
- state->speed = 255.0f / 3.0f * clamp(main->speed, 0.0f, 3.0f);
+ state->time = 255.0f / 4.0f * Clamp(main->currentTime, 0.0f, 4.0f);
+ state->speed = 255.0f / 3.0f * Clamp(main->speed, 0.0f, 3.0f);
state->groupId = main->groupId;
}else{
state->animId = 3;
@@ -474,9 +474,9 @@ void CReplay::StorePedAnimation(CPed *ped, CStoredAnimationState *state)
}
if (second) {
state->secAnimId = second->animId;
- state->secTime = 255.0f / 4.0f * clamp(second->currentTime, 0.0f, 4.0f);
- state->secSpeed = 255.0f / 3.0f * clamp(second->speed, 0.0f, 3.0f);
- state->blendAmount = 255.0f / 2.0f * clamp(blend_amount, 0.0f, 2.0f);
+ state->secTime = 255.0f / 4.0f * Clamp(second->currentTime, 0.0f, 4.0f);
+ state->secSpeed = 255.0f / 3.0f * Clamp(second->speed, 0.0f, 3.0f);
+ state->blendAmount = 255.0f / 2.0f * Clamp(blend_amount, 0.0f, 2.0f);
state->secGroupId = second->groupId;
}else{
state->secAnimId = 0;
@@ -488,9 +488,9 @@ void CReplay::StorePedAnimation(CPed *ped, CStoredAnimationState *state)
CAnimBlendAssociation* partial = RpAnimBlendClumpGetMainPartialAssociation((RpClump*)ped->m_rwObject);
if (partial) {
state->partAnimId = partial->animId;
- state->partAnimTime = 255.0f / 4.0f * clamp(partial->currentTime, 0.0f, 4.0f);
- state->partAnimSpeed = 255.0f / 3.0f * clamp(partial->speed, 0.0f, 3.0f);
- state->partBlendAmount = 255.0f / 2.0f * clamp(partial->blendAmount, 0.0f, 2.0f);
+ state->partAnimTime = 255.0f / 4.0f * Clamp(partial->currentTime, 0.0f, 4.0f);
+ state->partAnimSpeed = 255.0f / 3.0f * Clamp(partial->speed, 0.0f, 3.0f);
+ state->partBlendAmount = 255.0f / 2.0f * Clamp(partial->blendAmount, 0.0f, 2.0f);
state->partGroupId = partial->groupId;
}else{
state->partAnimId = 0;
@@ -507,10 +507,10 @@ void CReplay::StoreDetailedPedAnimation(CPed *ped, CStoredDetailedAnimationState
CAnimBlendAssociation* assoc = RpAnimBlendClumpGetMainAssociation_N((RpClump*)ped->m_rwObject, i);
if (assoc){
state->aAnimId[i] = assoc->animId;
- state->aCurTime[i] = 255.0f / 4.0f * clamp(assoc->currentTime, 0.0f, 4.0f);
- state->aSpeed[i] = 255.0f / 3.0f * clamp(assoc->speed, 0.0f, 3.0f);
- state->aBlendAmount[i] = 255.0f / 2.0f * clamp(assoc->blendAmount, 0.0f, 2.0f);
- state->aBlendDelta[i] = 127.0f / 32.0f * clamp(assoc->blendDelta, -16.0f, 16.0f);
+ state->aCurTime[i] = 255.0f / 4.0f * Clamp(assoc->currentTime, 0.0f, 4.0f);
+ state->aSpeed[i] = 255.0f / 3.0f * Clamp(assoc->speed, 0.0f, 3.0f);
+ state->aBlendAmount[i] = 255.0f / 2.0f * Clamp(assoc->blendAmount, 0.0f, 2.0f);
+ state->aBlendDelta[i] = 127.0f / 32.0f * Clamp(assoc->blendDelta, -16.0f, 16.0f);
state->aFlags[i] = assoc->flags;
state->aGroupId[i] = assoc->groupId;
if (assoc->callbackType == CAnimBlendAssociation::CB_FINISH || assoc->callbackType == CAnimBlendAssociation::CB_DELETE) {
@@ -533,10 +533,10 @@ void CReplay::StoreDetailedPedAnimation(CPed *ped, CStoredDetailedAnimationState
CAnimBlendAssociation* assoc = RpAnimBlendClumpGetMainPartialAssociation_N((RpClump*)ped->m_rwObject, i);
if (assoc) {
state->aAnimId2[i] = assoc->animId;
- state->aCurTime2[i] = 255.0f / 4.0f * clamp(assoc->currentTime, 0.0f, 4.0f);
- state->aSpeed2[i] = 255.0f / 3.0f * clamp(assoc->speed, 0.0f, 3.0f);
- state->aBlendAmount2[i] = 255.0f / 2.0f * clamp(assoc->blendAmount, 0.0f, 2.0f);
- state->aBlendDelta2[i] = 127.0f / 16.0f * clamp(assoc->blendDelta, -16.0f, 16.0f);
+ state->aCurTime2[i] = 255.0f / 4.0f * Clamp(assoc->currentTime, 0.0f, 4.0f);
+ state->aSpeed2[i] = 255.0f / 3.0f * Clamp(assoc->speed, 0.0f, 3.0f);
+ state->aBlendAmount2[i] = 255.0f / 2.0f * Clamp(assoc->blendAmount, 0.0f, 2.0f);
+ state->aBlendDelta2[i] = 127.0f / 16.0f * Clamp(assoc->blendDelta, -16.0f, 16.0f);
state->aFlags2[i] = assoc->flags;
state->aGroupId2[i] = assoc->groupId;
if (assoc->callbackType == CAnimBlendAssociation::CB_FINISH || assoc->callbackType == CAnimBlendAssociation::CB_DELETE) {
@@ -1463,7 +1463,7 @@ void CReplay::RestoreStuffFromMem(void)
ped->SetModelIndex(mi);
ped->m_pVehicleAnim = nil;
ped->m_audioEntityId = DMAudio.CreateEntity(AUDIOTYPE_PHYSICAL, ped);
- DMAudio.SetEntityStatus(ped->m_audioEntityId, true);
+ DMAudio.SetEntityStatus(ped->m_audioEntityId, TRUE);
CPopulation::UpdatePedCount((ePedType)ped->m_nPedType, false);
for (int j = 0; j < TOTAL_WEAPON_SLOTS; j++) {
int mi1 = CWeaponInfo::GetWeaponInfo(ped->m_weapons[j].m_eWeaponType)->m_nModelId;
@@ -1529,7 +1529,7 @@ void CReplay::RestoreStuffFromMem(void)
car->SetDoorDamage(CAR_DOOR_RR, DOOR_REAR_RIGHT, true);
}
vehicle->m_audioEntityId = DMAudio.CreateEntity(AUDIOTYPE_PHYSICAL, vehicle);
- DMAudio.SetEntityStatus(vehicle->m_audioEntityId, true);
+ DMAudio.SetEntityStatus(vehicle->m_audioEntityId, TRUE);
CCarCtrl::UpdateCarCount(vehicle, false);
if ((mi == MI_AIRTRAIN || mi == MI_DEADDODO) && vehicle->m_rwObject){
CVehicleModelInfo* info = (CVehicleModelInfo*)CModelInfo::GetModelInfo(mi);
diff --git a/src/control/Restart.cpp b/src/control/Restart.cpp
index e1950a29..39c9a234 100644
--- a/src/control/Restart.cpp
+++ b/src/control/Restart.cpp
@@ -3,6 +3,7 @@
#include "Restart.h"
#include "Zones.h"
#include "PathFind.h"
+#include "SaveBuf.h"
uint8 CRestart::OverrideHospitalLevel;
uint8 CRestart::OverridePoliceStationLevel;
@@ -173,29 +174,28 @@ INITSAVEBUF
CheckSaveHeader(buf, 'R','S','T','\0', size - SAVE_HEADER_SIZE);
for (int i = 0; i < NUM_RESTART_POINTS; i++) {
- HospitalRestartPoints[i] = ReadSaveBuf(buf);
- HospitalRestartHeadings[i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&HospitalRestartPoints[i], buf);
+ ReadSaveBuf(&HospitalRestartHeadings[i], buf);
}
for (int i = 0; i < NUM_RESTART_POINTS; i++) {
- PoliceRestartPoints[i] = ReadSaveBuf(buf);
- PoliceRestartHeadings[i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&PoliceRestartPoints[i], buf);
+ ReadSaveBuf(&PoliceRestartHeadings[i], buf);
}
- NumberOfHospitalRestarts = ReadSaveBuf(buf);
- NumberOfPoliceRestarts = ReadSaveBuf(buf);
- bOverrideRestart = ReadSaveBuf(buf);
+ ReadSaveBuf(&NumberOfHospitalRestarts, buf);
+ ReadSaveBuf(&NumberOfPoliceRestarts, buf);
+ ReadSaveBuf(&bOverrideRestart, buf);
// skip something unused
- ReadSaveBuf(buf);
- ReadSaveBuf(buf);
+ SkipSaveBuf(buf, 3);
- OverridePosition = ReadSaveBuf(buf);
- OverrideHeading = ReadSaveBuf(buf);
- bFadeInAfterNextDeath = ReadSaveBuf(buf);
- bFadeInAfterNextArrest = ReadSaveBuf(buf);
- OverrideHospitalLevel = ReadSaveBuf(buf);
- OverridePoliceStationLevel = ReadSaveBuf(buf);
+ ReadSaveBuf(&OverridePosition, buf);
+ ReadSaveBuf(&OverrideHeading, buf);
+ ReadSaveBuf(&bFadeInAfterNextDeath, buf);
+ ReadSaveBuf(&bFadeInAfterNextArrest, buf);
+ ReadSaveBuf(&OverrideHospitalLevel, buf);
+ ReadSaveBuf(&OverridePoliceStationLevel, buf);
VALIDATESAVEBUF(size);
}
diff --git a/src/control/RoadBlocks.cpp b/src/control/RoadBlocks.cpp
index 4f714e80..46eee71f 100644
--- a/src/control/RoadBlocks.cpp
+++ b/src/control/RoadBlocks.cpp
@@ -64,7 +64,7 @@ CRoadBlocks::GenerateRoadBlockCopsForCar(CVehicle* pVehicle, int32 roadBlockType
float fRadius = pVehicle->GetBoundRadius() / pPoliceColModel->boundingSphere.radius;
for (int32 i = 0; i < 2; i++) {
const int32 roadBlockIndex = i + 2 * roadBlockType;
- CVector posForZ = pVehicle->m_matrix * (fRadius * vecRoadBlockOffets[roadBlockIndex]);
+ CVector posForZ = pVehicle->GetMatrix() * (fRadius * vecRoadBlockOffets[roadBlockIndex]);
int32 modelInfoId = MI_COP;
eCopType copType = COP_STREET;
switch (pVehicle->GetModelIndex())
@@ -239,10 +239,10 @@ CRoadBlocks::CreateRoadBlockBetween2Points(CVector point1, CVector point2)
pVehicle->SetStatus(STATUS_ABANDONED);
// pVehicle->GetHeightAboveRoad(); // called but return value is ignored?
tmp.GetPosition().z += fModelRadius - 0.6f;
- pVehicle->m_matrix = tmp;
+ pVehicle->SetMatrix(tmp);
pVehicle->PlaceOnRoadProperly();
pVehicle->SetIsStatic(false);
- pVehicle->m_matrix.UpdateRW();
+ pVehicle->GetMatrix().UpdateRW();
pVehicle->m_nDoorLock = CARLOCK_UNLOCKED;
CCarCtrl::JoinCarWithRoadSystem(pVehicle);
pVehicle->bIsLocked = false;
diff --git a/src/control/Script.cpp b/src/control/Script.cpp
index 057d1dbc..b929065b 100644
--- a/src/control/Script.cpp
+++ b/src/control/Script.cpp
@@ -1829,7 +1829,7 @@ void CMissionCleanup::Process()
CWorld::Players[0].m_pPed->m_nDrunkCountdown = 0;
CPad::GetPad(0)->SetDrunkInputDelay(0);
CWorld::Players[0].m_bDriveByAllowed = true;
- DMAudio.ShutUpPlayerTalking(0);
+ DMAudio.ShutUpPlayerTalking(FALSE);
CVehicle::bDisableRemoteDetonation = false;
CVehicle::bDisableRemoteDetonationOnContact = false;
CGameLogic::ClearShortCut();
@@ -2208,20 +2208,16 @@ void CRunningScript::Init()
int scriptToLoad = 0;
const char *scriptfile = "main.scm";
-#ifdef _WIN32
-#include
-#endif
int open_script()
{
- // glfwGetKey doesn't work because of CGame::Initialise is blocking
-#ifdef _WIN32
- if (GetAsyncKeyState('G') & 0x8000)
+ // glfwGetKey doesn't work because of CGame::Initialise is blocking
+ CPad::UpdatePads();
+ if (CPad::GetPad(0)->GetChar('G'))
scriptToLoad = 0;
- if (GetAsyncKeyState('R') & 0x8000)
+ if (CPad::GetPad(0)->GetChar('R'))
scriptToLoad = 1;
- if (GetAsyncKeyState('D') & 0x8000)
+ if (CPad::GetPad(0)->GetChar('D'))
scriptToLoad = 2;
-#endif
switch (scriptToLoad) {
case 0: scriptfile = "main.scm"; break;
case 1: scriptfile = "freeroam_miami.scm"; break;
diff --git a/src/control/Script2.cpp b/src/control/Script2.cpp
index 656973ca..4e7a1c3e 100644
--- a/src/control/Script2.cpp
+++ b/src/control/Script2.cpp
@@ -431,8 +431,8 @@ int8 CRunningScript::ProcessCommands300To399(int32 command)
float length = *(float*)&ScriptParams[5];
float x, y;
if (angle != 0.0f){
- y = cos(angle) * length;
- x = sin(angle) * length;
+ y = Cos(angle) * length;
+ x = Sin(angle) * length;
}else{
y = length;
x = 0.0f;
diff --git a/src/control/Script4.cpp b/src/control/Script4.cpp
index 878278c5..ac632b15 100644
--- a/src/control/Script4.cpp
+++ b/src/control/Script4.cpp
@@ -749,7 +749,7 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
CollectParameters(&m_nIp, 2);
CPlayerPed* pPlayerPed = CWorld::Players[ScriptParams[0]].m_pPed;
script_assert(pPlayerPed);
- pPlayerPed->m_fArmour = clamp(pPlayerPed->m_fArmour + ScriptParams[1], 0.0f, CWorld::Players[ScriptParams[0]].m_nMaxArmour);
+ pPlayerPed->m_fArmour = Clamp(pPlayerPed->m_fArmour + ScriptParams[1], 0.0f, CWorld::Players[ScriptParams[0]].m_nMaxArmour);
return 0;
}
case COMMAND_ADD_ARMOUR_TO_CHAR:
@@ -757,7 +757,7 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
CollectParameters(&m_nIp, 2);
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
script_assert(pPed);
- pPed->m_fArmour = clamp(pPed->m_fArmour + ScriptParams[1], 0.0f, 100.0f);
+ pPed->m_fArmour = Clamp(pPed->m_fArmour + ScriptParams[1], 0.0f, 100.0f);
return 0;
}
case COMMAND_OPEN_GARAGE:
@@ -1398,7 +1398,7 @@ int8 CRunningScript::ProcessCommands900To999(int32 command)
{
CollectParameters(&m_nIp, 1);
DMAudio.ChangeMusicMode(MUSICMODE_FRONTEND);
- DMAudio.PlayFrontEndTrack(ScriptParams[0] + STREAMED_SOUND_MISSION_COMPLETED - 1, 0);
+ DMAudio.PlayFrontEndTrack(ScriptParams[0] + STREAMED_SOUND_MISSION_COMPLETED - 1, FALSE);
return 0;
}
case COMMAND_CLEAR_AREA:
diff --git a/src/control/Script5.cpp b/src/control/Script5.cpp
index 1371f2e6..25b29256 100644
--- a/src/control/Script5.cpp
+++ b/src/control/Script5.cpp
@@ -16,6 +16,7 @@
#include "SpecialFX.h"
#include "World.h"
#include "main.h"
+#include "SaveBuf.h"
void CRunningScript::UpdateCompareFlag(bool flag)
{
@@ -1006,10 +1007,10 @@ void CRunningScript::PlayerInAngledAreaCheckCommand(int32 command, uint32* pIp)
initAngle -= TWOPI;
// it looks like the idea is to use a rectangle using the diagonal of the rectangle as
// the side of new rectangle, with "length" being the length of second side
- float rotatedSupX = supX + side2length * sin(initAngle);
- float rotatedSupY = supY - side2length * cos(initAngle);
- float rotatedInfX = infX + side2length * sin(initAngle);
- float rotatedInfY = infY - side2length * cos(initAngle);
+ float rotatedSupX = supX + side2length * Sin(initAngle);
+ float rotatedSupY = supY - side2length * Cos(initAngle);
+ float rotatedInfX = infX + side2length * Sin(initAngle);
+ float rotatedInfY = infY - side2length * Cos(initAngle);
float side1X = supX - infX;
float side1Y = supY - infY;
float side1Length = CVector2D(side1X, side1Y).Magnitude();
@@ -2184,15 +2185,19 @@ void CTheScripts::LoadAllScripts(uint8* buf, uint32 size)
Init();
INITSAVEBUF
CheckSaveHeader(buf, 'S', 'C', 'R', '\0', size - SAVE_HEADER_SIZE);
- uint32 varSpace = ReadSaveBuf(buf);
+ uint32 varSpace, type, handle;
+ uint32 tmp;
+
+ ReadSaveBuf(&varSpace, buf);
for (uint32 i = 0; i < varSpace; i++)
- ScriptSpace[i] = ReadSaveBuf(buf);
- script_assert(ReadSaveBuf(buf) == SCRIPT_DATA_SIZE);
- OnAMissionFlag = ReadSaveBuf(buf);
- LastMissionPassedTime = ReadSaveBuf(buf);
+ ReadSaveBuf(&ScriptSpace[i], buf);
+ ReadSaveBuf(&tmp, buf);
+ script_assert(tmp == SCRIPT_DATA_SIZE);
+ ReadSaveBuf(&OnAMissionFlag, buf);
+ ReadSaveBuf(&LastMissionPassedTime, buf);
for (uint32 i = 0; i < MAX_NUM_BUILDING_SWAPS; i++) {
- uint32 type = ReadSaveBuf(buf);
- uint32 handle = ReadSaveBuf(buf);
+ ReadSaveBuf(&type, buf);
+ ReadSaveBuf(&handle, buf);
switch (type) {
case 0:
BuildingSwapArray[i].m_pBuilding = nil;
@@ -2206,14 +2211,14 @@ INITSAVEBUF
default:
script_assert(false);
}
- BuildingSwapArray[i].m_nNewModel = ReadSaveBuf(buf);
- BuildingSwapArray[i].m_nOldModel = ReadSaveBuf(buf);
+ ReadSaveBuf(&BuildingSwapArray[i].m_nNewModel, buf);
+ ReadSaveBuf(&BuildingSwapArray[i].m_nOldModel, buf);
if (BuildingSwapArray[i].m_pBuilding)
BuildingSwapArray[i].m_pBuilding->ReplaceWithNewModel(BuildingSwapArray[i].m_nNewModel);
}
for (uint32 i = 0; i < MAX_NUM_INVISIBILITY_SETTINGS; i++) {
- uint32 type = ReadSaveBuf(buf);
- uint32 handle = ReadSaveBuf(buf);
+ ReadSaveBuf(&type, buf);
+ ReadSaveBuf(&handle, buf);
switch (type) {
case 0:
InvisibilitySettingArray[i] = nil;
@@ -2236,14 +2241,22 @@ INITSAVEBUF
if (InvisibilitySettingArray[i])
InvisibilitySettingArray[i]->bIsVisible = false;
}
- script_assert(ReadSaveBuf(buf) == bUsingAMultiScriptFile);
- bPlayerHasMetDebbieHarry = ReadSaveBuf(buf);
- ReadSaveBuf(buf);
- script_assert(ReadSaveBuf(buf) == MainScriptSize);
- script_assert(ReadSaveBuf(buf) == LargestMissionScriptSize);
- script_assert(ReadSaveBuf(buf) == NumberOfMissionScripts);
- script_assert(ReadSaveBuf(buf) == NumberOfExclusiveMissionScripts);
- uint32 runningScripts = ReadSaveBuf(buf);
+ bool tmpBool;
+ ReadSaveBuf(&tmpBool, buf);
+ script_assert(tmpBool == bUsingAMultiScriptFile);
+ ReadSaveBuf(&bPlayerHasMetDebbieHarry, buf);
+ SkipSaveBuf(buf, 2);
+ ReadSaveBuf(&tmp, buf);
+ script_assert(tmp == MainScriptSize);
+ ReadSaveBuf(&tmp, buf);
+ script_assert(tmp == LargestMissionScriptSize);
+ uint16 tmp16;
+ ReadSaveBuf(&tmp16, buf);
+ script_assert(tmp16 == NumberOfMissionScripts);
+ ReadSaveBuf(&tmp16, buf);
+ script_assert(tmp16 == NumberOfExclusiveMissionScripts);
+ uint32 runningScripts;
+ ReadSaveBuf(&runningScripts, buf);
for (uint32 i = 0; i < runningScripts; i++)
StartNewScript(0)->Load(buf);
VALIDATESAVEBUF(size)
@@ -2254,33 +2267,33 @@ VALIDATESAVEBUF(size)
void CRunningScript::Save(uint8*& buf)
{
#ifdef COMPATIBLE_SAVES
- SkipSaveBuf(buf, 8);
+ ZeroSaveBuf(buf, 8);
for (int i = 0; i < 8; i++)
- WriteSaveBuf(buf, m_abScriptName[i]);
- WriteSaveBuf(buf, m_nIp);
+ WriteSaveBuf(buf, m_abScriptName[i]);
+ WriteSaveBuf(buf, m_nIp);
#ifdef CHECK_STRUCT_SIZES
static_assert(MAX_STACK_DEPTH == 6, "Compatibility loss: MAX_STACK_DEPTH != 6");
#endif
for (int i = 0; i < MAX_STACK_DEPTH; i++)
- WriteSaveBuf(buf, m_anStack[i]);
- WriteSaveBuf(buf, m_nStackPointer);
- SkipSaveBuf(buf, 2);
+ WriteSaveBuf(buf, m_anStack[i]);
+ WriteSaveBuf(buf, m_nStackPointer);
+ ZeroSaveBuf(buf, 2);
#ifdef CHECK_STRUCT_SIZES
static_assert(NUM_LOCAL_VARS + NUM_TIMERS == 18, "Compatibility loss: NUM_LOCAL_VARS + NUM_TIMERS != 18");
#endif
for (int i = 0; i < NUM_LOCAL_VARS + NUM_TIMERS; i++)
- WriteSaveBuf(buf, m_anLocalVariables[i]);
- WriteSaveBuf(buf, m_bIsActive);
- WriteSaveBuf(buf, m_bCondResult);
- WriteSaveBuf(buf, m_bIsMissionScript);
- WriteSaveBuf(buf, m_bSkipWakeTime);
- WriteSaveBuf(buf, m_nWakeTime);
- WriteSaveBuf(buf, m_nAndOrState);
- WriteSaveBuf(buf, m_bNotFlag);
- WriteSaveBuf(buf, m_bDeatharrestEnabled);
- WriteSaveBuf(buf, m_bDeatharrestExecuted);
- WriteSaveBuf(buf, m_bMissionFlag);
- SkipSaveBuf(buf, 2);
+ WriteSaveBuf(buf, m_anLocalVariables[i]);
+ WriteSaveBuf(buf, m_bIsActive);
+ WriteSaveBuf(buf, m_bCondResult);
+ WriteSaveBuf(buf, m_bIsMissionScript);
+ WriteSaveBuf(buf, m_bSkipWakeTime);
+ WriteSaveBuf(buf, m_nWakeTime);
+ WriteSaveBuf(buf, m_nAndOrState);
+ WriteSaveBuf(buf, m_bNotFlag);
+ WriteSaveBuf(buf, m_bDeatharrestEnabled);
+ WriteSaveBuf(buf, m_bDeatharrestExecuted);
+ WriteSaveBuf(buf, m_bMissionFlag);
+ ZeroSaveBuf(buf, 2);
#else
WriteSaveBuf(buf, *this);
#endif
@@ -2291,35 +2304,35 @@ void CRunningScript::Load(uint8*& buf)
#ifdef COMPATIBLE_SAVES
SkipSaveBuf(buf, 8);
for (int i = 0; i < 8; i++)
- m_abScriptName[i] = ReadSaveBuf(buf);
- m_nIp = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_abScriptName[i], buf);
+ ReadSaveBuf(&m_nIp, buf);
#ifdef CHECK_STRUCT_SIZES
static_assert(MAX_STACK_DEPTH == 6, "Compatibility loss: MAX_STACK_DEPTH != 6");
#endif
for (int i = 0; i < MAX_STACK_DEPTH; i++)
- m_anStack[i] = ReadSaveBuf(buf);
- m_nStackPointer = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_anStack[i], buf);
+ ReadSaveBuf(&m_nStackPointer, buf);
SkipSaveBuf(buf, 2);
#ifdef CHECK_STRUCT_SIZES
static_assert(NUM_LOCAL_VARS + NUM_TIMERS == 18, "Compatibility loss: NUM_LOCAL_VARS + NUM_TIMERS != 18");
#endif
for (int i = 0; i < NUM_LOCAL_VARS + NUM_TIMERS; i++)
- m_anLocalVariables[i] = ReadSaveBuf(buf);
- m_bIsActive = ReadSaveBuf(buf);
- m_bCondResult = ReadSaveBuf(buf);
- m_bIsMissionScript = ReadSaveBuf(buf);
- m_bSkipWakeTime = ReadSaveBuf(buf);
- m_nWakeTime = ReadSaveBuf(buf);
- m_nAndOrState = ReadSaveBuf(buf);
- m_bNotFlag = ReadSaveBuf(buf);
- m_bDeatharrestEnabled = ReadSaveBuf(buf);
- m_bDeatharrestExecuted = ReadSaveBuf(buf);
- m_bMissionFlag = ReadSaveBuf(buf);
+ ReadSaveBuf(&m_anLocalVariables[i], buf);
+ ReadSaveBuf(&m_bIsActive, buf);
+ ReadSaveBuf(&m_bCondResult, buf);
+ ReadSaveBuf(&m_bIsMissionScript, buf);
+ ReadSaveBuf(&m_bSkipWakeTime, buf);
+ ReadSaveBuf(&m_nWakeTime, buf);
+ ReadSaveBuf(&m_nAndOrState, buf);
+ ReadSaveBuf(&m_bNotFlag, buf);
+ ReadSaveBuf(&m_bDeatharrestEnabled, buf);
+ ReadSaveBuf(&m_bDeatharrestExecuted, buf);
+ ReadSaveBuf(&m_bMissionFlag, buf);
SkipSaveBuf(buf, 2);
#else
CRunningScript* n = next;
CRunningScript* p = prev;
- *this = ReadSaveBuf(buf);
+ ReadSaveBuf(this, buf);
next = n;
prev = p;
#endif
diff --git a/src/control/Script8.cpp b/src/control/Script8.cpp
index 2d1ccdf4..56d7ed90 100644
--- a/src/control/Script8.cpp
+++ b/src/control/Script8.cpp
@@ -387,7 +387,7 @@ int8 CRunningScript::ProcessCommands1400To1499(int32 command)
#if (defined GTAVC_JP_PATCH || defined SUPPORT_JAPANESE_SCRIPT)
case COMMAND_IS_JAPANESE_GAME:
#ifdef MORE_LANGUAGES
- UpdateCompareFlag(FrontEndMenuManager.m_PrefsLanguage == LANGUAGE_JAPANESE);
+ UpdateCompareFlag(FrontEndMenuManager.m_PrefsLanguage == CMenuManager::LANGUAGE_JAPANESE);
#elif (defined GTAVC_JP_PATCH)
UpdateCompareFlag(true);
#else
diff --git a/src/control/SetPieces.cpp b/src/control/SetPieces.cpp
index 0409a8bf..5edcd335 100644
--- a/src/control/SetPieces.cpp
+++ b/src/control/SetPieces.cpp
@@ -11,6 +11,7 @@
#include "Wanted.h"
#include "World.h"
#include "VarConsole.h"
+#include "SaveBuf.h"
#define TIME_BETWEEN_SETPIECE_SPAWNS 20000
@@ -67,9 +68,9 @@ VALIDATESAVEBUF(*size)
void CSetPieces::Load(uint8* buf, uint32 size)
{
INITSAVEBUF
- NumSetPieces = ReadSaveBuf(buf);
+ ReadSaveBuf(&NumSetPieces, buf);
for (int i = 0; i < NUM_SETPIECES; i++)
- aSetPieces[i] = ReadSaveBuf(buf);
+ ReadSaveBuf(&aSetPieces[i], buf);
VALIDATESAVEBUF(size)
}
diff --git a/src/core/Cam.cpp b/src/core/Cam.cpp
index fdfe2275..cafbd340 100644
--- a/src/core/Cam.cpp
+++ b/src/core/Cam.cpp
@@ -1183,7 +1183,7 @@ CCam::Process_FollowPed(const CVector &CameraTarget, float TargetOrientation, fl
float ReqSpeed = DeltaBeta * SpeedMultiplier;
// this is also added
- ReqSpeed = clamp(ReqSpeed, -SpeedLimit, SpeedLimit);
+ ReqSpeed = Clamp(ReqSpeed, -SpeedLimit, SpeedLimit);
// Add or subtract absolute depending on sign, genius!
if(ReqSpeed - BetaSpeed > 0.0f)
@@ -1678,7 +1678,7 @@ CCam::WorkOutCamHeight(const CVector &TargetCoors, float TargetOrientation, floa
Test.z = TargetCoors.z + 0.2f + Length*Sin(CarAlpha+AlphaOffset) + m_fCloseInCarHeightOffset;
if(CWorld::ProcessVerticalLine(Test, CamTargetEntity->GetPosition().z, point, entity, true, false, false, false, false, false, nil)){
float sin = (point.point.z - TargetCoors.z - 0.2f - m_fCloseInCarHeightOffset)/Length;
- CarAlpha = Asin(clamp(sin, -1.0f, 1.0f)) - AlphaOffset;
+ CarAlpha = Asin(Clamp(sin, -1.0f, 1.0f)) - AlphaOffset;
if(CarAlpha < 0.0f)
AlphaOffset += CarAlpha;
}
@@ -1828,7 +1828,7 @@ CCam::Process_Cam_On_A_String(const CVector &CameraTarget, float TargetOrientati
if(DeltaBeta > PI) DeltaBeta -= TWOPI;
else if(DeltaBeta < -PI) DeltaBeta += TWOPI;
float dist = (TargetCoors - Source).Magnitude();
- dist = FIRETRUCK_TRACKING_MULT*dist*clamp(DeltaBeta, -0.8f, 0.8f);
+ dist = FIRETRUCK_TRACKING_MULT*dist*Clamp(DeltaBeta, -0.8f, 0.8f);
Source += dist*CrossProduct(Front, CVector(0.0f, 0.0f, 1.0f));
}
@@ -2801,7 +2801,7 @@ CCam::Process_1rstPersonPedOnPC(const CVector&, float TargetOrientation, float,
if(BetaOffset > PI) BetaOffset -= TWOPI;
else if(BetaOffset < PI) BetaOffset += TWOPI;
- BetaOffset = clamp(BetaOffset, -pedTarget->m_attachRotStep, pedTarget->m_attachRotStep);
+ BetaOffset = Clamp(BetaOffset, -pedTarget->m_attachRotStep, pedTarget->m_attachRotStep);
Beta = NewBeta + BetaOffset;
}
@@ -3271,7 +3271,7 @@ CCam::Process_BehindBoat(const CVector &CameraTarget, float TargetOrientation, f
// useless call
//CWaterLevel::GetWaterLevelNoWaves(TargetCoors.x, TargetCoors.y, TargetCoors.z, &Water);
Water = (WaterLevel + WATER_Z_ADDITION_MIN - WaterLevelBuffered - WATER_Z_ADDITION)/(BoatDimensions.z/2.0f + MaxHeightUp);
- TargetAlpha = Asin(clamp(Water, -1.0f, 1.0f));
+ TargetAlpha = Asin(Clamp(Water, -1.0f, 1.0f));
}
if(ResetStatics){
@@ -3457,7 +3457,7 @@ FindSplinePathPositionFloat(float *out, float *spline, uint32 time, uint32 &mark
}
}
float a = ((float)time - (float)MS(spline[marker-4])) / (float)MS(spline[marker] - spline[marker-4]);
- a = clamp(a, 0.0f, 1.0f);
+ a = Clamp(a, 0.0f, 1.0f);
float b = 1.0f - a;
*out = b*b*b * spline[marker-3] +
3.0f*a*b*b * spline[marker-1] +
@@ -3495,7 +3495,7 @@ FindSplinePathPositionVector(CVector *out, float *spline, uint32 time, uint32 &m
}
float a = ((float)time - (float)MS(spline[marker-10])) / (float)MS(spline[marker] - spline[marker-10]);
- a = clamp(a, 0.0f, 1.0f);
+ a = Clamp(a, 0.0f, 1.0f);
float b = 1.0f - a;
out->x =
b*b*b * spline[marker-9] +
@@ -4921,7 +4921,7 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
// 0.98f: CAR_FOV_FADE_MULT
FOV = Pow(0.98f, CTimer::GetTimeStep()) * (FOV - DefaultFOV) + DefaultFOV;
- FOV = clamp(FOV, DefaultFOV, DefaultFOV + 30.0f);
+ FOV = Clamp(FOV, DefaultFOV, DefaultFOV + 30.0f);
}
// WORKAROUND: I still don't know how looking behind works (m_bCamDirectlyInFront is unused in III, they seem to use m_bUseTransitionBeta)
@@ -4952,9 +4952,9 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
AlphaSpeed = 0.0;
Distance = 1000.0;
- Front.x = -(cos(Beta) * cos(Alpha));
- Front.y = -(sin(Beta) * cos(Alpha));
- Front.z = sin(Alpha);
+ Front.x = -(Cos(Beta) * Cos(Alpha));
+ Front.y = -(Sin(Beta) * Cos(Alpha));
+ Front.z = Sin(Alpha);
m_aTargetHistoryPosOne = TargetCoors - nextDistance * Front;
@@ -5040,7 +5040,7 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
}
}
- float targetAlpha = Asin(clamp(Front.z, -1.0f, 1.0f)) - zoomModeAlphaOffset;
+ float targetAlpha = Asin(Clamp(Front.z, -1.0f, 1.0f)) - zoomModeAlphaOffset;
if (targetAlpha <= maxAlphaAllowed) {
if (targetAlpha < -CARCAM_SET[camSetArrPos][14])
targetAlpha = -CARCAM_SET[camSetArrPos][14];
@@ -5228,9 +5228,9 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
lastBeta = Beta;
- Front.x = -(cos(Beta) * cos(Alpha));
- Front.y = -(sin(Beta) * cos(Alpha));
- Front.z = sin(Alpha);
+ Front.x = -(Cos(Beta) * Cos(Alpha));
+ Front.y = -(Sin(Beta) * Cos(Alpha));
+ Front.z = Sin(Alpha);
GetVectorsReadyForRW();
TheCamera.m_bCamDirectlyBehind = false;
TheCamera.m_bCamDirectlyInFront = false;
@@ -5240,9 +5240,9 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
m_cvecTargetCoorsForFudgeInter = TargetCoors;
m_aTargetHistoryPosThree = m_aTargetHistoryPosOne;
float nextAlpha = alphaWithSpeedAccounted + zoomModeAlphaOffset;
- float nextFrontX = -(cos(Beta) * cos(nextAlpha));
- float nextFrontY = -(sin(Beta) * cos(nextAlpha));
- float nextFrontZ = sin(nextAlpha);
+ float nextFrontX = -(Cos(Beta) * Cos(nextAlpha));
+ float nextFrontY = -(Sin(Beta) * Cos(nextAlpha));
+ float nextFrontZ = Sin(nextAlpha);
m_aTargetHistoryPosOne.x = TargetCoors.x - nextFrontX * nextDistance;
m_aTargetHistoryPosOne.y = TargetCoors.y - nextFrontY * nextDistance;
@@ -5395,7 +5395,7 @@ CCam::Process_FollowCar_SA(const CVector& CameraTarget, float TargetOrientation,
float alphaToFace = Atan2(hi.z, hi.Magnitude2D()) + DEGTORAD(15.0f);
float neededAlphaTurn = alphaToFace - carGunUD;
- float alphaTurnPerFrame = CTimer::GetTimeStep() * 0.02f;
+ float alphaTurnPerFrame = CTimer::GetTimeStepInSeconds();
if (neededAlphaTurn > alphaTurnPerFrame) {
neededTurn = alphaTurnPerFrame;
diff --git a/src/core/Camera.cpp b/src/core/Camera.cpp
index 5b3f9aa5..e7cd65a0 100644
--- a/src/core/Camera.cpp
+++ b/src/core/Camera.cpp
@@ -213,7 +213,7 @@ CCamera::Init(void)
m_iModeToGoTo = CCam::MODE_FOLLOWPED;
m_bJust_Switched = false;
m_bUseTransitionBeta = false;
- m_matrix.SetScale(1.0f);
+ GetMatrix().SetScale(1.0f);
m_bTargetJustBeenOnTrain = false;
m_bInitialNoNodeStaticsSet = false;
m_uiLongestTimeInMill = 5000;
@@ -347,7 +347,7 @@ CCamera::Process(void)
currentTime = m_uiTransitionDuration;
float fractionInter = (float) currentTime / m_uiTransitionDuration;
float fractionInterTarget = (float) currentTime / m_uiTransitionDurationTargetCoors;
- fractionInterTarget = clamp(fractionInterTarget, 0.0f, 1.0f);
+ fractionInterTarget = Clamp(fractionInterTarget, 0.0f, 1.0f);
// Interpolate target separately
if(fractionInterTarget <= m_fFractionInterToStopMovingTarget){
@@ -551,7 +551,7 @@ CCamera::Process(void)
// Process Shake
float shakeStrength = m_fCamShakeForce - 0.28f*(CTimer::GetTimeInMilliseconds()-m_uiCamShakeStart)/1000.0f;
- shakeStrength = clamp(shakeStrength, 0.0f, 2.0f);
+ shakeStrength = Clamp(shakeStrength, 0.0f, 2.0f);
int shakeRand = CGeneral::GetRandomNumber();
float shakeOffset = shakeStrength*0.1f;
GetMatrix().GetPosition().x += shakeOffset * ((shakeRand & 0xF) - 7);
@@ -1913,7 +1913,7 @@ CCamera::CamShake(float strength, float x, float y, float z)
float curForce = mult*(m_fCamShakeForce - (CTimer::GetTimeInMilliseconds() - m_uiCamShakeStart)/1000.0f);
strength = mult*strength;
- if(clamp(curForce, 0.0f, 2.0f) < strength){
+ if(Clamp(curForce, 0.0f, 2.0f) < strength){
m_fCamShakeForce = strength;
m_uiCamShakeStart = CTimer::GetTimeInMilliseconds();
}
@@ -1924,7 +1924,7 @@ void
CamShakeNoPos(CCamera *cam, float strength)
{
float curForce = cam->m_fCamShakeForce - (CTimer::GetTimeInMilliseconds() - cam->m_uiCamShakeStart)/1000.0f;
- if(clamp(curForce, 0.0f, 2.0f) < strength){
+ if(Clamp(curForce, 0.0f, 2.0f) < strength){
cam->m_fCamShakeForce = strength;
cam->m_uiCamShakeStart = CTimer::GetTimeInMilliseconds();
}
@@ -3985,7 +3985,7 @@ CCamera::Find3rdPersonCamTargetVector(float dist, CVector pos, CVector &source,
float
CCamera::Find3rdPersonQuickAimPitch(void)
{
- float clampedFrontZ = clamp(Cams[ActiveCam].Front.z, -1.0f, 1.0f);
+ float clampedFrontZ = Clamp(Cams[ActiveCam].Front.z, -1.0f, 1.0f);
float rot = Asin(clampedFrontZ);
@@ -4017,7 +4017,7 @@ CCamera::SetRwCamera(RwCamera *cam)
void
CCamera::CalculateDerivedValues(void)
{
- m_cameraMatrix = Invert(m_matrix);
+ m_cameraMatrix = Invert(GetMatrix());
float hfov = DEGTORAD(CDraw::GetScaledFOV()/2.0f);
float c = Cos(hfov);
@@ -4101,16 +4101,11 @@ CCamera::IsSphereVisible(const CVector ¢er, float radius, const CMatrix *mat
bool
CCamera::IsSphereVisible(const CVector ¢er, float radius)
{
- CMatrix mat = m_cameraMatrix;
- return IsSphereVisible(center, radius, &mat);
+ return IsSphereVisible(center, radius, &GetCameraMatrix());
}
bool
-#ifdef GTA_PS2
-CCamera::IsBoxVisible(CVuVector *box, const CMatrix *mat)
-#else
-CCamera::IsBoxVisible(CVector *box, const CMatrix *mat)
-#endif
+CCamera::IsBoxVisible(CVUVECTOR *box, const CMatrix *mat)
{
int i;
int frustumTests[6] = { 0 };
diff --git a/src/core/Camera.h b/src/core/Camera.h
index 538ff067..39ecb760 100644
--- a/src/core/Camera.h
+++ b/src/core/Camera.h
@@ -633,11 +633,7 @@ public:
bool IsPointVisible(const CVector ¢er, const CMatrix *mat);
bool IsSphereVisible(const CVector ¢er, float radius, const CMatrix *mat);
bool IsSphereVisible(const CVector ¢er, float radius);
-#ifdef GTA_PS2
- bool IsBoxVisible(CVuVector *box, const CMatrix *mat);
-#else
- bool IsBoxVisible(CVector *box, const CMatrix *mat);
-#endif
+ bool IsBoxVisible(CVUVECTOR *box, const CMatrix *mat);
};
VALIDATE_SIZE(CCamera, 0xE9D8);
diff --git a/src/core/CdStreamPosix.cpp b/src/core/CdStreamPosix.cpp
index 4e58a854..84040544 100644
--- a/src/core/CdStreamPosix.cpp
+++ b/src/core/CdStreamPosix.cpp
@@ -20,6 +20,7 @@
#include
#include
#include
+#include
#ifdef __linux__
#include
diff --git a/src/core/Crime.h b/src/core/Crime.h
index 3c3e2b26..4c7ea315 100644
--- a/src/core/Crime.h
+++ b/src/core/Crime.h
@@ -28,7 +28,7 @@ class CCrimeBeingQd
{
public:
eCrimeType m_nType;
- uint32 m_nId;
+ int32 m_nId;
uint32 m_nTime;
CVector m_vecPosn;
bool m_bReported;
diff --git a/src/core/FileLoader.cpp b/src/core/FileLoader.cpp
index ab85a958..cd39d159 100644
--- a/src/core/FileLoader.cpp
+++ b/src/core/FileLoader.cpp
@@ -1122,7 +1122,7 @@ CFileLoader::Load2dEffect(const char *line)
&probability);
effect->attractor.type = flags;
#ifdef FIX_BUGS
- effect->attractor.probability = clamp(probability, 0, 255);
+ effect->attractor.probability = Clamp(probability, 0, 255);
#else
effect->attractor.probability = probability;
#endif
@@ -1254,7 +1254,7 @@ CFileLoader::LoadObjectInstance(const char *line)
if(!CStreaming::IsObjectInCdImage(id))
debug("Not in cdimage %s\n", mi->GetModelName());
- angle = -RADTODEG(2.0f * acosf(angle));
+ angle = -RADTODEG(2.0f * Acos(angle));
xform = RwMatrixCreate();
RwMatrixRotate(xform, &axis, angle, rwCOMBINEREPLACE);
RwMatrixTranslate(xform, &trans, rwCOMBINEPOSTCONCAT);
diff --git a/src/core/Fire.cpp b/src/core/Fire.cpp
index 8a6db0da..57315b15 100644
--- a/src/core/Fire.cpp
+++ b/src/core/Fire.cpp
@@ -457,7 +457,7 @@ CFireManager::StartScriptFire(const CVector &pos, CEntity *target, float strengt
if (target) {
if (target->IsPed()) {
ped->m_pFire = fire;
- if (target != (CVehicle *)FindPlayerPed()) {
+ if (target != FindPlayerPed()) {
CVector2D pos = target->GetPosition();
ped->SetFlee(pos, 10000);
ped->SetMoveAnim();
diff --git a/src/core/Frontend.cpp b/src/core/Frontend.cpp
index 61ccabcd..6926476c 100644
--- a/src/core/Frontend.cpp
+++ b/src/core/Frontend.cpp
@@ -181,7 +181,7 @@ const char* FrontendFilenames[][2] = {
#ifdef XBOX_MESSAGE_SCREEN
bool CMenuManager::m_bDialogOpen = false;
uint32 CMenuManager::m_nDialogHideTimer = 0;
-PauseModeTime CMenuManager::m_nDialogHideTimerPauseMode = 0;
+uint32 CMenuManager::m_nDialogHideTimerPauseMode = 0;
bool CMenuManager::m_bSaveWasSuccessful = false;
wchar* CMenuManager::m_pDialogText = nil;
#endif
@@ -701,27 +701,27 @@ CMenuManager::CheckSliderMovement(int value)
switch (aScreens[m_nCurrScreen].m_aEntries[m_nCurrOption].m_Action) {
case MENUACTION_BRIGHTNESS:
m_PrefsBrightness += value * 24.19f;
- m_PrefsBrightness = clamp(m_PrefsBrightness, 0, 384);
+ m_PrefsBrightness = Clamp(m_PrefsBrightness, 0, 384);
break;
case MENUACTION_DRAWDIST:
if(value > 0)
m_PrefsLOD += ((1.8f - 0.925f) / 16.0f);
else
m_PrefsLOD -= ((1.8f - 0.925f) / 16.0f);
- m_PrefsLOD = clamp(m_PrefsLOD, 0.925f, 1.8f);
+ m_PrefsLOD = Clamp(m_PrefsLOD, 0.925f, 1.8f);
CRenderer::ms_lodDistScale = m_PrefsLOD;
break;
case MENUACTION_MUSICVOLUME:
if (m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER) {
m_PrefsMusicVolume += value * (128 / 32);
- m_PrefsMusicVolume = clamp(m_PrefsMusicVolume, 0, 65);
+ m_PrefsMusicVolume = Clamp(m_PrefsMusicVolume, 0, 65);
DMAudio.SetMusicMasterVolume(m_PrefsMusicVolume);
}
break;
case MENUACTION_SFXVOLUME:
if (m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER) {
m_PrefsSfxVolume += value * (128 / 32);
- m_PrefsSfxVolume = clamp(m_PrefsSfxVolume, 0, 65);
+ m_PrefsSfxVolume = Clamp(m_PrefsSfxVolume, 0, 65);
DMAudio.SetEffectsMasterVolume(m_PrefsSfxVolume);
}
break;
@@ -729,14 +729,14 @@ CMenuManager::CheckSliderMovement(int value)
if (m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER) {
if (DMAudio.IsMP3RadioChannelAvailable()) {
m_PrefsMP3BoostVolume += value * (128 / 32);
- m_PrefsMP3BoostVolume = clamp(m_PrefsMP3BoostVolume, 0, 65);
+ m_PrefsMP3BoostVolume = Clamp(m_PrefsMP3BoostVolume, 0, 65);
DMAudio.SetMP3BoostVolume(m_PrefsMP3BoostVolume);
}
}
break;
case MENUACTION_MOUSESENS:
TheCamera.m_fMouseAccelHorzntl += value * 1.0f/200.0f/15.0f; // ???
- TheCamera.m_fMouseAccelHorzntl = clamp(TheCamera.m_fMouseAccelHorzntl, 1.0f/3200.0f, 1.0f/200.0f);
+ TheCamera.m_fMouseAccelHorzntl = Clamp(TheCamera.m_fMouseAccelHorzntl, 1.0f/3200.0f, 1.0f/200.0f);
#ifdef FIX_BUGS
TheCamera.m_fMouseAccelVertical = TheCamera.m_fMouseAccelHorzntl + 0.0005f;
#endif
@@ -754,7 +754,7 @@ CMenuManager::DisplayHelperText(char *text)
return;
// there was a unused static bool
- static PauseModeTime LastFlash = 0;
+ static uint32 LastFlash = 0;
int32 alpha = 255;
CFont::SetRightJustifyOn();
@@ -1429,19 +1429,21 @@ CMenuManager::DrawStandardMenus(bool activeScreen)
}
}
- static PauseModeTime lastBlendChange = 0;
+ static uint32 lastBlendChange = 0;
if (m_nOptionHighlightTransitionBlend <= 255) {
static uint32 blendChangeCounter = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastBlendChange > 20
-#ifndef FIX_HIGH_FPS_BUGS_ON_FRONTEND // Dirty dirty hack
|| blendChangeCounter > 20
-#endif
) {
m_nOptionHighlightTransitionBlend += 50;
lastBlendChange = CTimer::GetTimeInMillisecondsPauseMode();
blendChangeCounter = 0;
}
+#ifdef FIX_BUGS
+ blendChangeCounter += CTimer::GetLogicalFramesPassed();
+#else
++blendChangeCounter;
+#endif
}
}
@@ -1932,7 +1934,7 @@ CMenuManager::DrawControllerBound(int32 yStart, int32 xStart, int32 unused, int8
CFont::PrintString(nextX, nextY, seperator);
nextX += CFont::GetStringWidth(seperator, true) + bindingMargin;
}
- static PauseModeTime lastWaitingTextFlash = 0;
+ static uint32 lastWaitingTextFlash = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastWaitingTextFlash > 150) {
showWaitingText = !showWaitingText;
lastWaitingTextFlash = CTimer::GetTimeInMillisecondsPauseMode();
@@ -1997,7 +1999,7 @@ CMenuManager::DrawControllerScreenExtraText(int yStart, int xStart, int lineHeig
CFont::PrintString(nextX, MENU_Y(yStart), TheText.Get("FEC_IBT"));
nextX = CFont::GetStringWidth(TheText.Get("FEC_IBT"), true) + spacing + nextX;
}
- static PauseModeTime lastStateChange = 0;
+ static uint32 lastStateChange = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastStateChange > 150) {
waitingTextVisible = !waitingTextVisible;
lastStateChange = CTimer::GetTimeInMillisecondsPauseMode();
@@ -2381,22 +2383,27 @@ CMenuManager::DrawBackground(bool transitionCall)
m_nOptionHighlightTransitionBlend = 0;
}
- static PauseModeTime LastFade = 0;
+ static uint32 LastFade = 0;
if (m_nMenuFadeAlpha < 255) {
static uint8 forceFadeInCounter = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - LastFade > 30
-#ifndef FIX_HIGH_FPS_BUGS_ON_FRONTEND // Dirty dirty hack
|| forceFadeInCounter > 30
-#endif
) {
m_nMenuFadeAlpha += 20;
if (m_firstStartCounter < 255) {
m_firstStartCounter = Min(m_firstStartCounter + 20, 255);
}
LastFade = CTimer::GetTimeInMillisecondsPauseMode();
+#ifdef FIX_BUGS
+ forceFadeInCounter = 0;
+#endif
}
+#ifdef FIX_BUGS
+ forceFadeInCounter += CTimer::GetLogicalFramesPassed();
+#else
forceFadeInCounter++;
+#endif
} else if (m_nMenuFadeAlpha > 255)
m_nMenuFadeAlpha = 255;
@@ -2452,7 +2459,7 @@ CMenuManager::DrawBackground(bool transitionCall)
}
if (m_ShowEmptyBindingError) {
- static PauseModeTime lastBindingError = CTimer::GetTimeInMillisecondsPauseMode();
+ static uint32 lastBindingError = CTimer::GetTimeInMillisecondsPauseMode();
static bool bindingErrorShown = false;
if (bindingErrorShown) {
lastBindingError = CTimer::GetTimeInMillisecondsPauseMode();
@@ -2899,9 +2906,15 @@ CMenuManager::InitialiseChangedLanguageSettings()
{
if (m_bFrontEnd_ReloadObrTxtGxt) {
m_bFrontEnd_ReloadObrTxtGxt = false;
+#ifdef FIX_BUGS
+ if (gGameState > GS_INIT_ONCE)
+#endif
CTimer::Stop();
TheText.Unload();
TheText.Load();
+#ifdef FIX_BUGS
+ if (gGameState > GS_INIT_ONCE)
+#endif
CTimer::Update();
CGame::frenchGame = false;
CGame::germanGame = false;
@@ -3112,11 +3125,10 @@ CMenuManager::LoadSettings()
#ifdef LOAD_INI_SETTINGS
if (LoadINISettings()) {
LoadINIControllerSettings();
- } else {
- // no re3.ini, create it
- SaveINISettings();
- SaveINIControllerSettings();
}
+ // if no reVC.ini, create it, or update it with new values
+ SaveINISettings();
+ SaveINIControllerSettings();
#endif
#ifdef FIX_BUGS
@@ -3348,7 +3360,7 @@ CMenuManager::PrintStats()
else
CFont::SetScale(MENU_X(0.37f), MENU_Y(0.75f));
- static PauseModeTime lastCheck = 0;
+ static uint32 lastCheck = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastCheck > 40) {
@@ -3476,8 +3488,8 @@ CMenuManager::Process(void)
break; \
\
m_fMapSize *= z2; \
- m_fMapCenterX = clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2); \
- m_fMapCenterY = clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2); \
+ m_fMapCenterX = Clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2); \
+ m_fMapCenterY = Clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2); \
} while(0)
#endif
@@ -3489,7 +3501,7 @@ CMenuManager::AdditionalOptionInput(bool &goBack)
switch (m_nCurrScreen) {
case MENUPAGE_MAP:
{
- static PauseModeTime lastMapTick = 0;
+ static uint32 lastMapTick = 0;
// FIX: All those macros were hardcoded values originally.
@@ -3515,8 +3527,8 @@ CMenuManager::AdditionalOptionInput(bool &goBack)
m_fMapCenterX += (SCREEN_WIDTH/2 - m_fMapCenterX) / ((m_fMapSize - MENU_X(MAP_MIN_SIZE)) * 1/15.f);
m_fMapSize = Max(MENU_Y(MAP_MIN_SIZE), m_fMapSize - MENU_Y(15.f));
- m_fMapCenterX = clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2);
- m_fMapCenterY = clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2);
+ m_fMapCenterX = Clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2);
+ m_fMapCenterY = Clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2);
} else {
m_fMapSize = MENU_Y(MAP_MIN_SIZE);
}
@@ -3557,8 +3569,8 @@ CMenuManager::AdditionalOptionInput(bool &goBack)
if (!justResetPointer) {
m_fMapCenterX += m_nMousePosX - m_nMouseOldPosX;
m_fMapCenterY += m_nMousePosY - m_nMouseOldPosY;
- m_fMapCenterX = clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2);
- m_fMapCenterY = clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2);
+ m_fMapCenterX = Clamp(m_fMapCenterX, SCREEN_WIDTH/2 - (m_fMapSize - MENU_X(MAP_MIN_SIZE)), m_fMapSize - MENU_X(MAP_MIN_SIZE) + SCREEN_WIDTH/2);
+ m_fMapCenterY = Clamp(m_fMapCenterY, SCREEN_HEIGHT/2 - (m_fMapSize - MENU_Y(MAP_MIN_SIZE)), m_fMapSize - MENU_Y(MAP_MIN_SIZE) + SCREEN_HEIGHT/2);
}
justResetPointer = false;
@@ -3818,7 +3830,7 @@ CMenuManager::ExportStats()
void
CMenuManager::PrintRadioSelector(void)
{
- static PauseModeTime lastRadioChange = 0;
+ static uint32 lastRadioChange = 0;
CSprite2d::Draw2DPolygon(MENU_X_LEFT_ALIGNED(418.f), MENU_Y(MENURADIO_SELECTOR_START_Y + MENURADIO_SELECTOR_HEIGHT),
MENU_X_LEFT_ALIGNED(228.f), MENU_Y(MENURADIO_SELECTOR_START_Y + MENURADIO_SELECTOR_HEIGHT),
@@ -3941,7 +3953,7 @@ CMenuManager::PrintRadioSelector(void)
#endif
static bool radioChangeRequested = false;
- static PauseModeTime lastScrollCheck = 0;
+ static uint32 lastScrollCheck = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastScrollCheck > 17) {
if (m_ScrollRadioBy == 1) {
if (m_LeftMostRadioX > MENU_X_LEFT_ALIGNED(MENURADIO_ICON_FIRST_X - MENURADIO_ICON_SIZE)) {
@@ -3984,7 +3996,7 @@ CMenuManager::PrintRadioSelector(void)
if (radioChangeRequested) {
if (CTimer::GetTimeInMillisecondsPauseMode() - lastRadioChange > 50) {
DMAudio.SetRadioInCar(m_PrefsRadioStation);
- DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, 1);
+ DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, TRUE);
OutputDebugString("FRONTEND RADIO STATION CHANGED");
lastRadioChange = CTimer::GetTimeInMillisecondsPauseMode();
radioChangeRequested = false;
@@ -4025,7 +4037,7 @@ CMenuManager::ProcessList(bool &optionSelected, bool &goBack)
field_159 = false;
}
- static PauseModeTime lastTimeClickedScrollButton = 0;
+ static uint32 lastTimeClickedScrollButton = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastTimeClickedScrollButton >= 200) {
m_bPressedPgUpOnList = false;
@@ -4411,7 +4423,7 @@ CMenuManager::UserInput(void)
int curAction = aScreens[m_nCurrScreen].m_aEntries[m_nCurrOption].m_Action;
if (CPad::GetPad(0)->GetLeft() || CPad::GetPad(0)->GetPedWalkLeftRight() < 0 || CPad::GetPad(0)->GetDPadLeft()) {
- static PauseModeTime lastSliderDecrease = 0;
+ static uint32 lastSliderDecrease = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastSliderDecrease > 150) {
if (curAction == MENUACTION_BRIGHTNESS || curAction == MENUACTION_MUSICVOLUME ||
curAction == MENUACTION_SFXVOLUME || curAction == MENUACTION_RADIO ||
@@ -4422,7 +4434,7 @@ CMenuManager::UserInput(void)
lastSliderDecrease = CTimer::GetTimeInMillisecondsPauseMode();
}
} else if (CPad::GetPad(0)->GetRight() || CPad::GetPad(0)->GetPedWalkLeftRight() > 0 || CPad::GetPad(0)->GetDPadRight()) {
- static PauseModeTime lastSliderIncrease = 0;
+ static uint32 lastSliderIncrease = 0;
if (CTimer::GetTimeInMillisecondsPauseMode() - lastSliderIncrease > 150) {
if (curAction == MENUACTION_BRIGHTNESS || curAction == MENUACTION_MUSICVOLUME ||
curAction == MENUACTION_SFXVOLUME || curAction == MENUACTION_RADIO ||
@@ -4561,19 +4573,11 @@ CMenuManager::ProcessUserInput(uint8 goDown, uint8 goUp, uint8 optionSelected, u
#ifdef USE_DEBUG_SCRIPT_LOADER
if (m_nCurrScreen == MENUPAGE_START_MENU || m_nCurrScreen == MENUPAGE_NEW_GAME || m_nCurrScreen == MENUPAGE_NEW_GAME_RELOAD) {
-#ifdef RW_GL3
- if (glfwGetKey(PSGLOBAL(window), GLFW_KEY_R) == GLFW_PRESS) {
+ if (CPad::GetPad(0)->GetChar('R')) {
scriptToLoad = 1;
DoSettingsBeforeStartingAGame();
return;
}
-#elif defined _WIN32
- if (GetAsyncKeyState('R') & 0x8000) {
- scriptToLoad = 1;
- DoSettingsBeforeStartingAGame();
- return;
- }
-#endif
}
#endif
@@ -4718,7 +4722,7 @@ CMenuManager::ProcessUserInput(uint8 goDown, uint8 goUp, uint8 optionSelected, u
case MENUACTION_LOADRADIO:
if (m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER) {
SwitchToNewScreen(MENUPAGE_SOUND_SETTINGS);
- DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, 1);
+ DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, TRUE);
OutputDebugString("STARTED PLAYING FRONTEND AUDIO TRACK");
}
break;
@@ -4823,7 +4827,7 @@ CMenuManager::ProcessUserInput(uint8 goDown, uint8 goUp, uint8 optionSelected, u
DMAudio.SetMusicMasterVolume(m_PrefsMusicVolume);
DMAudio.SetEffectsMasterVolume(m_PrefsSfxVolume);
DMAudio.SetRadioInCar(m_PrefsRadioStation);
- DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, 1);
+ DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, TRUE);
SaveSettings();
} else if (m_nCurrScreen == MENUPAGE_DISPLAY_SETTINGS) {
m_PrefsBrightness = 256;
@@ -5059,7 +5063,7 @@ CMenuManager::ProcessUserInput(uint8 goDown, uint8 goUp, uint8 optionSelected, u
case MENUACTION_SPEAKERCONF:
if (m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER) {
m_PrefsSpeakers -= changeAmount;
- m_PrefsSpeakers = clamp(m_PrefsSpeakers, 0, 2);
+ m_PrefsSpeakers = Clamp(m_PrefsSpeakers, 0, 2);
DMAudio.SetSpeakerConfig(m_PrefsSpeakers);
SaveSettings();
}
@@ -5418,7 +5422,7 @@ CMenuManager::ProcessFileActions()
{
#ifdef XBOX_MESSAGE_SCREEN
if (m_bDialogOpen && DialogTextCmp("FESZ_WR")) {
- PauseModeTime startTime = CTimer::GetTimeInMillisecondsPauseMode();
+ uint32 startTime = CTimer::GetTimeInMillisecondsPauseMode();
int8 SaveSlot = PcSaveHelper.SaveSlot(m_nCurrSaveSlot);
PcSaveHelper.PopulateSlotInfo();
@@ -5683,19 +5687,19 @@ CMenuManager::DrawQuitGameScreen(void)
static int32 exitSignalTimer = 0;
#ifdef FIX_BUGS
- int alpha = clamp(m_nMenuFadeAlpha, 0, 255);
+ int alpha = Clamp(m_nMenuFadeAlpha, 0, 255);
#else
int alpha = m_nMenuFadeAlpha;
#endif
#ifndef MUCH_SHORTER_OUTRO_SCREEN
- static PauseModeTime lastTickIncrease = 0;
+ static uint32 lastTickIncrease = 0;
if (alpha == 255 && CTimer::GetTimeInMillisecondsPauseMode() - lastTickIncrease > 10) {
exitSignalTimer++;
lastTickIncrease = CTimer::GetTimeInMillisecondsPauseMode();
}
#else
- static PauseModeTime firstTick = CTimer::GetTimeInMillisecondsPauseMode();
+ static uint32 firstTick = CTimer::GetTimeInMillisecondsPauseMode();
if (alpha == 255 && CTimer::GetTimeInMillisecondsPauseMode() - firstTick > 750) {
exitSignalTimer = 150;
}
diff --git a/src/core/Frontend.h b/src/core/Frontend.h
index db9aebaa..125a2089 100644
--- a/src/core/Frontend.h
+++ b/src/core/Frontend.h
@@ -738,7 +738,7 @@ public:
#ifdef XBOX_MESSAGE_SCREEN
static uint32 m_nDialogHideTimer;
- static PauseModeTime m_nDialogHideTimerPauseMode;
+ static uint32 m_nDialogHideTimerPauseMode;
static bool m_bDialogOpen;
static wchar *m_pDialogText;
static bool m_bSaveWasSuccessful;
diff --git a/src/core/FrontendTriggers.h b/src/core/FrontendTriggers.h
index b2bde09c..bbafb4be 100644
--- a/src/core/FrontendTriggers.h
+++ b/src/core/FrontendTriggers.h
@@ -779,7 +779,7 @@ TriggerAudio_RadioStation(CMenuMultiChoicePicturedTriggered *widget)
if ( CMenuManager::m_PrefsRadioStation != widget->GetMenuSelection() )
{
CMenuManager::m_PrefsRadioStation = widget->GetMenuSelection();
- DMAudio.PlayFrontEndTrack(CMenuManager::m_PrefsRadioStation, 1);
+ DMAudio.PlayFrontEndTrack(CMenuManager::m_PrefsRadioStation, TRUE);
DMAudio.SetRadioInCar(CMenuManager::m_PrefsRadioStation);
}
}
diff --git a/src/core/Frontend_PS2.cpp b/src/core/Frontend_PS2.cpp
index c0fcc652..fa238031 100644
--- a/src/core/Frontend_PS2.cpp
+++ b/src/core/Frontend_PS2.cpp
@@ -1375,7 +1375,7 @@ CMenuManager::DrawFrontEndNormal(void)
if ((m_nStartPauseTimer - CTimer::GetTimeInMillisecondsPauseMode()) <= 1600)
alpha = float(m_nStartPauseTimer - CTimer::GetTimeInMillisecondsPauseMode()) / 400.0f;
- m_someAlpha = 255 - clamp(alpha, 0.0f, 1.0f) * 255.0f;
+ m_someAlpha = 255 - Clamp(alpha, 0.0f, 1.0f) * 255.0f;
switch ( m_nSlidingDir )
{
@@ -1392,7 +1392,7 @@ CMenuManager::DrawFrontEndNormal(void)
float slide = float(m_nEndPauseTimer - CTimer::GetTimeInMillisecondsPauseMode()) / 800.0f;
float alpha = float((int32)(m_nEndPauseTimer - CTimer::GetTimeInMillisecondsPauseMode()) + -266) / 533.0f;
- m_someAlpha = clamp(alpha, 0.0f, 1.0f) * 255.0f;
+ m_someAlpha = Clamp(alpha, 0.0f, 1.0f) * 255.0f;
switch ( m_nSlidingDir )
{
@@ -2858,7 +2858,7 @@ CMenuManager::ProcessDPadCrossJustDown(void)
{
if ( !gMusicPlaying )
{
- DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, 1);
+ DMAudio.PlayFrontEndTrack(m_PrefsRadioStation, TRUE);
gMusicPlaying = true;
}
}
diff --git a/src/core/Game.cpp b/src/core/Game.cpp
index 43bd3d11..c5e5224d 100644
--- a/src/core/Game.cpp
+++ b/src/core/Game.cpp
@@ -245,10 +245,16 @@ CGame::InitialiseRenderWare(void)
#ifdef LIBRW
#ifdef PS2_MATFX
- rw::MatFX::modulateEnvMap = true;
+ rw::MatFX::envMapApplyLight = true;
+ rw::MatFX::envMapUseMatColor = true;
+ rw::MatFX::envMapFlipU = true;
#else
- rw::MatFX::modulateEnvMap = false;
+ rw::MatFX::envMapApplyLight = false;
+ rw::MatFX::envMapUseMatColor = false;
+ rw::MatFX::envMapFlipU = false;
#endif
+ rw::RGBA envcol = { 64, 64, 64, 255 };
+ rw::MatFX::envMapColor = envcol;
#else
#ifdef PS2_MATFX
ReplaceMatFxCallback();
@@ -571,7 +577,7 @@ bool CGame::Initialise(const char* datFile)
#endif
- DMAudio.SetStartingTrackPositions(true);
+ DMAudio.SetStartingTrackPositions(TRUE);
DMAudio.ChangeMusicMode(MUSICMODE_GAME);
return true;
}
diff --git a/src/core/General.h b/src/core/General.h
index 2f205c39..c17d916d 100644
--- a/src/core/General.h
+++ b/src/core/General.h
@@ -56,7 +56,7 @@ public:
static float LimitRadianAngle(float angle)
{
- float result = clamp(angle, -25.0f, 25.0f);
+ float result = Clamp(angle, -25.0f, 25.0f);
while (result >= PI) {
result -= 2 * PI;
diff --git a/src/core/MenuScreensCustom.cpp b/src/core/MenuScreensCustom.cpp
index cdfb3c85..49bb33f8 100644
--- a/src/core/MenuScreensCustom.cpp
+++ b/src/core/MenuScreensCustom.cpp
@@ -26,6 +26,7 @@
#include "ModelInfo.h"
#include "Pad.h"
#include "ControllerConfig.h"
+#include "DMAudio.h"
// Menu screens array is at the bottom of the file.
@@ -181,38 +182,6 @@ void IslandLoadingAfterChange(int8 before, int8 after) {
}
#endif
-#ifdef MORE_LANGUAGES
-void LangPolSelect(int8 action)
-{
- if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_POLISH;
- FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
- FrontEndMenuManager.InitialiseChangedLanguageSettings();
- FrontEndMenuManager.SaveSettings();
- }
-}
-
-void LangRusSelect(int8 action)
-{
- if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_RUSSIAN;
- FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
- FrontEndMenuManager.InitialiseChangedLanguageSettings();
- FrontEndMenuManager.SaveSettings();
- }
-}
-
-void LangJapSelect(int8 action)
-{
- if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_JAPANESE;
- FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
- FrontEndMenuManager.InitialiseChangedLanguageSettings();
- FrontEndMenuManager.SaveSettings();
- }
-}
-#endif
-
#ifndef MULTISAMPLING
void GraphicsGoBack() {
}
@@ -226,6 +195,8 @@ void MultiSamplingButtonPress(int8 action) {
if (FrontEndMenuManager.m_nDisplayMSAALevel != FrontEndMenuManager.m_nPrefsMSAALevel) {
FrontEndMenuManager.m_nPrefsMSAALevel = FrontEndMenuManager.m_nDisplayMSAALevel;
_psSelectScreenVM(FrontEndMenuManager.m_nPrefsVideoMode);
+ DMAudio.ChangeMusicMode(MUSICMODE_FRONTEND);
+ DMAudio.Service();
FrontEndMenuManager.SetHelperText(0);
FrontEndMenuManager.SaveSettings();
}
@@ -287,6 +258,8 @@ const char* screenModes[] = { "FED_FLS", "FED_WND" };
void ScreenModeAfterChange(int8 before, int8 after)
{
_psSelectScreenVM(FrontEndMenuManager.m_nPrefsVideoMode); // apply same resolution
+ DMAudio.ChangeMusicMode(MUSICMODE_FRONTEND);
+ DMAudio.Service();
FrontEndMenuManager.SetHelperText(0);
}
@@ -471,11 +444,6 @@ CMenuScreenCustom aScreens[] = {
MENUACTION_LANG_GER, "FEL_GER", {nil, SAVESLOT_NONE, MENUPAGE_LANGUAGE_SETTINGS}, 0, 0, MENUALIGN_CENTER,
MENUACTION_LANG_ITA, "FEL_ITA", {nil, SAVESLOT_NONE, MENUPAGE_LANGUAGE_SETTINGS}, 0, 0, MENUALIGN_CENTER,
MENUACTION_LANG_SPA, "FEL_SPA", {nil, SAVESLOT_NONE, MENUPAGE_LANGUAGE_SETTINGS}, 0, 0, MENUALIGN_CENTER,
-#ifdef MORE_LANGUAGES
- MENUACTION_CFO_DYNAMIC, "FEL_POL", { new CCFODynamic(nil, nil, nil, nil, LangPolSelect) }, 0, 0, MENUALIGN_CENTER,
- MENUACTION_CFO_DYNAMIC, "FEL_RUS", { new CCFODynamic(nil, nil, nil, nil, LangRusSelect) }, 0, 0, MENUALIGN_CENTER
- MENUACTION_CFO_DYNAMIC, "FEL_JAP", { new CCFODynamic(nil, nil, nil, nil, LangJapSelect) }, 0, 0, MENUALIGN_CENTER,
-#endif
MENUACTION_GOBACK, "FEDS_TB", {nil, SAVESLOT_NONE, MENUPAGE_NONE}, 0, 0, MENUALIGN_CENTER,
},
diff --git a/src/core/Placeable.h b/src/core/Placeable.h
index b0f9a15a..94be3211 100644
--- a/src/core/Placeable.h
+++ b/src/core/Placeable.h
@@ -2,12 +2,13 @@
class CPlaceable
{
+protected:
+ CMatrix m_matrix;
+
public:
// disable allocation
static void *operator new(size_t);
- CMatrix m_matrix;
-
CPlaceable(void);
const CVector &GetPosition(void) { return m_matrix.GetPosition(); }
void SetPosition(float x, float y, float z) {
@@ -20,6 +21,7 @@ public:
CVector &GetForward(void) { return m_matrix.GetForward(); }
CVector &GetUp(void) { return m_matrix.GetUp(); }
CMatrix &GetMatrix(void) { return m_matrix; }
+ void SetMatrix(CMatrix &newMatrix) { m_matrix = newMatrix; }
void SetTransform(RwMatrix *m) { m_matrix = CMatrix(m, false); }
void SetHeading(float angle);
void SetOrientation(float x, float y, float z){
@@ -31,4 +33,4 @@ public:
bool IsWithinArea(float x1, float y1, float z1, float x2, float y2, float z2);
};
-VALIDATE_SIZE(CPlaceable, 0x4C);
+VALIDATE_SIZE(CPlaceable, 0x48);
diff --git a/src/core/PlayerInfo.cpp b/src/core/PlayerInfo.cpp
index a64d4cca..36d05b82 100644
--- a/src/core/PlayerInfo.cpp
+++ b/src/core/PlayerInfo.cpp
@@ -299,7 +299,7 @@ CPlayerInfo::Process(void)
m_fRoadDensity = ThePaths.CalcRoadDensity(playerPos.x, playerPos.y);
}
- m_fRoadDensity = clamp(m_fRoadDensity, 0.5f, 1.45f);
+ m_fRoadDensity = Clamp(m_fRoadDensity, 0.5f, 1.45f);
// Because vehicle enter/exit use same key binding.
bool enterOrExitVeh;
diff --git a/src/core/Pools.cpp b/src/core/Pools.cpp
index bf35f8ef..a85d6846 100644
--- a/src/core/Pools.cpp
+++ b/src/core/Pools.cpp
@@ -14,6 +14,7 @@
#include "Wanted.h"
#include "World.h"
#include "MemoryHeap.h"
+#include "SaveBuf.h"
CCPtrNodePool *CPools::ms_pPtrNodePool;
CEntryInfoNodePool *CPools::ms_pEntryInfoNodePool;
@@ -105,7 +106,7 @@ CPools::CheckPoolsEmpty()
printf("pools have been cleared\n");
}
-
+// Thankfully unused, it would break the game!
void
CPools::MakeSureSlotInObjectPoolIsEmpty(int32 slot)
{
@@ -137,15 +138,20 @@ CPools::MakeSureSlotInObjectPoolIsEmpty(int32 slot)
void CPools::LoadVehiclePool(uint8* buf, uint32 size)
{
INITSAVEBUF
- int nNumCars = ReadSaveBuf(buf);
- int nNumBoats = ReadSaveBuf(buf);
- int nNumBikes = ReadSaveBuf(buf);
+ int nNumCars, nNumBoats, nNumBikes;
+ ReadSaveBuf(&nNumCars, buf);
+ ReadSaveBuf(&nNumBoats, buf);
+ ReadSaveBuf(&nNumBikes, buf);
for (int i = 0; i < nNumCars + nNumBoats + nNumBikes; i++) {
- uint32 type = ReadSaveBuf(buf);
- int16 model = ReadSaveBuf(buf);
+ uint32 type;
+ int16 model;
+ int32 slot;
+
+ ReadSaveBuf(&type, buf);
+ ReadSaveBuf(&model, buf);
CStreaming::RequestModel(model, STREAMFLAGS_DEPENDENCY);
CStreaming::LoadAllRequestedModels(false);
- int32 slot = ReadSaveBuf(buf);
+ ReadSaveBuf(&slot, buf);
CVehicle* pVehicle;
#ifdef COMPATIBLE_SAVES
if (type == VEHICLE_TYPE_BOAT)
@@ -304,9 +310,9 @@ INITSAVEBUF
#else
if ((pVehicle->IsCar() || pVehicle->IsBoat() || pVehicle->IsBike()) && pVehicle->VehicleCreatedBy == MISSION_VEHICLE) {
#endif
- WriteSaveBuf(buf, pVehicle->m_vehType);
- WriteSaveBuf(buf, pVehicle->GetModelIndex());
- WriteSaveBuf(buf, GetVehicleRef(pVehicle));
+ WriteSaveBuf(buf, pVehicle->m_vehType);
+ WriteSaveBuf(buf, pVehicle->GetModelIndex());
+ WriteSaveBuf(buf, GetVehicleRef(pVehicle));
pVehicle->Save(buf);
}
#else
@@ -315,7 +321,7 @@ INITSAVEBUF
#else
if (pVehicle->IsCar() && pVehicle->VehicleCreatedBy == MISSION_VEHICLE) {
#endif
- WriteSaveBuf(buf, (uint32)pVehicle->m_vehType);
+ WriteSaveBuf(buf, pVehicle->m_vehType);
WriteSaveBuf(buf, pVehicle->GetModelIndex());
WriteSaveBuf(buf, GetVehicleRef(pVehicle));
memcpy(buf, pVehicle, sizeof(CAutomobile));
@@ -326,7 +332,7 @@ INITSAVEBUF
#else
if (pVehicle->IsBoat() && pVehicle->VehicleCreatedBy == MISSION_VEHICLE) {
#endif
- WriteSaveBuf(buf, (uint32)pVehicle->m_vehType);
+ WriteSaveBuf(buf, pVehicle->m_vehType);
WriteSaveBuf(buf, pVehicle->GetModelIndex());
WriteSaveBuf(buf, GetVehicleRef(pVehicle));
memcpy(buf, pVehicle, sizeof(CBoat));
@@ -337,7 +343,7 @@ INITSAVEBUF
#else
if (pVehicle->IsBike() && pVehicle->VehicleCreatedBy == MISSION_VEHICLE) {
#endif
- WriteSaveBuf(buf, (uint32)pVehicle->m_vehType);
+ WriteSaveBuf(buf, pVehicle->m_vehType);
WriteSaveBuf(buf, pVehicle->GetModelIndex());
WriteSaveBuf(buf, GetVehicleRef(pVehicle));
memcpy(buf, pVehicle, sizeof(CBike));
diff --git a/src/core/Radar.cpp b/src/core/Radar.cpp
index 4bb9c966..f58f4687 100644
--- a/src/core/Radar.cpp
+++ b/src/core/Radar.cpp
@@ -19,6 +19,7 @@
#include "Streaming.h"
#include "SpecialFX.h"
#include "Font.h"
+#include "SaveBuf.h"
float CRadar::m_radarRange;
sRadarTrace CRadar::ms_RadarTrace[NUMRADARBLIPS];
@@ -184,6 +185,75 @@ void GetTextureCorners(int32 x, int32 y, CVector2D *out)
out[3].y = RADAR_TILE_SIZE * (y);
}
+uint8 CRadar::CalculateBlipAlpha(float dist)
+{
+ if (FrontEndMenuManager.m_bMenuMapActive)
+ return 255;
+
+ if (dist <= 1.0f)
+ return 255;
+
+ if (dist <= 10.0f)
+ return (128.0f * ((dist - 1.0f) / 9.0f)) + ((1.0f - (dist - 1.0f) / 9.0f) * 255.0f);
+
+ return 128;
+}
+
+void CRadar::ChangeBlipBrightness(int32 i, int32 bright)
+{
+ int index = GetActualBlipArrayIndex(i);
+ if (index != -1)
+ ms_RadarTrace[index].m_bDim = bright != 1;
+}
+
+void CRadar::ChangeBlipColour(int32 i, int32 color)
+{
+ int index = GetActualBlipArrayIndex(i);
+ if (index != -1)
+ ms_RadarTrace[index].m_nColor = color;
+}
+
+void CRadar::ChangeBlipDisplay(int32 i, eBlipDisplay display)
+{
+ int index = GetActualBlipArrayIndex(i);
+ if (index != -1)
+ ms_RadarTrace[index].m_eBlipDisplay = display;
+}
+
+void CRadar::ChangeBlipScale(int32 i, int32 scale)
+{
+ int index = GetActualBlipArrayIndex(i);
+ if (index != -1)
+ ms_RadarTrace[index].m_wScale = scale;
+}
+
+void CRadar::ClearBlip(int32 i)
+{
+ int index = GetActualBlipArrayIndex(i);
+ if (index != -1) {
+ SetRadarMarkerState(index, false);
+ ms_RadarTrace[index].m_bInUse = false;
+ ms_RadarTrace[index].m_eBlipType = BLIP_NONE;
+ ms_RadarTrace[index].m_eBlipDisplay = BLIP_DISPLAY_NEITHER;
+ ms_RadarTrace[index].m_eRadarSprite = RADAR_SPRITE_NONE;
+ }
+}
+
+void CRadar::ClearBlipForEntity(eBlipType type, int32 id)
+{
+ for (int i = 0; i < NUMRADARBLIPS; i++) {
+ if (type == ms_RadarTrace[i].m_eBlipType && id == ms_RadarTrace[i].m_nEntityHandle) {
+ SetRadarMarkerState(i, false);
+ ms_RadarTrace[i].m_bInUse = false;
+ ms_RadarTrace[i].m_eBlipType = BLIP_NONE;
+ ms_RadarTrace[i].m_eBlipDisplay = BLIP_DISPLAY_NEITHER;
+ ms_RadarTrace[i].m_eRadarSprite = RADAR_SPRITE_NONE;
+ }
+ };
+}
+
+// Why not a proper clipping algorithm?
+#ifdef THIS_IS_STUPID
bool IsPointInsideRadar(const CVector2D &point)
{
@@ -264,74 +334,6 @@ int LineRadarBoxCollision(CVector2D &out, const CVector2D &p1, const CVector2D &
return edge;
}
-uint8 CRadar::CalculateBlipAlpha(float dist)
-{
- if (FrontEndMenuManager.m_bMenuMapActive)
- return 255;
-
- if (dist <= 1.0f)
- return 255;
-
- if (dist <= 10.0f)
- return (128.0f * ((dist - 1.0f) / 9.0f)) + ((1.0f - (dist - 1.0f) / 9.0f) * 255.0f);
-
- return 128;
-}
-
-void CRadar::ChangeBlipBrightness(int32 i, int32 bright)
-{
- int index = GetActualBlipArrayIndex(i);
- if (index != -1)
- ms_RadarTrace[index].m_bDim = bright != 1;
-}
-
-void CRadar::ChangeBlipColour(int32 i, int32 color)
-{
- int index = GetActualBlipArrayIndex(i);
- if (index != -1)
- ms_RadarTrace[index].m_nColor = color;
-}
-
-void CRadar::ChangeBlipDisplay(int32 i, eBlipDisplay display)
-{
- int index = GetActualBlipArrayIndex(i);
- if (index != -1)
- ms_RadarTrace[index].m_eBlipDisplay = display;
-}
-
-void CRadar::ChangeBlipScale(int32 i, int32 scale)
-{
- int index = GetActualBlipArrayIndex(i);
- if (index != -1)
- ms_RadarTrace[index].m_wScale = scale;
-}
-
-void CRadar::ClearBlip(int32 i)
-{
- int index = GetActualBlipArrayIndex(i);
- if (index != -1) {
- SetRadarMarkerState(index, false);
- ms_RadarTrace[index].m_bInUse = false;
- ms_RadarTrace[index].m_eBlipType = BLIP_NONE;
- ms_RadarTrace[index].m_eBlipDisplay = BLIP_DISPLAY_NEITHER;
- ms_RadarTrace[index].m_eRadarSprite = RADAR_SPRITE_NONE;
- }
-}
-
-void CRadar::ClearBlipForEntity(eBlipType type, int32 id)
-{
- for (int i = 0; i < NUMRADARBLIPS; i++) {
- if (type == ms_RadarTrace[i].m_eBlipType && id == ms_RadarTrace[i].m_nEntityHandle) {
- SetRadarMarkerState(i, false);
- ms_RadarTrace[i].m_bInUse = false;
- ms_RadarTrace[i].m_eBlipType = BLIP_NONE;
- ms_RadarTrace[i].m_eBlipDisplay = BLIP_DISPLAY_NEITHER;
- ms_RadarTrace[i].m_eRadarSprite = RADAR_SPRITE_NONE;
- }
- };
-}
-
-// Why not a proper clipping algorithm?
int CRadar::ClipRadarPoly(CVector2D *poly, const CVector2D *rect)
{
CVector2D corners[4] = {
@@ -410,6 +412,50 @@ int CRadar::ClipRadarPoly(CVector2D *poly, const CVector2D *rect)
return n;
}
+#else
+
+int
+ClipPolyPlane(const CVector2D *in, int nin, CVector2D *out, CVector *plane)
+{
+ int j;
+ int nout;
+ int x1, x2;
+ float d1, d2, t;
+
+ nout = 0;
+ for(j = 0; j < nin; j++){
+ x1 = j;
+ x2 = (j+1) % nin;
+
+ d1 = plane->x*in[x1].x + plane->y*in[x1].y + plane->z;
+ d2 = plane->x*in[x2].x + plane->y*in[x2].y + plane->z;
+ if(d1*d2 < 0.0f){
+ t = d1/(d1 - d2);
+ out[nout++] = in[x1]*(1.0f-t) + in[x2]*t;
+ }
+ if(d2 >= 0.0f)
+ out[nout++] = in[x2];
+ }
+ return nout;
+}
+
+int CRadar::ClipRadarPoly(CVector2D *poly, const CVector2D *rect)
+{
+ CVector planes[4] = {
+ CVector(-1.0f, 0.0f, 1.0f),
+ CVector( 1.0f, 0.0f, 1.0f),
+ CVector(0.0f, -1.0f, 1.0f),
+ CVector(0.0f, 1.0f, 1.0f)
+ };
+ CVector2D tmp[8];
+ int n;
+ if(n = ClipPolyPlane(rect, 4, tmp, &planes[0]), n == 0) return 0;
+ if(n = ClipPolyPlane(tmp, n, poly, &planes[1]), n == 0) return 0;
+ if(n = ClipPolyPlane(poly, n, tmp, &planes[2]), n == 0) return 0;
+ if(n = ClipPolyPlane(tmp, n, poly, &planes[3]), n == 0) return 0;
+ return n;
+}
+#endif
bool CRadar::DisplayThisBlip(int32 counter)
{
@@ -433,7 +479,7 @@ void CRadar::Draw3dMarkers()
if (ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_BOTH || ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_MARKER_ONLY) {
CVector pos = entity->GetPosition();
pos.z += 1.2f * CModelInfo::GetModelInfo(entity->GetModelIndex())->GetColModel()->boundingBox.max.z + 2.5f;
- C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), 1, pos, 2.5f, CARBLIP_MARKER_COLOR_R, CARBLIP_MARKER_COLOR_G, CARBLIP_MARKER_COLOR_B, CARBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
+ C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), MARKERTYPE_ARROW, pos, 2.5f, CARBLIP_MARKER_COLOR_R, CARBLIP_MARKER_COLOR_G, CARBLIP_MARKER_COLOR_B, CARBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
}
break;
}
@@ -447,7 +493,7 @@ void CRadar::Draw3dMarkers()
if (ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_BOTH || ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_MARKER_ONLY) {
CVector pos = entity->GetPosition();
pos.z += 3.0f;
- C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), 1, pos, 1.5f, CHARBLIP_MARKER_COLOR_R, CHARBLIP_MARKER_COLOR_G, CHARBLIP_MARKER_COLOR_B, CHARBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
+ C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), MARKERTYPE_ARROW, pos, 1.5f, CHARBLIP_MARKER_COLOR_R, CHARBLIP_MARKER_COLOR_G, CHARBLIP_MARKER_COLOR_B, CHARBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
}
break;
}
@@ -457,7 +503,7 @@ void CRadar::Draw3dMarkers()
if (ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_BOTH || ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_MARKER_ONLY) {
CVector pos = entity->GetPosition();
pos.z += CModelInfo::GetModelInfo(entity->GetModelIndex())->GetColModel()->boundingBox.max.z + 1.0f + 1.0f;
- C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), 1, pos, 1.0f, OBJECTBLIP_MARKER_COLOR_R, OBJECTBLIP_MARKER_COLOR_G, OBJECTBLIP_MARKER_COLOR_B, OBJECTBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
+ C3dMarkers::PlaceMarker(i | (ms_RadarTrace[i].m_BlipIndex << 16), MARKERTYPE_ARROW, pos, 1.0f, OBJECTBLIP_MARKER_COLOR_R, OBJECTBLIP_MARKER_COLOR_G, OBJECTBLIP_MARKER_COLOR_B, OBJECTBLIP_MARKER_COLOR_A, 1024, 0.2f, 5);
}
break;
}
@@ -466,7 +512,7 @@ void CRadar::Draw3dMarkers()
case BLIP_CONTACT_POINT:
if (!CTheScripts::IsPlayerOnAMission()) {
if (ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_BOTH || ms_RadarTrace[i].m_eBlipDisplay == BLIP_DISPLAY_MARKER_ONLY)
- C3dMarkers::PlaceMarkerSet(i | (ms_RadarTrace[i].m_BlipIndex << 16), 4, ms_RadarTrace[i].m_vecPos, 2.0f, COORDBLIP_MARKER_COLOR_R, COORDBLIP_MARKER_COLOR_G, COORDBLIP_MARKER_COLOR_B, COORDBLIP_MARKER_COLOR_A, 2048, 0.2f, 0);
+ C3dMarkers::PlaceMarkerSet(i | (ms_RadarTrace[i].m_BlipIndex << 16), MARKERTYPE_CYLINDER, ms_RadarTrace[i].m_vecPos, 2.0f, COORDBLIP_MARKER_COLOR_R, COORDBLIP_MARKER_COLOR_G, COORDBLIP_MARKER_COLOR_B, COORDBLIP_MARKER_COLOR_A, 2048, 0.2f, 0);
}
break;
}
@@ -928,21 +974,21 @@ INITSAVEBUF
CheckSaveHeader(buf, 'R', 'D', 'R', '\0', size - SAVE_HEADER_SIZE);
for (int i = 0; i < NUMRADARBLIPS; i++) {
- ms_RadarTrace[i].m_nColor = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_Radius = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_eBlipType = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_nEntityHandle = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_vec2DPos.x = ReadSaveBuf(buf); // CVector2D
- ms_RadarTrace[i].m_vec2DPos.y = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_vecPos = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_BlipIndex = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_bDim = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_bInUse = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_bShortRange = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_unused = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_wScale = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_eBlipDisplay = ReadSaveBuf(buf);
- ms_RadarTrace[i].m_eRadarSprite = ReadSaveBuf(buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_nColor, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_Radius, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_eBlipType, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_nEntityHandle, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_vec2DPos.x, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_vec2DPos.y, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_vecPos, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_BlipIndex, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_bDim, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_bInUse, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_bShortRange, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_unused, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_wScale, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_eBlipDisplay, buf);
+ ReadSaveBuf(&ms_RadarTrace[i].m_eRadarSprite, buf);
}
VALIDATESAVEBUF(size);
@@ -1337,7 +1383,7 @@ CRadar::InitFrontEndMap()
void
CRadar::DrawYouAreHereSprite(float x, float y)
{
- static PauseModeTime lastChange = 0;
+ static uint32 lastChange = 0;
static bool show = true;
if (show) {
@@ -1537,7 +1583,7 @@ void
CRadar::DrawLegend(int32 x, int32 y, int32 sprite)
{
if (sprite < 0) {
- static PauseModeTime lastChange = 0;
+ static uint32 lastChange = 0;
static int8 blipMode = 0;
CRGBA color;
diff --git a/src/core/References.cpp b/src/core/References.cpp
index dc83d96d..09913817 100644
--- a/src/core/References.cpp
+++ b/src/core/References.cpp
@@ -39,9 +39,7 @@ CEntity::RegisterReference(CEntity **pent)
ref->pentity = pent;
ref->next = m_pFirstReference;
m_pFirstReference = ref;
- return;
}
- return;
}
// Clean up the reference from *pent -> 'this'
diff --git a/src/core/Ropes.cpp b/src/core/Ropes.cpp
index 52427fc3..71297eb1 100644
--- a/src/core/Ropes.cpp
+++ b/src/core/Ropes.cpp
@@ -1,5 +1,6 @@
#include "common.h"
+#include "main.h"
#include "Timer.h"
#include "ModelIndices.h"
#include "Streaming.h"
@@ -91,9 +92,11 @@ void
CRopes::Render(void)
{
int i;
+ PUSH_RENDERGROUP("CRopes::Render");
for(i = 0; i < ARRAY_SIZE(aRopes); i++)
if(aRopes[i].m_bActive)
aRopes[i].Render();
+ POP_RENDERGROUP();
}
bool
@@ -147,7 +150,7 @@ CRopes::FindCoorsAlongRope(uintptr id, float t, CVector *coors)
float f;
for(i = 0; i < ARRAY_SIZE(aRopes); i++)
if(aRopes[i].m_bActive && aRopes[i].m_id == id){
- t = (ARRAY_SIZE(aRopes[0].m_pos)-1)*clamp(t, 0.0f, 0.999f);
+ t = (ARRAY_SIZE(aRopes[0].m_pos)-1)*Clamp(t, 0.0f, 0.999f);
j = t;
f = t - j;
*coors = (1.0f-f)*aRopes[i].m_pos[j] + f*aRopes[i].m_pos[j+1];
diff --git a/src/core/Stats.cpp b/src/core/Stats.cpp
index 7ada0da9..8c6137f2 100644
--- a/src/core/Stats.cpp
+++ b/src/core/Stats.cpp
@@ -1229,7 +1229,11 @@ CStats::ConstructStatLine(int rowIdx)
FASTEST_TIME(20, "STFT_21");
if (FastestTimes[21])
+#ifdef FIX_BUGS
+ STAT_LINE_1(float, "STFT_22", Floor(FastestTimes[21] / 10) / 100, 1);
+#else
STAT_LINE_1(float, "STFT_22", FastestTimes[21] / 1000, 1);
+#endif
if (TopShootingRangeScore > 0.0f)
STAT_LINE_1(int, "TOP_SHO", TopShootingRangeScore, 0);
diff --git a/src/core/Streaming.cpp b/src/core/Streaming.cpp
index ca0c218b..14a9a4af 100644
--- a/src/core/Streaming.cpp
+++ b/src/core/Streaming.cpp
@@ -1732,7 +1732,13 @@ CStreaming::StreamVehiclesAndPeds(void)
for(i = 0; i < CCarCtrl::TOTAL_CUSTOM_CLASSES; i++){
if(CCarCtrl::NumRequestsOfCarRating[i] > maxReq &&
((i == 0 && zone.carThreshold[0] != 0) ||
+#ifdef FIX_BUGS
+ (i < CCarCtrl::NUM_CAR_CLASSES && zone.carThreshold[i] != zone.carThreshold[i-1]) ||
+ (i == CCarCtrl::NUM_CAR_CLASSES && zone.boatThreshold[i - CCarCtrl::NUM_CAR_CLASSES] != 0) ||
+ (i > CCarCtrl::NUM_CAR_CLASSES && i < CCarCtrl::TOTAL_CUSTOM_CLASSES && zone.boatThreshold[i - CCarCtrl::NUM_CAR_CLASSES] != zone.boatThreshold[i - CCarCtrl::NUM_CAR_CLASSES - 1]))) {
+#else
(i != 0 && zone.carThreshold[i] != zone.carThreshold[i-1]))) {
+#endif
maxReq = CCarCtrl::NumRequestsOfCarRating[i];
mostRequestedRating = i;
}
@@ -1875,8 +1881,7 @@ CStreaming::RemoveCurrentZonesModels(void)
if (ms_currentPedGrp != -1)
for (i = 0; i < NUMMODELSPERPEDGROUP; i++) {
ms_bIsPedFromPedGroupLoaded[i] = false;
- if (CPopulation::ms_pPedGroups[ms_currentPedGrp].models[i] != -1 &&
- CPopulation::ms_pPedGroups[ms_currentPedGrp].models[i] != MI_MALE01) {
+ if (CPopulation::ms_pPedGroups[ms_currentPedGrp].models[i] != -1) {
SetModelIsDeletable(CPopulation::ms_pPedGroups[ms_currentPedGrp].models[i]);
SetModelTxdIsDeletable(CPopulation::ms_pPedGroups[ms_currentPedGrp].models[i]);
}
diff --git a/src/core/Timer.cpp b/src/core/Timer.cpp
index 5ebe3f53..77f26a8b 100644
--- a/src/core/Timer.cpp
+++ b/src/core/Timer.cpp
@@ -8,7 +8,7 @@
#include "SpecialFX.h"
uint32 CTimer::m_snTimeInMilliseconds;
-PauseModeTime CTimer::m_snTimeInMillisecondsPauseMode = 1;
+uint32 CTimer::m_snTimeInMillisecondsPauseMode = 1;
uint32 CTimer::m_snTimeInMillisecondsNonClipped;
uint32 CTimer::m_snPreviousTimeInMilliseconds;
@@ -17,7 +17,11 @@ float CTimer::ms_fTimeScale;
float CTimer::ms_fTimeStep;
float CTimer::ms_fTimeStepNonClipped;
bool CTimer::m_UserPause;
-bool CTimer::m_CodePause;
+bool CTimer::m_CodePause;
+#ifdef FIX_BUGS
+uint32 CTimer::m_LogicalFrameCounter;
+uint32 CTimer::m_LogicalFramesPassed;
+#endif
uint32 _nCyclesPerMS = 1;
@@ -35,10 +39,6 @@ RsTimerType suspendPcTimer;
uint32 suspendDepth;
-#ifdef FIX_HIGH_FPS_BUGS_ON_FRONTEND
-double frameTime;
-#endif
-
void CTimer::Initialise(void)
{
debug("Initialising CTimer...\n");
@@ -51,6 +51,10 @@ void CTimer::Initialise(void)
m_snTimeInMillisecondsNonClipped = 0;
m_snPreviousTimeInMilliseconds = 0;
m_snTimeInMilliseconds = 1;
+#ifdef FIX_BUGS
+ m_LogicalFrameCounter = 0;
+ m_LogicalFramesPassed = 0;
+#endif
#ifdef _WIN32
LARGE_INTEGER perfFreq;
@@ -82,6 +86,94 @@ void CTimer::Shutdown(void)
;
}
+#ifdef FIX_BUGS
+void CTimer::Update(void)
+{
+ static double frameTimeLogical = 0.0;
+ static double frameTimeFraction = 0.0;
+ static double frameTimeFractionScaled = 0.0;
+ double frameTime;
+ double dblUpdInMs;
+
+ m_snPreviousTimeInMilliseconds = m_snTimeInMilliseconds;
+
+#ifdef _WIN32
+ if ( (double)_nCyclesPerMS != 0.0 )
+ {
+ LARGE_INTEGER pc;
+ QueryPerformanceCounter(&pc);
+
+ int32 updInCycles = (pc.LowPart - _oldPerfCounter.LowPart); // & 0x7FFFFFFF; pointless
+
+ _oldPerfCounter = pc;
+
+ float updInCyclesScaled = GetIsPaused() ? updInCycles : updInCycles * ms_fTimeScale;
+
+ frameTime = updInCyclesScaled / (double)_nCyclesPerMS;
+
+ dblUpdInMs = (double)updInCycles / (double)_nCyclesPerMS;
+ }
+ else
+#endif
+ {
+ RsTimerType timer = RsTimer();
+
+ RsTimerType updInMs = timer - oldPcTimer;
+
+ frameTime = (double)updInMs * ms_fTimeScale;
+
+ oldPcTimer = timer;
+
+ dblUpdInMs = (double)updInMs;
+ }
+
+ // count frames as if we're running at 30 fps
+ m_LogicalFramesPassed = 0;
+ frameTimeLogical += dblUpdInMs;
+ while (frameTimeLogical >= 1000.0 / 30.0) {
+ frameTimeLogical -= 1000.0 / 30.0;
+ m_LogicalFramesPassed++;
+ }
+ m_LogicalFrameCounter += m_LogicalFramesPassed;
+
+ frameTimeFraction += dblUpdInMs;
+ frameTimeFractionScaled += frameTime;
+
+ m_snTimeInMillisecondsPauseMode += uint32(frameTimeFraction);
+
+ if ( GetIsPaused() )
+ ms_fTimeStep = 0.0f;
+ else
+ {
+ m_snTimeInMilliseconds += uint32(frameTimeFractionScaled);
+ m_snTimeInMillisecondsNonClipped += uint32(frameTimeFractionScaled);
+ ms_fTimeStep = frameTime / 1000.0f * 50.0f;
+ }
+ frameTimeFraction -= uint32(frameTimeFraction);
+ frameTimeFractionScaled -= uint32(frameTimeFractionScaled);
+
+ if ( ms_fTimeStep < 0.01f && !GetIsPaused() && !CSpecialFX::bSnapShotActive)
+ ms_fTimeStep = 0.01f;
+
+ ms_fTimeStepNonClipped = ms_fTimeStep;
+
+ if ( !CRecordDataForGame::IsPlayingBack() )
+ {
+ ms_fTimeStep = Min(3.0f, ms_fTimeStep);
+
+ if ( (m_snTimeInMilliseconds - m_snPreviousTimeInMilliseconds) > 60 )
+ m_snTimeInMilliseconds = m_snPreviousTimeInMilliseconds + 60;
+ }
+
+ if ( CRecordDataForChase::IsRecording() )
+ {
+ ms_fTimeStep = 1.0f;
+ m_snTimeInMilliseconds = m_snPreviousTimeInMilliseconds + 16;
+ }
+
+ m_FrameCounter++;
+}
+#else
void CTimer::Update(void)
{
m_snPreviousTimeInMilliseconds = m_snTimeInMilliseconds;
@@ -98,11 +190,7 @@ void CTimer::Update(void)
float updInCyclesScaled = GetIsPaused() ? updInCycles : updInCycles * ms_fTimeScale;
- // We need that real frame time to fix transparent menu bug.
-#ifndef FIX_HIGH_FPS_BUGS_ON_FRONTEND
- double
-#endif
- frameTime = updInCyclesScaled / (double)_nCyclesPerMS;
+ double frameTime = updInCyclesScaled / (double)_nCyclesPerMS;
m_snTimeInMillisecondsPauseMode = m_snTimeInMillisecondsPauseMode + frameTime;
@@ -122,16 +210,12 @@ void CTimer::Update(void)
RsTimerType updInMs = timer - oldPcTimer;
- // We need that real frame time to fix transparent menu bug.
-#ifndef FIX_HIGH_FPS_BUGS_ON_FRONTEND
- double
-#endif
- frameTime = (double)updInMs * ms_fTimeScale;
+ double frameTime = (double)updInMs * ms_fTimeScale;
oldPcTimer = timer;
-
+
m_snTimeInMillisecondsPauseMode = m_snTimeInMillisecondsPauseMode + frameTime;
-
+
if ( GetIsPaused() )
ms_fTimeStep = 0.0f;
else
@@ -163,6 +247,7 @@ void CTimer::Update(void)
m_FrameCounter++;
}
+#endif
void CTimer::Suspend(void)
{
diff --git a/src/core/Timer.h b/src/core/Timer.h
index 53591c4f..819bd30c 100644
--- a/src/core/Timer.h
+++ b/src/core/Timer.h
@@ -1,22 +1,20 @@
#pragma once
-#ifdef FIX_HIGH_FPS_BUGS_ON_FRONTEND
-#define PauseModeTime double
-#else
-#define PauseModeTime uint32
-#endif
-
class CTimer
{
static uint32 m_snTimeInMilliseconds;
- static PauseModeTime m_snTimeInMillisecondsPauseMode;
+ static uint32 m_snTimeInMillisecondsPauseMode;
static uint32 m_snTimeInMillisecondsNonClipped;
static uint32 m_snPreviousTimeInMilliseconds;
static uint32 m_FrameCounter;
static float ms_fTimeScale;
static float ms_fTimeStep;
static float ms_fTimeStepNonClipped;
+#ifdef FIX_BUGS
+ static uint32 m_LogicalFrameCounter;
+ static uint32 m_LogicalFramesPassed;
+#endif
public:
static bool m_UserPause;
static bool m_CodePause;
@@ -35,7 +33,7 @@ public:
static void SetTimeInMilliseconds(uint32 t) { m_snTimeInMilliseconds = t; }
static uint32 GetTimeInMillisecondsNonClipped(void) { return m_snTimeInMillisecondsNonClipped; }
static void SetTimeInMillisecondsNonClipped(uint32 t) { m_snTimeInMillisecondsNonClipped = t; }
- static PauseModeTime GetTimeInMillisecondsPauseMode(void) { return m_snTimeInMillisecondsPauseMode; }
+ static uint32 GetTimeInMillisecondsPauseMode(void) { return m_snTimeInMillisecondsPauseMode; }
static void SetTimeInMillisecondsPauseMode(uint32 t) { m_snTimeInMillisecondsPauseMode = t; }
static uint32 GetPreviousTimeInMilliseconds(void) { return m_snPreviousTimeInMilliseconds; }
static void SetPreviousTimeInMilliseconds(uint32 t) { m_snPreviousTimeInMilliseconds = t; }
@@ -67,9 +65,7 @@ public:
#ifdef FIX_BUGS
static float GetDefaultTimeStep(void) { return 50.0f / 30.0f; }
static float GetTimeStepFix(void) { return GetTimeStep() / GetDefaultTimeStep(); }
+ static uint32 GetLogicalFrameCounter(void) { return m_LogicalFrameCounter; }
+ static uint32 GetLogicalFramesPassed(void) { return m_LogicalFramesPassed; }
#endif
};
-
-#ifdef FIX_HIGH_FPS_BUGS_ON_FRONTEND
-extern double frameTime;
-#endif
diff --git a/src/core/World.cpp b/src/core/World.cpp
index 2683a28d..841aab40 100644
--- a/src/core/World.cpp
+++ b/src/core/World.cpp
@@ -65,7 +65,7 @@ CWorld::Initialise()
void
CWorld::Add(CEntity *ent)
{
- if(ent->IsVehicle() || ent->IsPed()) DMAudio.SetEntityStatus(((CPhysical *)ent)->m_audioEntityId, true);
+ if(ent->IsVehicle() || ent->IsPed()) DMAudio.SetEntityStatus(((CPhysical *)ent)->m_audioEntityId, TRUE);
if(ent->bIsBIGBuilding)
ms_bigBuildingsList[ent->m_level].InsertItem(ent);
@@ -80,7 +80,7 @@ CWorld::Add(CEntity *ent)
void
CWorld::Remove(CEntity *ent)
{
- if(ent->IsVehicle() || ent->IsPed()) DMAudio.SetEntityStatus(((CPhysical *)ent)->m_audioEntityId, false);
+ if(ent->IsVehicle() || ent->IsPed()) DMAudio.SetEntityStatus(((CPhysical *)ent)->m_audioEntityId, FALSE);
if(ent->bIsBIGBuilding)
ms_bigBuildingsList[ent->m_level].RemoveItem(ent);
@@ -399,8 +399,8 @@ CWorld::ProcessVerticalLine(const CVector &point1, float z2, CColPoint &point, C
CVector point2(point1.x, point1.y, z2);
int secX = GetSectorIndexX(point1.x);
int secY = GetSectorIndexY(point1.y);
- secX = clamp(secX, 0, NUMSECTORS_X-1);
- secY = clamp(secY, 0, NUMSECTORS_Y-1);
+ secX = Clamp(secX, 0, NUMSECTORS_X-1);
+ secY = Clamp(secY, 0, NUMSECTORS_Y-1);
return ProcessVerticalLineSector(*GetSector(secX, secY),
CColLine(point1, point2), point, entity, checkBuildings, checkVehicles,
checkPeds, checkObjects, checkDummies, ignoreSeeThrough, poly);
@@ -1486,7 +1486,7 @@ CWorld::CallOffChaseForAreaSectorListVehicles(CPtrList &list, float x1, float y1
CColModel *pColModel = pVehicle->GetColModel();
bool bInsideSphere = false;
for(int32 i = 0; i < pColModel->numSpheres; i++) {
- CVector pos = pVehicle->m_matrix * pColModel->spheres[i].center;
+ CVector pos = pVehicle->GetMatrix() * pColModel->spheres[i].center;
float fRadius = pColModel->spheres[i].radius;
if(pos.x + fRadius > x1 && pos.x - fRadius < x2 && pos.y + fRadius > y1 &&
pos.y - fRadius < y2)
@@ -1803,7 +1803,7 @@ CWorld::RepositionOneObject(CEntity *pEntity)
position.z = FindGroundZFor3DCoord(position.x, position.y,
position.z + fHeight, nil) -
fBoundingBoxMinZ;
- pEntity->m_matrix.UpdateRW();
+ pEntity->GetMatrix().UpdateRW();
pEntity->UpdateRwFrame();
} else if(IsLightThatNeedsRepositioning(modelId)) {
CVector position = pEntity->GetMatrix().GetPosition();
diff --git a/src/core/Zones.cpp b/src/core/Zones.cpp
index 85564f03..93eca199 100644
--- a/src/core/Zones.cpp
+++ b/src/core/Zones.cpp
@@ -8,6 +8,7 @@
#include "Text.h"
#include "World.h"
#include "Timer.h"
+#include "SaveBuf.h"
eLevelName CTheZones::m_CurrLevel;
int16 CTheZones::FindIndex;
@@ -452,6 +453,7 @@ CTheZones::GetZoneInfoForTimeOfDay(const CVector *pos, CZoneInfo *info)
assert(d >= 0.0f && d <= 1.0f);
n = 1.0f - d;
}
+#ifdef FIX_BUGS
info->carDensity = day->carDensity * d + night->carDensity * n;
for(i = 0; i < ARRAY_SIZE(info->carThreshold); i++)
info->carThreshold[i] = day->carThreshold[i] * d + night->carThreshold[i] * n;
@@ -465,6 +467,22 @@ CTheZones::GetZoneInfoForTimeOfDay(const CVector *pos, CZoneInfo *info)
info->copPedThreshold = day->copPedThreshold * d + night->copPedThreshold * n;
for(i = 0; i < ARRAY_SIZE(info->gangPedThreshold); i++)
info->gangPedThreshold[i] = day->gangPedThreshold[i] * d + night->gangPedThreshold[i] * n;
+#else
+ // This is a complete mess.
+ info->carDensity = day->carDensity * n + night->carDensity * d;
+ for(i = 0; i < ARRAY_SIZE(info->carThreshold); i++)
+ info->carThreshold[i] = night->carThreshold[i] * d + night->carThreshold[i] * n;
+ for(i = 0; i < ARRAY_SIZE(info->boatThreshold); i++)
+ info->boatThreshold[i] = night->boatThreshold[i] * d + night->boatThreshold[i] * n;
+ for(i = 0; i < ARRAY_SIZE(info->gangThreshold); i++)
+ info->gangThreshold[i] = night->gangThreshold[i] * d + night->gangThreshold[i] * n;
+
+ info->copThreshold = night->copThreshold * d + night->copThreshold * n;
+ info->pedDensity = night->pedDensity * d + night->pedDensity * n;
+ info->copPedThreshold = night->copPedThreshold * d + night->copPedThreshold * n;
+ for(i = 0; i < ARRAY_SIZE(info->gangPedThreshold); i++)
+ info->gangPedThreshold[i] = night->gangPedThreshold[i] * d + night->gangPedThreshold[i] * n;
+#endif
}
if(CClock::GetIsTimeInRange(5, 19))
info->pedGroup = day->pedGroup;
@@ -697,11 +715,11 @@ CTheZones::SaveOneZone(CZone *zone, uint8 **buffer, uint32 *length, eZoneType zo
WriteSaveBuf(*buffer, *length, zone->zoneinfoNight);
int32 zoneId;
- zoneId = GetIndexForZonePointer(zone->child);
+ zoneId = GetIndexForNavigationZonePointer(zone->child);
WriteSaveBuf(*buffer, *length, zoneId);
- zoneId = GetIndexForZonePointer(zone->parent);
+ zoneId = GetIndexForNavigationZonePointer(zone->parent);
WriteSaveBuf(*buffer, *length, zoneId);
- zoneId = GetIndexForZonePointer(zone->next);
+ zoneId = GetIndexForNavigationZonePointer(zone->next);
WriteSaveBuf(*buffer, *length, zoneId);
}
@@ -714,9 +732,9 @@ CTheZones::LoadAllZones(uint8 *buffer, uint32 size)
uint32 length = 0;
CheckSaveHeaderWithLength(buffer, length, 'Z', 'N', 'S', '\0', size - SAVE_HEADER_SIZE);
- m_CurrLevel = ReadSaveBuf(buffer, length);
- FindIndex = ReadSaveBuf(buffer, length);
- ReadSaveBuf(buffer, length);
+ ReadSaveBuf(&m_CurrLevel, buffer);
+ ReadSaveBuf(&FindIndex, buffer);
+ SkipSaveBuf(buffer, 2);
for(i = 0; i < ARRAY_SIZE(NavigationZoneArray); i++)
LoadOneZone(&NavigationZoneArray[i], &buffer, &length, ZONE_NAVIG);
@@ -725,21 +743,21 @@ CTheZones::LoadAllZones(uint8 *buffer, uint32 size)
LoadOneZone(&InfoZoneArray[i], &buffer, &length, ZONE_INFO);
for(i = 0; i < ARRAY_SIZE(ZoneInfoArray); i++)
- ZoneInfoArray[i] = ReadSaveBuf(buffer, length);
+ ReadSaveBuf(&ZoneInfoArray[i], buffer);
- TotalNumberOfNavigationZones = ReadSaveBuf(buffer, length);
- TotalNumberOfInfoZones = ReadSaveBuf(buffer, length);
- TotalNumberOfZoneInfos = ReadSaveBuf(buffer, length);
- ReadSaveBuf(buffer, length);
+ ReadSaveBuf(&TotalNumberOfNavigationZones, buffer);
+ ReadSaveBuf(&TotalNumberOfInfoZones, buffer);
+ ReadSaveBuf(&TotalNumberOfZoneInfos, buffer);
+ SkipSaveBuf(buffer, 2);
for(i = 0; i < ARRAY_SIZE(MapZoneArray); i++)
LoadOneZone(&MapZoneArray[i], &buffer, &length, ZONE_MAPZONE);
for(i = 0; i < ARRAY_SIZE(AudioZoneArray); i++)
- AudioZoneArray[i] = ReadSaveBuf(buffer, length);
+ ReadSaveBuf(&AudioZoneArray[i], buffer);
- TotalNumberOfMapZones = ReadSaveBuf(buffer, length);
- NumberOfAudioZones = ReadSaveBuf(buffer, length);
+ ReadSaveBuf(&TotalNumberOfMapZones, buffer);
+ ReadSaveBuf(&NumberOfAudioZones, buffer);
VALIDATESAVEBUF(size)
}
@@ -747,26 +765,36 @@ CTheZones::LoadAllZones(uint8 *buffer, uint32 size)
void
CTheZones::LoadOneZone(CZone *zone, uint8 **buffer, uint32 *length, eZoneType zoneType)
{
- *(uint32*)&zone->name[0] = ReadSaveBuf(*buffer, *length);
- *(uint32*)&zone->name[4] = ReadSaveBuf(*buffer, *length);
+#ifdef THIS_IS_STUPID
+ uint32 part1, part2;
+ ReadSaveBuf(&part1, *buffer, *length);
+ ReadSaveBuf(&part2, *buffer, *length);
- zone->minx = ReadSaveBuf(*buffer, *length);
- zone->miny = ReadSaveBuf(*buffer, *length);
- zone->minz = ReadSaveBuf(*buffer, *length);
- zone->maxx = ReadSaveBuf