Squashed commit of the following:

Adjusted Vehicle Impact to match XMLS and .wav files
    Fix enumerations in the historical context
This commit is contained in:
Lwmte 2022-06-07 14:52:18 +03:00
parent 003773b6ca
commit dd5e22e975
11 changed files with 109 additions and 110 deletions

View file

@ -461,7 +461,7 @@ void UpdateLaraSubsuitAngles(ItemInfo* item)
auto mul1 = (float)abs(lara->Control.Subsuit.Velocity[0]) / SECTOR(8);
auto mul2 = (float)abs(lara->Control.Subsuit.Velocity[1]) / SECTOR(8);
auto vol = ((mul1 + mul2) * 5.0f) + 0.5f;
SoundEffect(SFX_TR4_VEHICLE_DIVESUIT_ENGINE, &item->Pose, SoundEnvironment::Water, 1.0f + (mul1 + mul2), vol);
SoundEffect(SFX_TR5_VEHICLE_DIVESUIT_ENGINE, &item->Pose, SoundEnvironment::Water, 1.0f + (mul1 + mul2), vol);
}
}

View file

@ -215,14 +215,14 @@ void SkidooManControl(short riderItemNumber)
if (item->Animation.ActiveState == SMAN_STATE_WAIT)
{
SoundEffect(SFX_TR4_VEHICLE_SNOWMOBILE_IDLE, &item->Pose);
SoundEffect(SFX_TR2_VEHICLE_SNOWMOBILE_IDLE, &item->Pose);
creatureInfo->JointRotation[0] = 0;
}
else
{
creatureInfo->JointRotation[0] = (creatureInfo->JointRotation[0] == 1) ? 2 : 1;
DoSnowEffect(item);
SoundEffect(SFX_TR4_VEHICLE_SNOWMOBILE_IDLE, &item->Pose, SoundEnvironment::Land, 0.5f + item->Animation.Velocity / 100.0f); // SKIDOO_MAX_VELOCITY. TODO: Check actual sound!
SoundEffect(SFX_TR2_VEHICLE_SNOWMOBILE_IDLE, &item->Pose, SoundEnvironment::Land, 0.5f + item->Animation.Velocity / 100.0f); // SKIDOO_MAX_VELOCITY. TODO: Check actual sound!
}
CreatureAnimation(itemNumber, angle, 0);

View file

@ -957,7 +957,7 @@ void SpeedBoatControl(short itemNumber)
auto pitch = sBoatItem->Animation.Velocity;
sBoat->Pitch += (pitch - sBoat->Pitch) / 4;
int fx = (sBoatItem->Animation.Velocity > 8) ? SFX_TR4_VEHICLE_SPEEDBOAT_MOVING : SFX_TR4_VEHICLE_SPEEDBOAT_IDLE;
int fx = (sBoatItem->Animation.Velocity > 8) ? SFX_TR2_VEHICLE_SPEEDBOAT_MOVING : (drive ? SFX_TR2_VEHICLE_SPEEDBOAT_IDLE : SFX_TR2_VEHICLE_SPEEDBOAT_ACCELERATE);
SoundEffect(fx, &sBoatItem->Pose, SoundEnvironment::Land, 1.0f + sBoat->Pitch / (float)BOAT_MAX_VELOCITY / 4.0f);
}
else

View file

@ -523,13 +523,13 @@ bool SkidooControl(ItemInfo* laraItem, CollisionInfo* coll)
skidoo->TrackMesh = ((skidoo->TrackMesh & 3) == 1) ? 2 : 1;
skidoo->Pitch += (pitch - skidoo->Pitch) / 4;
SoundEffect(skidoo->Pitch ? SFX_TR4_VEHICLE_SNOWMOBILE_MOVING : SFX_TR4_VEHICLE_SNOWMOBILE_ACCELERATE, &skidooItem->Pose, SoundEnvironment::Land, 0.5f + skidoo->Pitch / (float)SKIDOO_MAX_VELOCITY);
SoundEffect(skidoo->Pitch ? SFX_TR2_VEHICLE_SNOWMOBILE_MOVING : SFX_TR2_VEHICLE_SNOWMOBILE_ACCELERATE, &skidooItem->Pose, SoundEnvironment::Land, 0.5f + skidoo->Pitch / (float)SKIDOO_MAX_VELOCITY);
}
else
{
skidoo->TrackMesh = 0;
if (!drive)
SoundEffect(SFX_TR4_VEHICLE_SNOWMOBILE_IDLE, &skidooItem->Pose);
SoundEffect(SFX_TR2_VEHICLE_SNOWMOBILE_IDLE, &skidooItem->Pose);
skidoo->Pitch = 0;
}
skidooItem->Floor = height;
@ -716,9 +716,9 @@ void SkidooAnimation(ItemInfo* laraItem, ItemInfo* skidooItem, int collide, bool
if (laraItem->Animation.ActiveState != SKIDOO_STATE_HIT)
{
if (collide == SKIDOO_ANIM_HIT_FRONT)
SoundEffect(SFX_TR4_VEHICLE_IMPACT_1, &skidooItem->Pose);
SoundEffect(SFX_TR2_VEHICLE_IMPACT1, &skidooItem->Pose);
else
SoundEffect(SFX_TR4_VEHICLE_IMPACT_2, &skidooItem->Pose);
SoundEffect(SFX_TR2_VEHICLE_IMPACT2, &skidooItem->Pose);
laraItem->Animation.AnimNumber = Objects[ID_SNOWMOBILE_LARA_ANIMS].animIndex + collide;
laraItem->Animation.FrameNumber = g_Level.Anims[laraItem->Animation.AnimNumber].frameBase;
@ -794,7 +794,7 @@ void SkidooAnimation(ItemInfo* laraItem, ItemInfo* skidooItem, int collide, bool
skidoo->RightVerticalVelocity <= 0)
{
laraItem->Animation.TargetState = SKIDOO_STATE_SIT;
SoundEffect(SFX_TR4_VEHICLE_IMPACT_3, &skidooItem->Pose);
SoundEffect(SFX_TR2_VEHICLE_IMPACT3, &skidooItem->Pose);
}
else if (skidooItem->Animation.VerticalVelocity > (DAMAGE_START + DAMAGE_LENGTH))
laraItem->Animation.TargetState = SKIDOO_STATE_JUMP_OFF;

View file

@ -264,7 +264,7 @@ static void CartToEntityCollision(ItemInfo* laraItem, ItemInfo* minecartItem)
int frame = laraItem->Animation.FrameNumber - g_Level.Anims[laraItem->Animation.AnimNumber].frameBase;
if (frame >= 12 && frame <= 22)
{
SoundEffect(SFX_TR4_VEHICLE_MINECART_WRENCH, &item->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_MINECART_WRENCH, &item->Pose, SoundEnvironment::Always);
TestTriggers(item, true);
item->Animation.FrameNumber++;
}
@ -392,21 +392,21 @@ static void MoveCart(ItemInfo* laraItem, ItemInfo* minecartItem)
if (minecartItem->Animation.Velocity < CART_MIN_VEL)
{
minecartItem->Animation.Velocity = CART_MIN_VEL;
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_TRACK_LOOP);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_TRACK_LOOP);
if (minecart->VerticalVelocity)
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_PULLY_LOOP);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_PULLY_LOOP);
else
SoundEffect(SFX_TR4_VEHICLE_MINECART_PULLY_LOOP, &minecartItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_MINECART_PULLY_LOOP, &minecartItem->Pose, SoundEnvironment::Always);
}
else
{
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_PULLY_LOOP);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_PULLY_LOOP);
if (minecart->VerticalVelocity)
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_TRACK_LOOP);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_TRACK_LOOP);
else
SoundEffect(SFX_TR4_VEHICLE_MINECART_TRACK_LOOP, &minecartItem->Pose, SoundEnvironment::Land, 1.0f + ((float)minecartItem->Animation.Velocity / SECTOR(8))); // TODO: check actual sound!
SoundEffect(SFX_TR3_VEHICLE_MINECART_TRACK_LOOP, &minecartItem->Pose, SoundEnvironment::Land, 1.0f + ((float)minecartItem->Animation.Velocity / SECTOR(8))); // TODO: check actual sound!
}
if (minecart->Flags & (CART_FLAG_TURNING_LEFT | CART_FLAG_TURNING_RIGHT))
@ -487,7 +487,7 @@ static void MoveCart(ItemInfo* laraItem, ItemInfo* minecartItem)
if (minecartItem->Pose.Position.y > minecart->FloorHeightMiddle)
{
if (minecart->VerticalVelocity > 0)
SoundEffect(SFX_TR4_VEHICLE_QUADBIKE_FRONT_IMPACT, &minecartItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_QUADBIKE_FRONT_IMPACT, &minecartItem->Pose, SoundEnvironment::Always);
minecartItem->Pose.Position.y = minecart->FloorHeightMiddle;
minecart->VerticalVelocity = 0;
@ -597,7 +597,7 @@ static void DoUserInput(ItemInfo* minecartItem, ItemInfo* laraItem, MinecartInfo
case CART_STATE_IDLE:
if (!(minecart->Flags & CART_FLAG_CONTROL))
{
SoundEffect(SFX_TR4_VEHICLE_MINECART_START, &minecartItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_MINECART_START, &minecartItem->Pose, SoundEnvironment::Always);
minecart->Flags |= CART_FLAG_CONTROL;
minecart->StopDelay = 64;
}
@ -641,17 +641,17 @@ static void DoUserInput(ItemInfo* minecartItem, ItemInfo* laraItem, MinecartInfo
if (TrInput & CART_IN_DUCK)
{
laraItem->Animation.TargetState = CART_STATE_DUCK;
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_BRAKE);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_BRAKE);
}
else if (!(TrInput & CART_IN_BRAKE) || minecart->Flags & CART_FLAG_STOPPED)
{
laraItem->Animation.TargetState = CART_STATE_MOVE;
StopSoundEffect(SFX_TR4_VEHICLE_MINECART_BRAKE);
StopSoundEffect(SFX_TR3_VEHICLE_MINECART_BRAKE);
}
else
{
minecart->Velocity += CART_DEC;
SoundEffect(SFX_TR4_VEHICLE_MINECART_BRAKE, &laraItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_MINECART_BRAKE, &laraItem->Pose, SoundEnvironment::Always);
}
break;
@ -752,7 +752,7 @@ static void DoUserInput(ItemInfo* minecartItem, ItemInfo* laraItem, MinecartInfo
floorHeight < CLICK(1))
{
if (Wibble & 7 == 0)
SoundEffect(SFX_TR4_VEHICLE_QUADBIKE_FRONT_IMPACT, &minecartItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_QUADBIKE_FRONT_IMPACT, &minecartItem->Pose, SoundEnvironment::Always);
minecartItem->Pose.Position.x += TURN_DEATH_VEL * phd_sin(minecartItem->Pose.Orientation.y);
minecartItem->Pose.Position.z += TURN_DEATH_VEL * phd_cos(minecartItem->Pose.Orientation.y);

View file

@ -847,7 +847,7 @@ static void AnimateQuadBike(ItemInfo* laraItem, ItemInfo* quadItem, int collide,
}
laraItem->Animation.FrameNumber = GetFrameNumber(laraItem, laraItem->Animation.AnimNumber);
SoundEffect(SFX_TR4_VEHICLE_QUADBIKE_FRONT_IMPACT, &quadItem->Pose);
SoundEffect(SFX_TR3_VEHICLE_QUADBIKE_FRONT_IMPACT, &quadItem->Pose);
}
else
{
@ -1344,12 +1344,12 @@ bool QuadBikeControl(ItemInfo* laraItem, CollisionInfo* coll)
else if (quad->Pitch > 0xA000)
quad->Pitch = 0xA000;
SoundEffect(SFX_TR4_VEHICLE_QUADBIKE_MOVE, &quadItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(quad->Pitch) / (float)MAX_VELOCITY);
SoundEffect(SFX_TR3_VEHICLE_QUADBIKE_MOVE, &quadItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(quad->Pitch) / (float)MAX_VELOCITY);
}
else
{
if (drive != -1)
SoundEffect(SFX_TR4_VEHICLE_QUADBIKE_IDLE, &quadItem->Pose);
SoundEffect(SFX_TR3_VEHICLE_QUADBIKE_IDLE, &quadItem->Pose);
quad->Pitch = 0;
}

View file

@ -1032,9 +1032,9 @@ void RubberBoatControl(short itemNumber)
rBoat->Pitch += ((pitch - rBoat->Pitch) / 4);
if (rBoatItem->Animation.Velocity > 8)
SoundEffect(SFX_TR4_VEHICLE_RUBBERBOAT_MOVING, &rBoatItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(rBoat->Pitch) / (float)RBOAT_MAX_VELOCITY);
SoundEffect(SFX_TR3_VEHICLE_RUBBERBOAT_MOVING, &rBoatItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(rBoat->Pitch) / (float)RBOAT_MAX_VELOCITY);
else if (drive)
SoundEffect(SFX_TR4_VEHICLE_RUBBERBOAT_IDLE, &rBoatItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(rBoat->Pitch) / (float)RBOAT_MAX_VELOCITY);
SoundEffect(SFX_TR3_VEHICLE_RUBBERBOAT_IDLE, &rBoatItem->Pose, SoundEnvironment::Land, 0.5f + (float)abs(rBoat->Pitch) / (float)RBOAT_MAX_VELOCITY);
if (lara->Vehicle != itemNumber)
return;

View file

@ -630,8 +630,8 @@ static void UPVControl(ItemInfo* laraItem, ItemInfo* UPVItem)
//sub->Flags &= ~UPV_CONTROL; having this here causes the UPV glitch, moving it directly to the states' code is better
StopSoundEffect(SFX_TR4_VEHICLE_UPV_LOOP);
SoundEffect(SFX_TR4_VEHICLE_UPV_STOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
StopSoundEffect(SFX_TR3_VEHICLE_UPV_LOOP);
SoundEffect(SFX_TR3_VEHICLE_UPV_STOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
}
}
@ -656,7 +656,7 @@ static void UPVControl(ItemInfo* laraItem, ItemInfo* UPVItem)
UPVItem->Pose.Orientation.x += ANGLE(1.0f);
if (frame == MOUNT_SURFACE_SOUND_FRAME)
SoundEffect(SFX_TR4_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
if (frame == MOUNT_SURFACE_CONTROL_FRAME)
UPV->Flags |= UPV_CONTROL;
@ -665,7 +665,7 @@ static void UPVControl(ItemInfo* laraItem, ItemInfo* UPVItem)
else if (anim == UPV_ANIM_MOUNT_UNDERWATER)
{
if (frame == MOUNT_UNDERWATER_SOUND_FRAME)
SoundEffect(SFX_TR4_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
SoundEffect(SFX_TR3_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always);
if (frame == MOUNT_UNDERWATER_CONTROL_FRAME)
UPV->Flags |= UPV_CONTROL;
@ -1034,7 +1034,7 @@ bool UPVControl(ItemInfo* laraItem, CollisionInfo* coll)
BackgroundCollision(laraItem, UPVItem);
if (UPV->Flags & UPV_CONTROL)
SoundEffect(SFX_TR4_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always, 1.0f + (float)UPVItem->Animation.Velocity / 96.0f);
SoundEffect(SFX_TR3_VEHICLE_UPV_LOOP, (PHD_3DPOS*)&UPVItem->Pose.Position.x, SoundEnvironment::Always, 1.0f + (float)UPVItem->Animation.Velocity / 96.0f);
UPVItem->Animation.AnimNumber = Objects[ID_UPV].animIndex + (laraItem->Animation.AnimNumber - Objects[ID_UPV_LARA_ANIMS].animIndex);
UPVItem->Animation.FrameNumber = g_Level.Anims[UPVItem->Animation.AnimNumber].frameBase + (laraItem->Animation.FrameNumber - g_Level.Anims[laraItem->Animation.AnimNumber].frameBase);

View file

@ -255,7 +255,7 @@ void SubmarineControl(short itemNumber)
if (laraInfo.distance >= pow(SECTOR(3), 2))
{
item->Animation.TargetState = 1;
SoundEffect(SFX_TR4_VEHICLE_DIVESUIT_LOOP, &item->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR5_VEHICLE_DIVESUIT_LOOP, &item->Pose, SoundEnvironment::Always);
}
else
item->Animation.TargetState = 0;
@ -423,7 +423,7 @@ void TorpedoControl(short itemNumber)
{
auto* item = &g_Level.Items[itemNumber];
SoundEffect(SFX_TR4_VEHICLE_DIVESUIT_HIT, &item->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR5_VEHICLE_DIVESUIT_HIT, &item->Pose, SoundEnvironment::Always);
Vector3Int pos;
@ -542,7 +542,7 @@ void TorpedoControl(short itemNumber)
KillItem(itemNumber);
TriggerUnderwaterExplosion(item, 1);
SoundEffect(SFX_TR5_UNDERWATER_EXPLOSION, &item->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR4_VEHICLE_DIVESUIT_HIT, &LaraItem->Pose, SoundEnvironment::Always);
SoundEffect(SFX_TR5_VEHICLE_DIVESUIT_HIT, &LaraItem->Pose, SoundEnvironment::Always);
LaraItem->HitPoints -= 200;
// if (Lara.anxiety >= 0x7F)
// Lara.anxiety--;

View file

@ -874,9 +874,9 @@ int GetShatterSound(int shatterID)
return fxID;
if (shatterID < 3)
return 1095;
return SFX_TR5_SMASH_WOOD;
else
return 1092;
return SFX_TR5_SMASH_GLASS;
}
void PlaySoundSources()

View file

@ -538,10 +538,10 @@ enum SOUND_EFFECTS
SFX_TR2_EAGLE_SQUAWK = 533,
SFX_TR2_EAGLE_WING_FLAP = 534,
SFX_TR2_EAGLE_DEATH = 535,
SFX_TR3_CROW_CAW = 536,
SFX_TR3_CROW_WING_FLAP = 537,
SFX_TR3_CROW_DEATH = 538,
SFX_TR3_CROW_ATTACK = 539,
SFX_TR2_CROW_CAW = 536,
SFX_TR2_CROW_WING_FLAP = 537,
SFX_TR2_CROW_DEATH = 538,
SFX_TR2_CROW_ATTACK = 539,
SFX_TR2_YETI_CHEST_BEAT = 540,
SFX_TR2_YETI_FEET = 541,
SFX_TR2_YETI_GROWL = 542,
@ -592,40 +592,40 @@ enum SOUND_EFFECTS
SFX_TR2_WARRIOR_SWORD_SLICE = 587,
SFX_TR2_WARRIOR_WAKE = 588,
SFX_TR2_WARRIOR_BURP = 589,
SFX_TR3_SCUBA_DIVER_ARM = 590,
SFX_TR3_SCUBA_DIVER_BREATH_LAND = 591,
SFX_TR3_SCUBA_DIVER_BREATH_WATER = 592,
SFX_TR3_SCUBA_DIVER_DEATH = 593,
SFX_TR3_SCUBA_DIVER_DIVING = 594,
SFX_TR3_SCUBA_DIVER_FLIPPER = 595,
SFX_TR2_SCUBA_DIVER_ARM = 590,
SFX_TR2_SCUBA_DIVER_BREATH_LAND = 591,
SFX_TR2_SCUBA_DIVER_BREATH_WATER = 592,
SFX_TR2_SCUBA_DIVER_DEATH = 593,
SFX_TR2_SCUBA_DIVER_DIVING = 594,
SFX_TR2_SCUBA_DIVER_FLIPPER = 595,
SFX_TR2_SHARK_BITE = 596,
SFX_TR3_WINSTON_BRUSH_OFF = 597,
SFX_TR3_WINSTON_BULLET_TRAY = 598,
SFX_TR3_WINSTON_CUPS = 599,
SFX_TR3_WINSTON_FLATULENCE = 600,
SFX_TR3_WINSTON_FOOTSTEPS = 601,
SFX_TR3_WINSTON_GET_UP = 602,
SFX_TR3_WINSTON_SURPRISED = 603,
SFX_TR3_WINSTON_TAKE_HIT = 604,
SFX_TR3_WINSTON_GRUNT1 = 605,
SFX_TR3_WINSTON_GRUNT2 = 606,
SFX_TR3_WINSTON_GRUNT3 = 607,
SFX_TR3_WINSTON_SHUFFLE = 608,
SFX_TR4_VEHICLE_SPEEDBOAT_ACCELERATE = 609,
SFX_TR4_VEHICLE_SPEEDBOAT_ENGINE = 610,
SFX_TR4_VEHICLE_SPEEDBOAT_HIT = 611,
SFX_TR4_VEHICLE_SPEEDBOAT_INTO_WATER = 612,
SFX_TR4_VEHICLE_SPEEDBOAT_IDLE = 613,
SFX_TR4_VEHICLE_SPEEDBOAT_MOVING = 614,
SFX_TR4_VEHICLE_SPEEDBOAT_SLOWDOWN = 615,
SFX_TR4_VEHICLE_SPEEDBOAT_START = 616,
SFX_TR4_VEHICLE_SPEEDBOAT_STOP = 617,
SFX_TR4_VEHICLE_SPEEDBOAT_ENGINE_HIT = 618,
SFX_TR4_VEHICLE_SNOWMOBILE_ACCELERATE = 619,
SFX_TR4_VEHICLE_SNOWMOBILE_IDLE = 620,
SFX_TR4_VEHICLE_SNOWMOBILE_MOVING = 621,
SFX_TR4_VEHICLE_SNOWMOBILE_START = 622,
SFX_TR4_VEHICLE_SNOWMOBILE_STOP = 623,
SFX_TR2_WINSTON_BRUSH_OFF = 597,
SFX_TR2_WINSTON_BULLET_TRAY = 598,
SFX_TR2_WINSTON_CUPS = 599,
SFX_TR2_WINSTON_FLATULENCE = 600,
SFX_TR2_WINSTON_FOOTSTEPS = 601,
SFX_TR2_WINSTON_GET_UP = 602,
SFX_TR2_WINSTON_SURPRISED = 603,
SFX_TR2_WINSTON_TAKE_HIT = 604,
SFX_TR2_WINSTON_GRUNT1 = 605,
SFX_TR2_WINSTON_GRUNT2 = 606,
SFX_TR2_WINSTON_GRUNT3 = 607,
SFX_TR2_WINSTON_SHUFFLE = 608,
SFX_TR2_VEHICLE_SPEEDBOAT_ACCELERATE = 609,
SFX_TR2_VEHICLE_SPEEDBOAT_ENGINE = 610,
SFX_TR2_VEHICLE_SPEEDBOAT_HIT = 611,
SFX_TR2_VEHICLE_SPEEDBOAT_INTO_WATER = 612,
SFX_TR2_VEHICLE_SPEEDBOAT_IDLE = 613,
SFX_TR2_VEHICLE_SPEEDBOAT_MOVING = 614,
SFX_TR2_VEHICLE_SPEEDBOAT_SLOWDOWN = 615,
SFX_TR2_VEHICLE_SPEEDBOAT_START = 616,
SFX_TR2_VEHICLE_SPEEDBOAT_STOP = 617,
SFX_TR2_VEHICLE_SPEEDBOAT_ENGINE_HIT = 618,
SFX_TR2_VEHICLE_SNOWMOBILE_ACCELERATE = 619,
SFX_TR2_VEHICLE_SNOWMOBILE_IDLE = 620,
SFX_TR2_VEHICLE_SNOWMOBILE_MOVING = 621,
SFX_TR2_VEHICLE_SNOWMOBILE_START = 622,
SFX_TR2_VEHICLE_SNOWMOBILE_STOP = 623,
SFX_TR2_ZIPLINE_GO = 624,
SFX_TR2_ZIPLINE_GRAB = 625,
SFX_TR2_ZIPLINE_STOP = 626,
@ -641,9 +641,9 @@ enum SOUND_EFFECTS
SFX_TR2_HAND_WHEEL_TURN = 636,
SFX_TR2_HAND_WHEEL_OPEN = 637,
SFX_TR2_HAND_WHEEL_CREAK = 638,
SFX_TR4_VEHICLE_IMPACT_1 = 639,
SFX_TR4_VEHICLE_IMPACT_2 = 640,
SFX_TR4_VEHICLE_IMPACT_3 = 641,
SFX_TR2_VEHICLE_IMPACT1 = 639,
SFX_TR2_VEHICLE_IMPACT2 = 640,
SFX_TR2_VEHICLE_IMPACT3 = 641,
SFX_TR2_CRUNCH1 = 642,
SFX_TR2_CRUNCH2 = 643,
SFX_TR2_CLICK = 644,
@ -664,10 +664,10 @@ enum SOUND_EFFECTS
SFX_TR2_DOORBELL = 659,
SFX_TR2_ELEVATOR_OPEN = 660,
SFX_TR2_ELEVATOR_CLOSE = 661,
SFX_TR4_VEHICLE_SPEEDBOAT_BODY_SLUMP = 662,
SFX_TR2_VEHICLE_SPEEDBOAT_BODY_SLUMP = 662,
SFX_TR2_CURTAIN = 663,
SFX_TR2_DRIPS_REVERB = 664,
SFX_TR3_HELICOPTER_LOOP = 665,
SFX_TR2_HELICOPTER_LOOP = 665,
SFX_TR2_ICILE_DETACH = 666,
SFX_TR2_ICICLE_HIT = 667,
SFX_TR2_MASSIVE_CRASH = 668,
@ -717,28 +717,28 @@ enum SOUND_EFFECTS
SFX_TR3_WILLARD_STAB = 712,
SFX_TR3_WILLARD_TAKE_HIT = 713,
SFX_TR3_BLAST_CIRCLE = 714,
SFX_TR4_VEHICLE_QUADBIKE_ACCELERATE = 715,
SFX_TR4_VEHICLE_QUADBIKE_FRONT_IMPACT = 716,
SFX_TR4_VEHICLE_QUADBIKE_IDLE = 717,
SFX_TR4_VEHICLE_QUADBIKE_LAND = 718,
SFX_TR4_VEHICLE_QUADBIKE_MOVE = 719,
SFX_TR4_VEHICLE_QUADBIKE_SIDE_IMPACT = 720,
SFX_TR4_VEHICLE_QUADBIKE_START = 721,
SFX_TR4_VEHICLE_QUADBIKE_STOP = 722,
SFX_TR4_VEHICLE_RUBBERBOAT_ACCELERATE = 723,
SFX_TR4_VEHICLE_RUBBERBOAT_IDLE = 724,
SFX_TR4_VEHICLE_RUBBERBOAT_MOVING = 725,
SFX_TR4_VEHICLE_RUBBERBOAT_SCRAPE = 726,
SFX_TR4_VEHICLE_RUBBERBOAT_SLOW_DOWN = 727,
SFX_TR4_VEHICLE_RUBBERBOAT_START = 728,
SFX_TR4_VEHICLE_RUBBERBOAT_STOP = 729,
SFX_TR4_VEHICLE_UPV_LOOP = 730,
SFX_TR4_VEHICLE_UPV_START = 731,
SFX_TR4_VEHICLE_UPV_STOP = 732,
SFX_TR4_VEHICLE_MINECART_START = 733,
SFX_TR4_VEHICLE_MINECART_PULLY_LOOP = 734,
SFX_TR4_VEHICLE_MINECART_BRAKE = 735,
SFX_TR4_VEHICLE_MINECART_TRACK_LOOP = 736,
SFX_TR3_VEHICLE_QUADBIKE_ACCELERATE = 715,
SFX_TR3_VEHICLE_QUADBIKE_FRONT_IMPACT = 716,
SFX_TR3_VEHICLE_QUADBIKE_IDLE = 717,
SFX_TR3_VEHICLE_QUADBIKE_LAND = 718,
SFX_TR3_VEHICLE_QUADBIKE_MOVE = 719,
SFX_TR3_VEHICLE_QUADBIKE_SIDE_IMPACT = 720,
SFX_TR3_VEHICLE_QUADBIKE_START = 721,
SFX_TR3_VEHICLE_QUADBIKE_STOP = 722,
SFX_TR3_VEHICLE_RUBBERBOAT_ACCELERATE = 723,
SFX_TR3_VEHICLE_RUBBERBOAT_IDLE = 724,
SFX_TR3_VEHICLE_RUBBERBOAT_MOVING = 725,
SFX_TR3_VEHICLE_RUBBERBOAT_SCRAPE = 726,
SFX_TR3_VEHICLE_RUBBERBOAT_SLOW_DOWN = 727,
SFX_TR3_VEHICLE_RUBBERBOAT_START = 728,
SFX_TR3_VEHICLE_RUBBERBOAT_STOP = 729,
SFX_TR3_VEHICLE_UPV_LOOP = 730,
SFX_TR3_VEHICLE_UPV_START = 731,
SFX_TR3_VEHICLE_UPV_STOP = 732,
SFX_TR3_VEHICLE_MINECART_START = 733,
SFX_TR3_VEHICLE_MINECART_PULLY_LOOP = 734,
SFX_TR3_VEHICLE_MINECART_BRAKE = 735,
SFX_TR3_VEHICLE_MINECART_TRACK_LOOP = 736,
SFX_TR3_AMERCAN_HOY = 737,
SFX_TR3_ARMY_SMG_FOOTSTEPS = 738,
SFX_TR3_ARMY_SMG_FIRE = 739,
@ -861,7 +861,7 @@ enum SOUND_EFFECTS
SFX_TR3_PORTCULLIS_DOWN = 856,
SFX_TR3_PORTCULLIS_UP = 857,
SFX_TR3_POWER_HUM_LOOP = 858,
SFX_TR4_VEHICLE_MINECART_WRENCH = 859,
SFX_TR3_VEHICLE_MINECART_WRENCH = 859,
SFX_TR3_RADAR_BLIP = 860,
SFX_TR3_RADIO_LOOP = 861,
SFX_TR3_RESERVOIR_FLUSH = 862,
@ -878,7 +878,7 @@ enum SOUND_EFFECTS
SFX_TR3_EMPTY4 = 873,
SFX_TR3_SMALL_METAL_SHUTTERS = 874,
SFX_TR3_SMALL_SWITCH = 875,
//EMPTY
SFX_TR3_SPANNER = 876,
SFX_TR3_SPINING_HOOKS = 877,
SFX_TR3_SQUEAK = 878,
SFX_TR3_STALEGTITE = 879,
@ -947,10 +947,10 @@ enum SOUND_EFFECTS
SFX_TR5_IMP_LAUGH = 942,
SFX_TR5_IMP_RUNAWAY = 943,
SFX_TR5_IMP_STONE_HIT = 944,
SFX_TR4_VEHICLE_DIVESUIT_ENGINE = 945,
SFX_TR4_VEHICLE_DIVESUIT_HIT = 946,
SFX_TR4_VEHICLE_DIVESUIT_BREATHE = 947,
SFX_TR4_VEHICLE_DIVESUIT_LOOP = 948,
SFX_TR5_VEHICLE_DIVESUIT_ENGINE = 945,
SFX_TR5_VEHICLE_DIVESUIT_HIT = 946,
SFX_TR5_VEHICLE_DIVESUIT_BREATHE = 947,
SFX_TR5_VEHICLE_DIVESUIT_LOOP = 948,
SFX_TR5_MAFIA_DEATH = 949,
SFX_TR5_MAFIA_GETDOWN = 950,
SFX_TR5_MAFIA_HIT = 951,
@ -1138,7 +1138,6 @@ enum SOUND_EFFECTS
SFX_CUSTOM_FOOTSTEP_SOUNDS_5 = 1133,
SFX_CUSTOM_FOOTSTEP_SOUNDS_6 = 1134,
SFX_CUSTOM_FOOTSTEP_SOUNDS_7 = 1135,
SFX_CUSTOM_FOOTSTEP_SOUNDS_8 = 1136,
//Custom Sound Effects from 1137 onwards
NUM_SFX
SFX_CUSTOM_FOOTSTEP_SOUNDS_8 = 1136,
NUM_SFX //Custom Sound Effects from 1137 onwards
};