mirror of
https://gitlab.com/GaryOderNichts/re3-wiiu.git
synced 2024-12-27 10:11:49 +01:00
Merge branch 'miami' of github.com:GTAmodding/re3 into miami
This commit is contained in:
commit
114208533a
15
.travis.yml
Normal file
15
.travis.yml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
language: cpp
|
||||||
|
os: linux
|
||||||
|
dist: focal
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- env: TARGET=release_linux-amd64-librw_gl3_glfw-oal
|
||||||
|
- env: TARGET=debug_linux-amd64-librw_gl3_glfw-oal
|
||||||
|
script:
|
||||||
|
- sudo apt-get update
|
||||||
|
- sudo apt-get -y install linux-libc-dev libopenal-dev libglew-dev libglfw3-dev libsndfile1-dev libmpg123-dev gcc-8-multilib g++-8-multilib
|
||||||
|
- mkdir -p "$TRAVIS_BUILD_DIR/build"
|
||||||
|
- cd "$TRAVIS_BUILD_DIR"
|
||||||
|
- ./premake5Linux --with-librw gmake2
|
||||||
|
- cd build
|
||||||
|
- CC=gcc-8 CXX=g++-8 make config=$TARGET -j4 verbose=1
|
2
librw
2
librw
@ -1 +1 @@
|
|||||||
Subproject commit 661feeabf4a4f0a8b0bee23b53ba557a14352d00
|
Subproject commit 3971dda001cba9c7dc67e86bc0b54a2c7568578f
|
@ -41,7 +41,6 @@
|
|||||||
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
||||||
const int policeChannel = channels + 1;
|
const int policeChannel = channels + 1;
|
||||||
const int allChannels = channels + 2;
|
const int allChannels = channels + 2;
|
||||||
const int maxVolume = 127;
|
|
||||||
|
|
||||||
uint32 gPornNextTime;
|
uint32 gPornNextTime;
|
||||||
uint32 gSawMillNextTime;
|
uint32 gSawMillNextTime;
|
||||||
@ -207,8 +206,8 @@ cAudioManager::ProcessSpecial()
|
|||||||
if (m_nUserPause) {
|
if (m_nUserPause) {
|
||||||
if (!m_nPreviousUserPause) {
|
if (!m_nPreviousUserPause) {
|
||||||
MusicManager.ChangeMusicMode(MUSICMODE_FRONTEND);
|
MusicManager.ChangeMusicMode(MUSICMODE_FRONTEND);
|
||||||
SampleManager.SetEffectsFadeVolume(maxVolume);
|
SampleManager.SetEffectsFadeVolume(MAX_VOLUME);
|
||||||
SampleManager.SetMusicFadeVolume(maxVolume);
|
SampleManager.SetMusicFadeVolume(MAX_VOLUME);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (m_nPreviousUserPause) {
|
if (m_nPreviousUserPause) {
|
||||||
@ -2646,7 +2645,7 @@ cAudioManager::ProcessHelicopter(cVehicleParams *params)
|
|||||||
float dist;
|
float dist;
|
||||||
float baseDist;
|
float baseDist;
|
||||||
int32 emittingVol;
|
int32 emittingVol;
|
||||||
static const tHelicopterSampleData gHeliSfxRanges[3] = {{400.f, 380.f, 100}, {100.f, 70.f, maxVolume}, {60.f, 30.f, maxVolume}};
|
static const tHelicopterSampleData gHeliSfxRanges[3] = {{400.f, 380.f, 100}, {100.f, 70.f, MAX_VOLUME}, {60.f, 30.f, MAX_VOLUME}};
|
||||||
|
|
||||||
if (gHeliSfxRanges[0].m_fMaxDistance * gHeliSfxRanges[0].m_fMaxDistance <= params->m_fDistance)
|
if (gHeliSfxRanges[0].m_fMaxDistance * gHeliSfxRanges[0].m_fMaxDistance <= params->m_fDistance)
|
||||||
return false;
|
return false;
|
||||||
@ -2771,15 +2770,15 @@ cAudioManager::ProcessJumboAccel(CPlane *plane)
|
|||||||
modificator = (plane->m_fSpeed - 0.10334f) * 1.676f;
|
modificator = (plane->m_fSpeed - 0.10334f) * 1.676f;
|
||||||
if (modificator > 1.0f)
|
if (modificator > 1.0f)
|
||||||
modificator = 1.0f;
|
modificator = 1.0f;
|
||||||
if (SetupJumboRumbleSound(maxVolume * modificator) && SetupJumboTaxiSound((1.0f - modificator) * 75.f)) {
|
if (SetupJumboRumbleSound(MAX_VOLUME * modificator) && SetupJumboTaxiSound((1.0f - modificator) * 75.f)) {
|
||||||
if (modificator < 0.2f) {
|
if (modificator < 0.2f) {
|
||||||
whineSoundFreq = modificator * 5.f * 14600.0f + 29500;
|
whineSoundFreq = modificator * 5.f * 14600.0f + 29500;
|
||||||
vol = modificator * 5.f * maxVolume;
|
vol = modificator * 5.f * MAX_VOLUME;
|
||||||
engineFreq = modificator * 5.f * 6050.f + 16000;
|
engineFreq = modificator * 5.f * 6050.f + 16000;
|
||||||
} else {
|
} else {
|
||||||
whineSoundFreq = 44100;
|
whineSoundFreq = 44100;
|
||||||
engineFreq = 22050;
|
engineFreq = 22050;
|
||||||
vol = maxVolume;
|
vol = MAX_VOLUME;
|
||||||
}
|
}
|
||||||
SetupJumboEngineSound(vol, engineFreq);
|
SetupJumboEngineSound(vol, engineFreq);
|
||||||
SetupJumboWhineSound(18, whineSoundFreq);
|
SetupJumboWhineSound(18, whineSoundFreq);
|
||||||
@ -2792,8 +2791,8 @@ cAudioManager::ProcessJumboTakeOff(CPlane *plane)
|
|||||||
{
|
{
|
||||||
const float modificator = (PlanePathPosition[plane->m_nPlaneId] - TakeOffPoint) / 300.f;
|
const float modificator = (PlanePathPosition[plane->m_nPlaneId] - TakeOffPoint) / 300.f;
|
||||||
|
|
||||||
if (SetupJumboFlySound((107.f * modificator) + 20) && SetupJumboRumbleSound(maxVolume * (1.f - modificator))) {
|
if (SetupJumboFlySound((107.f * modificator) + 20) && SetupJumboRumbleSound(MAX_VOLUME * (1.f - modificator))) {
|
||||||
if (SetupJumboEngineSound(maxVolume, 22050))
|
if (SetupJumboEngineSound(MAX_VOLUME, 22050))
|
||||||
SetupJumboWhineSound(18.f * (1.f - modificator), 44100);
|
SetupJumboWhineSound(18.f * (1.f - modificator), 44100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2801,7 +2800,7 @@ cAudioManager::ProcessJumboTakeOff(CPlane *plane)
|
|||||||
void
|
void
|
||||||
cAudioManager::ProcessJumboFlying()
|
cAudioManager::ProcessJumboFlying()
|
||||||
{
|
{
|
||||||
if (SetupJumboFlySound(maxVolume))
|
if (SetupJumboFlySound(MAX_VOLUME))
|
||||||
SetupJumboEngineSound(63, 22050);
|
SetupJumboEngineSound(63, 22050);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2811,7 +2810,7 @@ cAudioManager::ProcessJumboLanding(CPlane *plane)
|
|||||||
const float modificator = (LandingPoint - PlanePathPosition[plane->m_nPlaneId]) / 350.f;
|
const float modificator = (LandingPoint - PlanePathPosition[plane->m_nPlaneId]) / 350.f;
|
||||||
if (SetupJumboFlySound(107.f * modificator + 20)) {
|
if (SetupJumboFlySound(107.f * modificator + 20)) {
|
||||||
if (SetupJumboTaxiSound(75.f * (1.f - modificator))) {
|
if (SetupJumboTaxiSound(75.f * (1.f - modificator))) {
|
||||||
SetupJumboEngineSound(maxVolume, 22050);
|
SetupJumboEngineSound(MAX_VOLUME, 22050);
|
||||||
SetupJumboWhineSound(18.f * (1.f - modificator), 14600.f * modificator + 29500);
|
SetupJumboWhineSound(18.f * (1.f - modificator), 14600.f * modificator + 29500);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2822,7 +2821,7 @@ cAudioManager::ProcessJumboDecel(CPlane *plane)
|
|||||||
{
|
{
|
||||||
if (SetupJumboFlySound(20) && SetupJumboTaxiSound(75)) {
|
if (SetupJumboFlySound(20) && SetupJumboTaxiSound(75)) {
|
||||||
const float modificator = Min(1.f, (plane->m_fSpeed - 0.10334f) * 1.676f);
|
const float modificator = Min(1.f, (plane->m_fSpeed - 0.10334f) * 1.676f);
|
||||||
SetupJumboEngineSound(maxVolume * modificator, 6050.f * modificator + 16000);
|
SetupJumboEngineSound(MAX_VOLUME * modificator, 6050.f * modificator + 16000);
|
||||||
SetupJumboWhineSound(18, 29500);
|
SetupJumboWhineSound(18, 29500);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2986,7 +2985,7 @@ cAudioManager::SetupJumboRumbleSound(uint8 emittingVol)
|
|||||||
m_sQueueSample.m_nCounter = 6;
|
m_sQueueSample.m_nCounter = 6;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_RUMBLE;
|
m_sQueueSample.m_nSampleIndex = SFX_JUMBO_RUMBLE;
|
||||||
m_sQueueSample.m_nFrequency += 200;
|
m_sQueueSample.m_nFrequency += 200;
|
||||||
m_sQueueSample.m_nOffset = maxVolume;
|
m_sQueueSample.m_nOffset = MAX_VOLUME;
|
||||||
AddSampleToRequestedQueue();
|
AddSampleToRequestedQueue();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@ -3822,11 +3821,11 @@ cAudioManager::SetupPedComments(cPedParams *params, uint32 sound)
|
|||||||
case SOUND_AMMUNATION_WELCOME_1:
|
case SOUND_AMMUNATION_WELCOME_1:
|
||||||
case SOUND_AMMUNATION_WELCOME_2:
|
case SOUND_AMMUNATION_WELCOME_2:
|
||||||
case SOUND_AMMUNATION_WELCOME_3:
|
case SOUND_AMMUNATION_WELCOME_3:
|
||||||
emittingVol = maxVolume;
|
emittingVol = MAX_VOLUME;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (CWorld::GetIsLineOfSightClear(TheCamera.GetPosition(), m_sQueueSample.m_vecPos, true, false, false, false, false, false))
|
if (CWorld::GetIsLineOfSightClear(TheCamera.GetPosition(), m_sQueueSample.m_vecPos, true, false, false, false, false, false))
|
||||||
emittingVol = maxVolume;
|
emittingVol = MAX_VOLUME;
|
||||||
else
|
else
|
||||||
emittingVol = 31;
|
emittingVol = 31;
|
||||||
break;
|
break;
|
||||||
@ -3930,7 +3929,7 @@ cPedComments::Process()
|
|||||||
AudioManager.m_sQueueSample.m_nLoopCount = 1;
|
AudioManager.m_sQueueSample.m_nLoopCount = 1;
|
||||||
AudioManager.m_sQueueSample.m_nLoopStart = 0;
|
AudioManager.m_sQueueSample.m_nLoopStart = 0;
|
||||||
AudioManager.m_sQueueSample.m_nLoopEnd = -1;
|
AudioManager.m_sQueueSample.m_nLoopEnd = -1;
|
||||||
AudioManager.m_sQueueSample.m_nEmittingVolume = maxVolume;
|
AudioManager.m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
|
||||||
AudioManager.m_sQueueSample.m_fSpeedMultiplier = 3.0f;
|
AudioManager.m_sQueueSample.m_fSpeedMultiplier = 3.0f;
|
||||||
switch (sampleIndex) {
|
switch (sampleIndex) {
|
||||||
case SFX_POLICE_HELI_1:
|
case SFX_POLICE_HELI_1:
|
||||||
@ -4041,7 +4040,7 @@ cAudioManager::ProcessExplosions(int32 explosion)
|
|||||||
distSquared = GetDistanceSquared(m_sQueueSample.m_vecPos);
|
distSquared = GetDistanceSquared(m_sQueueSample.m_vecPos);
|
||||||
if (distSquared < SQR(m_sQueueSample.m_fSoundIntensity)) {
|
if (distSquared < SQR(m_sQueueSample.m_fSoundIntensity)) {
|
||||||
m_sQueueSample.m_fDistance = Sqrt(distSquared);
|
m_sQueueSample.m_fDistance = Sqrt(distSquared);
|
||||||
m_sQueueSample.m_nVolume = ComputeVolume(maxVolume, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
|
m_sQueueSample.m_nVolume = ComputeVolume(MAX_VOLUME, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
|
||||||
if (m_sQueueSample.m_nVolume) {
|
if (m_sQueueSample.m_nVolume) {
|
||||||
m_sQueueSample.m_nCounter = i;
|
m_sQueueSample.m_nCounter = i;
|
||||||
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
||||||
@ -4049,7 +4048,7 @@ cAudioManager::ProcessExplosions(int32 explosion)
|
|||||||
m_sQueueSample.m_nLoopCount = 1;
|
m_sQueueSample.m_nLoopCount = 1;
|
||||||
m_sQueueSample.m_bReleasingSoundFlag = true;
|
m_sQueueSample.m_bReleasingSoundFlag = true;
|
||||||
m_sQueueSample.m_bReverbFlag = true;
|
m_sQueueSample.m_bReverbFlag = true;
|
||||||
m_sQueueSample.m_nEmittingVolume = maxVolume;
|
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nLoopStart = 0;
|
m_sQueueSample.m_nLoopStart = 0;
|
||||||
m_sQueueSample.m_nLoopEnd = -1;
|
m_sQueueSample.m_nLoopEnd = -1;
|
||||||
m_sQueueSample.m_bReverbFlag = true;
|
m_sQueueSample.m_bReverbFlag = true;
|
||||||
@ -4245,7 +4244,7 @@ cAudioManager::ProcessOneShotScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_TRAIN_STATION_ANNOUNCE;
|
m_sQueueSample.m_nSampleIndex = SFX_TRAIN_STATION_ANNOUNCE;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_TRAIN_STATION_ANNOUNCE);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_TRAIN_STATION_ANNOUNCE);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 0;
|
m_sQueueSample.m_nReleasingVolumeModificator = 0;
|
||||||
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
||||||
@ -4442,7 +4441,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4452,7 +4451,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4462,7 +4461,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_2;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_2;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_2);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_2);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4472,7 +4471,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_2;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_2;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_2);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_2);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4482,7 +4481,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_3;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_3;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_3);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_3);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4492,7 +4491,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_3;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_3;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_3);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_3);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4502,7 +4501,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_4;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_4;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_4);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_4);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4512,7 +4511,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_4;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_4;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_4);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_4);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4522,7 +4521,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_5;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_5;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_5);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_5);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4532,7 +4531,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_5;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_5;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_5);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_5);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4542,7 +4541,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_6;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_6;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_6);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_6);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4552,7 +4551,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_6;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_6;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_6);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_6);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4562,7 +4561,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_7;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_7;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_7);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_7);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4572,7 +4571,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_7;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_7;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_7);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_7);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4582,7 +4581,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_8;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_8;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_8);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_8);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4592,7 +4591,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_8;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_8;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_8);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_8);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4602,7 +4601,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_9;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_9;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_9);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_9);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4612,7 +4611,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_9;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_9;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_9);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_9);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4622,7 +4621,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_10;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_10;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_10);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_10);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4632,7 +4631,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_10;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_10;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_10);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_10);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4642,7 +4641,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_11;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_11;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_11);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_11);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4652,7 +4651,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_11;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_11;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_11);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_11);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4662,7 +4661,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_12;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_12;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_12);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_12);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4672,7 +4671,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_12;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_12;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_12);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_12);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4682,7 +4681,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_RAGGA;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_RAGGA;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_RAGGA);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_RAGGA);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4692,7 +4691,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_RAGGA;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_RAGGA;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_RAGGA);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_RAGGA);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4702,7 +4701,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_1;
|
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4712,7 +4711,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_1;
|
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4722,7 +4721,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_2;
|
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_2;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_2);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_2);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4732,7 +4731,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_2;
|
m_sQueueSample.m_nSampleIndex = SFX_STRIP_CLUB_2;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_2);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_STRIP_CLUB_2);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4874,7 +4873,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_PIANO_BAR_1;
|
m_sQueueSample.m_nSampleIndex = SFX_PIANO_BAR_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_PIANO_BAR_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_PIANO_BAR_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4884,7 +4883,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
m_sQueueSample.m_nSampleIndex = SFX_CLUB_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_CLUB_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4924,7 +4923,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_POLICE_BALL_1;
|
m_sQueueSample.m_nSampleIndex = SFX_POLICE_BALL_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_POLICE_BALL_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_POLICE_BALL_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 2;
|
m_sQueueSample.m_nReleasingVolumeModificator = 2;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4934,7 +4933,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_POLICE_BALL_1;
|
m_sQueueSample.m_nSampleIndex = SFX_POLICE_BALL_1;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_POLICE_BALL_1);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_POLICE_BALL_1);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 2;
|
m_sQueueSample.m_nReleasingVolumeModificator = 2;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4944,7 +4943,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_INDUSTRIAL;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_INDUSTRIAL;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_INDUSTRIAL);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_INDUSTRIAL);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4954,7 +4953,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_INDUSTRIAL;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_INDUSTRIAL;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_INDUSTRIAL);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_INDUSTRIAL);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4969,7 +4968,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_COMMERCIAL;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_COMMERCIAL;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4980,7 +4979,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_COMMERCIAL;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_COMMERCIAL;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -4990,7 +4989,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
m_sQueueSample.m_fSoundIntensity = 30.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_SUBURBAN;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_SUBURBAN;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_SUBURBAN);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_SUBURBAN);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -5000,7 +4999,7 @@ cAudioManager::ProcessLoopingScriptObject(uint8 sound)
|
|||||||
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
m_sQueueSample.m_fSoundIntensity = 80.0f;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_RAVE_SUBURBAN;
|
m_sQueueSample.m_nSampleIndex = SFX_RAVE_SUBURBAN;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
emittingVolume = maxVolume;
|
emittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_SUBURBAN);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(SFX_RAVE_SUBURBAN);
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
m_sQueueSample.m_nReleasingVolumeDivider = 3;
|
||||||
@ -5094,7 +5093,7 @@ cAudioManager::ProcessPornCinema(uint8 sound)
|
|||||||
if (distSquared < SQR(m_sQueueSample.m_fSoundIntensity)) {
|
if (distSquared < SQR(m_sQueueSample.m_fSoundIntensity)) {
|
||||||
m_sQueueSample.m_fDistance = Sqrt(distSquared);
|
m_sQueueSample.m_fDistance = Sqrt(distSquared);
|
||||||
if (sound != SCRIPT_SOUND_MISTY_SEX_S && sound != SCRIPT_SOUND_MISTY_SEX_L) {
|
if (sound != SCRIPT_SOUND_MISTY_SEX_S && sound != SCRIPT_SOUND_MISTY_SEX_L) {
|
||||||
m_sQueueSample.m_nVolume = ComputeVolume(maxVolume, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
|
m_sQueueSample.m_nVolume = ComputeVolume(MAX_VOLUME, m_sQueueSample.m_fSoundIntensity, m_sQueueSample.m_fDistance);
|
||||||
if (m_sQueueSample.m_nVolume) {
|
if (m_sQueueSample.m_nVolume) {
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nCounter = 0;
|
m_sQueueSample.m_nCounter = 0;
|
||||||
@ -5103,7 +5102,7 @@ cAudioManager::ProcessPornCinema(uint8 sound)
|
|||||||
m_sQueueSample.m_bReleasingSoundFlag = false;
|
m_sQueueSample.m_bReleasingSoundFlag = false;
|
||||||
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
m_sQueueSample.m_nReleasingVolumeModificator = 3;
|
||||||
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
||||||
m_sQueueSample.m_nEmittingVolume = maxVolume;
|
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_bReverbFlag = true;
|
m_sQueueSample.m_bReverbFlag = true;
|
||||||
@ -5820,7 +5819,7 @@ cAudioManager::ProcessFrontEnd()
|
|||||||
if (stereo) {
|
if (stereo) {
|
||||||
++m_sQueueSample.m_nSampleIndex;
|
++m_sQueueSample.m_nSampleIndex;
|
||||||
m_sQueueSample.m_nCounter = counter++;
|
m_sQueueSample.m_nCounter = counter++;
|
||||||
m_sQueueSample.m_nOffset = maxVolume - m_sQueueSample.m_nOffset;
|
m_sQueueSample.m_nOffset = MAX_VOLUME - m_sQueueSample.m_nOffset;
|
||||||
AddSampleToRequestedQueue();
|
AddSampleToRequestedQueue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5889,7 +5888,7 @@ cAudioManager::ProcessProjectiles()
|
|||||||
if (CProjectileInfo::GetProjectileInfo(i)->m_bInUse) {
|
if (CProjectileInfo::GetProjectileInfo(i)->m_bInUse) {
|
||||||
switch (CProjectileInfo::GetProjectileInfo(i)->m_eWeaponType) {
|
switch (CProjectileInfo::GetProjectileInfo(i)->m_eWeaponType) {
|
||||||
case WEAPONTYPE_ROCKETLAUNCHER:
|
case WEAPONTYPE_ROCKETLAUNCHER:
|
||||||
emittingVol = maxVolume;
|
emittingVol = MAX_VOLUME;
|
||||||
m_sQueueSample.m_fSoundIntensity = rocketLauncherIntensity;
|
m_sQueueSample.m_fSoundIntensity = rocketLauncherIntensity;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_ROCKET_FLY;
|
m_sQueueSample.m_nSampleIndex = SFX_ROCKET_FLY;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
@ -6163,7 +6162,7 @@ void
|
|||||||
cAudioManager::ProcessBridgeMotor()
|
cAudioManager::ProcessBridgeMotor()
|
||||||
{
|
{
|
||||||
if (m_sQueueSample.m_fDistance < bridgeIntensity) {
|
if (m_sQueueSample.m_fDistance < bridgeIntensity) {
|
||||||
m_sQueueSample.m_nVolume = ComputeVolume(maxVolume, bridgeIntensity, m_sQueueSample.m_fDistance);
|
m_sQueueSample.m_nVolume = ComputeVolume(MAX_VOLUME, bridgeIntensity, m_sQueueSample.m_fDistance);
|
||||||
if (m_sQueueSample.m_nVolume) {
|
if (m_sQueueSample.m_nVolume) {
|
||||||
m_sQueueSample.m_nCounter = 1;
|
m_sQueueSample.m_nCounter = 1;
|
||||||
m_sQueueSample.m_nSampleIndex = SFX_FISHING_BOAT_IDLE; // todo check sfx name
|
m_sQueueSample.m_nSampleIndex = SFX_FISHING_BOAT_IDLE; // todo check sfx name
|
||||||
@ -6172,7 +6171,7 @@ cAudioManager::ProcessBridgeMotor()
|
|||||||
m_sQueueSample.m_nReleasingVolumeModificator = 1;
|
m_sQueueSample.m_nReleasingVolumeModificator = 1;
|
||||||
m_sQueueSample.m_nFrequency = 5500;
|
m_sQueueSample.m_nFrequency = 5500;
|
||||||
m_sQueueSample.m_nLoopCount = 0;
|
m_sQueueSample.m_nLoopCount = 0;
|
||||||
m_sQueueSample.m_nEmittingVolume = maxVolume;
|
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nLoopStart = SampleManager.GetSampleLoopStartOffset(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nLoopEnd = SampleManager.GetSampleLoopEndOffset(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
||||||
@ -6205,7 +6204,7 @@ cAudioManager::ProcessBridgeOneShots()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (m_sQueueSample.m_fDistance < bridgeIntensity) {
|
if (m_sQueueSample.m_fDistance < bridgeIntensity) {
|
||||||
m_sQueueSample.m_nVolume = ComputeVolume(maxVolume, bridgeIntensity, m_sQueueSample.m_fDistance);
|
m_sQueueSample.m_nVolume = ComputeVolume(MAX_VOLUME, bridgeIntensity, m_sQueueSample.m_fDistance);
|
||||||
if (m_sQueueSample.m_nVolume) {
|
if (m_sQueueSample.m_nVolume) {
|
||||||
m_sQueueSample.m_nCounter = 2;
|
m_sQueueSample.m_nCounter = 2;
|
||||||
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
m_sQueueSample.m_nBankIndex = SAMPLEBANK_MAIN;
|
||||||
@ -6213,7 +6212,7 @@ cAudioManager::ProcessBridgeOneShots()
|
|||||||
m_sQueueSample.m_nReleasingVolumeModificator = 1;
|
m_sQueueSample.m_nReleasingVolumeModificator = 1;
|
||||||
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
m_sQueueSample.m_nFrequency = SampleManager.GetSampleBaseFrequency(m_sQueueSample.m_nSampleIndex);
|
||||||
m_sQueueSample.m_nLoopCount = 1;
|
m_sQueueSample.m_nLoopCount = 1;
|
||||||
m_sQueueSample.m_nEmittingVolume = maxVolume;
|
m_sQueueSample.m_nEmittingVolume = MAX_VOLUME;
|
||||||
m_sQueueSample.m_nLoopStart = 0;
|
m_sQueueSample.m_nLoopStart = 0;
|
||||||
m_sQueueSample.m_nLoopEnd = -1;
|
m_sQueueSample.m_nLoopEnd = -1;
|
||||||
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
m_sQueueSample.m_fSpeedMultiplier = 2.0f;
|
||||||
|
@ -16,7 +16,6 @@ cAudioManager AudioManager;
|
|||||||
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
||||||
const int policeChannel = channels + 1;
|
const int policeChannel = channels + 1;
|
||||||
const int allChannels = channels + 2;
|
const int allChannels = channels + 2;
|
||||||
const int maxVolume = 127;
|
|
||||||
|
|
||||||
cAudioManager::cAudioManager()
|
cAudioManager::cAudioManager()
|
||||||
{
|
{
|
||||||
@ -548,7 +547,7 @@ cAudioManager::AddSampleToRequestedQueue()
|
|||||||
bool bReflections;
|
bool bReflections;
|
||||||
|
|
||||||
if (m_sQueueSample.m_nSampleIndex < TOTAL_AUDIO_SAMPLES) {
|
if (m_sQueueSample.m_nSampleIndex < TOTAL_AUDIO_SAMPLES) {
|
||||||
calculatedVolume = m_sQueueSample.m_nReleasingVolumeModificator * (maxVolume - m_sQueueSample.m_nVolume);
|
calculatedVolume = m_sQueueSample.m_nReleasingVolumeModificator * (MAX_VOLUME - m_sQueueSample.m_nVolume);
|
||||||
sampleIndex = m_SampleRequestQueuesStatus[m_nActiveSampleQueue];
|
sampleIndex = m_SampleRequestQueuesStatus[m_nActiveSampleQueue];
|
||||||
if (sampleIndex >= m_nActiveSamples) {
|
if (sampleIndex >= m_nActiveSamples) {
|
||||||
sampleIndex = m_abSampleQueueIndexTable[m_nActiveSampleQueue][m_nActiveSamples - 1];
|
sampleIndex = m_abSampleQueueIndexTable[m_nActiveSampleQueue][m_nActiveSamples - 1];
|
||||||
@ -942,7 +941,7 @@ void
|
|||||||
cAudioManager::GenerateIntegerRandomNumberTable()
|
cAudioManager::GenerateIntegerRandomNumberTable()
|
||||||
{
|
{
|
||||||
for (int32 i = 0; i < ARRAY_SIZE(m_anRandomTable); i++) {
|
for (int32 i = 0; i < ARRAY_SIZE(m_anRandomTable); i++) {
|
||||||
m_anRandomTable[i] = rand();
|
m_anRandomTable[i] = myrand();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,8 +21,6 @@ int32 gNumRetunePresses;
|
|||||||
int32 gRetuneCounter;
|
int32 gRetuneCounter;
|
||||||
bool bHasStarted;
|
bool bHasStarted;
|
||||||
|
|
||||||
const int maxVolume = 127;
|
|
||||||
|
|
||||||
cMusicManager::cMusicManager()
|
cMusicManager::cMusicManager()
|
||||||
{
|
{
|
||||||
m_bIsInitialised = false;
|
m_bIsInitialised = false;
|
||||||
@ -376,7 +374,7 @@ cMusicManager::Service()
|
|||||||
if (!m_bIsInitialised || m_bDisabled) return;
|
if (!m_bIsInitialised || m_bDisabled) return;
|
||||||
|
|
||||||
if (m_nMusicMode == MUSICMODE_CUTSCENE) {
|
if (m_nMusicMode == MUSICMODE_CUTSCENE) {
|
||||||
SampleManager.SetStreamedVolumeAndPan(maxVolume, 63, 1, 0);
|
SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -677,7 +675,7 @@ cMusicManager::PreloadCutSceneMusic(uint8 track)
|
|||||||
while (SampleManager.IsStreamPlaying(0))
|
while (SampleManager.IsStreamPlaying(0))
|
||||||
SampleManager.StopStreamedFile(0);
|
SampleManager.StopStreamedFile(0);
|
||||||
SampleManager.PreloadStreamedFile(track, 0);
|
SampleManager.PreloadStreamedFile(track, 0);
|
||||||
SampleManager.SetStreamedVolumeAndPan(maxVolume, 63, 1, 0);
|
SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 0);
|
||||||
m_nCurrentStreamedSound = track;
|
m_nCurrentStreamedSound = track;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
#include "Zones.h"
|
#include "Zones.h"
|
||||||
#include "sampman.h"
|
#include "sampman.h"
|
||||||
|
|
||||||
const int maxVolume = 127;
|
|
||||||
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
|
||||||
const int policeChannel = channels + 1;
|
const int policeChannel = channels + 1;
|
||||||
|
|
||||||
@ -227,7 +226,7 @@ cAudioManager::ServicePoliceRadioChannel(int32 wantedLevel)
|
|||||||
}
|
}
|
||||||
} else if (!SampleManager.GetChannelUsedFlag(policeChannel)) {
|
} else if (!SampleManager.GetChannelUsedFlag(policeChannel)) {
|
||||||
SampleManager.PreloadStreamedFile(g_nMissionAudioSfx, 1);
|
SampleManager.PreloadStreamedFile(g_nMissionAudioSfx, 1);
|
||||||
SampleManager.SetStreamedVolumeAndPan(maxVolume, 63, 1, 1);
|
SampleManager.SetStreamedVolumeAndPan(MAX_VOLUME, 63, 1, 1);
|
||||||
SampleManager.StartPreloadedStreamedFile(1);
|
SampleManager.StartPreloadedStreamedFile(1);
|
||||||
g_nMissionAudioPlayingStatus = 1;
|
g_nMissionAudioPlayingStatus = 1;
|
||||||
bMissionAudioPhysicalPlayingStatus = 0;
|
bMissionAudioPhysicalPlayingStatus = 0;
|
||||||
|
@ -73,7 +73,7 @@ ALDeviceList::ALDeviceList()
|
|||||||
if ((bNewName) && (actualDeviceName != NULL) && (strlen(actualDeviceName) > 0)) {
|
if ((bNewName) && (actualDeviceName != NULL) && (strlen(actualDeviceName) > 0)) {
|
||||||
memset(&ALDeviceInfo, 0, sizeof(ALDEVICEINFO));
|
memset(&ALDeviceInfo, 0, sizeof(ALDEVICEINFO));
|
||||||
ALDeviceInfo.bSelected = true;
|
ALDeviceInfo.bSelected = true;
|
||||||
ALDeviceInfo.strDeviceName.assign(actualDeviceName, strlen(actualDeviceName));
|
ALDeviceInfo.strDeviceName = actualDeviceName;
|
||||||
alcGetIntegerv(device, ALC_MAJOR_VERSION, sizeof(int), &ALDeviceInfo.iMajorVersion);
|
alcGetIntegerv(device, ALC_MAJOR_VERSION, sizeof(int), &ALDeviceInfo.iMajorVersion);
|
||||||
alcGetIntegerv(device, ALC_MINOR_VERSION, sizeof(int), &ALDeviceInfo.iMinorVersion);
|
alcGetIntegerv(device, ALC_MINOR_VERSION, sizeof(int), &ALDeviceInfo.iMinorVersion);
|
||||||
|
|
||||||
|
368
src/audio/sampman_null.cpp
Normal file
368
src/audio/sampman_null.cpp
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#if !defined(AUDIO_OAL) && !defined(AUDIO_MSS)
|
||||||
|
#include "sampman.h"
|
||||||
|
#include "AudioManager.h"
|
||||||
|
|
||||||
|
cSampleManager SampleManager;
|
||||||
|
bool _bSampmanInitialised = false;
|
||||||
|
|
||||||
|
uint32 BankStartOffset[MAX_SAMPLEBANKS];
|
||||||
|
uint32 nNumMP3s;
|
||||||
|
|
||||||
|
cSampleManager::cSampleManager(void)
|
||||||
|
{
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
cSampleManager::~cSampleManager(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void cSampleManager::SetSpeakerConfig(int32 nConfig)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32 cSampleManager::GetMaximumSupportedChannels(void)
|
||||||
|
{
|
||||||
|
return MAXCHANNELS;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32 cSampleManager::GetNum3DProvidersAvailable()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
void cSampleManager::SetNum3DProvidersAvailable(uint32 num)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
char *cSampleManager::Get3DProviderName(uint8 id)
|
||||||
|
{
|
||||||
|
static char name[64] = "NULL";
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
void cSampleManager::Set3DProviderName(uint8 id, char *name)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int8 cSampleManager::GetCurrent3DProviderIndex(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int8 cSampleManager::SetCurrent3DProvider(uint8 nProvider)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::IsMP3RadioChannelAvailable(void)
|
||||||
|
{
|
||||||
|
return nNumMP3s != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void cSampleManager::ReleaseDigitalHandle(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void cSampleManager::ReacquireDigitalHandle(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::Initialise(void)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::Terminate(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
bool cSampleManager::CheckForAnAudioFileOnCD(void)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
char cSampleManager::GetCDAudioDriveLetter(void)
|
||||||
|
{
|
||||||
|
return '\0';
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::UpdateEffectsVolume(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetEffectsMasterVolume(uint8 nVolume)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetMusicMasterVolume(uint8 nVolume)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetEffectsFadeVolume(uint8 nVolume)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetMusicFadeVolume(uint8 nVolume)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetMonoMode(uint8 nMode)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::LoadSampleBank(uint8 nBank)
|
||||||
|
{
|
||||||
|
ASSERT( nBank < MAX_SAMPLEBANKS );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::UnloadSampleBank(uint8 nBank)
|
||||||
|
{
|
||||||
|
ASSERT( nBank < MAX_SAMPLEBANKS );
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::IsSampleBankLoaded(uint8 nBank)
|
||||||
|
{
|
||||||
|
ASSERT( nBank < MAX_SAMPLEBANKS );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::IsPedCommentLoaded(uint32 nComment)
|
||||||
|
{
|
||||||
|
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::_GetPedCommentSlot(uint32 nComment)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::LoadPedComment(uint32 nComment)
|
||||||
|
{
|
||||||
|
ASSERT( nComment < TOTAL_AUDIO_SAMPLES );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetBankContainingSound(uint32 offset)
|
||||||
|
{
|
||||||
|
return SAMPLEBANK_INVALID;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetSampleBaseFrequency(uint32 nSample)
|
||||||
|
{
|
||||||
|
ASSERT( nSample < TOTAL_AUDIO_SAMPLES );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetSampleLoopStartOffset(uint32 nSample)
|
||||||
|
{
|
||||||
|
ASSERT( nSample < TOTAL_AUDIO_SAMPLES );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetSampleLoopEndOffset(uint32 nSample)
|
||||||
|
{
|
||||||
|
ASSERT( nSample < TOTAL_AUDIO_SAMPLES );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32
|
||||||
|
cSampleManager::GetSampleLength(uint32 nSample)
|
||||||
|
{
|
||||||
|
ASSERT( nSample < TOTAL_AUDIO_SAMPLES );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool cSampleManager::UpdateReverb(void)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelReverbFlag(uint32 nChannel, uint8 nReverbFlag)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::InitialiseChannel(uint32 nChannel, uint32 nSfx, uint8 nBank)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelEmittingVolume(uint32 nChannel, uint32 nVolume)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel != CHANNEL2D );
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannel3DPosition(uint32 nChannel, float fX, float fY, float fZ)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel != CHANNEL2D );
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannel3DDistances(uint32 nChannel, float fMax, float fMin)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel != CHANNEL2D );
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelVolume(uint32 nChannel, uint32 nVolume)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel == CHANNEL2D );
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelPan(uint32 nChannel, uint32 nPan)
|
||||||
|
{
|
||||||
|
ASSERT(nChannel == CHANNEL2D);
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelFrequency(uint32 nChannel, uint32 nFreq)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelLoopPoints(uint32 nChannel, uint32 nLoopStart, int32 nLoopEnd)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetChannelLoopCount(uint32 nChannel, uint32 nLoopCount)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::GetChannelUsedFlag(uint32 nChannel)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::StartChannel(uint32 nChannel)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::StopChannel(uint32 nChannel)
|
||||||
|
{
|
||||||
|
ASSERT( nChannel < MAXCHANNELS+MAX2DCHANNELS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::PreloadStreamedFile(uint8 nFile, uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::PauseStream(uint8 nPauseFlag, uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::StartPreloadedStreamedFile(uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::StartStreamedFile(uint8 nFile, uint32 nPos, uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::StopStreamedFile(uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetStreamedFilePosition(uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
cSampleManager::SetStreamedVolumeAndPan(uint8 nVolume, uint8 nPan, uint8 nEffectFlag, uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
}
|
||||||
|
|
||||||
|
int32
|
||||||
|
cSampleManager::GetStreamedFileLength(uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < TOTAL_STREAMED_SOUNDS );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::IsStreamPlaying(uint8 nStream)
|
||||||
|
{
|
||||||
|
ASSERT( nStream < MAX_STREAMS );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
cSampleManager::InitialiseSampleBanks(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -57,6 +57,7 @@
|
|||||||
#include "RoadBlocks.h"
|
#include "RoadBlocks.h"
|
||||||
#include "RpAnimBlend.h"
|
#include "RpAnimBlend.h"
|
||||||
#include "Rubbish.h"
|
#include "Rubbish.h"
|
||||||
|
#include "SimpleModelInfo.h"
|
||||||
#include "Shadows.h"
|
#include "Shadows.h"
|
||||||
#include "SpecialFX.h"
|
#include "SpecialFX.h"
|
||||||
#include "Sprite.h"
|
#include "Sprite.h"
|
||||||
@ -1899,6 +1900,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
ped->CharCreatedBy = MISSION_CHAR;
|
ped->CharCreatedBy = MISSION_CHAR;
|
||||||
ped->bRespondsToThreats = false;
|
ped->bRespondsToThreats = false;
|
||||||
ped->bAllowMedicsToReviveMe = false;
|
ped->bAllowMedicsToReviveMe = false;
|
||||||
|
ped->bIsPlayerFriend = false;
|
||||||
CVector pos = *(CVector*)&ScriptParams[2];
|
CVector pos = *(CVector*)&ScriptParams[2];
|
||||||
if (pos.z <= MAP_Z_LOW_LIMIT)
|
if (pos.z <= MAP_Z_LOW_LIMIT)
|
||||||
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
||||||
@ -1921,24 +1923,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||||
if (ped) {
|
CTheScripts::RemoveThisPed(ped);
|
||||||
if (ped->InVehicle()) {
|
|
||||||
if (ped->m_pMyVehicle->pDriver == ped) {
|
|
||||||
ped->m_pMyVehicle->RemoveDriver();
|
|
||||||
ped->m_pMyVehicle->SetStatus(STATUS_ABANDONED);
|
|
||||||
if (ped->m_pMyVehicle->m_nDoorLock == CARLOCK_LOCKED_INITIALLY)
|
|
||||||
ped->m_pMyVehicle->m_nDoorLock = CARLOCK_UNLOCKED;
|
|
||||||
if (ped->m_nPedType == PEDTYPE_COP && ped->m_pMyVehicle->IsLawEnforcementVehicle())
|
|
||||||
ped->m_pMyVehicle->ChangeLawEnforcerState(0);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
ped->m_pMyVehicle->RemovePassenger(ped);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
CWorld::RemoveReferencesToDeletedObject(ped);
|
|
||||||
delete ped;
|
|
||||||
--CPopulation::ms_nTotalMissionPeds;
|
|
||||||
}
|
|
||||||
if (m_bIsMissionScript)
|
if (m_bIsMissionScript)
|
||||||
CTheScripts::MissionCleanup.RemoveEntityFromList(ScriptParams[0], CLEANUP_CHAR);
|
CTheScripts::MissionCleanup.RemoveEntityFromList(ScriptParams[0], CLEANUP_CHAR);
|
||||||
return 0;
|
return 0;
|
||||||
@ -1955,19 +1940,26 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
ped->SetWanderPath(path);
|
ped->SetWanderPath(path);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented.
|
//case COMMAND_CHAR_WANDER_RANGE:
|
||||||
case COMMAND_CHAR_WANDER_RANGE:
|
|
||||||
*/
|
|
||||||
case COMMAND_CHAR_FOLLOW_PATH:
|
case COMMAND_CHAR_FOLLOW_PATH:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 4);
|
CollectParameters(&m_nIp, 6);
|
||||||
CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||||
assert(ped);
|
assert(ped);
|
||||||
|
if (ped->GetPedState() == PED_ATTACK || ped->GetPedState() == PED_FIGHT || !ped->IsPedInControl())
|
||||||
|
return 0;
|
||||||
CVector pos = *(CVector*)&ScriptParams[1];
|
CVector pos = *(CVector*)&ScriptParams[1];
|
||||||
if (pos.z <= MAP_Z_LOW_LIMIT)
|
if (pos.z <= MAP_Z_LOW_LIMIT)
|
||||||
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
||||||
|
float radius = *(float*)&ScriptParams[4];
|
||||||
|
eMoveState state;
|
||||||
|
switch (ScriptParams[5]) {
|
||||||
|
case 0: state = PEDMOVE_WALK;
|
||||||
|
case 1: state = PEDMOVE_SPRINT;
|
||||||
|
default: assert(0);
|
||||||
|
}
|
||||||
ped->ClearAll();
|
ped->ClearAll();
|
||||||
ped->SetFollowPath(pos);
|
ped->SetFollowPath(pos, radius, state, nil, nil, 999999);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_CHAR_SET_IDLE:
|
case COMMAND_CHAR_SET_IDLE:
|
||||||
@ -2012,44 +2004,27 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
CVector pos = *(CVector*)&ScriptParams[1];
|
CVector pos = *(CVector*)&ScriptParams[1];
|
||||||
if (pos.z <= MAP_Z_LOW_LIMIT)
|
if (pos.z <= MAP_Z_LOW_LIMIT)
|
||||||
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
||||||
/* The following block was once again written
|
// removed dumb stuff again
|
||||||
* by someone not familiar with virtual functions.
|
|
||||||
* It doesn't require any ifs at all.
|
|
||||||
* To keep as close to original as possible, I'll keep it.
|
|
||||||
* Maybe there was more commented out/debug
|
|
||||||
* stuff, but I doubt it.
|
|
||||||
*/
|
|
||||||
if (!vehicle) {
|
if (!vehicle) {
|
||||||
pos.z += ped->GetDistanceFromCentreOfMassToBaseOfModel();
|
pos.z += ped->GetDistanceFromCentreOfMassToBaseOfModel();
|
||||||
ped->Teleport(pos);
|
ped->Teleport(pos);
|
||||||
CTheScripts::ClearSpaceForMissionEntity(pos, ped);
|
CTheScripts::ClearSpaceForMissionEntity(pos, ped);
|
||||||
|
for (int i = 0; i < ped->m_numNearPeds; i++) {
|
||||||
|
CPed* pNearPed = ped->m_nearPeds[i];
|
||||||
|
if (pNearPed->m_leader == ped) {
|
||||||
|
pNearPed->Teleport(pos);
|
||||||
|
pNearPed->PositionPedOutOfCollision(); // TODO(MIAMI): this is PositionAnyPedOutOfCollision!!!
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (vehicle->IsBoat()) {
|
|
||||||
pos.z += vehicle->GetDistanceFromCentreOfMassToBaseOfModel();
|
|
||||||
vehicle->Teleport(pos);
|
|
||||||
CTheScripts::ClearSpaceForMissionEntity(pos, vehicle);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
pos.z += vehicle->GetDistanceFromCentreOfMassToBaseOfModel();
|
pos.z += vehicle->GetDistanceFromCentreOfMassToBaseOfModel();
|
||||||
vehicle->Teleport(pos);
|
vehicle->Teleport(pos);
|
||||||
CTheScripts::ClearSpaceForMissionEntity(pos, vehicle);
|
CTheScripts::ClearSpaceForMissionEntity(pos, vehicle);
|
||||||
}
|
}
|
||||||
/* Short version of this command.
|
|
||||||
*
|
|
||||||
* CollectParameters(&m_nIp, 4);
|
|
||||||
* CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
|
||||||
* assert(ped);
|
|
||||||
* CEntity* entityToMove = ped->bInVehicle ? ped->m_pMyVehicle : ped;
|
|
||||||
* CVector pos = *(CVector*)&ScriptParams[1];
|
|
||||||
* if (pos.z <= MAP_Z_LOW_LIMIT)
|
|
||||||
* pos.z = CWorld::FindGroundZForCoord(pos.x, pos.y);
|
|
||||||
* pos.z += entityToMove->GetDistanceFromCentreOfMassToBaseOfModel();
|
|
||||||
* entityToMove->Teleport(pos);
|
|
||||||
* CTheScripts::ClearSpaceForMissionEntity(pos, entityToMove);
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
case COMMAND_IS_CHAR_STILL_ALIVE:
|
case COMMAND_IS_CHAR_STILL_ALIVE:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2057,6 +2032,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
UpdateCompareFlag(ped && ped->GetPedState() != PED_DEAD && ped->GetPedState() != PED_DIE);
|
UpdateCompareFlag(ped && ped->GetPedState() != PED_DEAD && ped->GetPedState() != PED_DIE);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
case COMMAND_IS_CHAR_IN_AREA_2D:
|
case COMMAND_IS_CHAR_IN_AREA_2D:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 6);
|
CollectParameters(&m_nIp, 6);
|
||||||
@ -2124,7 +2100,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
boat->SetStatus(STATUS_ABANDONED);
|
boat->SetStatus(STATUS_ABANDONED);
|
||||||
boat->bIsLocked = true;
|
boat->bIsLocked = true;
|
||||||
boat->AutoPilot.m_nCarMission = MISSION_NONE;
|
boat->AutoPilot.m_nCarMission = MISSION_NONE;
|
||||||
boat->AutoPilot.m_nTempAction = TEMPACT_NONE; /* Animation ID? */
|
boat->AutoPilot.m_nTempAction = TEMPACT_NONE;
|
||||||
boat->AutoPilot.m_nCruiseSpeed = boat->AutoPilot.m_fMaxTrafficSpeed = 20.0f;
|
boat->AutoPilot.m_nCruiseSpeed = boat->AutoPilot.m_fMaxTrafficSpeed = 20.0f;
|
||||||
if (m_bIsMissionScript)
|
if (m_bIsMissionScript)
|
||||||
boat->bIsStaticWaitingForCollision = true;
|
boat->bIsStaticWaitingForCollision = true;
|
||||||
@ -2147,7 +2123,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
car->bIsLocked = true;
|
car->bIsLocked = true;
|
||||||
CCarCtrl::JoinCarWithRoadSystem(car);
|
CCarCtrl::JoinCarWithRoadSystem(car);
|
||||||
car->AutoPilot.m_nCarMission = MISSION_NONE;
|
car->AutoPilot.m_nCarMission = MISSION_NONE;
|
||||||
car->AutoPilot.m_nTempAction = TEMPACT_NONE; /* Animation ID? */
|
car->AutoPilot.m_nTempAction = TEMPACT_NONE;
|
||||||
car->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS;
|
car->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS;
|
||||||
car->AutoPilot.m_nCruiseSpeed = car->AutoPilot.m_fMaxTrafficSpeed = 9.0f;
|
car->AutoPilot.m_nCruiseSpeed = car->AutoPilot.m_fMaxTrafficSpeed = 9.0f;
|
||||||
car->AutoPilot.m_nCurrentLane = car->AutoPilot.m_nNextLane = 0;
|
car->AutoPilot.m_nCurrentLane = car->AutoPilot.m_nNextLane = 0;
|
||||||
@ -2277,6 +2253,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
case COMMAND_IS_CAR_STILL_ALIVE:
|
case COMMAND_IS_CAR_STILL_ALIVE:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2284,6 +2261,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
UpdateCompareFlag(car && car->GetStatus() != STATUS_WRECKED && (car->IsBoat() || !car->bIsInWater));
|
UpdateCompareFlag(car && car->GetStatus() != STATUS_WRECKED && (car->IsBoat() || !car->bIsInWater));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
case COMMAND_SET_CAR_CRUISE_SPEED:
|
case COMMAND_SET_CAR_CRUISE_SPEED:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
@ -2358,32 +2336,28 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
return 0;
|
return 0;
|
||||||
case COMMAND_PRINT_BIG:
|
case COMMAND_PRINT_BIG:
|
||||||
{
|
{
|
||||||
wchar* key = TheText.Get((char*)&CTheScripts::ScriptSpace[m_nIp]);
|
wchar* key = CTheScripts::GetTextByKeyFromScript(&m_nIp);
|
||||||
m_nIp += KEY_LENGTH_IN_SCRIPT;
|
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
CMessages::AddBigMessage(key, ScriptParams[0], ScriptParams[1] - 1);
|
CMessages::AddBigMessage(key, ScriptParams[0], ScriptParams[1] - 1);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_PRINT:
|
case COMMAND_PRINT:
|
||||||
{
|
{
|
||||||
wchar* key = TheText.Get((char*)&CTheScripts::ScriptSpace[m_nIp]);
|
wchar* key = CTheScripts::GetTextByKeyFromScript(&m_nIp);
|
||||||
m_nIp += KEY_LENGTH_IN_SCRIPT;
|
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
CMessages::AddMessage(key, ScriptParams[0], ScriptParams[1]);
|
CMessages::AddMessage(key, ScriptParams[0], ScriptParams[1]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_PRINT_NOW:
|
case COMMAND_PRINT_NOW:
|
||||||
{
|
{
|
||||||
wchar* key = TheText.Get((char*)&CTheScripts::ScriptSpace[m_nIp]);
|
wchar* key = CTheScripts::GetTextByKeyFromScript(&m_nIp);
|
||||||
m_nIp += KEY_LENGTH_IN_SCRIPT;
|
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
CMessages::AddMessageJumpQ(key, ScriptParams[0], ScriptParams[1]);
|
CMessages::AddMessageJumpQ(key, ScriptParams[0], ScriptParams[1]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_PRINT_SOON:
|
case COMMAND_PRINT_SOON:
|
||||||
{
|
{
|
||||||
wchar* key = TheText.Get((char*)&CTheScripts::ScriptSpace[m_nIp]);
|
wchar* key = CTheScripts::GetTextByKeyFromScript(&m_nIp);
|
||||||
m_nIp += KEY_LENGTH_IN_SCRIPT;
|
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
CMessages::AddMessageSoon(key, ScriptParams[0], ScriptParams[1]);
|
CMessages::AddMessageSoon(key, ScriptParams[0], ScriptParams[1]);
|
||||||
return 0;
|
return 0;
|
||||||
@ -2420,15 +2394,15 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||||||
case COMMAND_DEBUG_OFF:
|
case COMMAND_DEBUG_OFF:
|
||||||
CTheScripts::DbgFlag = false;
|
CTheScripts::DbgFlag = false;
|
||||||
return 0;
|
return 0;
|
||||||
|
/*
|
||||||
case COMMAND_RETURN_TRUE:
|
case COMMAND_RETURN_TRUE:
|
||||||
UpdateCompareFlag(true);
|
UpdateCompareFlag(true);
|
||||||
return 0;
|
return 0;
|
||||||
case COMMAND_RETURN_FALSE:
|
case COMMAND_RETURN_FALSE:
|
||||||
UpdateCompareFlag(false);
|
UpdateCompareFlag(false);
|
||||||
return 0;
|
return 0;
|
||||||
/* Special command only used by compiler.
|
|
||||||
case COMMAND_VAR_INT:
|
|
||||||
*/
|
*/
|
||||||
|
//case COMMAND_VAR_INT:
|
||||||
default:
|
default:
|
||||||
assert(0);
|
assert(0);
|
||||||
break;
|
break;
|
||||||
@ -2481,8 +2455,6 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
{
|
{
|
||||||
if (!m_bIsMissionScript)
|
if (!m_bIsMissionScript)
|
||||||
return 0;
|
return 0;
|
||||||
if (strcmp(m_abScriptName, "love3") == 0) /* A Drop in the Ocean */
|
|
||||||
CPickups::RemoveAllFloatingPickups();
|
|
||||||
CTheScripts::MissionCleanup.Process();
|
CTheScripts::MissionCleanup.Process();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -2625,29 +2597,23 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||||
UpdateCompareFlag(pPed->bInVehicle);
|
UpdateCompareFlag(pPed->bInVehicle && pPed->m_pMyVehicle);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_IS_PLAYER_IN_ANY_CAR:
|
case COMMAND_IS_PLAYER_IN_ANY_CAR:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
CPed* pPed = CWorld::Players[ScriptParams[0]].m_pPed;
|
CPed* pPed = CWorld::Players[ScriptParams[0]].m_pPed;
|
||||||
UpdateCompareFlag(pPed->bInVehicle);
|
UpdateCompareFlag(pPed->bInVehicle && pPed->m_pMyVehicle);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_IS_BUTTON_PRESSED:
|
case COMMAND_IS_BUTTON_PRESSED:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
bool value = GetPadState(ScriptParams[0], ScriptParams[1]) != 0;
|
UpdateCompareFlag(GetPadState(ScriptParams[0], ScriptParams[1]) != 0);
|
||||||
if (CGame::playingIntro && ScriptParams[0] == 0 && ScriptParams[1] == 12) {
|
|
||||||
if (CPad::GetPad(0)->GetLeftMouseJustDown() ||
|
|
||||||
CPad::GetPad(0)->GetEnterJustDown() ||
|
|
||||||
CPad::GetPad(0)->GetCharJustDown(' '))
|
|
||||||
value = true;
|
|
||||||
}
|
|
||||||
UpdateCompareFlag(value);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
case COMMAND_GET_PAD_STATE:
|
case COMMAND_GET_PAD_STATE:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2655,6 +2621,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
StoreParameters(&m_nIp, 1);
|
StoreParameters(&m_nIp, 1);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
case COMMAND_LOCATE_PLAYER_ANY_MEANS_2D:
|
case COMMAND_LOCATE_PLAYER_ANY_MEANS_2D:
|
||||||
case COMMAND_LOCATE_PLAYER_ON_FOOT_2D:
|
case COMMAND_LOCATE_PLAYER_ON_FOOT_2D:
|
||||||
case COMMAND_LOCATE_PLAYER_IN_CAR_2D:
|
case COMMAND_LOCATE_PLAYER_IN_CAR_2D:
|
||||||
@ -2721,6 +2688,9 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pObj->SetOrientation(0.0f, 0.0f, 0.0f);
|
pObj->SetOrientation(0.0f, 0.0f, 0.0f);
|
||||||
pObj->GetMatrix().UpdateRW();
|
pObj->GetMatrix().UpdateRW();
|
||||||
pObj->UpdateRwFrame();
|
pObj->UpdateRwFrame();
|
||||||
|
CBaseModelInfo* pModelInfo = CModelInfo::GetModelInfo(mi);
|
||||||
|
if (pModelInfo->IsBuilding() && ((CSimpleModelInfo*)pModelInfo)->m_isBigBuilding)
|
||||||
|
pObj->SetupBigBuilding();
|
||||||
CTheScripts::ClearSpaceForMissionEntity(pos, pObj);
|
CTheScripts::ClearSpaceForMissionEntity(pos, pObj);
|
||||||
CWorld::Add(pObj);
|
CWorld::Add(pObj);
|
||||||
ScriptParams[0] = CPools::GetObjectPool()->GetIndex(pObj);
|
ScriptParams[0] = CPools::GetObjectPool()->GetIndex(pObj);
|
||||||
@ -2745,6 +2715,8 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
case COMMAND_ADD_SCORE:
|
case COMMAND_ADD_SCORE:
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
CWorld::Players[ScriptParams[0]].m_nMoney += ScriptParams[1];
|
CWorld::Players[ScriptParams[0]].m_nMoney += ScriptParams[1];
|
||||||
|
if (CWorld::Players[ScriptParams[0]].m_nMoney < 0)
|
||||||
|
CWorld::Players[ScriptParams[0]].m_nMoney = 0;
|
||||||
return 0;
|
return 0;
|
||||||
case COMMAND_IS_SCORE_GREATER:
|
case COMMAND_IS_SCORE_GREATER:
|
||||||
CollectParameters(&m_nIp, 2);
|
CollectParameters(&m_nIp, 2);
|
||||||
@ -2787,12 +2759,14 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
case COMMAND_HAS_DEATHARREST_BEEN_EXECUTED:
|
case COMMAND_HAS_DEATHARREST_BEEN_EXECUTED:
|
||||||
UpdateCompareFlag(m_bDeatharrestExecuted);
|
UpdateCompareFlag(m_bDeatharrestExecuted);
|
||||||
return 0;
|
return 0;
|
||||||
|
/*
|
||||||
case COMMAND_ADD_AMMO_TO_PLAYER:
|
case COMMAND_ADD_AMMO_TO_PLAYER:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 3);
|
CollectParameters(&m_nIp, 3);
|
||||||
CWorld::Players[ScriptParams[0]].m_pPed->GrantAmmo((eWeaponType)ScriptParams[1], ScriptParams[2]);
|
CWorld::Players[ScriptParams[0]].m_pPed->GrantAmmo((eWeaponType)ScriptParams[1], ScriptParams[2]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
case COMMAND_ADD_AMMO_TO_CHAR:
|
case COMMAND_ADD_AMMO_TO_CHAR:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 3);
|
CollectParameters(&m_nIp, 3);
|
||||||
@ -2801,10 +2775,8 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pPed->GrantAmmo((eWeaponType)ScriptParams[1], ScriptParams[2]);
|
pPed->GrantAmmo((eWeaponType)ScriptParams[1], ScriptParams[2]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented
|
//case COMMAND_ADD_AMMO_TO_CAR:
|
||||||
case COMMAND_ADD_AMMO_TO_CAR:
|
//case COMMAND_IS_PLAYER_STILL_ALIVE:
|
||||||
case COMMAND_IS_PLAYER_STILL_ALIVE:
|
|
||||||
*/
|
|
||||||
case COMMAND_IS_PLAYER_DEAD:
|
case COMMAND_IS_PLAYER_DEAD:
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
UpdateCompareFlag(CWorld::Players[ScriptParams[0]].m_WBState == WBSTATE_WASTED);
|
UpdateCompareFlag(CWorld::Players[ScriptParams[0]].m_WBState == WBSTATE_WASTED);
|
||||||
@ -2813,14 +2785,14 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||||
UpdateCompareFlag(!pPed || pPed->GetPedState() == PED_DIE || pPed->GetPedState() == PED_DEAD);
|
UpdateCompareFlag(!pPed || pPed->DyingOrDead());
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_IS_CAR_DEAD:
|
case COMMAND_IS_CAR_DEAD:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
|
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
|
||||||
UpdateCompareFlag(!pVehicle || pVehicle->GetStatus() == STATUS_WRECKED || !pVehicle->IsBoat() && pVehicle->bIsInWater);
|
UpdateCompareFlag(!pVehicle || pVehicle->GetStatus() == STATUS_WRECKED || pVehicle->bIsDrowning);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case COMMAND_SET_CHAR_THREAT_SEARCH:
|
case COMMAND_SET_CHAR_THREAT_SEARCH:
|
||||||
@ -2831,9 +2803,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pPed->m_fearFlags |= ScriptParams[1];
|
pPed->m_fearFlags |= ScriptParams[1];
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented.
|
//case COMMAND_SET_CHAR_THREAT_REACTION:
|
||||||
case COMMAND_SET_CHAR_THREAT_REACTION:
|
|
||||||
*/
|
|
||||||
case COMMAND_SET_CHAR_OBJ_NO_OBJ:
|
case COMMAND_SET_CHAR_OBJ_NO_OBJ:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2843,12 +2813,10 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pPed->ClearObjective();
|
pPed->ClearObjective();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented.
|
//case COMMAND_ORDER_DRIVER_OUT_OF_CAR:
|
||||||
case COMMAND_ORDER_DRIVER_OUT_OF_CAR:
|
//case COMMAND_ORDER_CHAR_TO_DRIVE_CAR:
|
||||||
case COMMAND_ORDER_CHAR_TO_DRIVE_CAR:
|
//case COMMAND_ADD_PATROL_POINT:
|
||||||
case COMMAND_ADD_PATROL_POINT:
|
//case COMMAND_IS_PLAYER_IN_GANGZONE:
|
||||||
case COMMAND_IS_PLAYER_IN_GANGZONE:
|
|
||||||
*/
|
|
||||||
case COMMAND_IS_PLAYER_IN_ZONE:
|
case COMMAND_IS_PLAYER_IN_ZONE:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2867,8 +2835,6 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
UpdateCompareFlag(CWorld::Players[ScriptParams[0]].m_pPed->GetPedState() == PED_DRIVING &&
|
UpdateCompareFlag(CWorld::Players[ScriptParams[0]].m_pPed->GetPedState() == PED_DRIVING &&
|
||||||
CPad::GetPad(ScriptParams[0])->GetHorn());
|
CPad::GetPad(ScriptParams[0])->GetHorn());
|
||||||
/* Is it correct that same parameter is used both as index of Players */
|
|
||||||
/* and as ID of pad? Pratically this parameter is always 0 anyway of course. */
|
|
||||||
return 0;
|
return 0;
|
||||||
case COMMAND_HAS_CHAR_SPOTTED_PLAYER:
|
case COMMAND_HAS_CHAR_SPOTTED_PLAYER:
|
||||||
{
|
{
|
||||||
@ -2878,10 +2844,8 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
UpdateCompareFlag(pPed->OurPedCanSeeThisOne(CWorld::Players[ScriptParams[1]].m_pPed));
|
UpdateCompareFlag(pPed->OurPedCanSeeThisOne(CWorld::Players[ScriptParams[1]].m_pPed));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented.
|
//case COMMAND_ORDER_CHAR_TO_BACKDOOR:
|
||||||
case COMMAND_ORDER_CHAR_TO_BACKDOOR:
|
//case COMMAND_ADD_CHAR_TO_GANG:
|
||||||
case COMMAND_ADD_CHAR_TO_GANG:
|
|
||||||
*/
|
|
||||||
case COMMAND_IS_CHAR_OBJECTIVE_PASSED:
|
case COMMAND_IS_CHAR_OBJECTIVE_PASSED:
|
||||||
{
|
{
|
||||||
CollectParameters(&m_nIp, 1);
|
CollectParameters(&m_nIp, 1);
|
||||||
@ -2937,6 +2901,9 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pPed->CharCreatedBy = MISSION_CHAR;
|
pPed->CharCreatedBy = MISSION_CHAR;
|
||||||
pPed->bRespondsToThreats = false;
|
pPed->bRespondsToThreats = false;
|
||||||
pPed->bAllowMedicsToReviveMe = false;
|
pPed->bAllowMedicsToReviveMe = false;
|
||||||
|
pPed->bIsPlayerFriend = false;
|
||||||
|
if (pVehicle->bIsBus)
|
||||||
|
pPed->bRenderPedInCar = false;
|
||||||
pPed->SetPosition(pVehicle->GetPosition());
|
pPed->SetPosition(pVehicle->GetPosition());
|
||||||
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
||||||
pPed->SetPedState(PED_DRIVING);
|
pPed->SetPedState(PED_DRIVING);
|
||||||
@ -2986,7 +2953,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
pPlayer->m_pPed->SetPedState(PED_IDLE);
|
pPlayer->m_pPed->SetPedState(PED_IDLE);
|
||||||
pPlayer->m_pPed->bUsesCollision = true;
|
pPlayer->m_pPed->bUsesCollision = true;
|
||||||
pPlayer->m_pPed->SetMoveSpeed(0.0f, 0.0f, 0.0f);
|
pPlayer->m_pPed->SetMoveSpeed(0.0f, 0.0f, 0.0f);
|
||||||
pPlayer->m_pPed->AddWeaponModel(CWeaponInfo::GetWeaponInfo(pPlayer->m_pPed->GetWeapon()->m_eWeaponType)->m_nModelId);
|
pPlayer->m_pPed->ReplaceWeaponWhenExitingVehicle();
|
||||||
pPlayer->m_pPed->RemoveInCarAnims();
|
pPlayer->m_pPed->RemoveInCarAnims();
|
||||||
if (pPlayer->m_pPed->m_pVehicleAnim)
|
if (pPlayer->m_pPed->m_pVehicleAnim)
|
||||||
pPlayer->m_pPed->m_pVehicleAnim->blendDelta = -1000.0f;
|
pPlayer->m_pPed->m_pVehicleAnim->blendDelta = -1000.0f;
|
||||||
@ -3000,9 +2967,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||||||
CTheScripts::ClearSpaceForMissionEntity(pos, pPlayer->m_pPed);
|
CTheScripts::ClearSpaceForMissionEntity(pos, pPlayer->m_pPed);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* Not implemented.
|
//case COMMAND_MAKE_CHAR_DO_NOTHING:
|
||||||
case COMMAND_MAKE_CHAR_DO_NOTHING:
|
|
||||||
*/
|
|
||||||
default:
|
default:
|
||||||
assert(0);
|
assert(0);
|
||||||
break;
|
break;
|
||||||
@ -3132,9 +3097,9 @@ int8 CRunningScript::ProcessCommands300To399(int32 command)
|
|||||||
pCarGen->SwitchOff();
|
pCarGen->SwitchOff();
|
||||||
}else if (ScriptParams[1] <= 100){
|
}else if (ScriptParams[1] <= 100){
|
||||||
pCarGen->SwitchOn();
|
pCarGen->SwitchOn();
|
||||||
|
pCarGen->SetUsesRemaining(ScriptParams[1]);
|
||||||
}else{
|
}else{
|
||||||
pCarGen->SwitchOn();
|
pCarGen->SwitchOn();
|
||||||
pCarGen->SetUsesRemaining(ScriptParams[1]);
|
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -6934,7 +6899,11 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
|
|||||||
float heading = LimitAngleOnCircle(
|
float heading = LimitAngleOnCircle(
|
||||||
RADTODEG(Atan2(-pObject->GetForward().x, pObject->GetForward().y)));
|
RADTODEG(Atan2(-pObject->GetForward().x, pObject->GetForward().y)));
|
||||||
float headingTarget = *(float*)&ScriptParams[1];
|
float headingTarget = *(float*)&ScriptParams[1];
|
||||||
|
#ifdef FIX_BUGS
|
||||||
|
float rotateBy = *(float*)&ScriptParams[2] * CTimer::GetTimeStepFix();
|
||||||
|
#else
|
||||||
float rotateBy = *(float*)&ScriptParams[2];
|
float rotateBy = *(float*)&ScriptParams[2];
|
||||||
|
#endif
|
||||||
if (headingTarget == heading) { // using direct comparasion here is fine
|
if (headingTarget == heading) { // using direct comparasion here is fine
|
||||||
UpdateCompareFlag(true);
|
UpdateCompareFlag(true);
|
||||||
return 0;
|
return 0;
|
||||||
@ -6983,7 +6952,11 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
|
|||||||
assert(pObject);
|
assert(pObject);
|
||||||
CVector pos = pObject->GetPosition();
|
CVector pos = pObject->GetPosition();
|
||||||
CVector posTarget = *(CVector*)&ScriptParams[1];
|
CVector posTarget = *(CVector*)&ScriptParams[1];
|
||||||
|
#ifdef FIX_BUGS
|
||||||
|
CVector slideBy = *(CVector*)&ScriptParams[4] * CTimer::GetTimeStepFix();
|
||||||
|
#else
|
||||||
CVector slideBy = *(CVector*)&ScriptParams[4];
|
CVector slideBy = *(CVector*)&ScriptParams[4];
|
||||||
|
#endif
|
||||||
if (posTarget == pos) { // using direct comparasion here is fine
|
if (posTarget == pos) { // using direct comparasion here is fine
|
||||||
UpdateCompareFlag(true);
|
UpdateCompareFlag(true);
|
||||||
return 0;
|
return 0;
|
||||||
@ -7035,28 +7008,16 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
|
|||||||
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||||
if (pPed && pPed->CharCreatedBy == MISSION_CHAR){
|
if (pPed && pPed->CharCreatedBy == MISSION_CHAR){
|
||||||
CWorld::RemoveReferencesToDeletedObject(pPed);
|
CWorld::RemoveReferencesToDeletedObject(pPed);
|
||||||
if (pPed->bInVehicle){
|
if (pPed->bInVehicle && pPed->m_pMyVehicle)
|
||||||
if (pPed->m_pMyVehicle){
|
CTheScripts::RemoveThisPed(pPed);
|
||||||
if (pPed == pPed->m_pMyVehicle->pDriver){
|
else{
|
||||||
pPed->m_pMyVehicle->RemoveDriver();
|
|
||||||
pPed->m_pMyVehicle->SetStatus(STATUS_ABANDONED);
|
|
||||||
if (pPed->m_pMyVehicle->m_nDoorLock == CARLOCK_LOCKED_INITIALLY)
|
|
||||||
pPed->m_pMyVehicle->m_nDoorLock = CARLOCK_UNLOCKED;
|
|
||||||
if (pPed->m_nPedType == PEDTYPE_COP && pPed->m_pMyVehicle->IsLawEnforcementVehicle())
|
|
||||||
pPed->m_pMyVehicle->ChangeLawEnforcerState(0);
|
|
||||||
}else{
|
|
||||||
pPed->m_pMyVehicle->RemovePassenger(pPed);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
delete pPed;
|
|
||||||
--CPopulation::ms_nTotalMissionPeds;
|
|
||||||
}else{
|
|
||||||
pPed->CharCreatedBy = RANDOM_CHAR;
|
pPed->CharCreatedBy = RANDOM_CHAR;
|
||||||
pPed->bRespondsToThreats = true;
|
pPed->bRespondsToThreats = true;
|
||||||
pPed->bScriptObjectiveCompleted = false;
|
pPed->bScriptObjectiveCompleted = false;
|
||||||
pPed->ClearLeader();
|
pPed->ClearLeader();
|
||||||
--CPopulation::ms_nTotalMissionPeds;
|
--CPopulation::ms_nTotalMissionPeds;
|
||||||
pPed->bFadeOut = true;
|
pPed->bFadeOut = true;
|
||||||
|
CWorld::RemoveReferencesToDeletedObject(pPed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (m_bIsMissionScript)
|
if (m_bIsMissionScript)
|
||||||
@ -7253,7 +7214,7 @@ int8 CRunningScript::ProcessCommands800To899(int32 command)
|
|||||||
pPed->m_nLastPedState = PED_NONE;
|
pPed->m_nLastPedState = PED_NONE;
|
||||||
pPed->bUsesCollision = true;
|
pPed->bUsesCollision = true;
|
||||||
pPed->SetMoveSpeed(0.0f, 0.0f, 0.0f);
|
pPed->SetMoveSpeed(0.0f, 0.0f, 0.0f);
|
||||||
pPed->AddWeaponModel(CWeaponInfo::GetWeaponInfo(pPed->m_weapons[pPed->m_currentWeapon].m_eWeaponType)->m_nModelId);
|
pPed->ReplaceWeaponWhenExitingVehicle();
|
||||||
pPed->RemoveInCarAnims();
|
pPed->RemoveInCarAnims();
|
||||||
if (pPed->m_pVehicleAnim)
|
if (pPed->m_pVehicleAnim)
|
||||||
pPed->m_pVehicleAnim->blendDelta = -1000.0f;
|
pPed->m_pVehicleAnim->blendDelta = -1000.0f;
|
||||||
@ -10556,7 +10517,9 @@ int8 CRunningScript::ProcessCommands1300To1399(int32 command)
|
|||||||
pPed->CharCreatedBy = MISSION_CHAR;
|
pPed->CharCreatedBy = MISSION_CHAR;
|
||||||
pPed->bRespondsToThreats = false;
|
pPed->bRespondsToThreats = false;
|
||||||
pPed->bAllowMedicsToReviveMe = false;
|
pPed->bAllowMedicsToReviveMe = false;
|
||||||
// TODO(MIAMI): two more flags and more stuff
|
pPed->bIsPlayerFriend = false;
|
||||||
|
if (pVehicle->bIsBus)
|
||||||
|
pPed->bRenderPedInCar = false;
|
||||||
pPed->SetPosition(pVehicle->GetPosition());
|
pPed->SetPosition(pVehicle->GetPosition());
|
||||||
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
||||||
pPed->SetPedState(PED_DRIVING);
|
pPed->SetPedState(PED_DRIVING);
|
||||||
@ -10585,7 +10548,9 @@ int8 CRunningScript::ProcessCommands1300To1399(int32 command)
|
|||||||
pPed->CharCreatedBy = MISSION_CHAR;
|
pPed->CharCreatedBy = MISSION_CHAR;
|
||||||
pPed->bRespondsToThreats = false;
|
pPed->bRespondsToThreats = false;
|
||||||
pPed->bAllowMedicsToReviveMe = false;
|
pPed->bAllowMedicsToReviveMe = false;
|
||||||
// TODO(MIAMI): two more flags and more stuff (ClearFollowPath)
|
pPed->bIsPlayerFriend = false;
|
||||||
|
if (pVehicle->bIsBus)
|
||||||
|
pPed->bRenderPedInCar = false;
|
||||||
pPed->SetPosition(pVehicle->GetPosition());
|
pPed->SetPosition(pVehicle->GetPosition());
|
||||||
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
pPed->SetOrientation(0.0f, 0.0f, 0.0f);
|
||||||
CPopulation::ms_nTotalMissionPeds++;
|
CPopulation::ms_nTotalMissionPeds++;
|
||||||
@ -10598,9 +10563,7 @@ int8 CRunningScript::ProcessCommands1300To1399(int32 command)
|
|||||||
pPed->m_pMyVehicle = pVehicle;
|
pPed->m_pMyVehicle = pVehicle;
|
||||||
pPed->m_pMyVehicle->RegisterReference((CEntity**)&pPed->m_pMyVehicle);
|
pPed->m_pMyVehicle->RegisterReference((CEntity**)&pPed->m_pMyVehicle);
|
||||||
pPed->bInVehicle = true;
|
pPed->bInVehicle = true;
|
||||||
// TODO
|
|
||||||
pPed->SetPedState(PED_DRIVING);
|
pPed->SetPedState(PED_DRIVING);
|
||||||
|
|
||||||
ScriptParams[0] = CPools::GetPedPool()->GetIndex(pPed);
|
ScriptParams[0] = CPools::GetPedPool()->GetIndex(pPed);
|
||||||
StoreParameters(&m_nIp, 1);
|
StoreParameters(&m_nIp, 1);
|
||||||
if (m_bIsMissionScript)
|
if (m_bIsMissionScript)
|
||||||
@ -10812,6 +10775,30 @@ bool CRunningScript::ThisIsAValidRandomCop(int32 mi, bool cop, bool swat, bool f
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CTheScripts::RemoveThisPed(CPed* pPed)
|
||||||
|
{
|
||||||
|
if (pPed) {
|
||||||
|
bool bWasMissionPed = pPed->CharCreatedBy == MISSION_CHAR;
|
||||||
|
if (pPed->InVehicle() && pPed->m_pMyVehicle) {
|
||||||
|
if (pPed->m_pMyVehicle->pDriver == pPed) {
|
||||||
|
pPed->m_pMyVehicle->RemoveDriver();
|
||||||
|
pPed->m_pMyVehicle->SetStatus(STATUS_ABANDONED);
|
||||||
|
if (pPed->m_pMyVehicle->m_nDoorLock == CARLOCK_LOCKED_INITIALLY)
|
||||||
|
pPed->m_pMyVehicle->m_nDoorLock = CARLOCK_UNLOCKED;
|
||||||
|
if (pPed->m_nPedType == PEDTYPE_COP && pPed->m_pMyVehicle->IsLawEnforcementVehicle())
|
||||||
|
pPed->m_pMyVehicle->ChangeLawEnforcerState(0);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
pPed->m_pMyVehicle->RemovePassenger(pPed);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CWorld::RemoveReferencesToDeletedObject(pPed);
|
||||||
|
delete pPed;
|
||||||
|
if (bWasMissionPed)
|
||||||
|
--CPopulation::ms_nTotalMissionPeds;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int32 CTheScripts::GetNewUniqueScriptSphereIndex(int32 index)
|
int32 CTheScripts::GetNewUniqueScriptSphereIndex(int32 index)
|
||||||
{
|
{
|
||||||
if (ScriptSphereArray[index].m_Index >= UINT16_MAX - 1)
|
if (ScriptSphereArray[index].m_Index >= UINT16_MAX - 1)
|
||||||
|
@ -367,6 +367,7 @@ private:
|
|||||||
static int32 GetNewUniqueScriptSphereIndex(int32 index);
|
static int32 GetNewUniqueScriptSphereIndex(int32 index);
|
||||||
static void RemoveScriptSphere(int32 index);
|
static void RemoveScriptSphere(int32 index);
|
||||||
static void RemoveScriptTextureDictionary();
|
static void RemoveScriptTextureDictionary();
|
||||||
|
static void RemoveThisPed(CPed* pPed);
|
||||||
|
|
||||||
friend class CRunningScript;
|
friend class CRunningScript;
|
||||||
friend class CHud;
|
friend class CHud;
|
||||||
|
@ -112,6 +112,7 @@ CTheZones::Init(void)
|
|||||||
memset(&MapZoneArray[i], 0, sizeof(CZone));
|
memset(&MapZoneArray[i], 0, sizeof(CZone));
|
||||||
MapZoneArray[i].type = ZONE_MAPZONE;
|
MapZoneArray[i].type = ZONE_MAPZONE;
|
||||||
}
|
}
|
||||||
|
TotalNumberOfMapZones = 1;
|
||||||
strcpy(MapZoneArray[0].name, "THEMAP");
|
strcpy(MapZoneArray[0].name, "THEMAP");
|
||||||
MapZoneArray[0].minx = -2400.0f;
|
MapZoneArray[0].minx = -2400.0f;
|
||||||
MapZoneArray[0].miny = -2000.0f;
|
MapZoneArray[0].miny = -2000.0f;
|
||||||
|
@ -595,9 +595,6 @@ CPed::CPed(uint32 pedType) : m_pedIK(this)
|
|||||||
#ifdef KANGAROO_CHEAT
|
#ifdef KANGAROO_CHEAT
|
||||||
m_ped_flagI80 = false;
|
m_ped_flagI80 = false;
|
||||||
#endif
|
#endif
|
||||||
#ifdef VC_PED_PORTS
|
|
||||||
bSomeVCflag1 = false;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
m_gangFlags = 0xFF;
|
m_gangFlags = 0xFF;
|
||||||
|
|
||||||
@ -605,6 +602,10 @@ CPed::CPed(uint32 pedType) : m_pedIK(this)
|
|||||||
bTurnedAroundOnAttractor = false;
|
bTurnedAroundOnAttractor = false;
|
||||||
bCarPassenger = false;
|
bCarPassenger = false;
|
||||||
bMiamiViceCop = false;
|
bMiamiViceCop = false;
|
||||||
|
#ifdef VC_PED_PORTS
|
||||||
|
bHeadStuckInCollision = false;
|
||||||
|
#endif
|
||||||
|
bIsPlayerFriend = true;
|
||||||
bDeadPedInFrontOfCar = false;
|
bDeadPedInFrontOfCar = false;
|
||||||
|
|
||||||
if ((CGeneral::GetRandomNumber() & 3) == 0)
|
if ((CGeneral::GetRandomNumber() & 3) == 0)
|
||||||
@ -10659,7 +10660,7 @@ CPed::ProcessControl(void)
|
|||||||
flyDir = 1;
|
flyDir = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flyDir != 0 && !bSomeVCflag1) {
|
if (flyDir != 0 && !bHeadStuckInCollision) {
|
||||||
SetPosition((flyDir == 2 ? obstacleForFlyingOtherDir.point : obstacleForFlying.point));
|
SetPosition((flyDir == 2 ? obstacleForFlyingOtherDir.point : obstacleForFlying.point));
|
||||||
GetMatrix().GetPosition().z += FEET_OFFSET;
|
GetMatrix().GetPosition().z += FEET_OFFSET;
|
||||||
GetMatrix().UpdateRW();
|
GetMatrix().UpdateRW();
|
||||||
@ -10766,11 +10767,11 @@ CPed::ProcessControl(void)
|
|||||||
|
|
||||||
if (CWorld::ProcessVerticalLine(offsetToCheck, GetPosition().z - FEET_OFFSET, foundCol, foundEnt, true, true, false, true, false, false, nil)) {
|
if (CWorld::ProcessVerticalLine(offsetToCheck, GetPosition().z - FEET_OFFSET, foundCol, foundEnt, true, true, false, true, false, false, nil)) {
|
||||||
#ifdef VC_PED_PORTS
|
#ifdef VC_PED_PORTS
|
||||||
if (!bSomeVCflag1 || FEET_OFFSET + foundCol.point.z < GetPosition().z) {
|
if (!bHeadStuckInCollision || FEET_OFFSET + foundCol.point.z < GetPosition().z) {
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + foundCol.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + foundCol.point.z;
|
||||||
GetMatrix().UpdateRW();
|
GetMatrix().UpdateRW();
|
||||||
if (bSomeVCflag1)
|
if (bHeadStuckInCollision)
|
||||||
bSomeVCflag1 = false;
|
bHeadStuckInCollision = false;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + foundCol.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + foundCol.point.z;
|
||||||
@ -10840,15 +10841,15 @@ CPed::ProcessControl(void)
|
|||||||
if (IsPedInControl() && !bIsStanding && !m_pDamageEntity && CheckIfInTheAir()) {
|
if (IsPedInControl() && !bIsStanding && !m_pDamageEntity && CheckIfInTheAir()) {
|
||||||
SetInTheAir();
|
SetInTheAir();
|
||||||
#ifdef VC_PED_PORTS
|
#ifdef VC_PED_PORTS
|
||||||
bSomeVCflag1 = false;
|
bHeadStuckInCollision = false;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#ifdef VC_PED_PORTS
|
#ifdef VC_PED_PORTS
|
||||||
if (bSomeVCflag1) {
|
if (bHeadStuckInCollision) {
|
||||||
CVector posToCheck = GetPosition();
|
CVector posToCheck = GetPosition();
|
||||||
posToCheck.z += 0.9f;
|
posToCheck.z += 0.9f;
|
||||||
if (!CWorld::TestSphereAgainstWorld(posToCheck, 0.2f, this, true, true, false, true, false, false))
|
if (!CWorld::TestSphereAgainstWorld(posToCheck, 0.2f, this, true, true, false, true, false, false))
|
||||||
bSomeVCflag1 = false;
|
bHeadStuckInCollision = false;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
ProcessObjective();
|
ProcessObjective();
|
||||||
@ -15337,10 +15338,10 @@ CPed::ProcessEntityCollision(CEntity *collidingEnt, CColPoint *collidingPoints)
|
|||||||
if (CCollision::IsStoredPolyStillValidVerticalLine(pos, potentialGroundZ, intersectionPoint, &m_collPoly)) {
|
if (CCollision::IsStoredPolyStillValidVerticalLine(pos, potentialGroundZ, intersectionPoint, &m_collPoly)) {
|
||||||
bStillOnValidPoly = true;
|
bStillOnValidPoly = true;
|
||||||
#ifdef VC_PED_PORTS
|
#ifdef VC_PED_PORTS
|
||||||
if(!bSomeVCflag1 || FEET_OFFSET + intersectionPoint.point.z < GetPosition().z) {
|
if(!bHeadStuckInCollision || FEET_OFFSET + intersectionPoint.point.z < GetPosition().z) {
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
||||||
if (bSomeVCflag1)
|
if (bHeadStuckInCollision)
|
||||||
bSomeVCflag1 = false;
|
bHeadStuckInCollision = false;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
||||||
@ -15415,10 +15416,10 @@ CPed::ProcessEntityCollision(CEntity *collidingEnt, CColPoint *collidingPoints)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef VC_PED_PORTS
|
#ifdef VC_PED_PORTS
|
||||||
if (!bSomeVCflag1 || FEET_OFFSET + intersectionPoint.point.z < GetPosition().z) {
|
if (!bHeadStuckInCollision || FEET_OFFSET + intersectionPoint.point.z < GetPosition().z) {
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
||||||
if (bSomeVCflag1)
|
if (bHeadStuckInCollision)
|
||||||
bSomeVCflag1 = false;
|
bHeadStuckInCollision = false;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
GetMatrix().GetPosition().z = FEET_OFFSET + intersectionPoint.point.z;
|
||||||
@ -15505,7 +15506,7 @@ CPed::ProcessEntityCollision(CEntity *collidingEnt, CColPoint *collidingPoints)
|
|||||||
sphereNormal.x = -m_vecMoveSpeed.x / Max(0.001f, speed);
|
sphereNormal.x = -m_vecMoveSpeed.x / Max(0.001f, speed);
|
||||||
sphereNormal.y = -m_vecMoveSpeed.y / Max(0.001f, speed);
|
sphereNormal.y = -m_vecMoveSpeed.y / Max(0.001f, speed);
|
||||||
GetMatrix().GetPosition().z -= 0.05f;
|
GetMatrix().GetPosition().z -= 0.05f;
|
||||||
bSomeVCflag1 = true;
|
bHeadStuckInCollision = true;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sphereNormal.Normalise();
|
sphereNormal.Normalise();
|
||||||
@ -16039,8 +16040,9 @@ CPed::SetSolicit(uint32 time)
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
CPed::SetFollowPath(CVector dest)
|
CPed::SetFollowPath(CVector dest, float radius, eMoveState state, CEntity* pFollowedPed, CEntity*, int time)
|
||||||
{
|
{
|
||||||
|
// TODO(MIAMI): new follow
|
||||||
if (m_nPedState == PED_FOLLOW_PATH)
|
if (m_nPedState == PED_FOLLOW_PATH)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -429,23 +429,54 @@ public:
|
|||||||
uint32 bVehExitWillBeInstant : 1;
|
uint32 bVehExitWillBeInstant : 1;
|
||||||
uint32 bHasAlreadyBeenRecorded : 1;
|
uint32 bHasAlreadyBeenRecorded : 1;
|
||||||
uint32 bFallenDown : 1;
|
uint32 bFallenDown : 1;
|
||||||
#ifdef VC_PED_PORTS
|
|
||||||
uint32 bSomeVCflag1 : 1;
|
|
||||||
#endif
|
|
||||||
#ifdef PED_SKIN
|
#ifdef PED_SKIN
|
||||||
uint32 bDontAcceptIKLookAts : 1; // TODO: find uses of this
|
uint32 bDontAcceptIKLookAts : 1; // TODO: find uses of this
|
||||||
#endif
|
#endif
|
||||||
|
uint32 bReachedAttractorHeadingTarget : 1;
|
||||||
|
uint32 bTurnedAroundOnAttractor : 1;
|
||||||
|
|
||||||
|
uint32 bHasAlreadyUsedAttractor : 1;
|
||||||
|
//uint32 b155_2
|
||||||
|
uint32 bCarPassenger : 1;
|
||||||
|
//uint32 b155_8
|
||||||
|
//uint32 b155_10
|
||||||
|
uint32 bMiamiViceCop : 1;
|
||||||
|
//uint32 b155_40
|
||||||
|
//uint32 b155_80
|
||||||
|
|
||||||
|
//uint32 b156_1
|
||||||
|
//uint32 b156_2
|
||||||
|
//uint32 b156_4
|
||||||
|
//uint32 b156_8
|
||||||
|
uint32 bIsPlayerFriend : 1;
|
||||||
|
#ifdef VC_PED_PORTS
|
||||||
|
uint32 bHeadStuckInCollision : 1;
|
||||||
|
#endif
|
||||||
|
uint32 bDeadPedInFrontOfCar : 1;
|
||||||
|
//uint32 b156_80
|
||||||
|
|
||||||
|
//uint32 b157_1
|
||||||
|
//uint32 b157_2
|
||||||
|
//uint32 b157_4
|
||||||
|
//uint32 b157_8
|
||||||
|
//uint32 b157_10
|
||||||
|
//uint32 b157_20
|
||||||
|
//uint32 b157_40
|
||||||
|
//uint32 b157_80
|
||||||
|
|
||||||
|
//uint32 b158_1
|
||||||
|
//uint32 b158_2
|
||||||
|
//uint32 b158_4
|
||||||
|
//uint32 b158_8
|
||||||
|
//uint32 b158_10
|
||||||
|
//uint32 b158_20
|
||||||
|
//uint32 b158_40
|
||||||
|
//uint32 b158_80
|
||||||
|
|
||||||
// our own flags
|
// our own flags
|
||||||
uint32 m_ped_flagI40 : 1; // bMakePedsRunToPhonesToReportCrimes makes use of this as runover by car indicator
|
uint32 m_ped_flagI40 : 1; // bMakePedsRunToPhonesToReportCrimes makes use of this as runover by car indicator
|
||||||
uint32 m_ped_flagI80 : 1; // KANGAROO_CHEAT define makes use of this as cheat toggle
|
uint32 m_ped_flagI80 : 1; // KANGAROO_CHEAT define makes use of this as cheat toggle
|
||||||
|
|
||||||
uint32 bReachedAttractorHeadingTarget : 1; // 0x154 0x40
|
|
||||||
uint32 bTurnedAroundOnAttractor : 1; // 0x154 0x80
|
|
||||||
uint32 bHasAlreadyUsedAttractor : 1; // 0x155 0x1
|
|
||||||
uint32 bCarPassenger : 1; // 0x155 0x4
|
|
||||||
uint32 bMiamiViceCop : 1; // 0x155 0x20
|
|
||||||
uint32 bDeadPedInFrontOfCar : 1; // 0x156 0x40
|
|
||||||
|
|
||||||
uint8 m_gangFlags;
|
uint8 m_gangFlags;
|
||||||
uint8 CharCreatedBy;
|
uint8 CharCreatedBy;
|
||||||
eObjective m_objective;
|
eObjective m_objective;
|
||||||
@ -678,7 +709,9 @@ public:
|
|||||||
void SetPointGunAt(CEntity*);
|
void SetPointGunAt(CEntity*);
|
||||||
bool Seek(void);
|
bool Seek(void);
|
||||||
bool SetWanderPath(int8);
|
bool SetWanderPath(int8);
|
||||||
bool SetFollowPath(CVector);
|
bool SetFollowPath(CVector dest, float radius, eMoveState state, CEntity*, CEntity*, int);
|
||||||
|
bool SetFollowPathStatic(void);
|
||||||
|
bool SetFollowPathDynamic(void);
|
||||||
void ClearAttackByRemovingAnim(void);
|
void ClearAttackByRemovingAnim(void);
|
||||||
void SetStoredState(void);
|
void SetStoredState(void);
|
||||||
void StopNonPartialAnims(void);
|
void StopNonPartialAnims(void);
|
||||||
@ -886,7 +919,12 @@ public:
|
|||||||
CWeapon *GetWeapon(void) { return &m_weapons[m_currentWeapon]; }
|
CWeapon *GetWeapon(void) { return &m_weapons[m_currentWeapon]; }
|
||||||
|
|
||||||
PedState GetPedState(void) { return m_nPedState; }
|
PedState GetPedState(void) { return m_nPedState; }
|
||||||
void SetPedState(PedState state) { m_nPedState = state; }
|
void SetPedState(PedState state)
|
||||||
|
{
|
||||||
|
if (GetPedState() == PED_FOLLOW_PATH)
|
||||||
|
ClearFollowPath();
|
||||||
|
m_nPedState = state;
|
||||||
|
}
|
||||||
bool Dead(void) { return m_nPedState == PED_DEAD; }
|
bool Dead(void) { return m_nPedState == PED_DEAD; }
|
||||||
bool Dying(void) { return m_nPedState == PED_DIE; }
|
bool Dying(void) { return m_nPedState == PED_DIE; }
|
||||||
bool DyingOrDead(void) { return m_nPedState == PED_DIE || m_nPedState == PED_DEAD; }
|
bool DyingOrDead(void) { return m_nPedState == PED_DIE || m_nPedState == PED_DEAD; }
|
||||||
|
@ -2855,6 +2855,7 @@ CAutomobile::ProcessBuoyancy(void)
|
|||||||
|
|
||||||
if(impulseRatio > 0.5f){
|
if(impulseRatio > 0.5f){
|
||||||
bIsInWater = true;
|
bIsInWater = true;
|
||||||
|
bIsDrowning = true;
|
||||||
if(m_vecMoveSpeed.z < -0.1f)
|
if(m_vecMoveSpeed.z < -0.1f)
|
||||||
m_vecMoveSpeed.z = -0.1f;
|
m_vecMoveSpeed.z = -0.1f;
|
||||||
|
|
||||||
@ -2869,8 +2870,11 @@ CAutomobile::ProcessBuoyancy(void)
|
|||||||
if(pPassengers[i]->IsPlayer() || !bWaterTight)
|
if(pPassengers[i]->IsPlayer() || !bWaterTight)
|
||||||
pPassengers[i]->InflictDamage(nil, WEAPONTYPE_DROWNING, CTimer::GetTimeStep(), PEDPIECE_TORSO, 0);
|
pPassengers[i]->InflictDamage(nil, WEAPONTYPE_DROWNING, CTimer::GetTimeStep(), PEDPIECE_TORSO, 0);
|
||||||
}
|
}
|
||||||
}else
|
}
|
||||||
|
else {
|
||||||
bIsInWater = false;
|
bIsInWater = false;
|
||||||
|
bIsDrowning = false;
|
||||||
|
}
|
||||||
|
|
||||||
static uint32 nGenerateRaindrops = 0;
|
static uint32 nGenerateRaindrops = 0;
|
||||||
static uint32 nGenerateWaterCircles = 0;
|
static uint32 nGenerateWaterCircles = 0;
|
||||||
@ -2952,6 +2956,7 @@ CAutomobile::ProcessBuoyancy(void)
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
bIsInWater = false;
|
bIsInWater = false;
|
||||||
|
bIsDrowning = false;
|
||||||
bTouchingWater = false;
|
bTouchingWater = false;
|
||||||
|
|
||||||
static RwRGBA splashCol = {155, 155, 185, 196};
|
static RwRGBA splashCol = {155, 155, 185, 196};
|
||||||
|
@ -273,9 +273,17 @@ CBoat::ProcessControl(void)
|
|||||||
if(0.1f * m_fMass * GRAVITY*CTimer::GetTimeStep() < buoyanceImpulse.z){
|
if(0.1f * m_fMass * GRAVITY*CTimer::GetTimeStep() < buoyanceImpulse.z){
|
||||||
bBoatInWater = true;
|
bBoatInWater = true;
|
||||||
bIsInWater = true;
|
bIsInWater = true;
|
||||||
|
if (GetUp().z < -0.6f && Abs(GetMoveSpeed().x) < 0.05 && Abs(GetMoveSpeed().y) < 0.05) {
|
||||||
|
bIsDrowning = true;
|
||||||
|
if (pDriver)
|
||||||
|
pDriver->InflictDamage(nil, WEAPONTYPE_DROWNING, CTimer::GetTimeStep(), PEDPIECE_TORSO, 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
bIsDrowning = false;
|
||||||
}else{
|
}else{
|
||||||
bBoatInWater = false;
|
bBoatInWater = false;
|
||||||
bIsInWater = false;
|
bIsInWater = false;
|
||||||
|
bIsDrowning = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_fVolumeUnderWater = mod_Buoyancy.m_volumeUnderWater;
|
m_fVolumeUnderWater = mod_Buoyancy.m_volumeUnderWater;
|
||||||
@ -519,6 +527,7 @@ CBoat::ProcessControl(void)
|
|||||||
}else{
|
}else{
|
||||||
bBoatInWater = false;
|
bBoatInWater = false;
|
||||||
bIsInWater = false;
|
bIsInWater = false;
|
||||||
|
bIsDrowning = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_bIsAnchored){
|
if(m_bIsAnchored){
|
||||||
|
@ -243,7 +243,7 @@ class cHandlingDataMgr
|
|||||||
{
|
{
|
||||||
float field_0; // unused it seems
|
float field_0; // unused it seems
|
||||||
public:
|
public:
|
||||||
float fWheelFriction;
|
float fWheelFriction; // wheel related
|
||||||
private:
|
private:
|
||||||
float field_8; //
|
float field_8; //
|
||||||
float field_C; // unused it seems
|
float field_C; // unused it seems
|
||||||
|
@ -104,6 +104,7 @@ CVehicle::CVehicle(uint8 CreatedBy)
|
|||||||
m_nCarHornPattern = 0;
|
m_nCarHornPattern = 0;
|
||||||
m_nCarHornDelay = 0;
|
m_nCarHornDelay = 0;
|
||||||
bPartOfConvoy = false;
|
bPartOfConvoy = false;
|
||||||
|
bIsDrowning = false;
|
||||||
bCreatedAsPoliceVehicle = false;
|
bCreatedAsPoliceVehicle = false;
|
||||||
bParking = false;
|
bParking = false;
|
||||||
m_nAlarmState = 0;
|
m_nAlarmState = 0;
|
||||||
|
@ -182,10 +182,16 @@ public:
|
|||||||
uint8 bVehicleColProcessed : 1;// Has ProcessEntityCollision been processed for this car?
|
uint8 bVehicleColProcessed : 1;// Has ProcessEntityCollision been processed for this car?
|
||||||
uint8 bIsCarParkVehicle : 1; // Car has been created using the special CAR_PARK script command
|
uint8 bIsCarParkVehicle : 1; // Car has been created using the special CAR_PARK script command
|
||||||
uint8 bHasAlreadyBeenRecorded : 1; // Used for replays
|
uint8 bHasAlreadyBeenRecorded : 1; // Used for replays
|
||||||
|
|
||||||
uint8 bPartOfConvoy : 1;
|
uint8 bPartOfConvoy : 1;
|
||||||
|
//uint8 bHeliMinimumTilt : 1; // This heli should have almost no tilt really
|
||||||
|
//uint8 bAudioChangingGear : 1; // sounds like vehicle is changing gear
|
||||||
|
|
||||||
|
uint8 bIsDrowning : 1; // is vehicle occupants taking damage in water (i.e. vehicle is dead in water)
|
||||||
|
//uint8 bTyresDontBurst : 1; // If this is set the tyres are invincible
|
||||||
uint8 bCreatedAsPoliceVehicle : 1;// True if this guy was created as a police vehicle (enforcer, policecar, miamivice car etc)
|
uint8 bCreatedAsPoliceVehicle : 1;// True if this guy was created as a police vehicle (enforcer, policecar, miamivice car etc)
|
||||||
|
//uint8 bRestingOnPhysical : 1; // Dont go static cause car is sitting on a physical object that might get removed
|
||||||
uint8 bParking : 1;
|
uint8 bParking : 1;
|
||||||
|
//uint8 bCanPark : 1;
|
||||||
|
|
||||||
uint8 m_bombType : 3;
|
uint8 m_bombType : 3;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user