ProcessNoise: fixed incorrect noise terrain check.

Reverted r9259.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9274 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Sevenfm
2022-01-25 04:15:39 +00:00
parent f8be9a0db1
commit e887f85a44
2 changed files with 5 additions and 24 deletions
+4 -14
View File
@@ -51,7 +51,6 @@
#endif
BOOLEAN gfSetPerceivedDoorState = FALSE;
extern BOOLEAN gfPlayerMercHeardNoise;
BOOLEAN HandleDoorsOpenClose( SOLDIERTYPE *pSoldier, INT32 sGridNo, STRUCTURE * pStructure, BOOLEAN fNoAnimations );
@@ -1161,9 +1160,6 @@ BOOLEAN HandleDoorsOpenClose( SOLDIERTYPE *pSoldier, INT32 sGridNo, STRUCTURE *
cnt++;
};
// sevenfm: reset code to detect heard noise
gfPlayerMercHeardNoise = FALSE;
if (pSoldier && pSoldier->ubDoorOpeningNoise > 0)
{
//shadooow: noise handling moved here so we can work with modified value of pSoldier->ubDoorOpeningNoise
@@ -1284,11 +1280,8 @@ BOOLEAN HandleDoorsOpenClose( SOLDIERTYPE *pSoldier, INT32 sGridNo, STRUCTURE *
uiSoundID = METAL_DOOR_OPEN;
}
if (pSoldier && pSoldier->bVisible == TRUE || gfPlayerMercHeardNoise)
{
// OK, We must know what sound to play, for now use same sound for all doors...
PlayJA2Sample(uiSoundID, RATE_11025, SoundVolume(MIDVOLUME, sGridNo), 1, SoundDir(sGridNo));
}
// OK, We must know what sound to play, for now use same sound for all doors...
PlayJA2Sample(uiSoundID, RATE_11025, SoundVolume(MIDVOLUME, sGridNo), 1, SoundDir(sGridNo));
}
if (((gWorldSectorX == gModSettings.ubInitialPOWSectorX && gWorldSectorY == gModSettings.ubInitialPOWSectorY) ||
@@ -1414,11 +1407,8 @@ BOOLEAN HandleDoorsOpenClose( SOLDIERTYPE *pSoldier, INT32 sGridNo, STRUCTURE *
uiSoundID = METAL_DOOR_CLOSE;
}
if (pSoldier && pSoldier->bVisible == TRUE || gfPlayerMercHeardNoise)
{
// OK, We must know what sound to play, for now use same sound for all doors...
PlayJA2Sample(uiSoundID, RATE_11025, SoundVolume(MIDVOLUME, sGridNo), 1, SoundDir(sGridNo));
}
// OK, We must know what sound to play, for now use same sound for all doors...
PlayJA2Sample(uiSoundID, RATE_11025, SoundVolume(MIDVOLUME, sGridNo), 1, SoundDir(sGridNo));
}
}
+1 -10
View File
@@ -5784,8 +5784,6 @@ void TheirNoise(UINT8 ubNoiseMaker, INT32 sGridNo, INT8 bLevel, UINT8 ubTerrType
// else if noiseMaker's NOBODY, no opplist changes or interrupts are possible
}
BOOLEAN gfPlayerMercHeardNoise = FALSE;
void ProcessNoise(UINT8 ubNoiseMaker, INT32 sGridNo, INT8 bLevel, UINT8 ubTerrType, UINT8 ubBaseVolume, UINT8 ubNoiseType, STR16 zNoiseMessage )
{
SOLDIERTYPE *pSoldier;
@@ -5853,14 +5851,13 @@ void ProcessNoise(UINT8 ubNoiseMaker, INT32 sGridNo, INT8 bLevel, UINT8 ubTerrTy
*/
// if we have now somehow obtained a valid terrain type //shadooow: and it is not a noise from doors
if (ubNoiseType != NOISE_CREAKING && ((ubSourceTerrType >= FLAT_GROUND) || (ubSourceTerrType <= DEEP_WATER)))
if (ubNoiseType != NOISE_CREAKING && ubSourceTerrType >= FLAT_GROUND && ubSourceTerrType <= DEEP_WATER)
{
//NumMessage("Source Terrain Type = ",ubSourceTerrType);
bCheckTerrain = TRUE;
}
// else give up trying to get terrain type, just assume sound isn't muffled
// DETERMINE THE *PERCEIVED* SOURCE OF THE NOISE
switch (ubNoiseType)
{
@@ -6022,12 +6019,6 @@ void ProcessNoise(UINT8 ubNoiseMaker, INT32 sGridNo, INT8 bLevel, UINT8 ubTerrTy
// Can the listener hear noise of that volume given his circumstances?
ubEffVolume = CalcEffVolume(pSoldier, sGridNo, bLevel, ubNoiseType, ubBaseVolume, bCheckTerrain, pSoldier->bOverTerrainType, ubSourceTerrType);
// sevenfm: indicate that player team heard noise
if (bTeam == gbPlayerNum && ubEffVolume > 0)
{
gfPlayerMercHeardNoise = TRUE;
}
// if a the noise maker is a person, not just NOBODY
if (ubNoiseMaker < TOTAL_SOLDIERS)
{