@@ -4938,40 +4938,38 @@ bool CStaticFunctionDefinitions::GiveVehicleSirens(CVehicle* pVehicle, unsigned
49384938 assert (pVehicle);
49394939 eVehicleType vehicleType = CVehicleManager::GetVehicleType (pVehicle->GetModel ());
49404940 // Won't work with below.
4941- if (vehicleType != VEHICLE_PLANE && vehicleType != VEHICLE_BOAT && vehicleType != VEHICLE_TRAILER && vehicleType != VEHICLE_HELI &&
4942- vehicleType != VEHICLE_BIKE && vehicleType != VEHICLE_BMX)
4943- {
4944- if (ucSirenType >= 1 && ucSirenType <= 6 )
4945- {
4946- if (ucSirenCount <= SIREN_COUNT_MAX)
4947- {
4948- pVehicle->m_tSirenBeaconInfo .m_bOverrideSirens = true ;
4941+ if (vehicleType != VEHICLE_CAR && vehicleType != VEHICLE_MONSTERTRUCK && vehicleType != VEHICLE_QUADBIKE)
4942+ return false ;
49494943
4950- pVehicle-> m_tSirenBeaconInfo . m_ucSirenCount = ucSirenCount;
4951- pVehicle-> m_tSirenBeaconInfo . m_ucSirenType = ucSirenType ;
4944+ if (ucSirenType < 1 || ucSirenType > 6 )
4945+ return false ;
49524946
4953- pVehicle->m_tSirenBeaconInfo .m_b360Flag = tSirenInfo.m_b360Flag ;
4954- pVehicle->m_tSirenBeaconInfo .m_bDoLOSCheck = tSirenInfo.m_bDoLOSCheck ;
4955- pVehicle->m_tSirenBeaconInfo .m_bUseRandomiser = tSirenInfo.m_bUseRandomiser ;
4956- pVehicle->m_tSirenBeaconInfo .m_bSirenSilent = tSirenInfo.m_bSirenSilent ;
4947+ if (ucSirenCount > SIREN_COUNT_MAX)
4948+ return false ;
49574949
4958- SVehicleSirenAddSync tSirenSync;
4959- tSirenSync.data .m_bOverrideSirens = pVehicle->m_tSirenBeaconInfo .m_bOverrideSirens ;
4960- tSirenSync.data .m_b360Flag = pVehicle->m_tSirenBeaconInfo .m_b360Flag ;
4961- tSirenSync.data .m_bDoLOSCheck = pVehicle->m_tSirenBeaconInfo .m_bDoLOSCheck ;
4962- tSirenSync.data .m_bEnableSilent = pVehicle->m_tSirenBeaconInfo .m_bSirenSilent ;
4963- tSirenSync.data .m_bUseRandomiser = pVehicle->m_tSirenBeaconInfo .m_bUseRandomiser ;
4964- tSirenSync.data .m_ucSirenCount = pVehicle->m_tSirenBeaconInfo .m_ucSirenCount ;
4965- tSirenSync.data .m_ucSirenType = pVehicle->m_tSirenBeaconInfo .m_ucSirenType ;
4950+ pVehicle->m_tSirenBeaconInfo .m_bOverrideSirens = true ;
49664951
4967- CBitStream BitStream;
4968- BitStream.pBitStream ->Write (&tSirenSync);
4969- m_pPlayerManager->BroadcastOnlyJoined (CElementRPCPacket (pVehicle, GIVE_VEHICLE_SIRENS, *BitStream.pBitStream ));
4970- return true ;
4971- }
4972- }
4973- }
4974- return false ;
4952+ pVehicle->m_tSirenBeaconInfo .m_ucSirenCount = ucSirenCount;
4953+ pVehicle->m_tSirenBeaconInfo .m_ucSirenType = ucSirenType;
4954+
4955+ pVehicle->m_tSirenBeaconInfo .m_b360Flag = tSirenInfo.m_b360Flag ;
4956+ pVehicle->m_tSirenBeaconInfo .m_bDoLOSCheck = tSirenInfo.m_bDoLOSCheck ;
4957+ pVehicle->m_tSirenBeaconInfo .m_bUseRandomiser = tSirenInfo.m_bUseRandomiser ;
4958+ pVehicle->m_tSirenBeaconInfo .m_bSirenSilent = tSirenInfo.m_bSirenSilent ;
4959+
4960+ SVehicleSirenAddSync tSirenSync;
4961+ tSirenSync.data .m_bOverrideSirens = pVehicle->m_tSirenBeaconInfo .m_bOverrideSirens ;
4962+ tSirenSync.data .m_b360Flag = pVehicle->m_tSirenBeaconInfo .m_b360Flag ;
4963+ tSirenSync.data .m_bDoLOSCheck = pVehicle->m_tSirenBeaconInfo .m_bDoLOSCheck ;
4964+ tSirenSync.data .m_bEnableSilent = pVehicle->m_tSirenBeaconInfo .m_bSirenSilent ;
4965+ tSirenSync.data .m_bUseRandomiser = pVehicle->m_tSirenBeaconInfo .m_bUseRandomiser ;
4966+ tSirenSync.data .m_ucSirenCount = pVehicle->m_tSirenBeaconInfo .m_ucSirenCount ;
4967+ tSirenSync.data .m_ucSirenType = pVehicle->m_tSirenBeaconInfo .m_ucSirenType ;
4968+
4969+ CBitStream BitStream;
4970+ BitStream.pBitStream ->Write (&tSirenSync);
4971+ m_pPlayerManager->BroadcastOnlyJoined (CElementRPCPacket (pVehicle, GIVE_VEHICLE_SIRENS, *BitStream.pBitStream ));
4972+ return true ;
49754973}
49764974
49774975bool CStaticFunctionDefinitions::SetVehicleSirens (CVehicle* pVehicle, unsigned char ucSirenID, SSirenInfo tSirenInfo)
0 commit comments