diff --git a/resources/21tacouc/Templates/21tac_sign_1.png b/resources/21tacouc/Templates/21tac_sign_1.png new file mode 100644 index 000000000..413dd54e0 Binary files /dev/null and b/resources/21tacouc/Templates/21tac_sign_1.png differ diff --git a/resources/21tacouc/Templates/aomap.png b/resources/21tacouc/Templates/aomap.png new file mode 100644 index 000000000..3ec9b7cd4 Binary files /dev/null and b/resources/21tacouc/Templates/aomap.png differ diff --git a/resources/21tacouc/carcols.meta b/resources/21tacouc/carcols.meta new file mode 100644 index 000000000..12630af3c --- /dev/null +++ b/resources/21tacouc/carcols.meta @@ -0,0 +1,1188 @@ + + + + + + 21tacouc + + + + + + + VehicleLight_sirenlight + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/21tacouc/carvariations.meta b/resources/21tacouc/carvariations.meta new file mode 100644 index 000000000..51b28b8f6 --- /dev/null +++ b/resources/21tacouc/carvariations.meta @@ -0,0 +1,199 @@ + + + + + + + + + + + + + + + + 21tacouc + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 35 + 0 + 0 + 0 + 13 + 17 + + + + + + + + + + + + + + + 0_default_modkit + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/21tacouc/fxmanifest.lua b/resources/21tacouc/fxmanifest.lua new file mode 100644 index 000000000..e75f09ebe --- /dev/null +++ b/resources/21tacouc/fxmanifest.lua @@ -0,0 +1,25 @@ +fx_version 'cerulean' + +game 'gta5' + +description 'Car Packs' + +author 'Ferious Development LLC' + +files { + 'data/**/vehicles.meta', + 'data/**/carcols.meta', + 'data/**/carvariations.meta', + 'data/**/handling.meta', + 'data/**/vehiclelayouts.meta', + 'data/**/dlctext.meta', +} + + +data_file 'handling_file' 'data/**/*handling.meta' +data_file 'vehicle_metadata_file' 'data/**/*vehicles.meta' +data_file 'dlctext_file' 'data/**/*dlctext.meta' +data_file 'carcols_file' 'data/**/*carcols.meta' +data_file 'vehicle_variation_file' 'data/**/*carvariations.meta' +data_file 'vehicle_layouts_file' 'data/**/*vehicleslayouts.meta' + diff --git a/resources/21tacouc/handling.meta b/resources/21tacouc/handling.meta new file mode 100644 index 000000000..a1acd8dbf --- /dev/null +++ b/resources/21tacouc/handling.meta @@ -0,0 +1,67 @@ + + + + + + 21tacouc + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 440010 + 0 + 0 + AVERAGE + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/21tacouc/stream/21tacouc+hi.ytd b/resources/21tacouc/stream/21tacouc+hi.ytd new file mode 100644 index 000000000..9c27c6263 --- /dev/null +++ b/resources/21tacouc/stream/21tacouc+hi.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af7666b467857364c40759da5380bb965ecff1f719469a29e956c40970b763b0 +size 7029672 diff --git a/resources/21tacouc/stream/21tacouc.yft b/resources/21tacouc/stream/21tacouc.yft new file mode 100644 index 000000000..41e93c999 --- /dev/null +++ b/resources/21tacouc/stream/21tacouc.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbbe375bb3f1fb0997ba601421ba816430ef94b7b320805ba37351ee60d95504 +size 8325267 diff --git a/resources/21tacouc/stream/21tacouc.ytd b/resources/21tacouc/stream/21tacouc.ytd new file mode 100644 index 000000000..f33fc9bef --- /dev/null +++ b/resources/21tacouc/stream/21tacouc.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf7f80c4ce630a4dfc4428473c161cbba01fa04393de7dd9bd0eb1fdf025481 +size 6147274 diff --git a/resources/21tacouc/stream/21tacouc_hi.yft b/resources/21tacouc/stream/21tacouc_hi.yft new file mode 100644 index 000000000..a32cb4032 --- /dev/null +++ b/resources/21tacouc/stream/21tacouc_hi.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936b6cd7594df02929f3467699ecaa220e439bd6338ff220e7514d2568b456fd +size 8325194 diff --git a/resources/21tacouc/stream/va_taco_undercover.ycd b/resources/21tacouc/stream/va_taco_undercover.ycd new file mode 100644 index 000000000..c13860a57 Binary files /dev/null and b/resources/21tacouc/stream/va_taco_undercover.ycd differ diff --git a/resources/21tacouc/ulc.lua b/resources/21tacouc/ulc.lua new file mode 100644 index 000000000..68c46a749 --- /dev/null +++ b/resources/21tacouc/ulc.lua @@ -0,0 +1,58 @@ + +--[[ + 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 = {"21tacouc"}, + 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 = "Fog", key = 1, color = "green", extra = 1, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false}, + {label = "Pod Light", key = 2, color = "green", extra = 6, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false}, + {label = "Rear Pod Light", key = 3, color = "green", extra = 8, linkedExtras = {}, oppositeExtras = {}, offExtras = {}, repair = false} + }, + stages = { + useStages = false, + stageKeys = {}, + }, + defaultStages = { + useDefaults = false, + enableKeys = {}, + disableKeys = {} + } +} \ No newline at end of file diff --git a/resources/21tacouc/vehicles.meta b/resources/21tacouc/vehicles.meta new file mode 100644 index 000000000..e59d41d4e --- /dev/null +++ b/resources/21tacouc/vehicles.meta @@ -0,0 +1,151 @@ + + + vehshare + + + + 21tacouc + 21tacouc + 21tacouc + Toyota + Tacoma + null + null + va_taco_undercover + taco_undercover + + null + BISON + LAYOUT_BISON + BISON_COVER_OFFSET_INFO + EXPLOSION_INFO_DEFAULT + + DEFAULT_FOLLOW_VEHICLE_CAMERA + DEFAULT_THIRD_PERSON_VEHICLE_AIM_CAMERA + VEHICLE_BONNET_CAMERA_STANDARD + DEFAULT_POV_CAMERA + + + + + + + + + + + + + + + + + + + + + + + + + + + + VFXVEHICLEINFO_CAR_GENERIC + + + + + + + + + + + + + + + + + + + + + + 1500.000000 + 3000.000000 + 7000.000000 + 14000.000000 + 50000.000000 + 50000.000000 + + + + + + + + + + + SWANKNESS_1 + + FLAG_EXTRAS_STRONG FLAG_HAS_LIVERY FLAG_LAW_ENFORCEMENT FLAG_EMERGENCY_SERVICE FLAG_NO_RESPRAY FLAG_DONT_SPAWN_IN_CARGEN FLAG_HAS_INTERIOR_EXTRAS FLAG_REPORT_CRIME_IF_STANDING_ON + VEHICLE_TYPE_CAR + VPT_FRONT_AND_BACK_PLATES + VDT_FEROCI + VC_EMERGENCY + VWT_SUV + + boattrailer + trailersmall + + + trailersmall2 + + + + S_M_M_AutoShop_01 + + + + S_M_M_AutoShop_02 + + + + S_M_M_Trucker_01 + + + + + + + + + + + + EXTRA_2 + + + + WHEEL_FRONT_RIGHT_CAMERA + WHEEL_FRONT_LEFT_CAMERA + WHEEL_REAR_RIGHT_CAMERA + WHEEL_REAR_LEFT_CAMERA + + Truck + + + + + RANGER_BISON_FRONT_LEFT + VAN_RUMPO_FRONT_RIGHT + RANGER_BISON_REAR_LEFT + RANGER_BISON_REAR_RIGHT + + + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/as350/__resource.lua b/resources/[EGRP-CarPacks]/as350/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/__resource.lua @@ -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' diff --git a/resources/[EGRP-CarPacks]/as350/dlctext.meta b/resources/[EGRP-CarPacks]/as350/dlctext.meta new file mode 100644 index 000000000..22bb4c390 --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/dlctext.meta @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/as350/handling.meta b/resources/[EGRP-CarPacks]/as350/handling.meta new file mode 100644 index 000000000..d6b00f54c --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/handling.meta @@ -0,0 +1,140 @@ + + + + + + as350 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2044000 + 401000 + 20 + AVERAGE + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + HANDLING_TYPE_FLYING + + + + VEHICLE_WEAPON_SEARCHLIGHT + + + + + 0 + 0 + 0 + + + 1.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + 0.000000 + 0.000000 + + + + + + + + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/as350/stream/as350.yft b/resources/[EGRP-CarPacks]/as350/stream/as350.yft new file mode 100644 index 000000000..aa276f25e --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/stream/as350.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e791deb295c52ce6a5d500c89649352d0830c861f92608aeb8a7b41d9865178a +size 6115549 diff --git a/resources/[EGRP-CarPacks]/as350/stream/as350.ytd b/resources/[EGRP-CarPacks]/as350/stream/as350.ytd new file mode 100644 index 000000000..dd6108bda --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/stream/as350.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:289d507d12743279ff11c6eb6daf3983110f160e042b682d0b2a6eb28bf5332b +size 7796824 diff --git a/resources/[EGRP-CarPacks]/as350/stream/as350_hi.yft b/resources/[EGRP-CarPacks]/as350/stream/as350_hi.yft new file mode 100644 index 000000000..97f5970ca --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/stream/as350_hi.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1f1ea13bbe51a530bcb9fa05a43f820fbe3478f0122ad8d441666f54a59c3c7 +size 6001159 diff --git a/resources/[EGRP-CarPacks]/as350/vehicles.meta b/resources/[EGRP-CarPacks]/as350/vehicles.meta new file mode 100644 index 000000000..b5029bc78 --- /dev/null +++ b/resources/[EGRP-CarPacks]/as350/vehicles.meta @@ -0,0 +1,143 @@ + + + vehshare + + + + + as350 + as350 + as350 + AS350 + + null + null + null + null + + null + + LAYOUT_HELI + POLMAV_COVER_OFFSET_INFO + EXPLOSION_INFO_DEFAULT + + FOLLOW_MAVERICK_CAMERA + MAVERICK_AIM_CAMERA + HELI_BONNET_CAMERA + HELI_POV_CAMERA + + + + + + + + + + + + + + + + + + + + + + + + + + + + VFXVEHICLEINFO_HELI_GENERIC + + + + + + + + + + + + + + + + + + + + + + 20.000000 + 35.000000 + 100.000000 + 200.000000 + 1000.000000 + 1000.000000 + + + + + + + + + + + SWANKNESS_4 + + FLAG_NO_BOOT FLAG_HAS_LIVERY FLAG_LAW_ENFORCEMENT FLAG_DRIVER_NO_DRIVE_BY FLAG_NO_RESPRAY FLAG_ALLOWS_RAPPEL FLAG_DONT_SPAWN_IN_CARGEN FLAG_HEADLIGHTS_USE_ACTUAL_BONE_POS FLAG_DONT_SPAWN_AS_AMBIENT FLAG_BLOCK_FROM_ATTRACTOR_SCENARIO FLAG_DONT_TIMESLICE_WHEELS + VEHICLE_TYPE_HELI + VPT_NONE + VDT_MAVERICK + VC_HELICOPTER + VWT_SPORT + + + + + S_M_Y_SWAT_01 + + + + + + + + + + + REWARD_WEAPON_SNIPERRIFLE + REWARD_AMMO_SNIPERRIFLE + REWARD_STAT_WEAPON + + + HELI_REAR_ROTOR_CAMERA + + + + + + + STD_FRONT_LEFT + HELI_FRONT_RIGHT + HELI_LEFT_SIDE_PASSENGER + HELI_RIGHT_SIDE_PASSENGER + + + + + + + vehicles_jet_interior + kj2000 + + + + diff --git a/resources/[EGRP-CarPacks]/aw139/__resource.lua b/resources/[EGRP-CarPacks]/aw139/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/__resource.lua @@ -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' diff --git a/resources/[EGRP-CarPacks]/aw139/aw139_sign_4.dds b/resources/[EGRP-CarPacks]/aw139/aw139_sign_4.dds new file mode 100644 index 000000000..0fade55eb Binary files /dev/null and b/resources/[EGRP-CarPacks]/aw139/aw139_sign_4.dds differ diff --git a/resources/[EGRP-CarPacks]/aw139/carvariations.meta b/resources/[EGRP-CarPacks]/aw139/carvariations.meta new file mode 100644 index 000000000..e5edba86a --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/carvariations.meta @@ -0,0 +1,43 @@ + + + + + + aw139 + + + + 111 + 6 + 6 + 6 + + + + + + + + + + + + + + + 0_default_modkit + + + + + + police guv plate + + + + + + + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/aw139/handling.meta b/resources/[EGRP-CarPacks]/aw139/handling.meta new file mode 100644 index 000000000..1f860615c --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/handling.meta @@ -0,0 +1,139 @@ + + + + + + AW139 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2004000 + 401000 + 20 + AVERAGE + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + HANDLING_TYPE_FLYING + + + + VEHICLE_WEAPON_SEARCHLIGHT + VEHICLE_WEAPON_SEARCHLIGHT + VEHICLE_WEAPON_SEARCHLIGHT + + + 1 + 1 + 0 + + + 15.000000 + 15.000000 + + + -1.500000 + -1.500000 + + + 0.707000 + 0.707000 + + + -1.500000 + -1.500000 + + + 0.707000 + 0.707000 + + + 25.000000 + 25.000000 + + + -1.500000 + -1.500000 + + + + + + + + + + diff --git a/resources/[EGRP-CarPacks]/aw139/stream/aw139.yft b/resources/[EGRP-CarPacks]/aw139/stream/aw139.yft new file mode 100644 index 000000000..4e7e8c125 --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/stream/aw139.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f124a92483fb124f7101130c8ab3481dad639bf0eb32eb8b97c08e864d60f7e4 +size 5312216 diff --git a/resources/[EGRP-CarPacks]/aw139/stream/aw139.ytd b/resources/[EGRP-CarPacks]/aw139/stream/aw139.ytd new file mode 100644 index 000000000..658c41ae3 --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/stream/aw139.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00327fdc23650ca90d8701fd1a08e9452efce366bbb5a95e2626726910092c65 +size 9844437 diff --git a/resources/[EGRP-CarPacks]/aw139/stream/aw139_hi.yft b/resources/[EGRP-CarPacks]/aw139/stream/aw139_hi.yft new file mode 100644 index 000000000..1f1fbfacf --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/stream/aw139_hi.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0e848d02a2daa668de3f1c802784cd5020b8bcaf714e259bf1f5850f47be77 +size 7755680 diff --git a/resources/[EGRP-CarPacks]/aw139/vehicles.meta b/resources/[EGRP-CarPacks]/aw139/vehicles.meta new file mode 100644 index 000000000..a0e446a86 --- /dev/null +++ b/resources/[EGRP-CarPacks]/aw139/vehicles.meta @@ -0,0 +1,122 @@ + + + vehshare + + + + + aw139 + aw139 + aw139 + aw139 + AUGUSTW + null + null + null + null + + null + + LAYOUT_HELI_SWIFT + + SWIFT_COVER_OFFSET_INFO + EXPLOSION_INFO_DEFAULT + + FOLLOW_HELI_CAMERA + HELI_AIM_CAMERA + DEFAULT_VEHICLE_BONNET_CAMERA + HELI_POV_CAMERA + + + + + + + + + + + + VFXVEHICLEINFO_HELI_GENERIC + + + + + + + + + + + + + + + + + + + + + + 20.000000 + 40.000000 + 100.000000 + 200.000000 + 1000.000000 + 1000.000000 + + + + + + + + + + + SWANKNESS_3 + + FLAG_HEADLIGHTS_USE_ACTUAL_BONE_POS FLAG_NO_BOOT FLAG_DRIVER_NO_DRIVE_BY FLAG_HAS_LIVERY FLAG_NO_RESPRAY FLAG_AVERAGE_CAR FLAG_DONT_SPAWN_IN_CARGEN FLAG_DONT_SPAWN_AS_AMBIENT FLAG_DONT_TIMESLICE_WHEELS FLAG_LAW_ENFORCEMENT FLAG_ALLOWS_RAPPEL FLAG_HELICOPTER_WITH_LANDING_GEAR FLAG_HAS_TURRET_SEAT_ON_VEHICLE FLAG_USE_TURRET_RELATIVE_AIM_CALCULATION FLAG_EQUIP_UNARMED_ON_ENTER + VEHICLE_TYPE_HELI + VPT_NONE + VDT_LAZER + VC_HELICOPTER + VWT_SPORT + + + + + s_m_y_uscg_03 + Pilot + + + + + + + + + + + HELI_REAR_ROTOR_CAMERA + + + + + + + STD_FRONT_LEFT + HELI_FRONT_RIGHT + + + + + + + vehicles_jet_interior + AW139 + + + + diff --git a/resources/[EGRP-CarPacks]/firehawk/__resource.lua b/resources/[EGRP-CarPacks]/firehawk/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/__resource.lua @@ -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' diff --git a/resources/[EGRP-CarPacks]/firehawk/dlctext.meta b/resources/[EGRP-CarPacks]/firehawk/dlctext.meta new file mode 100644 index 000000000..22bb4c390 --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/dlctext.meta @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/firehawk/extratitleupdatedata.meta b/resources/[EGRP-CarPacks]/firehawk/extratitleupdatedata.meta new file mode 100644 index 000000000..fdce40fec --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/extratitleupdatedata.meta @@ -0,0 +1,178 @@ + + + + + + dlcSPUpgrade:/ + update:/dlc_patch/spUpgrade/ + + + dlcMPBeach:/ + update:/dlc_patch/mpBeach/ + + + dlc_MPChristmas:/ + update:/dlc_patch/mpChristmas/ + + + dlcMPValentines:/ + update:/dlc_patch/mpValentines/ + + + dlcMPBusiness:/ + update:/dlc_patch/mpBusiness/ + + + dlc_mpBusiness2:/ + update:/dlc_patch/mpBusiness2/ + + + dlcMPHipster:/ + update:/dlc_patch/mpHipster/ + + + dlc_MPIndependence:/ + update:/dlc_patch/mpIndependence/ + + + dlcMPLTS:/ + update:/dlc_patch/mpLTS/ + + + dlcMPPilot:/ + update:/dlc_patch/mpPilot/ + + + dlc_patchDay1NG:/ + update:/dlc_patch/patchDay1NG/ + + + dlc_mpPatchesNG:/ + update:/dlc_patch/mpPatchesNG/ + + + dlc_mpChristmas2:/ + update:/dlc_patch/mpChristmas2/ + + + dlcMPHeist:/ + update:/dlc_patch/mpHeist/ + + + dlc_MPLuxe:/ + update:/dlc_patch/mpLuxe/ + + + dlc_patchDay3NG:/ + update:/dlc_patch/patchDay3NG/ + + + dlc_patchDay5NG:/ + update:/dlc_patch/patchDay5NG/ + + + dlc_mpLuxe2:/ + update:/dlc_patch/mpLuxe2/ + + + dlc_mpLowrider:/ + update:/dlc_patch/mpLowrider/ + + + dlcMPHalloween:/ + update:/dlc_patch/mpHalloween/ + + + dlc_mpApartment:/ + update:/dlc_patch/mpApartment/ + + + dlc_mpLowrider2:/ + update:/dlc_patch/mpLowrider2/ + + + dlc_navy:/ + update:/dlc_patch/navy/ + + + dlc_sr71:/ + update:/dlc_patch/sr71/ + + + dlc_spyplane:/ + update:/dlc_patch/spyplane/ + + + dlc_stryker:/ + update:/dlc_patch/stryker/ + + + dlc_usaf:/ + update:/dlc_patch/usaf/ + + + dlc_bluethunder:/ + update:/dlc_patch/bluethunder/ + + + dlc_usmc:/ + update:/dlc_patch/usmc/ + + + dlc_mq9:/ + update:/dlc_patch/mq9/ + + + dlc_spooky:/ + update:/dlc_patch/spooky/ + + + dlc_concorde:/ + update:/dlc_patch/concorde/ + + + dlc_a320:/ + update:/dlc_patch/a320/ + + + dlc_spirit:/ + update:/dlc_patch/spirit/ + + + dlc_leo2a6:/ + update:/dlc_patch/leo2a6/ + + + dlc_shuttlecarrier:/ + update:/dlc_patch/shuttlecarrier/ + + + dlc_airforce1:/ + update:/dlc_patch/airforce1/ + + + dlc_vh60n:/ + update:/dlc_patch/vh60n/ + + + dlc_a346:/ + update:/dlc_patch/a346/ + + + dlc_a343:/ + update:/dlc_patch/a343/ + + + dlc_firehawk:/ + update:/dlc_patch/firehawk/ + + + dlc_s64e:/ + update:/dlc_patch/s64e/ + + + dlc_mpExecutive:/ + update:/dlc_patch/mpExecutive/ + + + \ No newline at end of file diff --git a/resources/[EGRP-CarPacks]/firehawk/handling.meta b/resources/[EGRP-CarPacks]/firehawk/handling.meta new file mode 100644 index 000000000..175920463 --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/handling.meta @@ -0,0 +1,140 @@ + + + + + + firehawk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2022000 + 401000 + 20 + AVERAGE + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + HANDLING_TYPE_FLYING + + + + VEHICLE_WEAPON_WATER_CANNON + VEHICLE_WEAPON_SEARCHLIGHT + + + + 0 + 0 + 0 + + + 3.000000 + 0.000000 + + + -0.400000 + 0.000000 + + + 0.707000 + 0.000000 + + + -0.500000 + 0.000000 + + + 0.000000 + 0.000000 + + + 25.000000 + 0.000000 + + + -0.080000 + 0.000000 + + + + + + + + + + + diff --git a/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.yft b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.yft new file mode 100644 index 000000000..ed509e873 --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:388900fa64b79323c8a14d56ed0177b91bb8a09b24fdee161526d36fea5cead4 +size 8971593 diff --git a/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.ytd b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.ytd new file mode 100644 index 000000000..67a3fb1d6 --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f729c35f089f263d80a10481811f39634aa03dc5ab2334a94c9b327f69f39118 +size 8617749 diff --git a/resources/[EGRP-CarPacks]/firehawk/stream/firehawk_hi.yft b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk_hi.yft new file mode 100644 index 000000000..1810e3d2c --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/stream/firehawk_hi.yft @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e4cc87d10b490ca2ae29b5e421fda355049956c45ba50386d22a79d44993df3 +size 6021597 diff --git a/resources/[EGRP-CarPacks]/firehawk/vehicles.meta b/resources/[EGRP-CarPacks]/firehawk/vehicles.meta new file mode 100644 index 000000000..5c786d378 --- /dev/null +++ b/resources/[EGRP-CarPacks]/firehawk/vehicles.meta @@ -0,0 +1,145 @@ + + + vehshare + + + + + firehawk + firehawk + FIREHAWK + ANNIHL + + null + null + null + null + + null + + LAYOUT_HELI_SWIFT + ANNIHILATOR_COVER_OFFSET_INFO + EXPLOSION_INFO_DEFAULT + + FOLLOW_HELI_CAMERA + HELI_AIM_CAMERA + ANNIHILATOR_BONNET_CAMERA + ANNIHILATOR_POV_CAMERA + + + + + + + + + + + + + + + + + + + + + + + + + + + + VFXVEHICLEINFO_HELI_ANNIHILATOR + + + + + + + + + + + + + + + + + + + + + + 25.000000 + 35.000000 + 100.000000 + 200.000000 + 1000.000000 + 1000.000000 + + + + + + + + + + + SWANKNESS_4 + + FLAG_NO_BOOT FLAG_LAW_ENFORCEMENT FLAG_DRIVER_NO_DRIVE_BY FLAG_NO_RESPRAY FLAG_ALLOWS_RAPPEL FLAG_DONT_SPAWN_IN_CARGEN FLAG_DONT_SPAWN_AS_AMBIENT FLAG_DONT_TIMESLICE_WHEELS FLAG_DISABLE_WEAPON_WHEEL_IN_FIRST_PERSON FLAG_USE_PILOT_HELMET + VEHICLE_TYPE_HELI + VPT_NONE + VDT_MAVERICK + VC_HELICOPTER + VWT_SPORT + + + + + s_m_y_swat_01 + + + + + + + + + + + REWARD_WEAPON_SNIPERRIFLE + REWARD_AMMO_SNIPERRIFLE + REWARD_STAT_WEAPON + + + HELI_REAR_ROTOR_CAMERA + + + + + + + STD_FRONT_LEFT + HELI_ANNIHILATOR_FRONT_RIGHT + HELI_LEFT_SIDE_PASSENGER + HELI_RIGHT_SIDE_PASSENGER + HELI_FROGGER_REAR_LEFT + HELI_FROGGER_REAR_RIGHT + + + + + + + vehicles_jet_interior + kj2000 + + + + diff --git a/resources/[EGRP-Discord-Integration]/Discord-VehRestriction/config.lua b/resources/[EGRP-Discord-Integration]/Discord-VehRestriction/config.lua index b28bede71..e654a0f60 100644 --- a/resources/[EGRP-Discord-Integration]/Discord-VehRestriction/config.lua +++ b/resources/[EGRP-Discord-Integration]/Discord-VehRestriction/config.lua @@ -818,7 +818,8 @@ Config.VehicleRestrictions = { "24mustanggt4d", "speed1", "f350bubba", - "19mustgt", + "19mustgt", + "21tacouc", }, ['EG | Owner'] = { @@ -971,7 +972,8 @@ Config.VehicleRestrictions = { "300srt8leo", "640", "704", - "7728", + "7728", + "21tacouc", "23ram6", "21mach1stang", "am_srt15", diff --git a/resources/[EGRP-Map-Addons]/bodycam/client.lua b/resources/[EGRP-Map-Addons]/bodycam/client.lua new file mode 100644 index 000000000..eeb242727 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/bodycam/client.lua @@ -0,0 +1,381 @@ +-- Config (DON'T TOUCH) +Config = { + Model = axon +} + +-- THIS IS WHERE YOU DONT TOUCH, THESE ARE THE SOUNDS. + +local function PlayAxonBodyOn() + local playerNetId = NetworkGetNetworkIdFromEntity(PlayerPedId()) + TriggerServerEvent("Server:SoundToRadius", playerNetId, 4.0, "BODYCAMAXON_ON", 0.6) +end + +local function PlayAxonBodyOff() + local playerNetId = NetworkGetNetworkIdFromEntity(PlayerPedId()) + TriggerServerEvent("Server:SoundToRadius", playerNetId, 4.0, "BODYCAMAXON_OFF", 0.6) +end + +local function PlayAxonBodyDPress() + local playerNetId = NetworkGetNetworkIdFromEntity(PlayerPedId()) + TriggerServerEvent("Server:SoundToRadius", playerNetId, 4.0, "BODYCAMAXON_DPRESS", 0.6) +end + +local function PlayAxonBodyPress() + local playerNetId = NetworkGetNetworkIdFromEntity(PlayerPedId()) + TriggerServerEvent("Server:SoundToRadius", playerNetId, 4.0, "BODYCAMAXON_PRESS", 0.6) +end + +local function PlayAxonBodyLowCharge() + local playerNetId = NetworkGetNetworkIdFromEntity(PlayerPedId()) + TriggerServerEvent("Server:SoundToRadius", playerNetId, 4.0, "BODYCAMAXON_LOWBATTERY", 0.6) +end + +local function PlayGBodycamSoundOn() + PlaySoundFrontend(-1, "5_SEC_WARNING", "HUD_MINI_GAME_SOUNDSET", 1) +end + +local function PlayGBodycamSoundOff() + PlaySoundFrontend(-1, "ATM_WINDOW", "HUD_FRONTEND_DEFAULT_SOUNDSET", 1) +end + +function StartAxonTaserRecording() + PlayAxonBodyOn() + Notify("~y~Axon Taser: ~o~Taser unholstered. ~w~Body camera has ~g~started ~w~recording.") +end + +---- +---- +---- +-- START OF MAIN CODE SORTA +local isABCon = false +local isTaserDrawn = false +local isTaserFired = false + +local batteryLevel = 100 +local lowBatteryThreshold = 20 +local batteryDrainRate = 1 +local rechargeRate = 5 +local rechargeInterval = 60000 +local isRecharging = false + +local isCalibrated = false + + +RegisterCommand("bcCalibrate", function() + isCalibrated = true + Notify("~g~Bodycam calibrated successfully.") +end, false) + +function ToggleBodycam() + if isABCon then + isABCon = false + else + if batteryLevel > 0 then + isABCon = true + else + Notify("~r~Battery depleted. Unable to start recording.") + PlayAxonBodyLowCharge() + end + end +end + +Citizen.CreateThread(function() + while true do + Citizen.Wait(60000) + if isABCon and batteryLevel > 0 and not isRecharging then + batteryLevel = batteryLevel - 5 + if batteryLevel <= 10 then + Notify("~r~Bodycam Battery Low: ~w~" .. batteryLevel .. "% remaining.") + end + elseif batteryLevel <= 0 then + isABCon = false + Notify("~r~Bodycam Battery: ~w~Depleted. Recording stopped.") + end + end +end) + +function StartRecharge() + if isRecharging or batteryLevel >= 100 then return end + isRecharging = true + + Citizen.CreateThread(function() + while isRecharging and batteryLevel < 100 do + Citizen.Wait(rechargeInterval) + batteryLevel = math.min(batteryLevel + rechargeRate, 100) + if batteryLevel < 100 then + Notify("~y~Bodycam Battery: ~g~" .. batteryLevel .. "% ~y~(Still Charging...)") + else + Notify("~g~Bodycam battery fully recharged. Charging stopped.") + PlayAxonBodyLowCharge() + isRecharging = false + end + end + end) +end + +RegisterCommand("bodycamCharge", function() + Notify("~y~Bodycam Battery Level: ~g~" .. batteryLevel .. "%") +end, false) + +RegisterCommand("rechargeBodycam", function() + local playerPed = PlayerPedId() + if IsPedInAnyVehicle(playerPed, false) then + if batteryLevel < 100 then + Notify("~y~Axon Body: ~w~ You're bodycam has started charging.") + StartRecharge() + elseif batteryLevel == 100 then + Notify("~y~Axon Body: ~w~You're bodycam has started charging.") + Notify("~y~Axon Body: ~w~Battery ~r~Full~w~, Charging has stopped.") + PlayAxonBodyLowCharge() + end + else + Notify("~r~You must be in a vehicle to recharge the bodycam.") + end +end, false) + + + +Citizen.CreateThread(function() + while true do + Citizen.Wait(0) + + local playerPed = PlayerPedId() + local playerWeapon = GetSelectedPedWeapon(playerPed) + + if isCalibrated then + if playerWeapon == GetHashKey("WEAPON_STUNGUN") then + if not isTaserDrawn then + Citizen.Wait(3000) + isTaserDrawn = true + + if not isABCon then + isABCon = true + Config.Model = 'axon' + StartAxonTaserRecording() + end + end + + if IsPedShooting(playerPed) and not isTaserFired then + isTaserFired = true + Notify("~y~Axon Taser: ~o~Taser fired, updating dispatch.") + Citizen.Wait(1000) + end + else + if isTaserDrawn then + isTaserDrawn = false + isTaserFired = false + end + end + end + end +end) + + + + +Citizen.CreateThread(function() + while true do + Citizen.Wait(3000) + + if isABCon == true then + Citizen.Wait(120000) + PlayAxonBodyOn() + end + end +end) + +local isShowingAxon = false +local record = false +local bdWeapons = { + 'WEAPON_PISTOL', + 'WEAPON_COMBATPISTOL', + 'WEAPON_SNSPISTOL', + 'WEAPON_HEAVYPISTOL' +} + +Citizen.CreateThread(function() + while true do + Citizen.Wait(100) + + local ped = PlayerPedId() + local currentWeapon = GetSelectedPedWeapon(ped) + local isWeaponMatched = false + + for _, weapon in ipairs(bdWeapons) do + if currentWeapon == GetHashKey(weapon) then + isWeaponMatched = true + break + end + end + + if not IsPedInAnyVehicle(ped, true) then + if isWeaponMatched and not isABCon then + if not isCalibrated then + return + end + + Citizen.Wait(2000) + Notify("~y~Axon Signal Sidearm: ~o~Weapon unholstered. ~w~Body camera has ~g~started ~w~recording.") + PlayAxonBodyOn() + isABCon = true + Config.Model = 'axon' + end + else + Citizen.Wait(1000) + end + end +end) + + + + +----- +-- VEHICLE AXON SIGNAL + +Citizen.CreateThread(function() + while true do + Citizen.Wait(100) + local ped = PlayerPedId() + + if IsPedInAnyVehicle(ped, false) then + local currentVehicle = GetVehiclePedIsIn(ped, false) + local LightsOn = IsVehicleSirenOn(currentVehicle) + + if isCalibrated then + if LightsOn and not isABCon then + Citizen.Wait(2000) + if IsVehicleSirenOn(currentVehicle) then + Notify("~y~Axon Signal Vehicle: ~o~Emergency lights activated. ~w~Body camera has ~g~started ~w~recording.") + PlayAxonBodyOn() + isABCon = true + Config.Model = 'axon' + end + end + else + Citizen.Wait(1000) + end + else + Citizen.Wait(1000) + end + end +end) + + + + + +RegisterKeyMapping('axonbc', 'Toggle your Axon Bodycam', 'keyboard', 'numpad7') + +RegisterCommand("axonbc", function(source, args, rawCommand) + if isCalibrated == false then + Notify("~r~Please calibrate your bodycam first using /bcCalibrate.") + else + local ped = PlayerPedId() + + while not HasAnimDictLoaded("clothingtie") do + RequestAnimDict("clothingtie") + Citizen.Wait(0) + end + + local pos = GetEntityCoords(ped, true) + local rot = GetEntityHeading(ped) + + if isABCon then + TaskPlayAnimAdvanced(ped, "clothingtie", "outro", pos, 0.0, 0.0, rot, 8.0, 3.0, -1, 50, 0.125, 0, 0) + Citizen.Wait(300) + PlayAxonBodyPress() + Citizen.Wait(600) + ClearPedTasks(ped) + Notify("~y~AXON BODY: ~w~Body Camera has ~r~stopped~w~ recording.") + PlayAxonBodyOff() + else + TaskPlayAnimAdvanced(ped, "clothingtie", "outro", pos, 0.0, 0.0, rot, 8.0, 3.0, -1, 50, 0.125, 0, 0) + Citizen.Wait(600) + PlayAxonBodyDPress() + Citizen.Wait(600) + ClearPedTasks(ped) + Notify("~y~AXON BODY: ~w~Body Camera has ~g~started~w~ recording.") + PlayAxonBodyOn() + end + + isABCon = not isABCon + Config.Model = 'axon' + end +end, false) + + + + +RegisterCommand("togglerec", function(source, args, rawCommand) + record = not record + if not record then + TriggerEvent('chat:addMessage', { + color = {255, 0, 0}, + multiline = true, + args = {"Bodycam", "Bodycam recording set to ^1 false"} + }) + else + TriggerEvent('chat:addMessage', { + color = {255, 0, 0}, + multiline = true, + args = {"Bodycam", "Bodycam recording set to ^2 true"} + }) + end +end, false) + + + + + + + + + + +function Notify(string) + SetNotificationTextEntry("STRING") + AddTextComponentString(string) + DrawNotification(false, true) +end + +Citizen.CreateThread(function() + while true do + if isABCon then + local year, month, day, hour, minute, second = GetLocalTime() + + if month < 10 then + month = "0" .. month + end + + if day < 10 then + day = "0" .. day + end + + if isShowingAxon and Config.Model == 'axon' then + SendNUIMessage({ + transactionType = 'updateTime', + timestamp = year .. '-0' .. month .. '-' .. day .. ' ' .. 'T' .. hour .. ':' .. minute .. ':' .. second, + }) + end + + if Config.Model == 'axon' and not isShowingAxon then + SendNUIMessage({ + transactionType = 'showAxon', + show = true, + timestamp = year .. '-0' .. month .. '-' .. day .. ' ' .. 'T' .. hour .. ':' .. minute .. ':' .. second, + }) + isShowingAxon = true + end + else + if isShowingAxon and Config.Model == 'axon' then + SendNUIMessage({ + transactionType = 'showAxon', + show = false, + }) + isShowingAxon = false + end + end + + Citizen.Wait(100) + end +end) \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/bodycam/config.lua b/resources/[EGRP-Map-Addons]/bodycam/config.lua new file mode 100644 index 000000000..f3d21592c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/bodycam/config.lua @@ -0,0 +1 @@ +-- NOT INN USE \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/bodycam/fxmanifest.lua b/resources/[EGRP-Map-Addons]/bodycam/fxmanifest.lua new file mode 100644 index 000000000..8c5d464ac --- /dev/null +++ b/resources/[EGRP-Map-Addons]/bodycam/fxmanifest.lua @@ -0,0 +1,35 @@ +--[[ +Please note the following; +This resource was originally created by K&F Creative Studios, with modifications made by Crunchy Code. I do not claim ownership of +the original creation; my contributions are limited to editing and enhancing the resource to introduce the features described on the LCPDFR.com page. +]] + +fx_version 'cerulean' +games { 'gta5' } + +author 'K&F Creative Studios' +description 'Axon Body Cam Script' +version '1.0.0' + +ui_page 'html/index.html' + +files { + 'html/index.html', + 'html/images/axon.png', +} + +shared_script 'config.lua' +client_script 'client.lua' + + +------------------------ + +--[[ +For the Axon Signal Taser integration. +You can use one of these models for the taser, rename the models (.ydr // .ytd) to w_pi_stungun ( + + + + + + + + + + + + + + + + 2020-09-29 T18:29 + + AXON BODY 3 X81020805 + + + + + + + + 249105 + + 2020/10/09 17:44:32 + + + + + +