mirror of
https://github.com/GTAmodding/re3.git
synced 2024-11-25 12:43:43 +00:00
Ped comments fixes
This commit is contained in:
parent
787f1922f4
commit
c41239ed5e
2 changed files with 11 additions and 9 deletions
|
@ -3865,7 +3865,7 @@ cAudioManager::SetupPedComments(cPedParams ¶ms, uint16 sound)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
m_sQueueSample.m_nVolume = ComputeVolume(Vol, maxDist, m_sQueueSample.m_fDistance);
|
m_sQueueSample.m_nVolume = ComputeVolume(Vol, maxDist, m_sQueueSample.m_fDistance);
|
||||||
pedComment.m_nProcess = 10;
|
pedComment.m_nLoadingTimeout = 10;
|
||||||
if (m_sQueueSample.m_nVolume > 0) {
|
if (m_sQueueSample.m_nVolume > 0) {
|
||||||
pedComment.m_nEntityIndex = m_sQueueSample.m_nEntityIndex;
|
pedComment.m_nEntityIndex = m_sQueueSample.m_nEntityIndex;
|
||||||
pedComment.m_vecPos = m_sQueueSample.m_vecPos;
|
pedComment.m_vecPos = m_sQueueSample.m_vecPos;
|
||||||
|
@ -3880,7 +3880,7 @@ cAudioManager::SetupPedComments(cPedParams ¶ms, uint16 sound)
|
||||||
#ifdef GTA_PS2
|
#ifdef GTA_PS2
|
||||||
else {
|
else {
|
||||||
m_sQueueSample.m_nVolume = MAX_VOLUME;
|
m_sQueueSample.m_nVolume = MAX_VOLUME;
|
||||||
pedComment.m_nProcess = 40;
|
pedComment.m_nLoadingTimeout = 40;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -6290,11 +6290,13 @@ cPedComments::Process()
|
||||||
|
|
||||||
if (m_nPedCommentCount[m_nActiveQueue]) {
|
if (m_nPedCommentCount[m_nActiveQueue]) {
|
||||||
sampleIndex = m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nSampleIndex;
|
sampleIndex = m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nSampleIndex;
|
||||||
switch (SampleManager.IsPedCommentLoaded(sampleIndex)) // yes, this was a switch
|
switch (SampleManager.IsPedCommentLoaded(sampleIndex))
|
||||||
{
|
{
|
||||||
case LOADING_STATUS_NOT_LOADED:
|
case LOADING_STATUS_NOT_LOADED:
|
||||||
SampleManager.LoadPedComment(sampleIndex);
|
SampleManager.LoadPedComment(sampleIndex);
|
||||||
// BUG? no break, VC has break in here
|
#ifdef GTA_PS2 // on PC ped comment is loaded at once
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
case LOADING_STATUS_LOADED:
|
case LOADING_STATUS_LOADED:
|
||||||
AudioManager.m_sQueueSample.m_nEntityIndex = m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nEntityIndex;
|
AudioManager.m_sQueueSample.m_nEntityIndex = m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nEntityIndex;
|
||||||
AudioManager.m_sQueueSample.m_nCounter = 0;
|
AudioManager.m_sQueueSample.m_nCounter = 0;
|
||||||
|
@ -6391,7 +6393,7 @@ cPedComments::Process()
|
||||||
if (CTimer::GetIsSlowMotionActive())
|
if (CTimer::GetIsSlowMotionActive())
|
||||||
AudioManager.m_sQueueSample.m_nFrequency >>= 1;
|
AudioManager.m_sQueueSample.m_nFrequency >>= 1;
|
||||||
#endif
|
#endif
|
||||||
m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nProcess = -1;
|
m_aPedCommentQueue[m_nActiveQueue][m_aPedCommentOrderList[m_nActiveQueue][0]].m_nLoadingTimeout = -1;
|
||||||
AudioManager.AddSampleToRequestedQueue();
|
AudioManager.AddSampleToRequestedQueue();
|
||||||
break;
|
break;
|
||||||
case LOADING_STATUS_LOADING: break;
|
case LOADING_STATUS_LOADING: break;
|
||||||
|
@ -6408,8 +6410,8 @@ cPedComments::Process()
|
||||||
m_nActiveQueue = 0;
|
m_nActiveQueue = 0;
|
||||||
}
|
}
|
||||||
for (uint8 i = 0; i < m_nPedCommentCount[queue]; i++) {
|
for (uint8 i = 0; i < m_nPedCommentCount[queue]; i++) {
|
||||||
if (m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]].m_nProcess > 0) {
|
if (m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]].m_nLoadingTimeout > 0) {
|
||||||
m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]].m_nProcess--;
|
m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]].m_nLoadingTimeout--;
|
||||||
Add(&m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]]);
|
Add(&m_aPedCommentQueue[queue][m_aPedCommentOrderList[queue][i]]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -96,7 +96,7 @@ public:
|
||||||
CVector m_vecPos;
|
CVector m_vecPos;
|
||||||
float m_fDistance;
|
float m_fDistance;
|
||||||
uint8 m_nVolume;
|
uint8 m_nVolume;
|
||||||
int8 m_nProcess;
|
int8 m_nLoadingTimeout; // how many iterations we gonna wait until dropping the sample if it's still not loaded (only useful on PS2)
|
||||||
#if defined(EXTERNAL_3D_SOUND) && defined(FIX_BUGS)
|
#if defined(EXTERNAL_3D_SOUND) && defined(FIX_BUGS)
|
||||||
uint8 m_nEmittingVolume;
|
uint8 m_nEmittingVolume;
|
||||||
#endif
|
#endif
|
||||||
|
@ -116,7 +116,7 @@ public:
|
||||||
{
|
{
|
||||||
for (int i = 0; i < NUM_PED_COMMENTS_SLOTS; i++)
|
for (int i = 0; i < NUM_PED_COMMENTS_SLOTS; i++)
|
||||||
for (int j = 0; j < NUM_SOUND_QUEUES; j++) {
|
for (int j = 0; j < NUM_SOUND_QUEUES; j++) {
|
||||||
m_aPedCommentQueue[j][i].m_nProcess = -1;
|
m_aPedCommentQueue[j][i].m_nLoadingTimeout = -1;
|
||||||
m_aPedCommentOrderList[j][i] = NUM_PED_COMMENTS_SLOTS;
|
m_aPedCommentOrderList[j][i] = NUM_PED_COMMENTS_SLOTS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue