Skip to content

Commit 724ab59

Browse files
authored
Fix minor issues with vehicle audio settings (#4160)
1 parent 7ea9d0e commit 724ab59

File tree

3 files changed

+27
-3
lines changed

3 files changed

+27
-3
lines changed

Client/game_sa/CVehicleSA.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ class CVehicleSAInterface : public CPhysicalSAInterface
284284
((void(__thiscall*)(CVehicleSAInterface*, RwFrame*, std::uint32_t))0x6D2700)(this, component, state);
285285
}
286286

287-
bool IsPassenger(CPedSAInterface* ped) const noexcept {
287+
bool IsPassenger(CPedSAInterface* ped) const {
288288
return ((bool(__thiscall*)(CVehicleSAInterface const*, CPedSAInterface*))0x6D1BD0)(this, ped);
289289
}
290290

@@ -483,7 +483,7 @@ class CVehicleSA : public virtual CVehicle, public virtual CPhysicalSA
483483
void SetRailTrack(BYTE ucTrackID);
484484
float GetTrainPosition();
485485
void SetTrainPosition(float fPosition, bool bRecalcOnRailDistance = true);
486-
bool IsPassenger(CPed* pPed) noexcept { return GetVehicleInterface()->IsPassenger(pPed->GetPedInterface()); };
486+
bool IsPassenger(CPed* pPed) { return GetVehicleInterface()->IsPassenger(pPed->GetPedInterface()); };
487487

488488
void AddVehicleUpgrade(DWORD dwModelID);
489489
void RemoveVehicleUpgrade(DWORD dwModelID);

Client/mods/deathmatch/logic/lua/CLuaFunctionParseHelpers.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -967,7 +967,7 @@ ADD_ENUM(eVehicleAudioSettingProperty::ENGINE_ON_SOUND_BANK_ID, "engine-on-sound
967967
ADD_ENUM(eVehicleAudioSettingProperty::HORN_HIGH, "horn-high")
968968
ADD_ENUM(eVehicleAudioSettingProperty::HORN_TON, "horn-ton")
969969
ADD_ENUM(eVehicleAudioSettingProperty::HORN_VOLUME_DELTA, "horn-volume-delta")
970-
ADD_ENUM(eVehicleAudioSettingProperty::RADIO_NUM, "radion-num")
970+
ADD_ENUM(eVehicleAudioSettingProperty::RADIO_NUM, "radio-num")
971971
ADD_ENUM(eVehicleAudioSettingProperty::RADIO_TYPE, "radio-type")
972972
ADD_ENUM(eVehicleAudioSettingProperty::SOUND_TYPE, "sound-type")
973973
ADD_ENUM(eVehicleAudioSettingProperty::BASS_SETTING, "bass-setting")

Client/mods/deathmatch/logic/luadefs/CLuaVehicleDefs.cpp

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4439,11 +4439,23 @@ bool CLuaVehicleDefs::SetVehicleModelAudioSetting(const uint32_t uiModel, const
44394439
pModelSettings.SetDoorSound(varValue);
44404440
break;
44414441
case eVehicleAudioSettingProperty::ENGINE_OFF_SOUND_BANK_ID:
4442+
{
4443+
// Using SPC_ sound banks other than SPC_EA causes a crash
4444+
if (varValue > 410)
4445+
throw std::invalid_argument("Invalid engine-off-sound-bank-id value");
4446+
44424447
pModelSettings.SetEngineOffSoundBankID(varValue);
44434448
break;
4449+
}
44444450
case eVehicleAudioSettingProperty::ENGINE_ON_SOUND_BANK_ID:
4451+
{
4452+
// Using SPC_ sound banks other than SPC_EA causes a crash
4453+
if (varValue > 410)
4454+
throw std::invalid_argument("Invalid engine-on-sound-bank-id value");
4455+
44454456
pModelSettings.SetEngineOnSoundBankID(varValue);
44464457
break;
4458+
}
44474459
case eVehicleAudioSettingProperty::HORN_HIGH:
44484460
pModelSettings.SetHornHign(varValue);
44494461
break;
@@ -4502,11 +4514,23 @@ bool CLuaVehicleDefs::SetVehicleAudioSetting(CClientVehicle* pVehicle, const eVe
45024514
pModelSettings.SetDoorSound(varValue);
45034515
break;
45044516
case eVehicleAudioSettingProperty::ENGINE_OFF_SOUND_BANK_ID:
4517+
{
4518+
// Using SPC_ sound banks other than SPC_EA causes a crash
4519+
if (varValue > 410)
4520+
throw std::invalid_argument("Invalid engine-off-sound-bank-id value");
4521+
45054522
pModelSettings.SetEngineOffSoundBankID(varValue);
45064523
break;
4524+
}
45074525
case eVehicleAudioSettingProperty::ENGINE_ON_SOUND_BANK_ID:
4526+
{
4527+
// Using SPC_ sound banks other than SPC_EA causes a crash
4528+
if (varValue > 410)
4529+
throw std::invalid_argument("Invalid engine-on-sound-bank-id value");
4530+
45084531
pModelSettings.SetEngineOnSoundBankID(varValue);
45094532
break;
4533+
}
45104534
case eVehicleAudioSettingProperty::HORN_HIGH:
45114535
pModelSettings.SetHornHign(varValue);
45124536
break;

0 commit comments

Comments
 (0)