adding new scripts
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
|
||||
|
||||
files {
|
||||
'vehicles.meta',
|
||||
'carvariations.meta',
|
||||
'carcols.meta',
|
||||
'handling.meta',
|
||||
'vehiclelayouts.meta',
|
||||
}
|
||||
|
||||
data_file 'HANDLING_FILE' 'handling.meta'
|
||||
data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta'
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,199 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CVehicleModelInfoVariation>
|
||||
<variationData>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Item>
|
||||
<modelName>19mustgt</modelName>
|
||||
<colors>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item> <Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
30
|
||||
0
|
||||
0
|
||||
0
|
||||
11
|
||||
13
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
</liveries>
|
||||
</Item>
|
||||
</colors>
|
||||
<kits>
|
||||
<Item>0_default_modkit</Item>
|
||||
</kits>
|
||||
<windowsWithExposedEdges />
|
||||
<plateProbabilities>
|
||||
<Probabilities />
|
||||
</plateProbabilities>
|
||||
<lightSettings value="904" />
|
||||
<sirenSettings value="212752" />
|
||||
</Item>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</variationData>
|
||||
</CVehicleModelInfoVariation>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CExtraTextMetaFile>
|
||||
<hasGlobalTextFile value="true"/>
|
||||
<hasAdditionalText value="false"/>
|
||||
<isTitleUpdate value="false"/>
|
||||
</CExtraTextMetaFile>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CHandlingDataMgr>
|
||||
<HandlingData>
|
||||
<Item type="CHandlingData"><!--19MUSTGT HANDLING STARTS HERE-->
|
||||
<handlingName>19MUSTGT</handlingName>
|
||||
<fMass value="1200.000000" />
|
||||
<fInitialDragCoeff value="9.150000" />
|
||||
<fPercentSubmerged value="85.000000" />
|
||||
<vecCentreOfMassOffset x="0.000000" y="-0.070000" z="0.000000" />
|
||||
<vecInertiaMultiplier x="1.200000" y="1.500000" z="1.600000" />
|
||||
<fDriveBiasFront value="0.000000" />
|
||||
<nInitialDriveGears value="7" />
|
||||
<fInitialDriveForce value="0.333750" />
|
||||
<fDriveInertia value="1.000000" />
|
||||
<fClutchChangeRateScaleUpShift value="4.600000" />
|
||||
<fClutchChangeRateScaleDownShift value="4.600000" />
|
||||
<fInitialDriveMaxFlatVel value="153.850000" />
|
||||
<fBrakeForce value="0.840000" />
|
||||
<fBrakeBiasFront value="0.600000" />
|
||||
<fHandBrakeForce value="0.800000" />
|
||||
<fSteeringLock value="40.0000000" />
|
||||
<fTractionCurveMax value="2.630000" />
|
||||
<fTractionCurveMin value="2.495000" />
|
||||
<fTractionCurveLateral value="22.500000" />
|
||||
<fTractionSpringDeltaMax value="0.150000" />
|
||||
<fLowSpeedTractionLossMult value="1.000000" />
|
||||
<fCamberStiffnesss value="0.000000" />
|
||||
<fTractionBiasFront value="0.4980000" />
|
||||
<fTractionLossMult value="1.000000" />
|
||||
<fSuspensionForce value="2.600000" />
|
||||
<fSuspensionCompDamp value="1.300000" />
|
||||
<fSuspensionReboundDamp value="2.800000" />
|
||||
<fSuspensionUpperLimit value="0.070000" />
|
||||
<fSuspensionLowerLimit value="-0.110000" />
|
||||
<fSuspensionRaise value="0.02000" />
|
||||
<fSuspensionBiasFront value="0.470000" />
|
||||
<fAntiRollBarForce value="0.800000" />
|
||||
<fAntiRollBarBiasFront value="0.680000" />
|
||||
<fRollCentreHeightFront value="0.400000" />
|
||||
<fRollCentreHeightRear value="0.400000" />
|
||||
<fCollisionDamageMult value="0.700000" />
|
||||
<fWeaponDamageMult value="1.000000" />
|
||||
<fDeformationDamageMult value="0.700000" />
|
||||
<fEngineDamageMult value="1.500000" />
|
||||
<fPetrolTankVolume value="60.000000" />
|
||||
<fOilVolume value="5.000000" />
|
||||
<fSeatOffsetDistX value="0.000000" />
|
||||
<fSeatOffsetDistY value="0.000000" />
|
||||
<fSeatOffsetDistZ value="0.000000" />
|
||||
<nMonetaryValue value="150000" />
|
||||
<strModelFlags>440010</strModelFlags>
|
||||
<strHandlingFlags>0</strHandlingFlags>
|
||||
<strDamageFlags>0</strDamageFlags>
|
||||
<AIHandling>SPORTS_CAR</AIHandling>
|
||||
<SubHandlingData>
|
||||
<Item type="CCarHandlingData">
|
||||
<fBackEndPopUpCarImpulseMult value="0.100000" />
|
||||
<fBackEndPopUpBuildingImpulseMult value="0.030000" />
|
||||
<fBackEndPopUpMaxDeltaSpeed value="0.600000" />
|
||||
</Item>
|
||||
<Item type="NULL" />
|
||||
<Item type="NULL" />
|
||||
</SubHandlingData>
|
||||
</Item><!--19MUSTGT HANDLING ENDS HERE-->
|
||||
</HandlingData>
|
||||
</CHandlingDataMgr>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,115 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfo__InitDataList>
|
||||
<residentTxd>vehshare</residentTxd>
|
||||
<residentAnims />
|
||||
<InitDatas>
|
||||
<Item>
|
||||
<modelName>19mustgt</modelName>
|
||||
<txdName>19mustgt</txdName>
|
||||
<handlingId>19MUSTGT</handlingId>
|
||||
<gameName>MustangGT</gameName>
|
||||
<vehicleMakeName>FORD</vehicleMakeName>
|
||||
<expressionDictName>null</expressionDictName>
|
||||
<expressionName>null</expressionName>
|
||||
<animConvRoofDictName>null</animConvRoofDictName>
|
||||
<animConvRoofName>null</animConvRoofName>
|
||||
<animConvRoofWindowsAffected />
|
||||
<ptfxAssetName>null</ptfxAssetName>
|
||||
<audioNameHash>ta185amv8</audioNameHash>
|
||||
<layout>LAYOUT_LOW</layout>
|
||||
<coverBoundOffsets>GROWLER_COVER_OFFSET_INFO</coverBoundOffsets>
|
||||
<explosionInfo>EXPLOSION_INFO_DEFAULT</explosionInfo>
|
||||
<scenarioLayout />
|
||||
<cameraName>FOLLOW_CHEETAH_CAMERA</cameraName>
|
||||
<aimCameraName>DEFAULT_THIRD_PERSON_VEHICLE_AIM_CAMERA</aimCameraName>
|
||||
<bonnetCameraName>VEHICLE_BONNET_CAMERA_LOW_LOW</bonnetCameraName>
|
||||
<povCameraName>REDUCED_NEAR_CLIP_POV_CAMERA</povCameraName>
|
||||
<FirstPersonDriveByIKOffset x="0.040000" y="-0.120000" z="-0.035000" />
|
||||
<FirstPersonDriveByUnarmedIKOffset x="0.03000" y="-0.010000" z="-0.035000" />
|
||||
<FirstPersonProjectileDriveByIKOffset x="0.070000" y="-0.110000" z="-0.080000" />
|
||||
<FirstPersonProjectileDriveByPassengerIKOffset x="-0.120000" y="-0.1100000" z="-0.070000" />
|
||||
<FirstPersonDriveByRightPassengerIKOffset x="0.000000" y="-0.10000" z="-0.035000" />
|
||||
<FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.000000" y="-0.060000" z="-0.020000" />
|
||||
<FirstPersonMobilePhoneOffset x="0.165000" y="0.128000" z="0.553000" />
|
||||
<FirstPersonPassengerMobilePhoneOffset x="0.221000" y="0.093000" z="0.441000" />
|
||||
<PovCameraOffset x="0.000000" y="-0.300000" z="0.600000" />
|
||||
<PovCameraVerticalAdjustmentForRollCage value="0.000000" />
|
||||
<PovPassengerCameraOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<vfxInfoName>VFXVEHICLEINFO_CAR_GENERIC</vfxInfoName>
|
||||
<shouldUseCinematicViewMode value="true" />
|
||||
<shouldCameraTransitionOnClimbUpDown value="false" />
|
||||
<shouldCameraIgnoreExiting value="false" />
|
||||
<AllowPretendOccupants value="true" />
|
||||
<AllowJoyriding value="true" />
|
||||
<AllowSundayDriving value="true" />
|
||||
<AllowBodyColorMapping value="true" />
|
||||
<wheelScale value="0.283000" />
|
||||
<wheelScaleRear value="0.283000" />
|
||||
<dirtLevelMin value="0.000000" />
|
||||
<dirtLevelMax value="0.300000" />
|
||||
<envEffScaleMin value="0.000000" />
|
||||
<envEffScaleMax value="1.000000" />
|
||||
<envEffScaleMin2 value="0.000000" />
|
||||
<envEffScaleMax2 value="1.000000" />
|
||||
<damageMapScale value="0.600000" />
|
||||
<damageOffsetScale value="0.600000" />
|
||||
<diffuseTint value="0x00FFFFFF" />
|
||||
<steerWheelMult value="0.850000" />
|
||||
<HDTextureDist value="5.000000" />
|
||||
<lodDistances content="float_array">
|
||||
15.000000
|
||||
30.000000
|
||||
70.000000
|
||||
140.000000
|
||||
500.000000
|
||||
500.000000
|
||||
</lodDistances>
|
||||
<minSeatHeight value="0.928" />
|
||||
<identicalModelSpawnDistance value="20" />
|
||||
<maxNumOfSameColor value="10" />
|
||||
<defaultBodyHealth value="1000.000000" />
|
||||
<pretendOccupantsScale value="1.000000" />
|
||||
<visibleSpawnDistScale value="1.000000" />
|
||||
<trackerPathWidth value="2.000000" />
|
||||
<weaponForceMult value="1.000000" />
|
||||
<frequency value="100" />
|
||||
<swankness>SWANKNESS_3</swankness>
|
||||
<maxNum value="999" />
|
||||
<flags>FLAG_HAS_LIVERY FLAG_EXTRAS_ALL FLAG_SPORTS FLAG_PARKING_SENSORS</flags>
|
||||
<type>VEHICLE_TYPE_CAR</type>
|
||||
<plateType>VPT_FRONT_AND_BACK_PLATES</plateType>
|
||||
<dashboardType>VDT_RACE</dashboardType>
|
||||
<vehicleClass>VC_EMERGENCY</vehicleClass>
|
||||
<wheelType>VWT_SPORT</wheelType>
|
||||
<trailers />
|
||||
<additionalTrailers />
|
||||
<drivers />
|
||||
<extraIncludes>
|
||||
<Item>EXTRA_1 EXTRA_2</Item>
|
||||
</extraIncludes>
|
||||
<doorsWithCollisionWhenClosed />
|
||||
<driveableDoors />
|
||||
<bumpersNeedToCollideWithMap value="true" />
|
||||
<needsRopeTexture value="false" />
|
||||
<requiredExtras />
|
||||
<rewards />
|
||||
<cinematicPartCamera>
|
||||
<Item>WHEEL_FRONT_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_FRONT_LEFT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_LEFT_CAMERA</Item>
|
||||
</cinematicPartCamera>
|
||||
<NmBraceOverrideSet>Truck</NmBraceOverrideSet>
|
||||
<buoyancySphereOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<buoyancySphereSizeScale value="1.000000" />
|
||||
<pOverrideRagdollThreshold type="NULL" />
|
||||
<firstPersonDrivebyData>
|
||||
<Item>STD_DILETTANTE_FRONT_LEFT</Item>
|
||||
<Item>STD_DILETTANTE_FRONT_RIGHT</Item>
|
||||
<Item>STD_BALLER_REAR_LEFT</Item>
|
||||
<Item>STD_BALLER_REAR_RIGHT</Item>
|
||||
</firstPersonDrivebyData>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
<txdRelationships />
|
||||
</CVehicleModelInfo__InitDataList>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.3 MiB |
@@ -0,0 +1,17 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
|
||||
-- Leaked By: Leaking Hub | Joshua Y. | https://discord.gg/aXWXXst
|
||||
|
||||
files {
|
||||
'vehicles.meta',
|
||||
'carvariations.meta',
|
||||
'carcols.meta',
|
||||
'handling.meta',
|
||||
'vehiclelayouts.meta',
|
||||
}
|
||||
|
||||
data_file 'HANDLING_FILE' 'handling.meta'
|
||||
data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta'
|
||||
@@ -0,0 +1,756 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfoVarGlobal>
|
||||
<Sirens>
|
||||
<Item>
|
||||
<id value="8733"/> <!--24TACTRD By Ferious Development FEB 2024-->
|
||||
<name>24tactrd</name>
|
||||
<timeMultiplier value="1.00000000"/>
|
||||
<lightFalloffMax value="125.00000000"/>
|
||||
<lightFalloffExponent value="125.00000000"/>
|
||||
<lightInnerConeAngle value="2.29061000"/>
|
||||
<lightOuterConeAngle value="70.00000000"/>
|
||||
<lightOffset value="0.00000000"/>
|
||||
<textureName>VehicleLight_sirenlight</textureName>
|
||||
<sequencerBpm value="900"/>
|
||||
<leftHeadLight>
|
||||
<sequencer value="0"/>
|
||||
</leftHeadLight>
|
||||
<rightHeadLight>
|
||||
<sequencer value="0"/>
|
||||
</rightHeadLight>
|
||||
<leftTailLight>
|
||||
<sequencer value="0"/>
|
||||
</leftTailLight>
|
||||
<rightTailLight>
|
||||
<sequencer value="0"/>
|
||||
</rightTailLight>
|
||||
<leftHeadLightMultiples value="1"/>
|
||||
<rightHeadLightMultiples value="1"/>
|
||||
<leftTailLightMultiples value="2"/>
|
||||
<rightTailLightMultiples value="2"/>
|
||||
<useRealLights value="true"/>
|
||||
<sirens>
|
||||
<Item> <!--Siren 1-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284102833"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284102833"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 2-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212748618"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212748618"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 3-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="613566464"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="613566464"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 4-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212748617"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212748617"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 5-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284102834"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284102834"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 6-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFF00"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 7-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2685272272"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2685272272"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFF0000FF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 8-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="167887236"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="167887236"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="1.00000000"/>
|
||||
<size value="1.00000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 9-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="10500865"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="10500865"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 10-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4164816768"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4164816768"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFF00"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 11-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 12-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 13-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2189443153"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2189443153"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 14-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1409618182"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1409618182"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFD700"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 15-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2152727569"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2152727569"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFD700"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 16-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="3493072130"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="3493072130"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFD700"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 17-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="109158504"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="109158504"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFD700"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 18-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2290123088"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2290123088"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 19-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4164816768"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="false"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4164816768"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.00000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="false"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 20-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4294967295"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="2.50000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="5.50000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
</sirens>
|
||||
</Item>
|
||||
</Sirens>
|
||||
</CVehicleModelInfoVarGlobal>
|
||||
@@ -0,0 +1,191 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CVehicleModelInfoVariation>
|
||||
<variationData>
|
||||
<!--24TACTRD By Ferious Development FEB 2024-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Item>
|
||||
<modelName>24tactrd</modelName>
|
||||
<colors>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item> <Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
<Item value="false" />
|
||||
</liveries>
|
||||
</Item>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
134
|
||||
0
|
||||
0
|
||||
32
|
||||
</indices>
|
||||
<liveries>
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="false" />
|
||||
<Item value="true" />
|
||||
</liveries>
|
||||
</Item>
|
||||
</colors>
|
||||
<kits>
|
||||
<Item>0_default_modkit</Item>
|
||||
</kits>
|
||||
<windowsWithExposedEdges />
|
||||
<plateProbabilities>
|
||||
<Probabilities />
|
||||
</plateProbabilities>
|
||||
<lightSettings value="1" />
|
||||
<sirenSettings value="8733" />
|
||||
</Item>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</variationData>
|
||||
</CVehicleModelInfoVariation>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CHandlingDataMgr>
|
||||
<HandlingData>
|
||||
<Item type="CHandlingData"><!--24TACTRD By Ferious Development FEB 2024-->
|
||||
<handlingName>24tactrd</handlingName>
|
||||
<fMass value="2200.000000" />
|
||||
<fInitialDragCoeff value="13.000000" />
|
||||
<fPercentSubmerged value="85.000000" />
|
||||
<vecCentreOfMassOffset x="0.000000" y="0.000000" z="0.00000" />
|
||||
<vecInertiaMultiplier x="1.300000" y="1.300000" z="1.300000" />
|
||||
<fDriveBiasFront value="0.500000" />
|
||||
<nInitialDriveGears value="5" />
|
||||
<fInitialDriveForce value="0.339000" />
|
||||
<fDriveInertia value="1.000000" />
|
||||
<fClutchChangeRateScaleUpShift value="4.300000" />
|
||||
<fClutchChangeRateScaleDownShift value="4.300000" />
|
||||
<fInitialDriveMaxFlatVel value="140.000000" />
|
||||
<fBrakeForce value="0.300000" />
|
||||
<fBrakeBiasFront value="0.650000" />
|
||||
<fHandBrakeForce value="0.400000" />
|
||||
<fSteeringLock value="36.000000" />
|
||||
<fTractionCurveMax value="2.500000" />
|
||||
<fTractionCurveMin value="2.100000" />
|
||||
<fTractionCurveLateral value="20.000000" />
|
||||
<fTractionSpringDeltaMax value="0.130000" />
|
||||
<fLowSpeedTractionLossMult value="1.000000" />
|
||||
<fCamberStiffnesss value="0.000000" />
|
||||
<fTractionBiasFront value="0.510000" />
|
||||
<fTractionLossMult value="0.1500000" />
|
||||
<fSuspensionForce value="1.200000" />
|
||||
<fSuspensionCompDamp value="1.100000" />
|
||||
<fSuspensionReboundDamp value="1.400000" />
|
||||
<fSuspensionUpperLimit value="0.250000" />
|
||||
<fSuspensionLowerLimit value="-0.300000" />
|
||||
<fSuspensionRaise value="0.000000" />
|
||||
<fSuspensionBiasFront value="0.50000" />
|
||||
<fAntiRollBarForce value="0.600000" />
|
||||
<fAntiRollBarBiasFront value="0.300000" />
|
||||
<fRollCentreHeightFront value="0.555000" />
|
||||
<fRollCentreHeightRear value="0.555000" />
|
||||
<fCollisionDamageMult value="1.100000" />
|
||||
<fWeaponDamageMult value="1.000000" />
|
||||
<fDeformationDamageMult value="0.800000" />
|
||||
<fEngineDamageMult value="1.500000" />
|
||||
<fPetrolTankVolume value="65.000000" />
|
||||
<fOilVolume value="5.000000" />
|
||||
<fSeatOffsetDistX value="0.100000" />
|
||||
<fSeatOffsetDistY value="-0.250000" />
|
||||
<fSeatOffsetDistZ value="-0.400000" />
|
||||
<nMonetaryValue value="50000" />
|
||||
<strModelFlags>240010</strModelFlags>
|
||||
<strHandlingFlags>800008</strHandlingFlags>
|
||||
<strDamageFlags>0</strDamageFlags>
|
||||
<AIHandling>AVERAGE</AIHandling>
|
||||
<SubHandlingData>
|
||||
<Item type="CCarHandlingData">
|
||||
<fBackEndPopUpCarImpulseMult value="0.100000" />
|
||||
<fBackEndPopUpBuildingImpulseMult value="0.030000" />
|
||||
<fBackEndPopUpMaxDeltaSpeed value="0.600000" />
|
||||
</Item>
|
||||
<Item type="NULL" />
|
||||
<Item type="NULL" />
|
||||
</SubHandlingData>
|
||||
</Item><!--24TACTRD HANDLING ENDS HERE-->
|
||||
</HandlingData>
|
||||
</CHandlingDataMgr>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,156 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfo__InitDataList>
|
||||
<residentTxd>vehshare</residentTxd>
|
||||
<residentAnims />
|
||||
<InitDatas><!--24TACTRD By Ferious Development FEB 2024-->
|
||||
<Item>
|
||||
<modelName>24tactrd</modelName>
|
||||
<txdName>24tactrd</txdName>
|
||||
<handlingId>24tactrd</handlingId>
|
||||
<gameName>Toyota</gameName>
|
||||
<vehicleMakeName>TacomaTRD</vehicleMakeName>
|
||||
<expressionDictName>null</expressionDictName>
|
||||
<expressionName>null</expressionName>
|
||||
<animConvRoofDictName>null</animConvRoofDictName>
|
||||
<animConvRoofName>null</animConvRoofName>
|
||||
<animConvRoofWindowsAffected />
|
||||
<ptfxAssetName>null</ptfxAssetName>
|
||||
<audioNameHash>GAUNTLET</audioNameHash>
|
||||
<layout>LAYOUT_BISON</layout>
|
||||
<coverBoundOffsets>BISON_COVER_OFFSET_INFO</coverBoundOffsets>
|
||||
<explosionInfo>EXPLOSION_INFO_DEFAULT</explosionInfo>
|
||||
<scenarioLayout />
|
||||
<cameraName>DEFAULT_FOLLOW_VEHICLE_CAMERA</cameraName>
|
||||
<aimCameraName>DEFAULT_THIRD_PERSON_VEHICLE_AIM_CAMERA</aimCameraName>
|
||||
<bonnetCameraName>VEHICLE_BONNET_CAMERA_STANDARD</bonnetCameraName>
|
||||
<povCameraName>DEFAULT_POV_CAMERA</povCameraName>
|
||||
<FirstPersonDriveByIKOffset x="0.040000" y="-0.060000" z="-0.040000" />
|
||||
<FirstPersonDriveByUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByIKOffset x="0.075000" y="-0.128000" z="-0.020000" />
|
||||
<FirstPersonProjectileDriveByPassengerIKOffset x="0.000000" y="0.058000" z="-0.058000" />
|
||||
<FirstPersonProjectileDriveByRearLeftIKOffset x="0.000000" y="-0.058000" z="-0.055000" />
|
||||
<FirstPersonProjectileDriveByRearRightIKOffset x="0.000000" y="-0.058000" z="-0.055000" />
|
||||
<FirstPersonDriveByLeftPassengerIKOffset x="0.000000" y="0.015000" z="-0.040000" />
|
||||
<FirstPersonDriveByRightPassengerIKOffset x="-0.043000" y="-0.043000" z="-0.055000" />
|
||||
<FirstPersonDriveByRightRearPassengerIKOffset x="0.000000" y="0.015000" z="-0.040000" />
|
||||
<FirstPersonDriveByLeftPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonMobilePhoneOffset x="0.143000" y="0.278000" z="0.565000" />
|
||||
<FirstPersonPassengerMobilePhoneOffset x="0.204000" y="0.176000" z="0.490000" />
|
||||
<FirstPersonMobilePhoneSeatIKOffset>
|
||||
<Item>
|
||||
<Offset x="0.204000" y="0.131000" z="0.490000" />
|
||||
<SeatIndex value="2" />
|
||||
</Item>
|
||||
<Item>
|
||||
<Offset x="0.204000" y="0.131000" z="0.490000" />
|
||||
<SeatIndex value="3" />
|
||||
</Item>
|
||||
</FirstPersonMobilePhoneSeatIKOffset>
|
||||
<PovCameraOffset x="0.000000" y="-0.170000" z="0.550000" />
|
||||
<PovCameraVerticalAdjustmentForRollCage value="0.000000" />
|
||||
<PovPassengerCameraOffset x="0.000000" y="0.000000" z="0.020000" />
|
||||
<PovRearPassengerCameraOffset x="0.000000" y="0.000000" z="0.020000" />
|
||||
<vfxInfoName>VFXVEHICLEINFO_CAR_GENERIC</vfxInfoName>
|
||||
<shouldUseCinematicViewMode value="true" />
|
||||
<shouldCameraTransitionOnClimbUpDown value="false" />
|
||||
<shouldCameraIgnoreExiting value="false" />
|
||||
<AllowPretendOccupants value="true" />
|
||||
<AllowJoyriding value="true" />
|
||||
<AllowSundayDriving value="true" />
|
||||
<AllowBodyColorMapping value="true" />
|
||||
<wheelScale value="0.300000" />
|
||||
<wheelScaleRear value="0.300000" />
|
||||
<dirtLevelMin value="0.300000" />
|
||||
<dirtLevelMax value="0.850000" />
|
||||
<envEffScaleMin value="0.000000" />
|
||||
<envEffScaleMax value="1.000000" />
|
||||
<envEffScaleMin2 value="0.000000" />
|
||||
<envEffScaleMax2 value="1.000000" />
|
||||
<damageMapScale value="0.600000" />
|
||||
<damageOffsetScale value="1.000000" />
|
||||
<diffuseTint value="0x00FFFFFF" />
|
||||
<steerWheelMult value="1.000000" />
|
||||
<HDTextureDist value="5.000000" />
|
||||
<lodDistances content="float_array">
|
||||
15.000000
|
||||
30.000000
|
||||
70.000000
|
||||
140.000000
|
||||
500.000000
|
||||
500.000000
|
||||
</lodDistances>
|
||||
<minSeatHeight value="0.962" />
|
||||
<identicalModelSpawnDistance value="20" />
|
||||
<maxNumOfSameColor value="10" />
|
||||
<defaultBodyHealth value="1000.000000" />
|
||||
<pretendOccupantsScale value="1.000000" />
|
||||
<visibleSpawnDistScale value="1.000000" />
|
||||
<trackerPathWidth value="2.000000" />
|
||||
<weaponForceMult value="1.000000" />
|
||||
<frequency value="100" />
|
||||
<swankness>SWANKNESS_1</swankness>
|
||||
<maxNum value="999" />
|
||||
<flags>FLAG_DONT_SPAWN_IN_CARGEN FLAG_LAW_ENFORCEMENT FLAG_HAS_LIVERY FLAG_BIG FLAG_CAN_HONK_WHEN_FLEEING FLAG_AVOID_TURNS FLAG_EXTRAS_REQUIRE FLAG_PEDS_CAN_STAND_ON_TOP FLAG_USE_FAT_INTERIOR_LIGHT FLAG_IS_BULKY FLAG_BLOCK_FROM_ATTRACTOR_SCENARIO FLAG_CANNOT_TAKE_COVER_WHEN_STOOD_ON FLAG_EXTRAS_ONLY_BREAK_WHEN_DESTROYED</flags>
|
||||
<type>VEHICLE_TYPE_CAR</type>
|
||||
<plateType>VPT_FRONT_AND_BACK_PLATES</plateType>
|
||||
<dashboardType>VDT_ZTYPE</dashboardType>
|
||||
<vehicleClass>VC_VAN</vehicleClass>
|
||||
<wheelType>VWT_SUV</wheelType>
|
||||
<trailers>
|
||||
<Item>boattrailer</Item>
|
||||
<Item>trailersmall</Item>
|
||||
</trailers>
|
||||
<additionalTrailers>
|
||||
<Item>trailersmall2</Item>
|
||||
</additionalTrailers>
|
||||
<drivers>
|
||||
<Item>
|
||||
<driverName>S_M_M_AutoShop_01</driverName>
|
||||
<npcName />
|
||||
</Item>
|
||||
<Item>
|
||||
<driverName>S_M_M_AutoShop_02</driverName>
|
||||
<npcName />
|
||||
</Item>
|
||||
<Item>
|
||||
<driverName>S_M_M_Trucker_01</driverName>
|
||||
<npcName />
|
||||
</Item>
|
||||
</drivers>
|
||||
<extraIncludes>
|
||||
<Item>EXTRA_1</Item>
|
||||
</extraIncludes>
|
||||
<doorsWithCollisionWhenClosed />
|
||||
<driveableDoors />
|
||||
<bumpersNeedToCollideWithMap value="false" />
|
||||
<needsRopeTexture value="false" />
|
||||
<requiredExtras>
|
||||
<Item>EXTRA_1</Item>
|
||||
</requiredExtras>
|
||||
<rewards />
|
||||
<cinematicPartCamera>
|
||||
<Item>WHEEL_FRONT_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_FRONT_LEFT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_LEFT_CAMERA</Item>
|
||||
</cinematicPartCamera>
|
||||
<NmBraceOverrideSet>Truck</NmBraceOverrideSet>
|
||||
<buoyancySphereOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<buoyancySphereSizeScale value="1.000000" />
|
||||
<pOverrideRagdollThreshold type="NULL" />
|
||||
<firstPersonDrivebyData>
|
||||
<Item>RANGER_BISON_FRONT_LEFT</Item>
|
||||
<Item>VAN_RUMPO_FRONT_RIGHT</Item>
|
||||
<Item>RANGER_BISON_REAR_LEFT</Item>
|
||||
<Item>RANGER_BISON_REAR_RIGHT</Item>
|
||||
</firstPersonDrivebyData>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
<txdRelationships>
|
||||
<Item>
|
||||
<parent>vehicles_bob_brown_interior</parent>
|
||||
<child>24tactrd</child>
|
||||
</Item>
|
||||
</txdRelationships>
|
||||
</CVehicleModelInfo__InitDataList>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -817,7 +817,9 @@ Config.VehicleRestrictions = {
|
||||
"mpf250rb",
|
||||
"24mustanggt4d",
|
||||
"speed1",
|
||||
" ",
|
||||
"f350bubba",
|
||||
"19mustgt",
|
||||
|
||||
},
|
||||
['EG | Owner'] = {
|
||||
"Staff-EGRPescal21",
|
||||
@@ -830,8 +832,10 @@ Config.VehicleRestrictions = {
|
||||
"x3bearcat",
|
||||
"x3bearcat2",
|
||||
"mrap",
|
||||
"f350bubba",
|
||||
"staff-sl23hoe",
|
||||
"maxchasrt",
|
||||
"19mustgt",
|
||||
"bearcat",
|
||||
"18charger",
|
||||
"18chargerb",
|
||||
@@ -973,6 +977,7 @@ Config.VehicleRestrictions = {
|
||||
"am_srt15",
|
||||
"mpf250rb",
|
||||
"24mustanggt4d",
|
||||
"f350bubba",
|
||||
"speed1",
|
||||
"boxville5",
|
||||
"cognoscenti2",
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
|
||||
|
||||
files {
|
||||
'vehicles.meta',
|
||||
'carvariations.meta',
|
||||
'carcols.meta',
|
||||
'handling.meta',
|
||||
'vehiclelayouts.meta',
|
||||
}
|
||||
|
||||
data_file 'HANDLING_FILE' 'handling.meta'
|
||||
data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta'
|
||||
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--2017-2020 F350 Bubba LEO Truck Whelen June 2025 Ferious Dev-->
|
||||
<CVehicleModelInfoVariation>
|
||||
<variationData>
|
||||
<Item>
|
||||
<modelName>f350bubba</modelName>
|
||||
<colors>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
0
|
||||
70
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
</indices>
|
||||
</Item>
|
||||
</colors>
|
||||
<windowsWithExposedEdges/>
|
||||
<plateProbabilities>
|
||||
<Probabilities>
|
||||
<Item>
|
||||
<Name>Police guv plate</Name>
|
||||
<Value value="100"/>
|
||||
</Item>
|
||||
</Probabilities>
|
||||
</plateProbabilities>
|
||||
<lightSettings value="0"/>
|
||||
<sirenSettings value="41714"/>
|
||||
</Item>
|
||||
</variationData>
|
||||
</CVehicleModelInfoVariation>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--2017-2020 F350 Bubba LEO Truck Whelen June 2025 Ferious Dev-->
|
||||
<CHandlingDataMgr>
|
||||
<HandlingData>
|
||||
<Item type="CHandlingData">
|
||||
<handlingName>f350bubba</handlingName>
|
||||
<fMass value="2750.000000" />
|
||||
<fInitialDragCoeff value="8.500000" />
|
||||
<fPercentSubmerged value="85.000000" />
|
||||
<vecCentreOfMassOffset x="0.000000" y="0.000000" z="-0.200000" />
|
||||
<vecInertiaMultiplier x="1.200000" y="1.200000" z="1.150000" />
|
||||
<fDriveBiasFront value="0.200000" />
|
||||
<nInitialDriveGears value="6" />
|
||||
<fInitialDriveForce value="0.300000" />
|
||||
<fDriveInertia value="1.000000" />
|
||||
<fClutchChangeRateScaleUpShift value="1.500000" />
|
||||
<fClutchChangeRateScaleDownShift value="1.500000" />
|
||||
<fInitialDriveMaxFlatVel value="145.000000" />
|
||||
<fBrakeForce value="0.600000" />
|
||||
<fBrakeBiasFront value="0.550000" />
|
||||
<fHandBrakeForce value="0.400000" />
|
||||
<fSteeringLock value="30.000000" />
|
||||
<fTractionCurveMax value="2.200000" />
|
||||
<fTractionCurveMin value="1.950000" />
|
||||
<fTractionCurveLateral value="23.000000" />
|
||||
<fTractionSpringDeltaMax value="0.130000" />
|
||||
<fLowSpeedTractionLossMult value="1.300000" />
|
||||
<fCamberStiffnesss value="0.000000" />
|
||||
<fTractionBiasFront value="0.494000" />
|
||||
<fTractionLossMult value="0.500000" />
|
||||
<fSuspensionForce value="3.800000" />
|
||||
<fSuspensionCompDamp value="2.800000" />
|
||||
<fSuspensionReboundDamp value="4.000000" />
|
||||
<fSuspensionUpperLimit value="0.140000" />
|
||||
<fSuspensionLowerLimit value="-0.160000" />
|
||||
<fSuspensionRaise value="0.000000" />
|
||||
<fSuspensionBiasFront value="0.470000" />
|
||||
<fAntiRollBarForce value="1.200000" />
|
||||
<fAntiRollBarBiasFront value="0.580000" />
|
||||
<fRollCentreHeightFront value="0.020000" />
|
||||
<fRollCentreHeightRear value="0.020000" />
|
||||
<fCollisionDamageMult value="1.000000" />
|
||||
<fWeaponDamageMult value="1.000000" />
|
||||
<fDeformationDamageMult value="0.800000" />
|
||||
<fEngineDamageMult value="1.500000" />
|
||||
<fPetrolTankVolume value="70.000000" />
|
||||
<fOilVolume value="6.500000" />
|
||||
<fSeatOffsetDistX value="0.200000" />
|
||||
<fSeatOffsetDistY value="0.000000" />
|
||||
<fSeatOffsetDistZ value="0.000000" />
|
||||
<nMonetaryValue value="25000" />
|
||||
<strModelFlags>400010</strModelFlags>
|
||||
<strHandlingFlags>0</strHandlingFlags>
|
||||
<strDamageFlags>0</strDamageFlags>
|
||||
<AIHandling>TRUCK</AIHandling>
|
||||
<SubHandlingData>
|
||||
<Item type="CCarHandlingData">
|
||||
<fBackEndPopUpCarImpulseMult value="0.100000" />
|
||||
<fBackEndPopUpBuildingImpulseMult value="0.030000" />
|
||||
<fBackEndPopUpMaxDeltaSpeed value="0.600000" />
|
||||
</Item>
|
||||
<Item type="NULL" />
|
||||
<Item type="NULL" />
|
||||
</SubHandlingData>
|
||||
</Item>
|
||||
</HandlingData>
|
||||
</CHandlingDataMgr>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,61 @@
|
||||
|
||||
--[[
|
||||
Ultimate Lighting Controller Config
|
||||
the ULC resource is required to use this configuration
|
||||
get the resource here: https://github.com/Flohhhhh/ultimate-lighting-controller/releases/latest
|
||||
To learn how to setup and use ULC visit here: https://docs.dwnstr.com/ulc/overview
|
||||
]]
|
||||
|
||||
return {names = {"f350bubba"},
|
||||
steadyBurnConfig = {
|
||||
forceOn = false, useTime = false,
|
||||
disableWithLights = false,
|
||||
sbExtras = {}
|
||||
},
|
||||
parkConfig = {
|
||||
usePark = false,
|
||||
useSync = false,
|
||||
syncWith = {},
|
||||
pExtras = {},
|
||||
dExtras = {}
|
||||
},
|
||||
hornConfig = {
|
||||
useHorn = false,
|
||||
hornExtras = {},
|
||||
disableExtras = {}
|
||||
},
|
||||
brakeConfig = {
|
||||
useBrakes = false,
|
||||
speedThreshold = 3,
|
||||
brakeExtras = {},
|
||||
disableExtras = {}
|
||||
},
|
||||
reverseConfig = {
|
||||
useReverse = false,
|
||||
reverseExtras = {},
|
||||
disableExtras = {}
|
||||
},
|
||||
doorConfig = {
|
||||
useDoors = false,
|
||||
driverSide = {enable = {}, disable = {}},
|
||||
passSide = {enable = {}, disable = {}},
|
||||
trunk = {enable ={}, disable = {}}
|
||||
},
|
||||
buttons = {
|
||||
{label = "Response PTN", key = 1, color = "green", extra = 9, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false},
|
||||
{label = "Lightbar Response PTN", key = 2, color = "green", extra = 10, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false},
|
||||
{label = "Park PTN", key = 3, color = "green", extra = 11, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false},
|
||||
{label = "Park Lightbar PTN", key = 4, color = "green", extra = 12, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false},
|
||||
{label = "Side Scene", key = 5, color = "green", extra = 5, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false},
|
||||
{label = "Rear Scene", key = 6, color = "green", extra = 6, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false}
|
||||
},
|
||||
stages = {
|
||||
useStages = false,
|
||||
stageKeys = {},
|
||||
},
|
||||
defaultStages = {
|
||||
useDefaults = false,
|
||||
enableKeys = {},
|
||||
disableKeys = {}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,140 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--2017-2020 F350 Bubba LEO Truck Whelen June 2025 Ferious Dev-->
|
||||
<CVehicleModelInfo__InitDataList>
|
||||
<residentTxd>vehshare</residentTxd>
|
||||
<residentAnims />
|
||||
<InitDatas>
|
||||
<Item>
|
||||
<modelName>f350bubba</modelName>
|
||||
<txdName>f350bubba</txdName>
|
||||
<handlingId>f350bubba</handlingId>
|
||||
<gameName>f350bubba</gameName>
|
||||
<vehicleMakeName>20FORD</vehicleMakeName>
|
||||
<expressionDictName>null</expressionDictName>
|
||||
<expressionName>null</expressionName>
|
||||
<animConvRoofDictName></animConvRoofDictName>
|
||||
<animConvRoofName></animConvRoofName>
|
||||
<animConvRoofWindowsAffected />
|
||||
<ptfxAssetName>null</ptfxAssetName>
|
||||
<audioNameHash>aq07powerstroke67</audioNameHash>
|
||||
<layout>LAYOUT_RANGER</layout>
|
||||
<coverBoundOffsets>GRANGER_COVER_OFFSET_INFO</coverBoundOffsets>
|
||||
<explosionInfo>EXPLOSION_INFO_DEFAULT</explosionInfo>
|
||||
<scenarioLayout />
|
||||
<cameraName>DEFAULT_FOLLOW_VEHICLE_CAMERA</cameraName>
|
||||
<aimCameraName>BOX_VEHICLE_AIM_CAMERA</aimCameraName>
|
||||
<bonnetCameraName>VEHICLE_BONNET_CAMERA_STANDARD</bonnetCameraName>
|
||||
<povCameraName>DEFAULT_POV_CAMERA_LOOKAROUND</povCameraName>
|
||||
<FirstPersonDriveByIKOffset x="0.000000" y="-0.150000" z="-0.030000" />
|
||||
<FirstPersonDriveByUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByIKOffset x="0.000000" y="-0.088000" z="0.093000" />
|
||||
<FirstPersonProjectileDriveByPassengerIKOffset x="0.020000" y="0.060000" z="-0.090000" />
|
||||
<FirstPersonProjectileDriveByRearLeftIKOffset x="0.000000" y="0.000000" z="-0.055000" />
|
||||
<FirstPersonProjectileDriveByRearRightIKOffset x="0.000000" y="0.000000" z="-0.055000" />
|
||||
<FirstPersonDriveByLeftPassengerIKOffset x="0.000000" y="0.000000" z="-0.040000" />
|
||||
<FirstPersonDriveByRightPassengerIKOffset x="-0.045000" y="-0.048000" z="-0.040000" />
|
||||
<FirstPersonDriveByRightRearPassengerIKOffset x="0.000000" y="0.000000" z="-0.040000" />
|
||||
<FirstPersonDriveByLeftPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonMobilePhoneOffset x="0.150000" y="0.268000" z="0.503000" />
|
||||
<FirstPersonPassengerMobilePhoneOffset x="0.136000" y="0.223000" z="0.425000" />
|
||||
<FirstPersonMobilePhoneSeatIKOffset>
|
||||
<Item>
|
||||
<Offset x="0.156000" y="0.223000" z="0.493000" />
|
||||
<SeatIndex value="2" />
|
||||
</Item>
|
||||
<Item>
|
||||
<Offset x="0.156000" y="0.223000" z="0.493000" />
|
||||
<SeatIndex value="3" />
|
||||
</Item>
|
||||
</FirstPersonMobilePhoneSeatIKOffset>
|
||||
<PovCameraOffset x="0.000000" y="-0.235000" z="0.635000" />
|
||||
<PovCameraVerticalAdjustmentForRollCage value="0.000000" />
|
||||
<PovPassengerCameraOffset x="0.000000" y="0.000000" z="0.030000" />
|
||||
<PovRearPassengerCameraOffset x="0.000000" y="0.000000" z="0.070000" />
|
||||
<vfxInfoName>VFXVEHICLEINFO_TRUCK_RIG</vfxInfoName>
|
||||
<shouldUseCinematicViewMode value="true" />
|
||||
<shouldCameraTransitionOnClimbUpDown value="false" />
|
||||
<shouldCameraIgnoreExiting value="false" />
|
||||
<AllowPretendOccupants value="true" />
|
||||
<AllowJoyriding value="true" />
|
||||
<AllowSundayDriving value="true" />
|
||||
<AllowBodyColorMapping value="true" />
|
||||
<wheelScale value="0.292300" />
|
||||
<wheelScaleRear value="0.292300" />
|
||||
<dirtLevelMin value="0.000000" />
|
||||
<dirtLevelMax value="50.000000" />
|
||||
<envEffScaleMin value="0.000000" />
|
||||
<envEffScaleMax value="1.000000" />
|
||||
<envEffScaleMin2 value="0.000000" />
|
||||
<envEffScaleMax2 value="1.000000" />
|
||||
<damageMapScale value="0.900000" />
|
||||
<damageOffsetScale value="1.000000" />
|
||||
<diffuseTint value="0x00FFFFFF" />
|
||||
<steerWheelMult value="1.000000" />
|
||||
<HDTextureDist value="5.000000" />
|
||||
<lodDistances content="float_array">
|
||||
35.000000
|
||||
45.000000
|
||||
150.000000
|
||||
250.000000
|
||||
500.000000
|
||||
500.000000
|
||||
</lodDistances>
|
||||
<minSeatHeight value="0.966" />
|
||||
<identicalModelSpawnDistance value="20" />
|
||||
<maxNumOfSameColor value="10" />
|
||||
<defaultBodyHealth value="1000.000000" />
|
||||
<pretendOccupantsScale value="1.000000" />
|
||||
<visibleSpawnDistScale value="1.000000" />
|
||||
<trackerPathWidth value="2.000000" />
|
||||
<weaponForceMult value="1.000000" />
|
||||
<frequency value="100" />
|
||||
<swankness>SWANKNESS_1</swankness>
|
||||
<maxNum value="999" />
|
||||
<flags>FLAG_EXTRAS_STRONG FLAG_HAS_LIVERY FLAG_EXTRAS_ALL FLAG_LAW_ENFORCEMENT FLAG_EMERGENCY_SERVICE FLAG_NO_RESPRAY FLAG_DONT_SPAWN_IN_CARGEN FLAG_HAS_INTERIOR_EXTRAS FLAG_REPORT_CRIME_IF_STANDING_ON</flags>
|
||||
<type>VEHICLE_TYPE_CAR</type>
|
||||
<plateType>VPT_FRONT_AND_BACK_PLATES</plateType>
|
||||
<dashboardType>VDT_FEROCI</dashboardType>
|
||||
<vehicleClass>VC_EMERGENCY</vehicleClass>
|
||||
<wheelType>VWT_SUV</wheelType>
|
||||
<trailers>
|
||||
<Item>boattrailer</Item>
|
||||
<Item>trailersmall</Item>
|
||||
</trailers>
|
||||
<additionalTrailers>
|
||||
<Item>trailersmall2</Item>
|
||||
</additionalTrailers>
|
||||
<drivers />
|
||||
<extraIncludes />
|
||||
<doorsWithCollisionWhenClosed />
|
||||
<driveableDoors />
|
||||
<bumpersNeedToCollideWithMap value="false" />
|
||||
<needsRopeTexture value="false" />
|
||||
<requiredExtras />
|
||||
<rewards />
|
||||
<cinematicPartCamera>
|
||||
<Item>WHEEL_FRONT_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_FRONT_LEFT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_LEFT_CAMERA</Item>
|
||||
</cinematicPartCamera>
|
||||
<NmBraceOverrideSet />
|
||||
<buoyancySphereOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<buoyancySphereSizeScale value="1.000000" />
|
||||
<pOverrideRagdollThreshold type="NULL" />
|
||||
<firstPersonDrivebyData>
|
||||
<Item>RANGER_CAVALCADE_FRONT_LEFT</Item>
|
||||
<Item>RANGER_FRONT_RIGHT</Item>
|
||||
<Item>RANGER_PRANGER_REAR_LEFT</Item>
|
||||
<Item>RANGER_PRANGER_REAR_RIGHT</Item>
|
||||
</firstPersonDrivebyData>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
<txdRelationships>
|
||||
<Item>
|
||||
<parent>vehicles_feroci_interior</parent>
|
||||
<child>f250</child>
|
||||
</Item>
|
||||
</txdRelationships>
|
||||
</CVehicleModelInfo__InitDataList>
|
||||
Binary file not shown.
@@ -0,0 +1,16 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
|
||||
|
||||
files {
|
||||
'vehicles.meta',
|
||||
'carvariations.meta',
|
||||
'carcols.meta',
|
||||
'handling.meta',
|
||||
'vehiclelayouts.meta',
|
||||
}
|
||||
|
||||
data_file 'HANDLING_FILE' 'handling.meta'
|
||||
data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta'
|
||||
@@ -0,0 +1,758 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfoVarGlobal>
|
||||
<Sirens>
|
||||
<Item>
|
||||
<id value="3520"/> <!-- 2022 Batt Fire Expedition By Ferious Development August 2022 -->
|
||||
<name>fire22exp</name>
|
||||
<timeMultiplier value="1.00000000"/>
|
||||
<lightFalloffMax value="125.00000000"/>
|
||||
<lightFalloffExponent value="125.00000000"/>
|
||||
<lightInnerConeAngle value="2.29061000"/>
|
||||
<lightOuterConeAngle value="70.00000000"/>
|
||||
<lightOffset value="0.00000000"/>
|
||||
<textureName>VehicleLight_sirenlight</textureName>
|
||||
<sequencerBpm value="700"/>
|
||||
<leftHeadLight>
|
||||
<sequencer value="0"/>
|
||||
</leftHeadLight>
|
||||
<rightHeadLight>
|
||||
<sequencer value="0"/>
|
||||
</rightHeadLight>
|
||||
<leftTailLight>
|
||||
<sequencer value="0"/>
|
||||
</leftTailLight>
|
||||
<rightTailLight>
|
||||
<sequencer value="0"/>
|
||||
</rightTailLight>
|
||||
<leftHeadLightMultiples value="1"/>
|
||||
<rightHeadLightMultiples value="1"/>
|
||||
<leftTailLightMultiples value="2"/>
|
||||
<rightTailLightMultiples value="2"/>
|
||||
<useRealLights value="true"/>
|
||||
<sirens>
|
||||
<Item> <!--Siren 1-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2169016448"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2169016448"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 2-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1109534016"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1109534016"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 3-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="742916128"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="742916128"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 4-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="303204378"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="303204378"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 5-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="608718944"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="608718944"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 6-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1217417605"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1217417605"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 7-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4042322160"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="4042322160"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 8-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="252645135"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="252645135"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 9-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1109534016"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1109534016"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="5.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 10-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1112151050"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1112151050"/>
|
||||
<multiples value="3"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="5.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 11-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2718510096"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2718510096"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 12-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212432930"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1212432930"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 13-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2694901796"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2694901796"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 14-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="168429441"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="168429441"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 15-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFF0000"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 16-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284142597 "/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="2284142597 "/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFF00"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 17-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="3841997120"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="3841997120"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="true"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFF00"/>
|
||||
<intensity value="0.50000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 18-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="7503901"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="3.14159265"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="7503901"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="0.00000000"/>
|
||||
<size value="0.00000000"/>
|
||||
<pull value="0.00000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFF00"/>
|
||||
<intensity value="1.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 19-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="false"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="22937950"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="1.10000000"/>
|
||||
<pull value="0.10000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="5.00000000"/>
|
||||
<lightGroup value="0"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="false"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
<Item> <!--Siren 20-->
|
||||
<rotation>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1577147905"/>
|
||||
<multiples value="1"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</rotation>
|
||||
<flashiness>
|
||||
<delta value="0.00000000"/>
|
||||
<start value="0.00000000"/>
|
||||
<speed value="0.00000000"/>
|
||||
<sequencer value="1577147905"/>
|
||||
<multiples value="2"/>
|
||||
<direction value="false"/>
|
||||
<syncToBpm value="true"/>
|
||||
</flashiness>
|
||||
<corona>
|
||||
<intensity value="50.00000000"/>
|
||||
<size value="0.50000000"/>
|
||||
<pull value="0.02000000"/>
|
||||
<faceCamera value="false"/>
|
||||
</corona>
|
||||
<color value="0xFFFFFFFF"/>
|
||||
<intensity value="5.00000000"/>
|
||||
<lightGroup value="1"/>
|
||||
<rotate value="false"/>
|
||||
<scale value="true"/>
|
||||
<scaleFactor value="100"/>
|
||||
<flash value="true"/>
|
||||
<light value="true"/>
|
||||
<spotLight value="true"/>
|
||||
<castShadows value="true"/>
|
||||
</Item>
|
||||
</sirens>
|
||||
</Item>
|
||||
</Sirens>
|
||||
|
||||
|
||||
</CVehicleModelInfoVarGlobal>
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- 2022 Batt Fire Expedition By Ferious Development August 2022 -->
|
||||
<CVehicleModelInfoVariation>
|
||||
<variationData>
|
||||
<Item>
|
||||
<modelName>fire22exp</modelName>
|
||||
<colors>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
134
|
||||
131
|
||||
0
|
||||
27
|
||||
0
|
||||
0
|
||||
</indices>
|
||||
</Item>
|
||||
</colors>
|
||||
<windowsWithExposedEdges/>
|
||||
<plateProbabilities>
|
||||
<Probabilities>
|
||||
<Item>
|
||||
<Name>Police guv plate</Name>
|
||||
<Value value="100"/>
|
||||
</Item>
|
||||
</Probabilities>
|
||||
</plateProbabilities>
|
||||
<lightSettings value="1"/>
|
||||
<sirenSettings value="3520"/>
|
||||
</Item>
|
||||
</variationData>
|
||||
</CVehicleModelInfoVariation>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- 2022 Batt Fire Expedition By Ferious Development August 2022 -->
|
||||
<CHandlingDataMgr>
|
||||
<HandlingData>
|
||||
<Item type="CHandlingData">
|
||||
<handlingName>fire22exp</handlingName>
|
||||
<fMass value="2400.000000" />
|
||||
<fInitialDragCoeff value="8.500000" />
|
||||
<fPercentSubmerged value="85.000000" />
|
||||
<vecCentreOfMassOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<vecInertiaMultiplier x="1.200000" y="1.600000" z="2.000000" />
|
||||
<fDriveBiasFront value="0.500000" />
|
||||
<nInitialDriveGears value="6" />
|
||||
<fInitialDriveForce value="0.190000" />
|
||||
<fDriveInertia value="1.000000" />
|
||||
<fClutchChangeRateScaleUpShift value="1.300000" />
|
||||
<fClutchChangeRateScaleDownShift value="1.300000" />
|
||||
<fInitialDriveMaxFlatVel value="140.000000" />
|
||||
<fBrakeForce value="0.900000" />
|
||||
<fBrakeBiasFront value="0.500000" />
|
||||
<fHandBrakeForce value="0.600000" />
|
||||
<fSteeringLock value="40.000000" />
|
||||
<fTractionCurveMax value="2.150000" />
|
||||
<fTractionCurveMin value="1.850000" />
|
||||
<fTractionCurveLateral value="18.500000" />
|
||||
<fTractionSpringDeltaMax value="0.130000" />
|
||||
<fLowSpeedTractionLossMult value="1.500000" />
|
||||
<fCamberStiffnesss value="0.000000" />
|
||||
<fTractionBiasFront value="0.500000" />
|
||||
<fTractionLossMult value="0.800000" />
|
||||
<fSuspensionForce value="2.800000" />
|
||||
<fSuspensionCompDamp value="1.400000" />
|
||||
<fSuspensionReboundDamp value="3.000000" />
|
||||
<fSuspensionUpperLimit value="0.100000" />
|
||||
<fSuspensionLowerLimit value="-0.120000" />
|
||||
<fSuspensionRaise value="0.000000" />
|
||||
<fSuspensionBiasFront value="0.510000" />
|
||||
<fAntiRollBarForce value="0.400000" />
|
||||
<fAntiRollBarBiasFront value="0.530000" />
|
||||
<fRollCentreHeightFront value="0.290000" />
|
||||
<fRollCentreHeightRear value="0.300000" />
|
||||
<fCollisionDamageMult value="1.000000" />
|
||||
<fWeaponDamageMult value="1.000000" />
|
||||
<fDeformationDamageMult value="1.000000" />
|
||||
<fEngineDamageMult value="1.600000" />
|
||||
<fPetrolTankVolume value="65.000000" />
|
||||
<fOilVolume value="5.000000" />
|
||||
<fSeatOffsetDistX value="0.000000" />
|
||||
<fSeatOffsetDistY value="0.000000" />
|
||||
<fSeatOffsetDistZ value="0.000000" />
|
||||
<nMonetaryValue value="50000" />
|
||||
<strModelFlags>440010</strModelFlags>
|
||||
<strHandlingFlags>0</strHandlingFlags>
|
||||
<strDamageFlags>0</strDamageFlags>
|
||||
<AIHandling>AVERAGE</AIHandling>
|
||||
<SubHandlingData>
|
||||
<Item type="CCarHandlingData">
|
||||
<fBackEndPopUpCarImpulseMult value="0.100000" />
|
||||
<fBackEndPopUpBuildingImpulseMult value="0.030000" />
|
||||
<fBackEndPopUpMaxDeltaSpeed value="0.600000" />
|
||||
</Item>
|
||||
<Item type="NULL" />
|
||||
<Item type="NULL" />
|
||||
</SubHandlingData>
|
||||
</Item>
|
||||
</HandlingData>
|
||||
</CHandlingDataMgr>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,138 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfo__InitDataList> <!-- 2022 Batt Fire Expedition By Ferious Development August 2022 -->
|
||||
<residentTxd>vehshare</residentTxd>
|
||||
<residentAnims />
|
||||
<InitDatas>
|
||||
<Item>
|
||||
<modelName>fire22exp</modelName>
|
||||
<txdName>fire22exp</txdName>
|
||||
<handlingId>fire22exp</handlingId>
|
||||
<gameName>Expedition</gameName>
|
||||
<vehicleMakeName>FORD</vehicleMakeName>
|
||||
<expressionDictName>null</expressionDictName>
|
||||
<expressionName>null</expressionName>
|
||||
<animConvRoofDictName>null</animConvRoofDictName>
|
||||
<animConvRoofName>null</animConvRoofName>
|
||||
<animConvRoofWindowsAffected />
|
||||
<ptfxAssetName>null</ptfxAssetName>
|
||||
<audioNameHash>LANDSTALKER</audioNameHash>
|
||||
<layout>LAYOUT_STANDARD</layout>
|
||||
<coverBoundOffsets>GRESLEY_COVER_OFFSET_INFO</coverBoundOffsets>
|
||||
<explosionInfo>EXPLOSION_INFO_DEFAULT</explosionInfo>
|
||||
<scenarioLayout />
|
||||
<cameraName>DEFAULT_FOLLOW_VEHICLE_CAMERA</cameraName>
|
||||
<aimCameraName>DEFAULT_THIRD_PERSON_VEHICLE_AIM_CAMERA</aimCameraName>
|
||||
<bonnetCameraName>VEHICLE_BONNET_CAMERA_MID_HIGH</bonnetCameraName>
|
||||
<povCameraName>DEFAULT_POV_CAMERA</povCameraName>
|
||||
<FirstPersonDriveByIKOffset x="0.000000" y="-0.055000" z="-0.015000" />
|
||||
<FirstPersonDriveByUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByIKOffset x="0.035000" y="-0.080000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByPassengerIKOffset x="-0.120000" y="-0.120000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByRearLeftIKOffset x="0.000000" y="0.020000" z="0.000000" />
|
||||
<FirstPersonProjectileDriveByRearRightIKOffset x="0.000000" y="0.020000" z="0.000000" />
|
||||
<FirstPersonDriveByLeftPassengerIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerIKOffset x="0.000000" y="-0.055000" z="-0.035000" />
|
||||
<FirstPersonDriveByRightRearPassengerIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByLeftPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonMobilePhoneOffset x="0.143000" y="0.236000" z="0.545000" />
|
||||
<FirstPersonPassengerMobilePhoneOffset x="0.136000" y="0.223000" z="0.425000" />
|
||||
<FirstPersonMobilePhoneSeatIKOffset>
|
||||
<Item>
|
||||
<Offset x="0.136000" y="0.116000" z="0.455000" />
|
||||
<SeatIndex value="2" />
|
||||
</Item>
|
||||
<Item>
|
||||
<Offset x="0.136000" y="0.116000" z="0.455000" />
|
||||
<SeatIndex value="3" />
|
||||
</Item>
|
||||
</FirstPersonMobilePhoneSeatIKOffset>
|
||||
<PovCameraOffset x="0.000000" y="-0.200000" z="0.600000" />
|
||||
<PovCameraVerticalAdjustmentForRollCage value="0.000000" />
|
||||
<PovPassengerCameraOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<PovRearPassengerCameraOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<vfxInfoName>VFXVEHICLEINFO_CAR_GENERIC</vfxInfoName>
|
||||
<shouldUseCinematicViewMode value="true" />
|
||||
<shouldCameraTransitionOnClimbUpDown value="false" />
|
||||
<shouldCameraIgnoreExiting value="false" />
|
||||
<AllowPretendOccupants value="true" />
|
||||
<AllowJoyriding value="true" />
|
||||
<AllowSundayDriving value="true" />
|
||||
<AllowBodyColorMapping value="true" />
|
||||
<wheelScale value="0.339000" />
|
||||
<wheelScaleRear value="0.339000" />
|
||||
<dirtLevelMin value="0.000000" />
|
||||
<dirtLevelMax value="0.550000" />
|
||||
<envEffScaleMin value="0.000000" />
|
||||
<envEffScaleMax value="1.000000" />
|
||||
<envEffScaleMin2 value="0.000000" />
|
||||
<envEffScaleMax2 value="1.000000" />
|
||||
<damageMapScale value="0.600000" />
|
||||
<damageOffsetScale value="1.000000" />
|
||||
<diffuseTint value="0x00FFFFFF" />
|
||||
<steerWheelMult value="1.000000" />
|
||||
<HDTextureDist value="5.000000" />
|
||||
<lodDistances content="float_array">
|
||||
15.000000
|
||||
30.000000
|
||||
70.000000
|
||||
140.000000
|
||||
500.000000
|
||||
500.000000
|
||||
</lodDistances>
|
||||
<minSeatHeight value="0.928" />
|
||||
<identicalModelSpawnDistance value="20" />
|
||||
<maxNumOfSameColor value="10" />
|
||||
<defaultBodyHealth value="1000.000000" />
|
||||
<pretendOccupantsScale value="1.000000" />
|
||||
<visibleSpawnDistScale value="1.000000" />
|
||||
<trackerPathWidth value="2.000000" />
|
||||
<weaponForceMult value="1.000000" />
|
||||
<frequency value="100" />
|
||||
<swankness>SWANKNESS_3</swankness>
|
||||
<maxNum value="999" />
|
||||
<flags>FLAG_ATTACH_TRAILER_ON_HIGHWAY FLAG_ATTACH_TRAILER_IN_CITY FLAG_HAS_LIVERY FLAG_EXTRAS_STRONG FLAG_EXTRAS_REQUIRE FLAG_LAW_ENFORCEMENT FLAG_EMERGENCY_SERVICE FLAG_HAS_INTERIOR_EXTRAS FLAG_DONT_SPAWN_AS_AMBIENT FLAG_DONT_SPAWN_IN_CARGEN FLAG_NO_RESPRAY</flags>
|
||||
<type>VEHICLE_TYPE_CAR</type>
|
||||
<plateType>VPT_BACK_PLATES</plateType>
|
||||
<dashboardType>VDT_FEROCI</dashboardType>
|
||||
<vehicleClass>VC_EMERGENCY</vehicleClass>
|
||||
<wheelType>VWT_SUV</wheelType>
|
||||
<trailers />
|
||||
<additionalTrailers />
|
||||
<drivers />
|
||||
<extraIncludes>
|
||||
<Item>EXTRA_1</Item>
|
||||
</extraIncludes>
|
||||
<doorsWithCollisionWhenClosed />
|
||||
<driveableDoors />
|
||||
<bumpersNeedToCollideWithMap value="true" />
|
||||
<needsRopeTexture value="false" />
|
||||
<requiredExtras>
|
||||
<Item>EXTRA_1</Item>
|
||||
</requiredExtras>
|
||||
<rewards />
|
||||
<cinematicPartCamera>
|
||||
<Item>WHEEL_FRONT_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_FRONT_LEFT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_RIGHT_CAMERA</Item>
|
||||
<Item>WHEEL_REAR_LEFT_CAMERA</Item>
|
||||
</cinematicPartCamera>
|
||||
<NmBraceOverrideSet>Truck</NmBraceOverrideSet>
|
||||
<buoyancySphereOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<buoyancySphereSizeScale value="1.000000" />
|
||||
<pOverrideRagdollThreshold type="NULL" />
|
||||
<firstPersonDrivebyData>
|
||||
<Item>STD_DILETTANTE_FRONT_LEFT</Item>
|
||||
<Item>STD_DILETTANTE_FRONT_RIGHT</Item>
|
||||
<Item>STD_BALLER_REAR_LEFT</Item>
|
||||
<Item>STD_BALLER_REAR_RIGHT</Item>
|
||||
</firstPersonDrivebyData>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
<txdRelationships>
|
||||
<Item>
|
||||
<parent>vehicles_bob_brown_interior</parent>
|
||||
<child>22expxl</child>
|
||||
</Item>
|
||||
</txdRelationships>
|
||||
</CVehicleModelInfo__InitDataList>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,32 @@
|
||||
<!-- FOR A MORE READABLE DOCUMENTATION, GO TO https://docs.nights-software.com/resources/ers/#creating-ers-callouts -->
|
||||
# Callout-Creator-Pack
|
||||
|
||||
This pack includes an example of how to create a callout.
|
||||
|
||||
██████╗░███████╗░█████╗░██████╗░ ███╗░░░███╗███████╗
|
||||
██╔══██╗██╔════╝██╔══██╗██╔══██╗ ████╗░████║██╔════╝
|
||||
██████╔╝█████╗░░███████║██║░░██║ ██╔████╔██║█████╗░░
|
||||
██╔══██╗██╔══╝░░██╔══██║██║░░██║ ██║╚██╔╝██║██╔══╝░░
|
||||
██║░░██║███████╗██║░░██║██████╔╝ ██║░╚═╝░██║███████╗
|
||||
╚═╝░░╚═╝╚══════╝╚═╝░░╚═╝╚═════╝░ ╚═╝░░░░░╚═╝╚══════╝
|
||||
|
||||
> **Note:** Nights Software does not provide ticket support for building callouts. Read the documentation instead. This option is made to provide skilled developers the freedom to build their own callouts.
|
||||
|
||||
## How to Build Callouts
|
||||
|
||||
1. **Nights Software has created a Callout Creator Pack to help you create your own callouts. This pack includes an example callout and a documentation on how to create your own callouts.**
|
||||
- [Download the free Callout Creator Pack here](https://store.nights-software.com/package/6374594).
|
||||
|
||||
## Task List for creating one callout
|
||||
- [x] **Task 1**
|
||||
- Enter the `night_ers/callouts/plugins/` folder and copy an existing `.lua` callout file or paste in a newly created callout file.
|
||||
- [x] **Task 2**
|
||||
- Rename the file to your desired callout name.
|
||||
- [x] **Task 3**
|
||||
- Adjust the config, client and server code (all of them) within your new file to your liking.
|
||||
- [x] **Task 4**
|
||||
- Test the callout and make sure it works as intended by restarting the script and spawning the callout afterwards.
|
||||
|
||||
## How to use ERS functions
|
||||
|
||||
Find all functions used in callouts in the [Nights Software ERS Documentation](https://docs.nights-software.com/resources/ers/#creating-ers-callouts)
|
||||
@@ -0,0 +1,108 @@
|
||||
--============================== BUILD CALLOUTS =================================--
|
||||
|
||||
function ERS_BuildCallout(pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
local plyPed = PlayerPedId()
|
||||
Config.Callouts[calloutDataClient.calloutId].client(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
end
|
||||
|
||||
--================ Open source functions (Edit these if you like.) =================--
|
||||
|
||||
function ERS_SetRandomDamageToVehicle(vehicle)
|
||||
ERS_RequestNetControlForEntity(vehicle)
|
||||
if DoesEntityExist(vehicle) then
|
||||
SetVehicleBodyHealth(vehicle, math.random(0, 1000) + 0.0)
|
||||
SetVehicleEngineHealth(vehicle, math.random(0, 1000) + 0.0)
|
||||
|
||||
-- Burst random tires
|
||||
for i = 0, GetVehicleNumberOfWheels(vehicle) - 1 do
|
||||
if math.random(100) < 10 then -- 10% chance to burst each tire
|
||||
SetVehicleTyreBurst(vehicle, i, true, 1000.0)
|
||||
end
|
||||
end
|
||||
|
||||
-- Apply visual damage
|
||||
for i = 0, 5 do -- Randomly damage some parts of the vehicle
|
||||
if math.random(100) < 70 then -- 70% chance to apply damage to each part
|
||||
SetVehicleDamage(vehicle, 0.5 * i, 0.5 * i, 0.5 * i, 500.0, 100.0, true)
|
||||
end
|
||||
end
|
||||
else
|
||||
if Config.Debug then
|
||||
print("Vehicle does not exist.")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function ERS_CreateFlareAtCoordinate(coords)
|
||||
AddExplosion(coords.x, coords.y, coords.z-1.0, 22, 1.0, true, false, 1.0)
|
||||
end
|
||||
|
||||
function ERS_GivePedParachute(ped) -- Does not work on every ped.
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
|
||||
if not DoesEntityExist(ped) then
|
||||
if Config.Debug then
|
||||
print("Ped does not exist.")
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
local weaponHash = GetHashKey("GADGET_PARACHUTE")
|
||||
GiveWeaponToPed(ped, weaponHash, 1, false, true)
|
||||
|
||||
-- This sets the ped's parachute as visible if applicable to the model
|
||||
SetPedComponentVariation(ped, 5, 8, 0, 2)
|
||||
end
|
||||
|
||||
function ERS_SelectRandomPartyMusic()
|
||||
local files = {
|
||||
"party1",
|
||||
"party2",
|
||||
"party3",
|
||||
}
|
||||
local soundFile = files[math.random(#files)]
|
||||
if Config.Debug then
|
||||
print("Selected party music file: "..soundFile)
|
||||
end
|
||||
return soundFile
|
||||
end
|
||||
|
||||
function ERS_CreateTemporaryBlipForEntities(entityList, timeoutInMs)
|
||||
if Config.ShowBlipsForEntitiesOnCallouts then
|
||||
local blipList = {}
|
||||
local blip = nil
|
||||
for index, entityNetId in pairs(entityList) do
|
||||
local ent = NetworkGetEntityFromNetworkId(entityNetId)
|
||||
ERS_RequestNetControlForEntity(ent)
|
||||
if DoesEntityExist(ent) then
|
||||
blip = AddBlipForEntity(ent)
|
||||
SetBlipSprite(blip, Config.CalloutEntityBlipSprite)
|
||||
SetBlipColour(blip, Config.CalloutEntityBlipColour)
|
||||
SetBlipScale(blip, Config.CalloutEntityBlipScale)
|
||||
SetBlipFlashes(blip, false)
|
||||
-- SetBlipShowCone(blip, true)
|
||||
table.insert(blipList, blip)
|
||||
else
|
||||
if Config.Debug then
|
||||
print("Could not find entity with entityNetId "..entityNetId)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Citizen.SetTimeout(timeoutInMs, function()
|
||||
for index, blipId in ipairs(blipList) do
|
||||
if DoesBlipExist(blipId) then
|
||||
RemoveBlip(blipId)
|
||||
else
|
||||
if Config.Debug then
|
||||
print("Could not find blip with blipId "..blipId)
|
||||
end
|
||||
end
|
||||
end
|
||||
end)
|
||||
else
|
||||
if Config.Debug then
|
||||
print("Showing blips for entities on callouts is disabled. The script will not create a blip for any entity.")
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,79 @@
|
||||
--============================== BUILD CALLOUTS =================================--
|
||||
|
||||
local BuildCalloutQueue = {}
|
||||
local processingBuildCalloutQueue = false
|
||||
|
||||
RegisterServerEvent(Config.EventPrefix..':buildCallout')
|
||||
AddEventHandler(Config.EventPrefix..':buildCallout', function(calloutData)
|
||||
local src = source
|
||||
table.insert(BuildCalloutQueue, {src = src, calloutData = calloutData})
|
||||
processBuildCalloutQueue()
|
||||
end)
|
||||
|
||||
function processBuildCalloutQueue()
|
||||
if processingBuildCalloutQueue or #BuildCalloutQueue == 0 then
|
||||
return
|
||||
end
|
||||
|
||||
processingBuildCalloutQueue = true
|
||||
|
||||
local request = table.remove(BuildCalloutQueue, 1)
|
||||
local src = request.src
|
||||
local calloutData = request.calloutData
|
||||
local calloutBuilt = false
|
||||
local pedList = {}
|
||||
local vehicleList = {}
|
||||
local objectList = {}
|
||||
local propList = {}
|
||||
local playersList = {}
|
||||
local fireList = {}
|
||||
local smokeList = {}
|
||||
|
||||
DebugPrint("Attempting to build callout: "..calloutData.CalloutName)
|
||||
calloutBuilt = Config.Callouts[calloutData.calloutId].server(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
-- Check if callout was built
|
||||
if calloutBuilt then
|
||||
ERS_InsertEntitiesIntoCalloutList(src, pedList, vehicleList, objectList, fireList, smokeList)
|
||||
|
||||
QueueUpdateRequest(function(success)
|
||||
if success then
|
||||
DebugPrint("[processBuildCalloutQueue] Update completed successfully.")
|
||||
|
||||
-- Update callout UI for the owner & attached players of the callout
|
||||
DebugPrint("[processBuildCalloutQueue] Updating callout user interface for hostId "..src)
|
||||
TriggerClientEvent(Config.EventPrefix..':updateCalloutUserInterface', src, src)
|
||||
|
||||
for index, callout in ipairs(ActiveCalloutsList) do
|
||||
if callout.hostId == src then
|
||||
for i, userServerId in pairs(callout.playersList) do
|
||||
DebugPrint("[processBuildCalloutQueue] Updating callout user interface for attached playerId "..userServerId)
|
||||
TriggerClientEvent(Config.EventPrefix..':updateCalloutUserInterface', userServerId, src)
|
||||
end
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
TriggerClientEvent(Config.EventPrefix..':startCallout', src, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutData)
|
||||
|
||||
DebugPrint("Successfully built callout: "..calloutData.CalloutName)
|
||||
else
|
||||
DebugPrint("[processBuildCalloutQueue] Update failed or was skipped.")
|
||||
end
|
||||
end)
|
||||
else
|
||||
local message = Config.Messages[Config.Language].ServerCouldNotBuildCalloutError
|
||||
TriggerClientEvent(Config.EventPrefix..':notificationMessage', src, message)
|
||||
print("^1ERROR^7 It is possible you forgot to return true at the end of your callout server function OR:")
|
||||
print("^1ERROR^7 None of the enabled callouts could be built, please make sure you have at least 1 callout enabled.")
|
||||
end
|
||||
|
||||
Citizen.SetTimeout(1000, function()
|
||||
processingBuildCalloutQueue = false
|
||||
processBuildCalloutQueue()
|
||||
end)
|
||||
end
|
||||
|
||||
--================ Open source functions =================--
|
||||
|
||||
--
|
||||
@@ -0,0 +1,99 @@
|
||||
Config.Callouts["abandoned_vehicle"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Abandoned vehicle",
|
||||
CalloutDescriptions = {
|
||||
"Investigate a vehicle left in a deserted area; check for any distressed occupants or suspicious items.",
|
||||
"Alert: abandoned car found near a construction site; ensure it is not obstructing any operations or posing a hazard.",
|
||||
"Units required: car discovered with doors open and no one around; examine the scene for any signs of foul play.",
|
||||
"Notice: vehicle parked in an unusual spot for an extended period; verify it is not a stolen or abandoned car.",
|
||||
"Alert: report of a vehicle left in a school zone; determine if it poses any danger to children and staff.",
|
||||
"Incident reported: vehicle found with the engine running but no driver in sight; ensure it is secure and investigate.",
|
||||
"Respond to a situation involving a car left on train tracks; coordinate with transportation authorities to prevent accidents.",
|
||||
"Situation alert: vehicle discovered with hazardous materials warning signs; prioritize safety and coordinate with hazmat teams.",
|
||||
"Alert: car abandoned in a flood-prone area; assess the risk of it being swept away and causing damage.",
|
||||
"Response needed: suspicious vehicle found near a high-security facility; check for any potential threats or security breaches.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Tow",
|
||||
policeRequired = false,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = true,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(482.5813, -902.2799, 35.9722),
|
||||
[2] = vector3(-498.6677, 6267.7412, 11.3615),
|
||||
[3] = vector3(-742.7029, 5812.6357, 17.4803),
|
||||
[4] = vector3(-767.0907, 5543.6484, 33.4922),
|
||||
[5] = vector3(-916.5244, 5250.4307, 83.9764),
|
||||
[6] = vector3(-525.5445, 4948.1494, 147.3998),
|
||||
[7] = vector3(151.7183, 4416.7876, 75.6445),
|
||||
[8] = vector3(1466.3269, 4531.2056, 52.0130),
|
||||
[9] = vector3(1504.0210, 3749.1111, 34.0672),
|
||||
[10] = vector3(1547.0118, 3635.0022, 34.4262),
|
||||
[11] = vector3(1986.4946, 3661.6140, 33.5053),
|
||||
[12] = vector3(2458.8081, 3812.0923, 40.1474),
|
||||
[13] = vector3(2672.1116, 3534.7649, 51.9782),
|
||||
[14] = vector3(2568.6899, 2890.6724, 39.7117),
|
||||
[15] = vector3(1522.8920, 787.9393, 77.4461),
|
||||
[16] = vector3(1123.0111, 258.1617, 80.8556),
|
||||
[17] = vector3(1019.5189, -698.3103, 56.8416),
|
||||
[18] = vector3(1167.9501, -1548.5294, 34.6922),
|
||||
[19] = vector3(1112.2905, -2524.5283, 32.4943),
|
||||
[20] = vector3(599.6377, -2757.5508, 6.0598),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
for index, vehNetId in pairs(vehicleList) do
|
||||
local veh = NetToVeh(vehNetId)
|
||||
if DoesEntityExist(veh) then
|
||||
ERS_RequestNetControlForEntity(veh)
|
||||
ERS_SetRandomDamageToVehicle(veh)
|
||||
|
||||
for i = 0, 7 do -- Tire indices range from 0 to 7
|
||||
if math.random(100) < 75 then
|
||||
SetVehicleTyreBurst(veh, i, true, 1000.0)
|
||||
end
|
||||
end
|
||||
|
||||
local numDoors = GetNumberOfVehicleDoors(veh)
|
||||
for i = 0, numDoors - 1 do
|
||||
if math.random(100) < 50 then
|
||||
SetVehicleDoorOpen(veh, i, false, false)
|
||||
end
|
||||
end
|
||||
|
||||
local randomDirtLevel = math.random(0, 15)
|
||||
SetVehicleDirtLevel(veh, randomDirtLevel+.0)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(vehicleList, 15000)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
-- Build vehicle
|
||||
local vehModel = ERS_GetRandomModel(Config.randomVehicles)
|
||||
local vehType = "automobile"
|
||||
local vehCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local vehHeading = math.random(360)
|
||||
local vehNetId = ERS_CreateVehicle(vehModel, vehType, vehCoords, vehHeading)
|
||||
local vehicle = NetworkGetEntityFromNetworkId(vehNetId)
|
||||
table.insert(vehicleList, vehNetId)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
Config.Callouts["aircraft_hard_landing"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Potential hard landing (Aircraft)",
|
||||
CalloutDescriptions = {
|
||||
"Emergency responders are required to mitigate the aftermath of a potential aircraft crash.",
|
||||
"Authorities report an aircraft in distress, demanding immediate intervention to ensure safety.",
|
||||
"Aircraft emergency reported, necessitating urgent action to minimize further damage.",
|
||||
"Critical situation with an aircraft in trouble; additional units are needed for support.",
|
||||
"Immediate response needed to address an aircraft facing imminent danger.",
|
||||
"An aircraft is in jeopardy, posing a severe threat; reinforcements are necessary to avert disaster.",
|
||||
"Emergency crews are requesting backup to assist in managing an aircraft emergency and prevent its escalation.",
|
||||
"An urgent call for help has been issued to handle an aircraft emergency and ensure safety.",
|
||||
"Responders are on the scene of an aircraft emergency and need extra support to stabilize the situation.",
|
||||
"A serious emergency involving an aircraft demands swift action to prevent a catastrophic outcome.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Ambulance, Fire.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = true,
|
||||
fireRequired = true,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(776.0710, -2065.0103, 29.3829),
|
||||
-- [2] = vector3(2278.6301, 2969.2185, 46.5811),
|
||||
-- [3] = vector3(2840.2234, 1553.8225, 24.5741),
|
||||
-- [4] = vector3(2821.8545, 1511.8513, 24.7242),
|
||||
-- [5] = vector3(2458.3921, 1457.0712, 36.2040),
|
||||
-- [6] = vector3(1127.5670, -2489.8242, 33.3611),
|
||||
-- [7] = vector3(233.3477, 6399.8403, 31.6335),
|
||||
-- [8] = vector3(1346.0159, 6383.4556, 33.4101),
|
||||
-- [9] = vector3(2050.1416, 3683.3496, 34.5879),
|
||||
-- [10] = vector3(683.1802, 120.5065, 80.7545),
|
||||
|
||||
-- Add more to 40
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
|
||||
local aircraft
|
||||
|
||||
for index, vehNetId in pairs(vehicleList) do
|
||||
local veh = NetToVeh(vehNetId)
|
||||
if DoesEntityExist(veh) then
|
||||
ERS_RequestNetControlForEntity(veh)
|
||||
aircraft = veh
|
||||
SetVehicleEngineOn(aircraft, true, true, false)
|
||||
end
|
||||
end
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
|
||||
if index == 1 then
|
||||
ERS_ApplyBloodToPed(ped)
|
||||
|
||||
-- Specify the destination coordinates
|
||||
local destinationX = calloutDataClient.Coordinates.x
|
||||
local destinationY = calloutDataClient.Coordinates.y
|
||||
local destinationZ = calloutDataClient.Coordinates.z
|
||||
|
||||
-- Set other parameters for the plane mission
|
||||
local missionFlag = 17 -- This can vary based on your requirements
|
||||
local angularDrag = 0.0 -- Adjust as needed
|
||||
local unk = 0 -- Unknown parameter, usually set to 0
|
||||
local targetHeading = 0.0 -- Heading angle to face when reaching the destination
|
||||
local maxZ = 250.0 -- Maximum altitude
|
||||
local minZ = 0.0 -- Minimum altitude
|
||||
|
||||
TaskPlaneMission(ped, aircraft, 0, 0, destinationX, destinationY, destinationZ, missionFlag, angularDrag, unk, targetHeading, maxZ, minZ)
|
||||
else
|
||||
ERS_ApplyBloodToPed(ped)
|
||||
|
||||
local chance = math.random(100)
|
||||
if chance > 50 then
|
||||
TaskLeaveAnyVehicle(ped)
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
else
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(vehicleList, 15000)
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
-- Build vehicle
|
||||
local vehModel = ERS_GetRandomModel(Config.randomPlanes)
|
||||
local vehType = "plane"
|
||||
local vehCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z+150)
|
||||
local vehHeading = math.random(360)
|
||||
local vehNetId = ERS_CreateVehicle(vehModel, vehType, vehCoords, vehHeading)
|
||||
local vehicle = NetworkGetEntityFromNetworkId(vehNetId)
|
||||
table.insert(vehicleList, vehNetId)
|
||||
|
||||
-- Build pilot
|
||||
local pedModel = "s_m_m_pilot_01"
|
||||
local pedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z+150)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
SetPedIntoVehicle(ped, vehicle, -1)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
-- Build passengers
|
||||
for seatIndex = 0, 5 do -- seats planes
|
||||
if GetPedInVehicleSeat(vehicle, seatIndex) == 0 then
|
||||
local passengerPedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local passengerPedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z+150)
|
||||
local passengerPedHeading = math.random(360)
|
||||
local passengerPedNetId = ERS_CreatePed(passengerPedModel, passengerPedCoords, passengerPedHeading)
|
||||
local passengerPed = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
SetPedIntoVehicle(passengerPed, vehicle, seatIndex)
|
||||
table.insert(pedList, passengerPedNetId)
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,136 @@
|
||||
Config.Callouts["airport_fire"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Fire at an airport",
|
||||
CalloutDescriptions = {
|
||||
"A fire has broken out at the airport, requiring immediate intervention from fire services.",
|
||||
"Emergency teams are needed to extinguish a fire at the airport.",
|
||||
"Authorities report an airport fire threatening nearby structures, necessitating urgent action.",
|
||||
"A large fire has erupted at the airport, and additional firefighting units are needed to contain it.",
|
||||
"Immediate response required to an airport fire endangering surrounding areas.",
|
||||
"A fire at the airport is escalating, and reinforcements are needed to assist local fire services.",
|
||||
"Fire crews are requesting backup to control a severe fire at the airport.",
|
||||
"An urgent call for assistance has been made to deal with an airport fire spreading towards nearby properties.",
|
||||
"Responders are on the scene of an airport fire and require additional support to prevent further damage.",
|
||||
"A significant fire at the airport demands immediate intervention to protect lives and property.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Fire.",
|
||||
policeRequired = false,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = true,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(1740.46, 3327.01, 41.22),
|
||||
[2] = vector3(1746.42, 3306.86, 41.22),
|
||||
[3] = vector3(1725.30, 3294.12, 41.22),
|
||||
[4] = vector3(1722.81, 3320.40, 41.22),
|
||||
[5] = vector3(1697.10, 3289.78, 41.15),
|
||||
[6] = vector3(1693.23, 3293.00, 41.15),
|
||||
[7] = vector3(2143.53, 4785.09, 40.97),
|
||||
[8] = vector3(2139.51, 4772.66, 41.00),
|
||||
[9] = vector3(2132.91, 4771.54, 40.97),
|
||||
[10] = vector3(-1482.70, -3253.20, 13.95),
|
||||
[11] = vector3(-1348.19, -3286.84, 13.94),
|
||||
[12] = vector3(-1282.99, -3333.97, 14.14),
|
||||
[13] = vector3(-1265.18, -3424.46, 14.14),
|
||||
[14] = vector3(-1119.58, -3487.74, 14.14),
|
||||
[15] = vector3(-1136.13, -3520.39, 14.14),
|
||||
[16] = vector3(-1916.21, -2994.46, 13.94),
|
||||
[17] = vector3(-1785.29, -2761.26, 13.94),
|
||||
[18] = vector3(-948.39, -2930.32, 13.94),
|
||||
[19] = vector3(-925.56, -3041.93, 13.95),
|
||||
[20] = vector3(-938.65, -2800.90, 13.97),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
|
||||
local vehicle
|
||||
for index, vehNetId in pairs(vehicleList) do
|
||||
local veh = NetToVeh(vehNetId)
|
||||
if DoesEntityExist(veh) then
|
||||
vehicle = veh
|
||||
ERS_RequestNetControlForEntity(vehicle)
|
||||
ERS_SetRandomDamageToVehicle(vehicle)
|
||||
SetVehicleBodyHealth(vehicle, 0)
|
||||
SetVehicleEngineHealth(vehicle, 0)
|
||||
end
|
||||
end
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
TaskTurnPedToFaceEntity(ped, vehicle, -1)
|
||||
Wait(1000)
|
||||
local scenario = ERS_SelectRandomBystanderScenario()
|
||||
TaskStartScenarioInPlace(ped, scenario, 0, true)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(vehicleList, 15000)
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 20
|
||||
|
||||
if UsingSmartFires then
|
||||
-- Full version
|
||||
local fireSize = Config.RandomLargeFireOrSmokeSize[math.random(#Config.RandomLargeFireOrSmokeSize)]
|
||||
local fireType = Config.AllFireTypes[math.random(#Config.AllFireTypes)]
|
||||
local fireId = exports['SmartFires']:CreateFire(vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z-0.5), fireSize, fireType)
|
||||
DebugPrint("Created fire with ID: "..fireId)
|
||||
table.insert(fireList, fireId)
|
||||
else
|
||||
-- Lite version
|
||||
local fireSize = Config.RandomLargeFireOrSmokeSize[math.random(#Config.RandomLargeFireOrSmokeSize)]
|
||||
local fireType = "normal"
|
||||
local fireId = exports['SmartFiresLite']:CreateFire(vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z-0.5), fireSize, fireType)
|
||||
DebugPrint("Created fire with SmartFiresLite with ID: "..fireId)
|
||||
table.insert(fireList, fireId)
|
||||
end
|
||||
|
||||
-- Build vehicle
|
||||
local vehModel = ERS_GetRandomModel(Config.randomAirportVehicles)
|
||||
local vehType = "automobile"
|
||||
local vehCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local vehHeading = math.random(360)
|
||||
local vehNetId = ERS_CreateVehicle(vehModel, vehType, vehCoords, vehHeading)
|
||||
local vehicle = NetworkGetEntityFromNetworkId(vehNetId)
|
||||
table.insert(vehicleList, vehNetId)
|
||||
|
||||
|
||||
-- Build bystander(s)
|
||||
local randomAmountOfBystanders = math.random(3)
|
||||
for i = 1, randomAmountOfBystanders do
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
|
||||
local pedModel = ERS_GetRandomModel(Config.randomAirportPeds)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
Config.Callouts["airport_tresspass"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Trespassing at the airport",
|
||||
CalloutDescriptions = {
|
||||
"Respond to a report of trespassing at the airport; locate and apprehend the individual.",
|
||||
"Alert: unauthorized person on airport property; deploy units to secure the area and ensure safety.",
|
||||
"Units needed: report of trespassing at the airport; focus on locating the trespasser and assessing any potential threats.",
|
||||
"Notice: trespassing incident at the airport reported; act promptly to control the situation and prevent disruptions.",
|
||||
"Alert: report of unauthorized entry at the airport; intervention needed to ensure safety and remove the trespasser.",
|
||||
"Incident reported: trespassing at the airport; take action to investigate and enforce security protocols.",
|
||||
"Respond to a situation involving unauthorized entry at the airport; prioritize security and coordinate with airport authorities.",
|
||||
"Situation alert: trespassing in progress at the airport; secure the area and apprehend the individual.",
|
||||
"Alert: report of unauthorized presence at the airport; respond swiftly to address the situation and ensure safety.",
|
||||
"Response needed: trespassing at the airport; secure the area, locate the individual, and enforce security measures.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-1360.23, -2220.66, 13.94),
|
||||
[2] = vector3(-1760.41, -2858.64, 15.13),
|
||||
[3] = vector3(-1427.77, -3142.13, 13.93),
|
||||
[4] = vector3(-909.73, -3190.05, 13.94),
|
||||
[5] = vector3(-1097.16, -2911.45, 13.94),
|
||||
[6] = vector3(-1261.79, -2780.29, 13.94),
|
||||
[7] = vector3(-1193.88, -2543.16, 13.94),
|
||||
[8] = vector3(-989.01, -2375.95, 13.94),
|
||||
[9] = vector3(-1157.98, -2742.06, 13.95),
|
||||
[10] = vector3(1701.78, 3266.63, 41.14),
|
||||
[11] = vector3(1054.73, 3072.05, 41.51),
|
||||
[12] = vector3(1425.41, 3088.31, 40.88),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 100, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 10000,-- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 15000,-- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "flee", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
ERS_SetPedToFleeFromPlayer(ped)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 15
|
||||
|
||||
-- Build peds
|
||||
local randomAmountOfSuspects = math.random(4)
|
||||
for i = 1, randomAmountOfSuspects do
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z+1.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
Config.Callouts[#Config.Callouts+1] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Person Attacked by a dog",
|
||||
CalloutDescriptions = {
|
||||
"Respond immediately to a report of a person being attacked by a dog; secure the area and provide medical assistance.",
|
||||
"Emergency alert: person under attack by a dog; deploy units to manage the situation and ensure the victim's safety.",
|
||||
"Urgent response required: individual attacked by a dog; focus on providing aid and controlling the animal.",
|
||||
"Critical situation: dog attack on a person; act swiftly to assist the victim and contain the dog.",
|
||||
"Alert: report of a dog attacking a person; immediate intervention needed to ensure safety and provide help.",
|
||||
"Dog attack incident: urgent action required to secure the area and assist the injured person.",
|
||||
"Handle an emergency involving a dog attack on a person; prioritize the victim's safety and coordinate with animal control.",
|
||||
"Emergency situation: person being attacked by a dog; ensure the area is safe and provide necessary assistance.",
|
||||
"Urgent alert: individual attacked by a dog; respond quickly to manage the scene and help the victim.",
|
||||
"Critical response needed: dog attack on a person; secure the area, assist the injured, and control the animal.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Ambulance.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = true,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-1016.5710, -1280.4180, 6.1974),
|
||||
[2] = vector3(-101.3984, -446.6597, 35.9044),
|
||||
[3] = vector3(-137.1873, -433.7953, 34.1178),
|
||||
[4] = vector3(-353.7449, -992.6283, 29.2972),
|
||||
[5] = vector3(1141.6670, -643.3297, 56.7655),
|
||||
[6] = vector3(627.6739, -103.4051, 73.4221),
|
||||
[7] = vector3(428.5690, 6507.1108, 28.0105),
|
||||
[8] = vector3(-556.6186, 6240.6646, 8.9844),
|
||||
[9] = vector3(-1007.1041, 5032.3906, 179.1540),
|
||||
[10] = vector3(-1678.2893, 4244.0859, 78.9253),
|
||||
[11] = vector3(-1438.6696, 828.6215, 184.3856),
|
||||
[12] = vector3(-526.8943, 285.0213, 83.0205),
|
||||
[13] = vector3(-603.4233, -1307.2855, 12.2781),
|
||||
[14] = vector3(252.2129, -1993.1140, 20.3490),
|
||||
[15] = vector3(170.6650, -1825.4866, 28.1628),
|
||||
[16] = vector3(376.8596, -1836.3699, 28.3408),
|
||||
[17] = vector3(830.2681, -795.4789, 26.2482),
|
||||
[18] = vector3(707.4484, -863.0705, 23.8887),
|
||||
[19] = vector3(349.2947, -1140.6333, 29.3828),
|
||||
[20] = vector3(182.8992, -1222.9861, 29.3061),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 100, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 10000,-- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 15000,-- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "attack",-- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
local dogPedList = {}
|
||||
local targetPed
|
||||
local dogPed
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
|
||||
if ERS_IsPedAnAnimalPed(ped) then
|
||||
dogPed = ped
|
||||
table.insert(dogPedList, PedToNet(dogPed))
|
||||
else
|
||||
targetPed = ped
|
||||
ERS_ApplyBloodToPed(ped)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if DoesEntityExist(dogPed) and DoesEntityExist(targetPed) then
|
||||
TaskCombatPed(dogPed, targetPed, 0, 16)
|
||||
|
||||
local chance = math.random(100)
|
||||
if chance > 50 then
|
||||
-- Ped fights back
|
||||
TaskCombatPed(targetPed, dogPed, 0, 16)
|
||||
else
|
||||
-- Ped flees
|
||||
ERS_ClearPedTasksAndBlockEvents(targetPed)
|
||||
TaskReactAndFleePed(targetPed, dogPed)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, dogPedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 5
|
||||
|
||||
-- Build ped
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z+1.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
-- Build dog
|
||||
coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local pedModel = ERS_GetRandomModel(Config.randomDogs)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z+1.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
Config.Callouts["animal_fire"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Animal on fire",
|
||||
CalloutDescriptions = {
|
||||
"An animal has caught fire, requiring immediate intervention to save it.",
|
||||
"Emergency teams are needed to extinguish flames on a burning animal.",
|
||||
"Authorities report an animal on fire, necessitating urgent action to prevent further harm.",
|
||||
"A critical situation with an animal ablaze; additional units are needed to assist.",
|
||||
"Immediate response required to rescue an animal engulfed in flames.",
|
||||
"An animal is burning, posing a severe threat; reinforcements are needed to handle the situation.",
|
||||
"Emergency crews are requesting backup to save an animal on fire and prevent the flames from spreading.",
|
||||
"An urgent call for help has been issued to deal with an animal caught in a fire.",
|
||||
"Responders are on the scene of an animal on fire and need extra support to control the flames.",
|
||||
"A serious emergency involving an animal on fire demands swift action to protect both the animal and nearby areas.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Fire.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = true,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(1425.4738, -2374.1970, 67.0164),
|
||||
-- [2] = vector3(2278.6301, 2969.2185, 46.5811),
|
||||
-- [3] = vector3(2840.2234, 1553.8225, 24.5741),
|
||||
-- [4] = vector3(2821.8545, 1511.8513, 24.7242),
|
||||
-- [5] = vector3(2458.3921, 1457.0712, 36.2040),
|
||||
-- [6] = vector3(1127.5670, -2489.8242, 33.3611),
|
||||
-- [7] = vector3(233.3477, 6399.8403, 31.6335),
|
||||
-- [8] = vector3(1346.0159, 6383.4556, 33.4101),
|
||||
-- [9] = vector3(2050.1416, 3683.3496, 34.5879),
|
||||
-- [10] = vector3(683.1802, 120.5065, 80.7545),
|
||||
|
||||
-- Add more to 40
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 70, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 10, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 1000, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 5000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "flee", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
|
||||
local victim
|
||||
local suspectPedList = {}
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
if ERS_IsPedAnAnimalPed(ped) then
|
||||
victim = ped
|
||||
StartEntityFire(victim)
|
||||
ERS_ApplyBloodToPed(victim)
|
||||
elseif index == 2 then
|
||||
table.insert(suspectPedList, PedToNet(ped))
|
||||
ERS_SetPedToFleeFromPlayer(ped)
|
||||
else
|
||||
TaskTurnPedToFaceEntity(ped, victim, -1)
|
||||
Wait(1000)
|
||||
local scenario = ERS_SelectRandomBystanderScenario()
|
||||
TaskStartScenarioInPlace(ped, scenario, 0, true)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, suspectPedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 10
|
||||
|
||||
-- Build fire
|
||||
if UsingSmartFires then
|
||||
-- Full version
|
||||
local fireSize = Config.RandomSmallFireOrSmokeSize[math.random(#Config.RandomSmallFireOrSmokeSize)]
|
||||
local fireType = Config.NormalFireTypes[math.random(#Config.NormalFireTypes)]
|
||||
local fireId = exports['SmartFires']:CreateFire(vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z-0.5), fireSize, fireType)
|
||||
DebugPrint("Created fire with ID: "..fireId)
|
||||
table.insert(fireList, fireId)
|
||||
else
|
||||
-- Lite version
|
||||
local fireSize = Config.RandomSmallFireOrSmokeSize[math.random(#Config.RandomSmallFireOrSmokeSize)]
|
||||
local fireType = "normal"
|
||||
local fireId = exports['SmartFiresLite']:CreateFire(vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z-0.5), fireSize, fireType)
|
||||
DebugPrint("Created fire with SmartFiresLite with ID: "..fireId)
|
||||
table.insert(fireList, fireId)
|
||||
end
|
||||
|
||||
-- Build victim
|
||||
local pedModel = ERS_GetRandomModel(Config.calloutAnimals)
|
||||
local pedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
-- Build suspect & bystander(s)
|
||||
local randomAmountOfBystanders = math.random(3)
|
||||
for i = 1, randomAmountOfBystanders do
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
Config.Callouts["animal_lion_loose"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Lion on the loose",
|
||||
CalloutDescriptions = {
|
||||
"Respond to a report of a lion on the loose; ensure public safety and coordinate with animal control.",
|
||||
"Alert: wild lion spotted in the area; deploy units to contain the animal and protect civilians.",
|
||||
"Units needed: emergency call for a lion on the loose; focus on securing the area and preventing any harm.",
|
||||
"Notice: lion reported roaming freely; act promptly to control the situation and provide assistance.",
|
||||
"Alert: report of a lion on the loose; intervention needed to secure the scene and ensure safety.",
|
||||
"Incident reported: lion sighted in the vicinity; take action to deliver urgent response and support.",
|
||||
"Respond to a situation involving a loose lion; prioritize public safety and coordinate with wildlife experts.",
|
||||
"Situation alert: lion on the loose; provide immediate assistance and ensure the area is secure.",
|
||||
"Alert: report of a lion roaming freely; respond swiftly to address the emergency and offer necessary support.",
|
||||
"Response needed: lion on the loose; ensure public safety, provide aid, and secure the area.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(1934.6595, 3031.3896, 45.7164),
|
||||
[2] = vector3(-214.8435, 1035.7235, 234.5423),
|
||||
[3] = vector3(-466.8387, -1162.0983, 23.6649),
|
||||
[4] = vector3(-2076.1177, -437.1109, 9.8332),
|
||||
[5] = vector3(-2281.7795, 474.2083, 172.9490),
|
||||
[6] = vector3(-2295.1606, 188.0179, 167.6016),
|
||||
[7] = vector3(-2939.5046, 650.9875, 24.1793),
|
||||
[8] = vector3(-3188.0657, 1012.1148, 20.0270),
|
||||
[9] = vector3(-1552.5914, 1392.1687, 125.7523),
|
||||
[10] = vector3(-435.6132, 1137.1411, 325.9044),
|
||||
[11] = vector3(-95.6399, 1867.1407, 198.5176),
|
||||
[12] = vector3(925.4871, 2210.6370, 48.5551),
|
||||
[13] = vector3(1518.1306, 1657.1375, 111.3717),
|
||||
[14] = vector3(1526.4376, 1083.3717, 113.4257),
|
||||
[15] = vector3(2120.0583, 2712.8020, 49.2382),
|
||||
[16] = vector3(2398.5566, 3368.1067, 47.5749),
|
||||
[17] = vector3(2025.1345, 3822.0681, 33.0109),
|
||||
[18] = vector3(1698.8066, 4934.4023, 42.0782),
|
||||
[19] = vector3(2336.7585, 5165.4336, 50.9019),
|
||||
[20] = vector3(-496.6979, 6083.9131, 29.3845),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 100, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 10, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 10000, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 15000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "flee",-- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
TaskReactAndFleePed(ped, plyPed)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 30000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
-- Build lion
|
||||
local AnimalPedModel = "a_c_mtlion"
|
||||
local animalPedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z+1.0)
|
||||
local animalPedHeading = math.random(360)
|
||||
local animalPedNetId = ERS_CreatePed(AnimalPedModel, animalPedCoords, animalPedHeading)
|
||||
local animalPed = NetworkGetEntityFromNetworkId(animalPedNetId)
|
||||
table.insert(pedList, animalPedNetId)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
Config.Callouts["animal_on_road"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Animal Blocking the Road",
|
||||
CalloutDescriptions = {
|
||||
"An unexpected type of animal has appeared on the road, causing a disruption in traffic flow.",
|
||||
"Emergency services have been called to intervene in a situation where an animal is impeding traffic on the road.",
|
||||
"Reports indicate a disturbance on the roadway, with an unidentified creature causing a commotion.",
|
||||
"A peculiar incident has unfolded on the road, requiring immediate attention to ensure public safety.",
|
||||
"Emergency services have been dispatched to address an obstruction on the road, involving an animal.",
|
||||
"A surprising encounter has occurred on the road, with an unknown creature causing a hindrance to traffic.",
|
||||
"Witnesses report an unusual occurrence on the road, with an unidentified animal creating a hazard for motorists.",
|
||||
"An incident has occurred on the road, with an animal posing a potential threat to drivers.",
|
||||
"Emergency services have been alerted to a situation where an unidentified creature is obstructing the roadway.",
|
||||
"Reports suggest an unexpected type of animal on the road, involving an animal that requires immediate assistance.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, animal rescue.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(2080.73, 2626.99, 52.40),
|
||||
[2] = vector3(903.23, 161.76, 74.04),
|
||||
[3] = vector3(1113.25, 417.18, 83.67),
|
||||
[4] = vector3(1543.74, 892.82, 77.47),
|
||||
[5] = vector3(1614.32, 1105.89, 82.08),
|
||||
[6] = vector3(2052.10, 2595.61, 53.69),
|
||||
[7] = vector3(2236.29, 2788.25, 44.15),
|
||||
[8] = vector3(2853.91, 3515.08, 54.34),
|
||||
[9] = vector3(2859.30, 3601.57, 52.95),
|
||||
[10] = vector3(2878.75, 4194.57, 50.14),
|
||||
[11] = vector3(2775.87, 4404.12, 48.96),
|
||||
[12] = vector3(2649.70, 5079.81, 44.83),
|
||||
[13] = vector3(2114.19, 6027.16, 50.92),
|
||||
[14] = vector3(1528.76, 6442.59, 23.29),
|
||||
[15] = vector3(8900.44, 6471.33, 31.35),
|
||||
[16] = vector3(-176.06, 6199.81, 31.19),
|
||||
[17] = vector3(-477.35, 5862.80, 33.60),
|
||||
[18] = vector3(-1189.78, 5261.50, 52.16),
|
||||
[19] = vector3(-2015.21, 4496.73, 57.07),
|
||||
[20] = vector3(-2241.45, 4260.30, 45.70),
|
||||
[21] = vector3(-2474.10, 3637.44, 13.92),
|
||||
[22] = vector3(-2631.86, 2855.54, 16.70),
|
||||
[23] = vector3(-2707.72, 2295.90, 18.40),
|
||||
[24] = vector3(-3096.80, 1315.54, 20.22),
|
||||
[25] = vector3(-2988.84, 374.60, 14.79),
|
||||
[26] = vector3(-2553.09, -164.87, 20.33),
|
||||
[27] = vector3(-2164.92, -343.06, 13.19),
|
||||
[28] = vector3(-1821.37, -608.59, 11.26),
|
||||
[29] = vector3(-926.08, -564.75, 18.87),
|
||||
[30] = vector3(-887.70, -512.39, 21.50),
|
||||
[31] = vector3(-471.13, -528.49, 25.33),
|
||||
[32] = vector3(-146.59, -492.57, 29.13),
|
||||
[33] = vector3(290.05, -522.58, 34.08),
|
||||
[34] = vector3(-739.99, -1160.85, 10.67),
|
||||
[35] = vector3(1112.01, -2084.58, 38.69),
|
||||
[36] = vector3(1012.97, -900.33, 30.53),
|
||||
[37] = vector3(1291.97, -645.74, 67.81),
|
||||
[38] = vector3(1092.31, 758.75, 152.95),
|
||||
[39] = vector3(239.35, 1337.28, 238.19),
|
||||
[40] = vector3(-637.12, 1752.96, 210.16),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
ClearPedTasks(ped)
|
||||
|
||||
if Config.Debug then
|
||||
print("Found animal entity: "..ped)
|
||||
end
|
||||
|
||||
TaskWanderStandard(ped, 10.0, 10)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
--ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 20
|
||||
|
||||
local randomAmountOfAnimals = math.random(1, 8)
|
||||
local randomAnimalPedModel = ERS_GetRandomModel(Config.calloutAnimals)
|
||||
for i = 1, randomAmountOfAnimals do
|
||||
-- Build animals of the same type.
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local animalPedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local animalPedHeading = math.random(360)
|
||||
local animalPedNetId = ERS_CreatePed(randomAnimalPedModel, animalPedCoords, animalPedHeading)
|
||||
local animalPed = NetworkGetEntityFromNetworkId(animalPedNetId)
|
||||
table.insert(pedList, animalPedNetId)
|
||||
end
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
Config.Callouts["animal_on_tracks"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Animal on the train tracks",
|
||||
CalloutDescriptions = {
|
||||
"Investigate reports of an animal on the train tracks; secure the area and ensure safety.",
|
||||
"Alert: dispatch units to remove an animal from the train tracks; prevent potential accidents.",
|
||||
"Units required: respond to reports of an animal on the train tracks and take necessary actions.",
|
||||
"Notice: check reports of an animal obstructing the train tracks; implement safety measures.",
|
||||
"Alert: respond promptly to reports of an animal on the train tracks; prioritize safety and clear the tracks.",
|
||||
"Incident reported: look into reports of an animal on the train tracks to prevent disruptions.",
|
||||
"Investigate reports of an animal on the train tracks; coordinate with relevant authorities for removal.",
|
||||
"Situation alert: address reports of an animal obstructing the train tracks; ensure the area is cleared.",
|
||||
"Alert: handle reports of an animal on the train tracks and follow protocols to ensure safety.",
|
||||
"Response needed: investigate reports of an animal on the train tracks and take appropriate actions to remove it.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(153.18, -2083.33, 17.14),
|
||||
[2] = vector3(272.54, -1867.12, 26.86),
|
||||
[3] = vector3(664.85, -1103.13, 23.69),
|
||||
[4] = vector3(669.08, -1097.25, 23.48),
|
||||
[5] = vector3(669.67, -735.04, 24.08),
|
||||
[6] = vector3(735.63, -524.24, 27.11),
|
||||
[7] = vector3(738.73, -512.96, 27.39),
|
||||
[8] = vector3(1431.49, -967.60, 61.45),
|
||||
[9] = vector3(1573.22, -941.38, 70.74),
|
||||
[10] = vector3(1757.88, -819.74, 88.22),
|
||||
[11] = vector3(1826.75, -767.81, 94.47),
|
||||
[12] = vector3(2079.20, -692.69, 96.97),
|
||||
[13] = vector3(2237.53, -559.26, 96.02),
|
||||
[14] = vector3(2645.90, 130.26, 93.94),
|
||||
[15] = vector3(2672.17, 459.43, 94.66),
|
||||
[16] = vector3(2163.94, 1410.07, 79.75),
|
||||
[17] = vector3(1913.86, 2183.46, 61.62),
|
||||
[18] = vector3(2476.13, 2765.11, 37.96),
|
||||
[19] = vector3(2615.23, 2934.57, 39.95),
|
||||
[20] = vector3(2854.46, 3427.33, 46.75),
|
||||
[21] = vector3(2837.95, 3821.68, 44.12),
|
||||
[22] = vector3(2064.51, 3656.00, 38.55),
|
||||
[23] = vector3(1742.14, 3470.76, 38.84),
|
||||
[24] = vector3(711.45, 3177.26, 42.10),
|
||||
[25] = vector3(-85.88, 3497.44, 53.25),
|
||||
[26] = vector3(-392.81, 3885.08, 76.91),
|
||||
[27] = vector3(-505.23, 5186.76, 89.23),
|
||||
[28] = vector3(-358.47, 5913.59, 45.39),
|
||||
[29] = vector3(-180.77, 6101.54, 31.60),
|
||||
[30] = vector3(99.54, 6310.35, 31.64),
|
||||
[31] = vector3(465.13, 6437.98, 31.85),
|
||||
[32] = vector3(877.99, 6437.00, 32.14),
|
||||
[33] = vector3(1233.69, 6432.33, 31.81),
|
||||
[34] = vector3(1666.08, 6345.36, 43.10),
|
||||
[35] = vector3(2401.34, 5879.92, 60.57),
|
||||
[36] = vector3(2623.79, 5468.85, 62.03),
|
||||
[37] = vector3(2692.14, 5276.94, 62.17),
|
||||
[38] = vector3(2894.65, 4847.27, 63.09),
|
||||
[39] = vector3(3011.50, 4143.03, 58.34),
|
||||
[40] = vector3(2957.92, 3709.76, 54.91),
|
||||
[41] = vector3(2480.69, 2363.09, 36.98),
|
||||
[42] = vector3(2610.93, 1603.51, 28.46),
|
||||
[43] = vector3(669.48, -1056.83, 22.44),
|
||||
[44] = vector3(769.45, -1525.64, 20.49),
|
||||
[45] = vector3(537.58, -2617.92, 12.90),
|
||||
[46] = vector3(217.48, -2524.09, 6.44),
|
||||
[47] = vector3(217.23, -2199.28, 13.34),
|
||||
[48] = vector3(68.30, -2589.99, 6.00),
|
||||
[49] = vector3(221.95, -2728.21, 6.13),
|
||||
[50] = vector3(217.77, -2624.48, 6.37),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
local pos = GetEntityCoords(ped)
|
||||
local randomChance = math.random(100)
|
||||
if randomChance < 50 then
|
||||
SetEntityHealth(ped, 0)
|
||||
else
|
||||
TaskWanderInArea(ped, pos.x, pos.y, pos.z, 10.0, 10000, 10000)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local pedModel = ERS_GetRandomModel(Config.allAnimals)
|
||||
local pedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
Config.Callouts["animal_rat_plague"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Extreme rat plague",
|
||||
CalloutDescriptions = {
|
||||
"Emergency: respond to reports of an extreme rat plague; ensure the safety of residents and contain the infestation.",
|
||||
"Urgent alert: dispatch pest control units to address a severe rat infestation; prevent the spread of disease and damage.",
|
||||
"Critical response required: attend to reports of a rat plague; secure the area and implement extermination measures.",
|
||||
"Notice: check reports of a rat infestation; take immediate action to control the population and protect public health.",
|
||||
"Alert: respond promptly to reports of an extreme rat plague; prioritize the safety of the community and prevent further spread.",
|
||||
"Incident reported: investigate severe rat infestation; coordinate with pest control services to manage the situation effectively.",
|
||||
"Immediate action: address reports of a rat plague; use appropriate methods to eradicate the rats and ensure safety.",
|
||||
"Situation alert: assist with controlling an extreme rat infestation; secure the area and implement necessary measures.",
|
||||
"Emergency response: handle reports of a rat plague and follow protocols to contain and eliminate the infestation.",
|
||||
"Response needed: investigate reports of a severe rat infestation urgently; take appropriate actions to protect public health and safety.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Animal Rescue.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-156.5135, 1941.9556, 195.2362),
|
||||
[2] = vector3(1986.7726, 3050.1509, 47.2151),
|
||||
[3] = vector3(1714.2148, 3695.8870, 34.4959),
|
||||
[4] = vector3(3.2913, -1739.9449, 29.3052),
|
||||
[5] = vector3(-467.1143, -1707.0049, 18.8235),
|
||||
[6] = vector3(-817.2072, -1332.6687, 5.1324),
|
||||
[7] = vector3(-1004.5860, -1460.5331, 4.9887),
|
||||
[8] = vector3(-1121.3344, -1982.2427, 13.1626),
|
||||
[9] = vector3(-806.9633, -1097.7111, 10.6082),
|
||||
[10] = vector3(506.8831, 3111.2585, 40.6679),
|
||||
[11] = vector3(1960.8220, 3770.2551, 32.2001),
|
||||
[12] = vector3(2504.1604, 4080.2524, 38.6310),
|
||||
[13] = vector3(-345.4866, -1563.9071, 25.2083),
|
||||
[14] = vector3(-211.5286, 6287.9878, 31.4894),
|
||||
[15] = vector3(248.5705, 6474.3198, 30.7680),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
local coords = calloutDataClient.Coordinates
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
ClearPedTasks(ped)
|
||||
|
||||
TaskWanderInArea(ped, coords.x, coords.y, coords.z, 20.0, 5000, 10000)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 30000)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 20
|
||||
|
||||
local randomAmountOfAnimals = math.random(25, 50)
|
||||
local randomAnimalPedModel = "a_c_rat"
|
||||
for i = 1, randomAmountOfAnimals do
|
||||
-- Build animals of the same type.
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local animalPedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local animalPedHeading = math.random(360)
|
||||
local animalPedNetId = ERS_CreatePed(randomAnimalPedModel, animalPedCoords, animalPedHeading)
|
||||
local animalPed = NetworkGetEntityFromNetworkId(animalPedNetId)
|
||||
table.insert(pedList, animalPedNetId)
|
||||
end
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
Config.Callouts["animals_escaped"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Escaped farm animals",
|
||||
CalloutDescriptions = {
|
||||
"Emergency: respond to reports of Escaped farm animals; ensure the safety of people and animals in the area.",
|
||||
"Urgent alert: dispatch units to corral Escaped farm animals; prevent them from causing accidents or damage.",
|
||||
"Critical response required: attend to reports of Escaped farm animals; secure the area and prevent them from wandering further.",
|
||||
"Notice: check reports of Escaped farm animals; implement measures to safely return them to their enclosure.",
|
||||
"Alert: respond promptly to reports of Escaped farm animals; prioritize the safety of both the farm animals and the public.",
|
||||
"Incident reported: investigate Escaped farm animals sightings; coordinate with local authorities and farmers to manage the situation.",
|
||||
"Immediate action: address reports of Escaped farm animals; use appropriate methods to round them up and ensure their safety.",
|
||||
"Situation alert: assist with corralling Escaped farm animals; ensure the area is safe and the farm animals are unharmed.",
|
||||
"Emergency response: handle reports of Escaped farm animals and follow protocols to safely capture and return them.",
|
||||
"Response needed: investigate reports of Escaped farm animals urgently; take appropriate actions to prevent harm and secure the animals.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Animal Rescue.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-156.5135, 1941.9556, 195.2362),
|
||||
[2] = vector3(1466.7488, 992.6075, 114.9633),
|
||||
[3] = vector3(1499.7604, 1483.1517, 105.4204),
|
||||
[4] = vector3(1517.8981, 1748.6394, 109.8674),
|
||||
[5] = vector3(235.0015, 2621.3835, 46.2649),
|
||||
[6] = vector3(2559.9636, 4217.8853, 41.0057),
|
||||
[7] = vector3(2681.3750, 4837.1987, 33.4963),
|
||||
[8] = vector3(2231.8330, 5172.8379, 59.2566),
|
||||
[9] = vector3(-458.1834, 5884.9546, 32.9752),
|
||||
[10] = vector3(1484.6155, 4508.0635, 52.6044),
|
||||
[11] = vector3(2527.8472, 4688.5127, 33.6504),
|
||||
[12] = vector3(2695.5269, 4217.3936, 43.5792),
|
||||
[13] = vector3(641.7357, 1772.3513, 194.4283),
|
||||
[14] = vector3(-62.1715, 1856.3737, 200.6837),
|
||||
[15] = vector3(-2177.8003, -385.5692, 13.2969),
|
||||
[16] = vector3(1981.4440, 4971.6411, 42.1647),
|
||||
[17] = vector3(2244.5688, 5189.4077, 60.3518),
|
||||
[18] = vector3(2838.7747, 4742.7949, 47.9336),
|
||||
[19] = vector3(2986.2134, 4558.3813, 51.6006),
|
||||
[20] = vector3(895.3198, 294.8879, 87.3205),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 0, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 0, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 1000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "none", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_unarmed",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
local coords = calloutDataClient.Coordinates
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
ClearPedTasks(ped)
|
||||
TaskWanderInArea(ped, coords.x, coords.y, coords.z, 20.0, 5000, 10000)
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 30000)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 20
|
||||
|
||||
local randomAmountOfAnimals = math.random(1, 8)
|
||||
local randomAnimalPedModel = ERS_GetRandomModel(Config.cattleAnimals)
|
||||
for i = 1, randomAmountOfAnimals do
|
||||
-- Build animals of the same type.
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local animalPedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local animalPedHeading = math.random(360)
|
||||
local animalPedNetId = ERS_CreatePed(randomAnimalPedModel, animalPedCoords, animalPedHeading)
|
||||
local animalPed = NetworkGetEntityFromNetworkId(animalPedNetId)
|
||||
table.insert(pedList, animalPedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,148 @@
|
||||
Config.Callouts["animals_under_attack"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Farm animals under attack by wild animals",
|
||||
CalloutDescriptions = {
|
||||
"Emergency: respond immediately to reports of Farm animals being attacked by wild animals; ensure the safety of the herd.",
|
||||
"Urgent alert: dispatch units to the location where Farm animals are under attack; protect the livestock and manage the threat.",
|
||||
"Critical response: attend to an incident involving Farm animals being attacked; prioritize safeguarding the animals and mitigating the danger.",
|
||||
"Immediate action: investigate reports of wild animals attacking Farm animals; secure the area and protect the herd.",
|
||||
"Alert: respond to a situation where Farm animals are being attacked by animals; take necessary measures to ensure their safety.",
|
||||
"Incident reported: handle reports of livestock under attack; coordinate with local authorities and animal control to manage the situation.",
|
||||
"Situation alert: assist in protecting Farm animals from an animal attack; ensure the safety of the livestock and contain the threat.",
|
||||
"Emergency response: deal with an incident of Farm animals being attacked by wild animals; follow protocols to protect the herd and secure the area.",
|
||||
"Immediate intervention: respond to reports of Farm animals under attack; prioritize the safety of the animals and take necessary actions.",
|
||||
"Response needed: investigate an incident where Farm animals are being attacked by animals; take appropriate measures to protect the livestock and manage the situation.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-156.5135, 1941.9556, 195.2362),
|
||||
[2] = vector3(1466.7488, 992.6075, 114.9633),
|
||||
[3] = vector3(1499.7604, 1483.1517, 105.4204),
|
||||
[4] = vector3(1517.8981, 1748.6394, 109.8674),
|
||||
[5] = vector3(235.0015, 2621.3835, 46.2649),
|
||||
[6] = vector3(2559.9636, 4217.8853, 41.0057),
|
||||
[7] = vector3(2681.3750, 4837.1987, 33.4963),
|
||||
[8] = vector3(2231.8330, 5172.8379, 59.2566),
|
||||
[9] = vector3(-458.1834, 5884.9546, 32.9752),
|
||||
[10] = vector3(1484.6155, 4508.0635, 52.6044),
|
||||
[11] = vector3(2527.8472, 4688.5127, 33.6504),
|
||||
[12] = vector3(2695.5269, 4217.3936, 43.5792),
|
||||
[13] = vector3(641.7357, 1772.3513, 194.4283),
|
||||
[14] = vector3(-62.1715, 1856.3737, 200.6837),
|
||||
[15] = vector3(-2177.8003, -385.5692, 13.2969),
|
||||
[16] = vector3(1981.4440, 4971.6411, 42.1647),
|
||||
[17] = vector3(2244.5688, 5189.4077, 60.3518),
|
||||
[18] = vector3(2838.7747, 4742.7949, 47.9336),
|
||||
[19] = vector3(2986.2134, 4558.3813, 51.6006),
|
||||
[20] = vector3(895.3198, 294.8879, 87.3205),
|
||||
[21] = vector3(2254.5916, 4926.0264, 40.9015),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 25, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 50, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 10, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 100, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 15000, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 30000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "attack", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_knife",
|
||||
"weapon_bat",
|
||||
"weapon_hammer",
|
||||
"weapon_wrench",
|
||||
"weapon_pistol",
|
||||
"weapon_microsmg",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
local wildAnimal
|
||||
local cattlePedsList = {}
|
||||
local coords = calloutDataClient.Coordinates
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
if index == 1 then
|
||||
wildAnimal = ped
|
||||
|
||||
local function StartAnimalAttackLoop(wildAnimal, cattlePedsList)
|
||||
Citizen.CreateThread(function()
|
||||
ERS_RequestNetControlForEntity(wildAnimal)
|
||||
while not IsPedDeadOrDying(wildAnimal, true) and #cattlePedsList > 0 do
|
||||
for i = #cattlePedsList, 1, -1 do
|
||||
if IsPedDeadOrDying(NetToPed(cattlePedsList[i]), true) then
|
||||
table.remove(cattlePedsList, i)
|
||||
end
|
||||
end
|
||||
|
||||
if #cattlePedsList > 0 then
|
||||
local targetPed = NetToPed(cattlePedsList[math.random(#cattlePedsList)])
|
||||
TaskCombatPed(wildAnimal, targetPed, 0, 16)
|
||||
end
|
||||
|
||||
Citizen.Wait(2500)
|
||||
end
|
||||
|
||||
if IsPedDeadOrDying(wildAnimal, true) then
|
||||
if Config.Debug then
|
||||
print("The wild animal is dead or deleted...")
|
||||
end
|
||||
else
|
||||
if Config.Debug then
|
||||
print("All cattle animals are dead or deleted, stopped loop and tasking to attack player.")
|
||||
end
|
||||
TaskCombatPed(wildAnimal, plyPed, 0, 16)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
Citizen.SetTimeout(1000, function()
|
||||
StartAnimalAttackLoop(wildAnimal, cattlePedsList)
|
||||
end)
|
||||
else
|
||||
table.insert(cattlePedsList, pedNetId)
|
||||
TaskWanderInArea(ped, coords.x, coords.y, coords.z, 40.0, 5000, 10000)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 20
|
||||
|
||||
-- Build wild animal
|
||||
local randomWildAnimalPedModel = ERS_GetRandomModel(Config.wildAnimals)
|
||||
local wildAnimalPedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local wildAnimalPedHeading = math.random(360)
|
||||
local wildAnimalPedNetId = ERS_CreatePed(randomWildAnimalPedModel, wildAnimalPedCoords, wildAnimalPedHeading)
|
||||
local wildAnimalPed = NetworkGetEntityFromNetworkId(wildAnimalPedNetId)
|
||||
table.insert(pedList, wildAnimalPedNetId)
|
||||
|
||||
-- Build cattle animals of the same type.
|
||||
local randomAmountOfAnimals = math.random(1, 8)
|
||||
local randomAnimalPedModel = ERS_GetRandomModel(Config.cattleAnimals)
|
||||
for i = 1, randomAmountOfAnimals do
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local animalPedCoords = vector3(coords.x, coords.y, coords.z)
|
||||
local animalPedHeading = math.random(360)
|
||||
local animalPedNetId = ERS_CreatePed(randomAnimalPedModel, animalPedCoords, animalPedHeading)
|
||||
local animalPed = NetworkGetEntityFromNetworkId(animalPedNetId)
|
||||
table.insert(pedList, animalPedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,139 @@
|
||||
Config.Callouts["anpr_alert"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "ANPR Alert",
|
||||
CalloutDescriptions = {
|
||||
"An ANPR alert has been reported, requiring immediate police response.",
|
||||
"Emergency assistance is needed to manage and address an ANPR alert.",
|
||||
"Reports indicate an ANPR alert, necessitating urgent police intervention.",
|
||||
"An ANPR alert has been reported, and backup is needed to maintain order and ensure safety.",
|
||||
"Emergency services have been requested to address an ANPR alert.",
|
||||
"A request for assistance has been made by officers responding to an ANPR alert.",
|
||||
"Additional units are required to support officers managing an ANPR alert.",
|
||||
"Emergency backup is required to assist officers in handling an ANPR alert.",
|
||||
"A call for assistance has been issued by officers dealing with an ANPR alert.",
|
||||
"Reports suggest a situation where immediate police assistance is crucial to manage and address an ANPR alert.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = false,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(252.45, -991.78, 29.15),
|
||||
[2] = vector3(442.52, -544.01, 28.28),
|
||||
[3] = vector3(676.55, -219.48, 44.30),
|
||||
[4] = vector3(365.68, -108.07, 66.25),
|
||||
[5] = vector3(-817.47, -126.34, 37.52),
|
||||
[6] = vector3(-309.89, -15.74, 48.35),
|
||||
[7] = vector3(-2354.87, -285.41, 14.13),
|
||||
[8] = vector3(-1000.02, -602.68, 18.39),
|
||||
[9] = vector3(199.27, 6574.46, 31.80),
|
||||
[10] = vector3(1391.85, 6500.05, 19.76),
|
||||
[11] = vector3(1723.97, 6387.80, 34.03),
|
||||
[12] = vector3(2553.27, 5194.82, 50.78),
|
||||
[13] = vector3(-136.89, 6224.72, 31.34),
|
||||
[14] = vector3(2600.13, 5119.80, 44.78),
|
||||
[15] = vector3(2446.42, 4009.14, 37.06),
|
||||
[16] = vector3(1831.28, 3258.06, 44.10),
|
||||
[17] = vector3(1977.05, 3081.72, 47.07),
|
||||
[18] = vector3(2558.44, 2702.69, 41.77),
|
||||
[19] = vector3(2854.36, 2819.08, 53.09),
|
||||
[20] = vector3(254.91, 2848.28, 43.59),
|
||||
[21] = vector3(85.82, 3595.74, 39.75),
|
||||
[22] = vector3(-821.40, 5761.81, 5.54),
|
||||
[23] = vector3(-300.05, 6057.30, 31.35),
|
||||
[24] = vector3(1244.97, -383.18, 69.11),
|
||||
[25] = vector3(-862.40, -656.93, 27.53),
|
||||
[26] = vector3(-866.07, -939.28, 15.85),
|
||||
[27] = vector3(-188.73, -891.99, 29.34),
|
||||
[28] = vector3(-707.01, -1611.40, 22.79),
|
||||
[29] = vector3(738.92, -2466.61, 20.22),
|
||||
[30] = vector3(1240.60, -2054.46, 44.35),
|
||||
[31] = vector3(1969.42, -921.52, 79.16),
|
||||
[32] = vector3(2454.87, 977.85, 86.22),
|
||||
[33] = vector3(2207.62, 2999.60, 45.54),
|
||||
[34] = vector3(1696.63, 3510.35, 36.47),
|
||||
[35] = vector3(226.92, 2973.63, 42.71),
|
||||
[36] = vector3(-1254.90, 2537.62, 18.12),
|
||||
[37] = vector3(-1785.69, 4736.50, 57.01),
|
||||
[38] = vector3(-303.03, 6231.18, 31.45),
|
||||
[39] = vector3(-54.87, 6311.50, 31.33),
|
||||
[40] = vector3(1940.65, 6254.72, 43.52),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 75, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 25, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 10, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 25, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 10000, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 30000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "flee", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_poolcue",
|
||||
"weapon_golfclub",
|
||||
"weapon_crowbar",
|
||||
"weapon_bat",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
local vehicle
|
||||
|
||||
for index, vehNetId in pairs(vehicleList) do
|
||||
local veh = NetToVeh(vehNetId)
|
||||
if DoesEntityExist(veh) then
|
||||
vehicle = veh
|
||||
ERS_RequestNetControlForEntity(vehicle)
|
||||
else
|
||||
if Config.Debug then
|
||||
print("Could not find vehicle entity.")
|
||||
end
|
||||
end
|
||||
Wait(500)
|
||||
end
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
TaskSetBlockingOfNonTemporaryEvents(ped, true)
|
||||
if not IsPedInAnyVehicle(ped, true) then
|
||||
TaskEnterVehicle(ped, vehicle, 5000, -1, 2.0, 1, 0)
|
||||
Wait(2000)
|
||||
ERS_SetPedToFleeFromPlayer(ped)
|
||||
else
|
||||
ERS_SetPedToFleeFromPlayer(ped)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(vehicleList, 15000)
|
||||
ERS_CreateTemporaryBlipForEntities(pedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, pedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
-- Build vehicle
|
||||
local vehModel = ERS_GetRandomModel(Config.randomVehicles)
|
||||
local vehType = "automobile"
|
||||
local vehCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z)
|
||||
local vehHeading = math.random(360)
|
||||
local vehNetId = ERS_CreateVehicle(vehModel, vehType, vehCoords, vehHeading)
|
||||
local vehicle = NetworkGetEntityFromNetworkId(vehNetId)
|
||||
table.insert(vehicleList, vehNetId)
|
||||
|
||||
-- Build ped
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z + 3.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
SetPedIntoVehicle(ped, vehicle, -1)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
Config.Callouts["armed_robbery"] = {
|
||||
|
||||
Enabled = true,
|
||||
CalloutName = "Reports of an Armed Burglary",
|
||||
CalloutDescriptions = {
|
||||
"Respond to a report of an armed burglary; secure the area and apprehend the suspect.",
|
||||
"Alert: armed burglary in progress; deploy units to the location and ensure public safety.",
|
||||
"Units needed: report of a burglary involving a weapon; focus on securing the scene and detaining the suspect.",
|
||||
"Notice: armed burglary reported; act promptly to control the situation and prevent harm.",
|
||||
"Alert: report of an armed burglary; intervention needed to apprehend the suspect and ensure safety.",
|
||||
"Incident reported: armed burglary; take action to secure the premises and protect bystanders.",
|
||||
"Respond to a situation involving an armed burglary; prioritize public safety and coordinate with law enforcement.",
|
||||
"Situation alert: armed burglary in progress; secure the area and detain the suspect.",
|
||||
"Alert: report of a burglary with a weapon; respond swiftly to address the situation and ensure safety.",
|
||||
"Response needed: armed burglary; secure the area, apprehend the suspect, and restore order.",
|
||||
},
|
||||
CalloutUnitsRequired = {
|
||||
description = "Police, Ambulance.",
|
||||
policeRequired = true,
|
||||
ambulanceRequired = true,
|
||||
fireRequired = false,
|
||||
towRequired = false,
|
||||
},
|
||||
CalloutLocations = {
|
||||
[1] = vector3(-462.7426, -1789.1514, 20.7425),
|
||||
[2] = vector3(-1349.7474, -978.6703, 8.3487),
|
||||
[3] = vector3(-1298.3502, -793.9792, 17.5649),
|
||||
[4] = vector3(-79.0676, -420.0754, 36.9070),
|
||||
[5] = vector3(269.7047, -454.0890, 45.1490),
|
||||
[6] = vector3(384.5264, -330.8739, 46.8860),
|
||||
[7] = vector3(-259.4929, -1608.9178, 31.8465),
|
||||
[8] = vector3(-179.2647, -1740.8966, 30.2026),
|
||||
[9] = vector3(19.5304, -1796.9473, 26.8921),
|
||||
[10] = vector3(182.0713, -1936.4159, 21.0075),
|
||||
[11] = vector3(483.6955, -1976.0867, 24.5434),
|
||||
[12] = vector3(558.0399, -1791.2672, 29.1919),
|
||||
[13] = vector3(791.4307, -2481.0999, 20.9120),
|
||||
[14] = vector3(365.3052, -2552.9727, 6.2214),
|
||||
[15] = vector3(-236.2226, -2470.8672, 6.0014),
|
||||
[16] = vector3(-607.5613, -2315.1016, 13.8226),
|
||||
[17] = vector3(-586.1891, -1164.0364, 22.1743),
|
||||
[18] = vector3(-707.7452, -923.6995, 19.0100),
|
||||
[19] = vector3(-710.3022, -866.9073, 23.3419),
|
||||
[20] = vector3(371.6894, 30.0890, 92.0128),
|
||||
},
|
||||
PedChanceToFleeFromPlayer = 50, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToAttackPlayer = 50, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToSurrender = 20, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedChanceToObtainWeapons = 100, -- Value between 0 and 100 -> Lower is less chance.
|
||||
PedActionMinimumTimeoutInMs = 10000, -- Milliseconds for the minimum timeout time to start the secondary action listed above.
|
||||
PedActionMaximumTimeoutInMs = 15000, -- Milliseconds for the maximum timeout time to start the secondary action. Must be a higher number than the minimum!
|
||||
PedActionOnNoActionFound = "attack", -- When no action of the above options is found. It'll perform this action after the set timeout. Options: "none", "attack", "flee", "surrender"
|
||||
PedWeaponData = { -- The ped will be given one randomly selected weapon (in hand) from these weapons if PedChanceToObtainWeapons passed.
|
||||
"weapon_pistol",
|
||||
},
|
||||
|
||||
client = function(plyPed, pedList, vehicleList, playersList, objectList, propList, fireList, smokeList, calloutDataClient)
|
||||
|
||||
|
||||
local plyGroupHash = GetPedRelationshipGroupHash(plyPed)
|
||||
local retval, suspectGroupHash = AddRelationshipGroup("SUSPECT_GROUP_HASH")
|
||||
local victim
|
||||
local suspectPedList = {}
|
||||
|
||||
for index, pedNetId in pairs(pedList) do
|
||||
local ped = NetToPed(pedNetId)
|
||||
if DoesEntityExist(ped) then
|
||||
ERS_RequestNetControlForEntity(ped)
|
||||
if index == 1 then
|
||||
victim = ped
|
||||
ERS_ClearPedTasksAndBlockEvents(ped)
|
||||
Wait(100)
|
||||
TaskHandsUp(ped, -1, 0, -1, true)
|
||||
else
|
||||
SetPedRelationshipGroupHash(ped, suspectGroupHash)
|
||||
SetEntityCanBeDamagedByRelationshipGroup(ped, false, suspectGroupHash)
|
||||
SetRelationshipBetweenGroups(5, suspectGroupHash, plyGroupHash)
|
||||
SetRelationshipBetweenGroups(5, plyGroupHash, suspectGroupHash)
|
||||
|
||||
ERS_ClearPedTasksAndBlockEvents(ped)
|
||||
ERS_SpawnConfiguredWeaponForPed(ped, calloutDataClient)
|
||||
Wait(100)
|
||||
TaskAimGunAtEntity(ped, victim, -1, false)
|
||||
table.insert(suspectPedList, pedNetId)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ERS_CreateTemporaryBlipForEntities(suspectPedList, 15000)
|
||||
|
||||
ERS_PerformTimedActionOnPed(calloutDataClient, suspectPedList)
|
||||
|
||||
end,
|
||||
server = function(request, src, calloutData, pedList, vehicleList, objectList, propList, playersList, fireList, smokeList)
|
||||
|
||||
local diameter = 15
|
||||
|
||||
-- Build victim
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(calloutData.Coordinates.x, calloutData.Coordinates.y, calloutData.Coordinates.z+1.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
|
||||
-- Build peds
|
||||
local randomAmountOfSuspects = math.random(4)
|
||||
for i = 1, randomAmountOfSuspects do
|
||||
local coords = ERS_GetRandomCoordinateWithinRangeOfCoordinate(calloutData.Coordinates, diameter)
|
||||
local pedModel = ERS_GetRandomModel(Config.randomPeds)
|
||||
local pedCoords = vector3(coords.x, coords.y, coords.z+1.0)
|
||||
local pedHeading = math.random(360)
|
||||
local pedNetId = ERS_CreatePed(pedModel, pedCoords, pedHeading)
|
||||
local ped = NetworkGetEntityFromNetworkId(pedNetId)
|
||||
table.insert(pedList, pedNetId)
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user