adding new script vehicls
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,5 @@
|
||||
[{000214A0-0000-0000-C000-000000000046}]
|
||||
Prop3=19,11
|
||||
[InternetShortcut]
|
||||
IDList=
|
||||
URL=https://docs.londonstudios.net/
|
||||
Binary file not shown.
@@ -0,0 +1,398 @@
|
||||
vRP = nil
|
||||
ESX = nil
|
||||
|
||||
if ConfigHose.Notifications.Enabled and ConfigHose.Notifications.Framework.vRP then
|
||||
local Tunnel = module("vrp", "lib/Tunnel")
|
||||
local Proxy = module("vrp", "lib/Proxy")
|
||||
vRP = Proxy.getInterface("vRP")
|
||||
end
|
||||
|
||||
if ConfigHose.Notifications.Enabled and ConfigHose.Notifications.Framework.ESX then
|
||||
ESX = exports["es_extended"]:getSharedObject()
|
||||
end
|
||||
|
||||
if ConfigHose.EnablePositioningCommand then
|
||||
TriggerEvent('chat:addSuggestion', '/'.."findhosepositioning", "Find positioning of the hose/supply line on your fire truck")
|
||||
|
||||
RegisterCommand("findhosepositioning", function(source, args)
|
||||
|
||||
local ped = PlayerPedId()
|
||||
local targetVehicle = GetVehiclePedIsIn(ped, false)
|
||||
|
||||
if targetVehicle == nil or targetVehicle == 0 then
|
||||
Notify("No vehicle found!")
|
||||
else
|
||||
local model = `p_ld_soc_ball_01`
|
||||
SetEntityAlpha(targetVehicle, 150, false)
|
||||
RequestModel(model)
|
||||
while not HasModelLoaded(model) do Wait(0) end
|
||||
local ballProp = CreateObject(model, coords, false, false, false)
|
||||
|
||||
while not DoesEntityExist(ballProp) do Wait(0) end
|
||||
|
||||
SetModelAsNoLongerNeeded(model)
|
||||
local offSet = {0.0, 0.0, 0.0}
|
||||
local rotation = {0.0, 0.0, 0.0}
|
||||
local offSetComplete = false
|
||||
while not offSetComplete do
|
||||
if targetVehicle ~= nil and targetVehicle ~= 0 then
|
||||
DetachEntity(ballProp, true, false)
|
||||
AttachEntityToEntity(ballProp, targetVehicle, -1, offSet[1], offSet[2], offSet[3], rotation[1], rotation[2], rotation[3], true, false, true, false, 1, true)
|
||||
if not IsControlReleased(0, 207) then --page down
|
||||
offSet = {offSet[1], offSet[2], offSet[3] - 0.01}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 208) then --page up
|
||||
offSet = {offSet[1], offSet[2], offSet[3] + 0.01}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 173) then --arrow down
|
||||
offSet = {offSet[1], offSet[2] - 0.01, offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 172) then --arrow up
|
||||
offSet = {offSet[1], offSet[2] + 0.01, offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 174) then --arrow left
|
||||
offSet = {offSet[1] - 0.01, offSet[2], offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 175) then --arrow right
|
||||
offSet = {offSet[1] + 0.01, offSet[2], offSet[3]}
|
||||
end
|
||||
|
||||
if IsControlJustPressed(0, 191) then -- enter - finish
|
||||
offSetComplete = true
|
||||
end
|
||||
end
|
||||
|
||||
Wait(0)
|
||||
end
|
||||
|
||||
Notify("OffSet Values are now printed in your console")
|
||||
print("OffSet: {"..offSet[1]..", "..offSet[2]..", "..offSet[3].."}")
|
||||
DeleteEntity(ballProp)
|
||||
ResetEntityAlpha(targetVehicle)
|
||||
end
|
||||
|
||||
end, false)
|
||||
end
|
||||
|
||||
|
||||
function Notify(text)
|
||||
|
||||
if not ConfigHose.Notifications.Enabled then
|
||||
return
|
||||
end
|
||||
|
||||
if ConfigHose.Notifications.Framework.ESX then
|
||||
if ESX ~= nil then
|
||||
ESX.ShowNotification(text)
|
||||
end
|
||||
elseif ConfigHose.Notifications.Framework.QBCore then
|
||||
TriggerEvent('QBCore:Notify', text, 'primary')
|
||||
elseif ConfigHose.Notifications.Framework.QBX then
|
||||
exports.qbx_core:Notify(text, 'primary')
|
||||
elseif ConfigHose.Notifications.Framework.vRP then
|
||||
vRP.notify(source, {text})
|
||||
elseif ConfigHose.Notifications.Framework.okok then
|
||||
exports['okokNotify']:Alert("Smart Hose", text, 2000, 'info', true)
|
||||
else
|
||||
showBaseNotification(text)
|
||||
end
|
||||
end
|
||||
|
||||
function showBaseNotification(message)
|
||||
-- Base game notifications
|
||||
SetNotificationTextEntry("STRING")
|
||||
AddTextComponentString(message)
|
||||
DrawNotification(0,1)
|
||||
end
|
||||
|
||||
-- General Functions @GeneralFunctions
|
||||
function DisplayHelpText(text)
|
||||
SetTextComponentFormat("STRING")
|
||||
AddTextComponentString(text)
|
||||
DisplayHelpTextFromStringLabel(0, 0, ConfigHose.Notifications.HelpTextSound, -1)
|
||||
end
|
||||
|
||||
function drawInstructionalText(msg, coords)
|
||||
AddTextEntry('instructionalText', msg)
|
||||
SetFloatingHelpTextWorldPosition(1, coords)
|
||||
SetFloatingHelpTextStyle(1, 1, 2, -1, 3, 0)
|
||||
BeginTextCommandDisplayHelp('instructionalText')
|
||||
AddTextComponentSubstringPlayerName(msg)
|
||||
EndTextCommandDisplayHelp(2, false, false, -1)
|
||||
end
|
||||
|
||||
function IsFireHoseEnabled()
|
||||
return (HoseManager.nozzle and not HoseManager.nozzleDropped)
|
||||
end
|
||||
|
||||
exports("IsFireHoseEnabled", IsFireHoseEnabled)
|
||||
|
||||
function IsFireHoseShooting()
|
||||
return HoseManager.pressed
|
||||
end
|
||||
|
||||
exports("IsFireHoseShooting", IsFireHoseShooting)
|
||||
|
||||
function IsFireHoseShootingWater()
|
||||
return ParticleManager.isWaterDecal
|
||||
end
|
||||
|
||||
exports("IsFireHoseShootingWater", IsFireHoseShootingWater)
|
||||
|
||||
function GetCurrentDecalCoords()
|
||||
return ParticleManager.CurrentDecalCoords
|
||||
end
|
||||
|
||||
exports("GetCurrentDecalCoords", GetCurrentDecalCoords)
|
||||
|
||||
function GetCurrentHosePressure()
|
||||
return ParticleManager.particleScale
|
||||
end
|
||||
|
||||
exports("GetCurrentHosePressure", GetCurrentHosePressure)
|
||||
|
||||
local vehicleModels = getVehicleModelsFromCapacities()
|
||||
local interactionId = "menuId"
|
||||
if ConfigHose.InteractType.TruckInteraction.Drawtext or ConfigHose.InteractType.TruckInteraction.ScreenPrompt then
|
||||
CreateThread(function()
|
||||
while true do
|
||||
Wait(1)
|
||||
local pos = GetEntityCoords(PlayerPedId())
|
||||
local vehicle = GetClosestVehicle(pos)
|
||||
local inRange = false
|
||||
|
||||
if vehicle and DoesEntityExist(vehicle) and IsVehicleDriveable(vehicle, false) then
|
||||
local vehicleModel = GetEntityModel(vehicle)
|
||||
local vehicleSettings = ConfigHose.Rope.VehicleSettings[vehicleModel] or {}
|
||||
local useBone = vehicleSettings.useBone or false
|
||||
local bones = vehicleSettings.bones or {}
|
||||
local offsets = vehicleSettings.offsets or {{x = 0.0, y = 0.0, z = 0.0}}
|
||||
|
||||
local attachmentPoints = {}
|
||||
|
||||
if useBone then
|
||||
for _, boneName in ipairs(bones) do
|
||||
local boneIndex = GetEntityBoneIndexByName(vehicle, boneName)
|
||||
if boneIndex ~= -1 then
|
||||
local bonePos = GetWorldPositionOfEntityBone(vehicle, boneIndex)
|
||||
table.insert(attachmentPoints, bonePos)
|
||||
else
|
||||
print("Bone " .. boneName .. " not found in vehicle model.")
|
||||
end
|
||||
end
|
||||
else
|
||||
for _, offset in ipairs(offsets) do
|
||||
local offsetWorldPos = GetOffsetFromEntityInWorldCoords(vehicle, offset.x, offset.y, offset.z)
|
||||
table.insert(attachmentPoints, offsetWorldPos)
|
||||
end
|
||||
end
|
||||
|
||||
local closestPoint = attachmentPoints[1]
|
||||
local minDistance = #(pos - closestPoint)
|
||||
|
||||
for _, point in ipairs(attachmentPoints) do
|
||||
local distance = #(pos - point)
|
||||
if distance < minDistance then
|
||||
closestPoint = point
|
||||
minDistance = distance
|
||||
end
|
||||
end
|
||||
|
||||
local promptCoords = closestPoint
|
||||
local vehicleDistance = #(pos - promptCoords)
|
||||
|
||||
if not IsPedInAnyVehicle(PlayerPedId(), false) and vehicleDistance < 3.0 then
|
||||
inRange = true
|
||||
local text = HoseManager.nozzle and ConfigHose.Translations.storeHoseMessage or ConfigHose.Translations.grabHoseMessage
|
||||
|
||||
if ConfigHose.InteractType.TruckInteraction.Drawtext then
|
||||
drawInstructionalText(text, promptCoords)
|
||||
elseif ConfigHose.InteractType.TruckInteraction.ScreenPrompt then
|
||||
DisplayHelpText(text)
|
||||
end
|
||||
|
||||
if IsControlJustReleased(0, ConfigHose.Keys.Interact) then
|
||||
if not HoseManager.nozzle and isPermissionAllowed() then
|
||||
InitializeFireHose()
|
||||
AttachRopeToProp()
|
||||
else
|
||||
UnequipFireHose()
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if not inRange then
|
||||
Wait(2500)
|
||||
end
|
||||
end
|
||||
end)
|
||||
elseif ConfigHose.InteractType.TruckInteraction.ThirdEye.enabled then
|
||||
if ConfigHose.InteractType.TruckInteraction.ThirdEye.oxTarget then
|
||||
local VehicleOptions = {
|
||||
{
|
||||
label = ConfigHose.Translations.thirdEyeMessage,
|
||||
icon = "fa-solid fa-water",
|
||||
onSelect = function()
|
||||
if not HoseManager.nozzle and isPermissionAllowed() then
|
||||
InitializeFireHose()
|
||||
AttachRopeToProp()
|
||||
else
|
||||
UnequipFireHose()
|
||||
end
|
||||
end,
|
||||
}
|
||||
}
|
||||
exports.ox_target:addModel(vehicleModels, VehicleOptions)
|
||||
end
|
||||
|
||||
if ConfigHose.InteractType.TruckInteraction.ThirdEye.qbTarget then
|
||||
exports['qb-target']:AddTargetModel(vehicleModels, {
|
||||
options = {
|
||||
{
|
||||
label = ConfigHose.Translations.thirdEyeMessage,
|
||||
icon = "fa-solid fa-water",
|
||||
action = function()
|
||||
if not HoseManager.nozzle and isPermissionAllowed() then
|
||||
InitializeFireHose()
|
||||
AttachRopeToProp()
|
||||
else
|
||||
UnequipFireHose()
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
distance = 3.0
|
||||
})
|
||||
end
|
||||
elseif ConfigHose.InteractType.TruckInteraction.WorldInteraction then
|
||||
CreateThread(function()
|
||||
local interactionActive = false
|
||||
local idleWait = 1000
|
||||
|
||||
while true do
|
||||
Wait(idleWait)
|
||||
|
||||
if IsPedInAnyVehicle(PlayerPedId(), false) then
|
||||
if interactionActive then
|
||||
for _, model in ipairs(vehicleModels) do
|
||||
exports.interact:RemoveModelInteraction(model, interactionId)
|
||||
end
|
||||
interactionActive = false
|
||||
end
|
||||
idleWait = 1500
|
||||
else
|
||||
local pos = GetEntityCoords(PlayerPedId())
|
||||
local vehicle = GetClosestVehicle(pos)
|
||||
|
||||
if vehicle and DoesEntityExist(vehicle) then
|
||||
local vehicleModel = GetEntityModel(vehicle)
|
||||
|
||||
local isAllowedModel = false
|
||||
for _, model in ipairs(vehicleModels) do
|
||||
if model == vehicleModel then
|
||||
isAllowedModel = true
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
if isAllowedModel then
|
||||
local vehicleSettings = ConfigHose.Rope.VehicleSettings[vehicleModel] or {}
|
||||
local useBone = vehicleSettings.useBone or false
|
||||
local bones = vehicleSettings.bones or {}
|
||||
local offsets = vehicleSettings.offsets or {{x = 0.0, y = 0.0, z = 0.0}}
|
||||
|
||||
local attachmentPoints = {}
|
||||
|
||||
if useBone then
|
||||
for _, boneName in ipairs(bones) do
|
||||
local boneIndex = GetEntityBoneIndexByName(vehicle, boneName)
|
||||
if boneIndex ~= -1 then
|
||||
local bonePos = GetWorldPositionOfEntityBone(vehicle, boneIndex)
|
||||
table.insert(attachmentPoints, bonePos)
|
||||
else
|
||||
print("Bone " .. boneName .. " not found in vehicle model.")
|
||||
end
|
||||
end
|
||||
else
|
||||
for _, offset in ipairs(offsets) do
|
||||
local offsetWorldPos = GetOffsetFromEntityInWorldCoords(vehicle, offset.x, offset.y, offset.z)
|
||||
table.insert(attachmentPoints, offsetWorldPos)
|
||||
end
|
||||
end
|
||||
|
||||
local closestPoint = attachmentPoints[1]
|
||||
local minDistance = #(pos - closestPoint)
|
||||
|
||||
for _, point in ipairs(attachmentPoints) do
|
||||
local distance = #(pos - point)
|
||||
if distance < minDistance then
|
||||
closestPoint = point
|
||||
minDistance = distance
|
||||
end
|
||||
end
|
||||
|
||||
local promptCoords = closestPoint
|
||||
local vehicleDistance = #(pos - promptCoords)
|
||||
|
||||
if vehicleDistance < 4.0 then
|
||||
if not interactionActive then
|
||||
exports.interact:AddModelInteraction({
|
||||
model = vehicleModel,
|
||||
offset = promptCoords - GetEntityCoords(vehicle),
|
||||
name = 'Menu',
|
||||
id = interactionId,
|
||||
distance = 8.0,
|
||||
interactDst = 2.5,
|
||||
ignoreLos = true,
|
||||
bone = 'bodyshell',
|
||||
options = {
|
||||
{
|
||||
label = ConfigHose.Translations.grabHoseWorldInteraction,
|
||||
action = function()
|
||||
if not HoseManager.nozzle then
|
||||
InitializeFireHose()
|
||||
AttachRopeToProp()
|
||||
else
|
||||
UnequipFireHose()
|
||||
end
|
||||
end,
|
||||
},
|
||||
}
|
||||
})
|
||||
interactionActive = true
|
||||
end
|
||||
idleWait = 0
|
||||
else
|
||||
if interactionActive then
|
||||
exports.interact:RemoveModelInteraction(vehicleModel, interactionId)
|
||||
interactionActive = false
|
||||
end
|
||||
idleWait = 500
|
||||
end
|
||||
else
|
||||
if interactionActive then
|
||||
exports.interact:RemoveModelInteraction(vehicleModel, interactionId)
|
||||
interactionActive = false
|
||||
end
|
||||
idleWait = 1000
|
||||
end
|
||||
else
|
||||
if interactionActive then
|
||||
for _, model in ipairs(vehicleModels) do
|
||||
exports.interact:RemoveModelInteraction(model, interactionId)
|
||||
end
|
||||
interactionActive = false
|
||||
end
|
||||
idleWait = 1500
|
||||
end
|
||||
end
|
||||
end
|
||||
end)
|
||||
else
|
||||
warn('Invalid interaction configuration')
|
||||
end
|
||||
@@ -0,0 +1,677 @@
|
||||
ConfigHose = {
|
||||
-- @ https://docs.fivem.net/docs/game-references/controls/#controls
|
||||
Keys = {
|
||||
Interact = 38, -- E
|
||||
SwitchDecalTypeKey = 47,-- G
|
||||
ShootHose = 24, -- INPUT_ATTACK
|
||||
DropHose = 38, -- E
|
||||
PickupHose = 47, -- G
|
||||
IncreasePressure = 172, -- Arrow Up
|
||||
DecreasePressure = 173, -- Arrow Down
|
||||
},
|
||||
|
||||
HoseModel = `WEAPON_HOSE`,
|
||||
|
||||
EnablePositioningCommand = false,
|
||||
-- This enables the /findhosepositioning command to help you find the right vehicle offsets for either
|
||||
-- the hose connection or the supply line connection point. See our documentation for more info.
|
||||
|
||||
JobCheck = {
|
||||
EnablePermissions = false, -- If set to false, all below job checks will be disabled, even if they are enabled in the config.lua
|
||||
AcePermissions = {
|
||||
Enabled = false,
|
||||
Permission = "usehose"
|
||||
},
|
||||
|
||||
ESX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use ESX job check
|
||||
Jobs = {"fireman"} -- A user can have any of the following jobs, allowing you to add multiple
|
||||
}
|
||||
},
|
||||
-- We've added vRP integration. All you need to do is enable it below. Then, configure if you wish to check for groups or permissions, or even both
|
||||
vRP = {
|
||||
Enabled = false,
|
||||
CheckGroup = {
|
||||
Enabled = false, -- Enable this to use vRP group check
|
||||
Groups = {"fireman"}, -- A user can have any of the following groups, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use vRP permission check
|
||||
Permissions = {"fireman.usehose"} -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBCore integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBCore = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBCore job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use QBCore permission check
|
||||
Permissions = {"fireman.usehose"}, -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBX integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBX job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
Translations = {
|
||||
storeHoseMessage = "Press E to store hose",
|
||||
cannotStoreHoseMessage = "You can only store the hose in the vehicle you grabbed it from.",
|
||||
vehicleUnavailableMessage = "The vehicle you grabbed the hose from is no longer available.",
|
||||
grabHoseMessage = "Press E to grab hose",
|
||||
thirdEyeMessage = "Grab/Store Hose",
|
||||
grabHoseWorldInteraction = "Grab Hose",
|
||||
tankIsEmpty = "Tank is empty! Cannot shoot water!",
|
||||
maxRopes = "This vehicle has reached the maximum number of ropes.",
|
||||
waterTypeDisplay = "Hose Type ~INPUT_DETONATE~ (Water)\nPressure ~INPUT_CELLPHONE_UP~ | ~INPUT_CELLPHONE_DOWN~ ",
|
||||
foamTypeDisplay = "Hose Type ~INPUT_DETONATE~ (Foam)\nPressure ~INPUT_CELLPHONE_UP~ | ~INPUT_CELLPHONE_DOWN~ ",
|
||||
cantCarryFoam = "This vehicle cannot carry foam!",
|
||||
maximumPressure = "Maximum pressure reached!",
|
||||
minimumPressure = "Minimum pressure reached!",
|
||||
noPermission = "You do not have access to use the hose.",
|
||||
pickupHoseMessage = "Press G to pick up the hose"
|
||||
},
|
||||
|
||||
Notifications = {
|
||||
Enabled = true,
|
||||
HelpTextSound = false,
|
||||
Framework = {
|
||||
QBCore = false,
|
||||
QBX = false,
|
||||
ESX = false,
|
||||
vRP = false,
|
||||
okok = false,
|
||||
}
|
||||
},
|
||||
|
||||
InteractType = {
|
||||
TruckInteraction = {
|
||||
Drawtext = true,
|
||||
ScreenPrompt = false,
|
||||
WorldInteraction = false,
|
||||
|
||||
ThirdEye = {
|
||||
enabled = false,
|
||||
qbTarget = false,
|
||||
oxTarget = false,
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
Rope = {
|
||||
Hose = {
|
||||
HoseropeInitialLength = 32.5, -- Initial rope length (recommended)
|
||||
HoseropeLength = 1000.0, -- Rope Max length (recommended)
|
||||
DrawMarker = true, -- Draw marker on the floor when the hose is dropped.
|
||||
GrabAnimationDict = 'anim@scripted@freemode@tunprep_ig_grab_midd@male@',
|
||||
GrabAnimationName = 'tunprep_ig_grab_midd',
|
||||
PickupAnimationDict = 'veh@common@bicycle@ds',
|
||||
PickupAnimationName = 'pickup',
|
||||
},
|
||||
|
||||
-- if useBone = true, "offsets" field will be ignored; otherwise custom offsets are enabled.
|
||||
VehicleSettings = {
|
||||
[`brush`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -0.90, y = -0.02, z = -0.050 },
|
||||
{ x = 0.87, y = -0.1050, z = 0.0140 },
|
||||
{x = -0.57, y = -3.68, z = 0.0},
|
||||
},
|
||||
maxRopes = 2,
|
||||
},
|
||||
[`brushram`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -0.90, y = -0.02, z = -0.050 },
|
||||
{ x = 0.87, y = -0.1050, z = 0.0140 },
|
||||
{x = -0.57, y = -3.68, z = 0.0},
|
||||
},
|
||||
maxRopes = 2,
|
||||
},
|
||||
[`bulldog`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`enforcer`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`EnforcerEng`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`enforcerf`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`enforcerta`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`engine`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`firef350`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`firetruk13`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`hazf350tec`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`ladder6a`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`rescue6`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`rescue6a`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`rescue9e`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[` `] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`tender6`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`tender9b`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`tower6`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`mmladder`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`prescue`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`rescue1`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`walkinarrow`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`16ramcsquad`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`20Maxfdramsquad`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`20ramcsquad`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`23sierrafire`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`24rampumper`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`heavypump`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`heavyrescue`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`heavytank`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`heavywild`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`f550csquad`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`f550super6`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacod6`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdbug`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofddztrk`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdeng`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdfoam`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdpat`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdrs`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdsup`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdt3`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdtrlr`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdusartrk`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdusartrlr`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lacofdutil`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lafdcab`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`lafdtiller`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`redf350brush21`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`tanker_water`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`velocity`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`x3bearcat`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`x3bearcat2`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.14, y = 0.92, z = -0.1 },
|
||||
{ x = 1.11, y = 0.93, z = -0.09 },
|
||||
},
|
||||
maxRopes = 1,
|
||||
},
|
||||
[`enladder`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -0.98, y = 2.4, z = -0.09 },
|
||||
{ x = 0.98, y = 2.41, z = -0.07 },
|
||||
},
|
||||
maxRopes = 2,
|
||||
},
|
||||
[`fdgator`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -0.98, y = 2.4, z = -0.09 },
|
||||
{ x = 0.98, y = 2.41, z = -0.07 },
|
||||
},
|
||||
maxRopes = 2,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Decals = {
|
||||
InitialPressure = 0.5, -- Starting Pressure
|
||||
MaxPressure = 1.5, -- Maximum Pressure Possible
|
||||
LowestPressure = 0.3, -- Minimum Pressure Possible
|
||||
PressureIncrement = 0.1, -- How much the Pressure goes up / down
|
||||
DecalLife = 20.0 -- How long the decals stay on the floor.
|
||||
},
|
||||
|
||||
WaterTank = {
|
||||
minWaterLevel = 1, -- Minimum water level to shoot water
|
||||
waterDepletionRate = 1, -- Water depletion rate per second when shooting
|
||||
MaxwaterDepletionRate = 10, -- Maximum water depletion rate -> Highest Pressure Possible will always remove this amount of water
|
||||
fillRate = 150,
|
||||
|
||||
-- Vehicles that you can interact with should go here along with the capacity and if they can carry foam.
|
||||
-- Example: [`firetruk`] = { capacity = 7000, carryFoam = true|false, fullTank = true|false },
|
||||
VehicleWaterCapacities = {
|
||||
[`britishladder`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`britishladderels`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`rearmount`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`rearmountels`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`lacofdrs`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`lacofdsup`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`x3bearcat`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`hazf350tec`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`enforcerf`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`enladder`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`ldfoam`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`tower6`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`tender9b`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`mmladder`] = { capacity = 7000, carryFoam = true, fullTank = false },
|
||||
[`24rampumper`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`f550super6`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`heavyrescue`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
[`velocity`] = { capacity = 5000, carryFoam = false, fullTank = false },
|
||||
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
experimentalFeature = {
|
||||
waterPhysics = false,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,372 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CPedModelInfo__PersonalityDataList>
|
||||
<MovementModeUnholsterData>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_UNARMED</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>unarmed_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_2H_MELEE</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>2h_melee_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_1H</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>1h_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_2H</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>2h_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_MINIGUN</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>mini_holster_2h_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_UNARMED_STEALTH</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>unarmed_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_2H_MELEE_STEALTH</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>unarmed_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_1H_STEALTH</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>1h_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>UNHOLSTER_2H_STEALTH</Name>
|
||||
<UnholsterClips>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<Clip>2h_holster_unarmed</Clip>
|
||||
</Item>
|
||||
</UnholsterClips>
|
||||
</Item>
|
||||
</MovementModeUnholsterData>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Name>DEFAULT_ACTION</Name>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_action@p_m_zero@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId />
|
||||
<WeaponClipFilterId />
|
||||
<UpperBodyShadowExpressionEnabled value="false" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="true" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_ACTION@GENERIC@TRANS@UNARMED</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_ACTION@P_M_ZERO@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_stealth@p_m_zero@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId>weapons@melee_stealth_1h</WeaponClipSetId>
|
||||
<WeaponClipFilterId>UpperbodyAndIk_filter</WeaponClipFilterId>
|
||||
<UpperBodyShadowExpressionEnabled value="true" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="false" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>move_stealth@generic@trans@unarmed</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>move_stealth@p_m_zero@holster</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED_STEALTH</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>MP_FEMALE_ACTION</Name>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>MOVE_ACTION@MP_FEMALE@UNARMED@CORE</MovementClipSetId>
|
||||
<WeaponClipSetId />
|
||||
<WeaponClipFilterId />
|
||||
<UpperBodyShadowExpressionEnabled value="false" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="true" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_ACTION@MP_FEMALE@UNARMED@TRANS@</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_ACTION@P_M_ZERO@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_stealth@p_m_zero@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId>weapons@melee_stealth_1h</WeaponClipSetId>
|
||||
<WeaponClipFilterId>UpperbodyAndIk_filter</WeaponClipFilterId>
|
||||
<UpperBodyShadowExpressionEnabled value="true" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="false" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_STEALTH@MP_FEMALE@UNARMED@TRANS</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>move_stealth@p_m_zero@holster</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED_STEALTH</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>MICHAEL_ACTION</Name>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_action@p_m_zero@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId />
|
||||
<WeaponClipFilterId />
|
||||
<UpperBodyShadowExpressionEnabled value="false" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="true" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_ACTION@P_M_ZERO@UNARMED@TRANS@A</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_ACTION@P_M_ZERO@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_stealth@p_m_zero@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId>weapons@melee_stealth_1h</WeaponClipSetId>
|
||||
<WeaponClipFilterId>UpperbodyAndIk_filter</WeaponClipFilterId>
|
||||
<UpperBodyShadowExpressionEnabled value="true" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="false" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>move_stealth@p_m_zero@unarmed@trans@a</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>move_stealth@p_m_zero@holster</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED_STEALTH</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>FRANKLIN_ACTION</Name>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_action@p_m_one@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId />
|
||||
<WeaponClipFilterId />
|
||||
<UpperBodyShadowExpressionEnabled value="false" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="true" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_ACTION@P_M_ONE@UNARMED@TRANS@A</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_ACTION@P_M_ONE@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_stealth@p_m_one@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId>weapons@melee_stealth_1h@p_m_one</WeaponClipSetId>
|
||||
<WeaponClipFilterId>UpperbodyAndIk_filter</WeaponClipFilterId>
|
||||
<UpperBodyShadowExpressionEnabled value="true" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="false" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>move_stealth@p_m_one@unarmed@trans@a</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_STEALTH@P_M_ONE@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED_STEALTH</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>TREVOR_ACTION</Name>
|
||||
<MovementModes>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_action@p_m_two@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId />
|
||||
<WeaponClipFilterId />
|
||||
<UpperBodyShadowExpressionEnabled value="false" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="true" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>MOVE_ACTION@P_M_TWO@UNARMED@TRANS@A</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_ACTION@P_M_TWO@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
<Item>
|
||||
<Item>
|
||||
<Weapons>
|
||||
<Item>WEAPON_HOSE</Item>
|
||||
</Weapons>
|
||||
<ClipSets>
|
||||
<Item>
|
||||
<MovementClipSetId>move_stealth@p_m_two@unarmed@core</MovementClipSetId>
|
||||
<WeaponClipSetId>weapons@melee_stealth_1h@p_m_two</WeaponClipSetId>
|
||||
<WeaponClipFilterId>UpperbodyAndIk_filter</WeaponClipFilterId>
|
||||
<UpperBodyShadowExpressionEnabled value="true" />
|
||||
<UpperBodyFeatheredLeanEnabled value="false" />
|
||||
<UseWeaponAnimsForGrip value="false" />
|
||||
<UseLeftHandIk value="false" />
|
||||
<IdleTransitionBlendOutTime value="0.500000" />
|
||||
<IdleTransitions>
|
||||
<Item>move_stealth@p_m_two@unarmed@trans@a</Item>
|
||||
</IdleTransitions>
|
||||
<UnholsterClipSetId>MOVE_STEALTH@P_M_TWO@HOLSTER</UnholsterClipSetId>
|
||||
<UnholsterClipData>UNHOLSTER_UNARMED_STEALTH</UnholsterClipData>
|
||||
</Item>
|
||||
</ClipSets>
|
||||
</Item>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</Item>
|
||||
</MovementModes>
|
||||
</CPedModelInfo__PersonalityDataList>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CWeaponModelInfo__InitDataList>
|
||||
<InitDatas>
|
||||
|
||||
<!-- Battle Axe -->
|
||||
<Item>
|
||||
<modelName>w_am_hose</modelName>
|
||||
<txdName>w_am_hose</txdName>
|
||||
<ptfxAssetName>NULL</ptfxAssetName>
|
||||
<lodDist value="500"/>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
</CWeaponModelInfo__InitDataList>
|
||||
@@ -0,0 +1,236 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CWeaponInfoBlob>
|
||||
<SlotNavigateOrder>
|
||||
<Item>
|
||||
<WeaponSlots>
|
||||
<Item>
|
||||
<OrderNumber value="104" />
|
||||
<Entry>SLOT_HOSE</Entry>
|
||||
</Item>
|
||||
|
||||
</WeaponSlots>
|
||||
</Item>
|
||||
<Item>
|
||||
<WeaponSlots>
|
||||
|
||||
<Item>
|
||||
<OrderNumber value="125" />
|
||||
<Entry>SLOT_HOSE</Entry>
|
||||
</Item>
|
||||
|
||||
</WeaponSlots>
|
||||
</Item>
|
||||
</SlotNavigateOrder>
|
||||
<SlotBestOrder>
|
||||
<WeaponSlots>
|
||||
|
||||
<Item>
|
||||
<OrderNumber value="172" />
|
||||
<Entry>SLOT_HOSE</Entry>
|
||||
</Item>
|
||||
|
||||
</WeaponSlots>
|
||||
</SlotBestOrder>
|
||||
|
||||
<Infos>
|
||||
<Item>
|
||||
<Infos />
|
||||
</Item>
|
||||
<Item>
|
||||
<Infos>
|
||||
<Item type="CWeaponInfo">
|
||||
<Name>WEAPON_HOSE</Name>
|
||||
<Model>w_am_hose</Model>
|
||||
<Audio />
|
||||
<Slot>SLOT_HOSE</Slot>
|
||||
<DamageType>FIRE_EXTINGUISHER</DamageType>
|
||||
<Explosion>
|
||||
<Default>DONTCARE</Default>
|
||||
<HitCar>DONTCARE</HitCar>
|
||||
<HitTruck>DONTCARE</HitTruck>
|
||||
<HitBike>DONTCARE</HitBike>
|
||||
<HitBoat>DONTCARE</HitBoat>
|
||||
<HitPlane>DONTCARE</HitPlane>
|
||||
</Explosion>
|
||||
<FireType>VOLUMETRIC_PARTICLE</FireType>
|
||||
<WheelSlot>WHEEL_THROWABLE_SPECIAL</WheelSlot>
|
||||
<Group>GROUP_FIREEXTINGUISHER</Group>
|
||||
<AmmoInfo ref="AMMO_FIREEXTINGUISHER" />
|
||||
<AimingInfo ref="FIRE_EXT_STRAFE" />
|
||||
<ClipSize value="2000" />
|
||||
<AccuracySpread value="1.000000" />
|
||||
<AccurateModeAccuracyModifier value="0.500000" />
|
||||
<RunAndGunAccuracyModifier value="2.000000" />
|
||||
<RunAndGunAccuracyMaxModifier value="1.000000" />
|
||||
<RecoilAccuracyMax value="1.000000" />
|
||||
<RecoilErrorTime value="0.000000" />
|
||||
<RecoilRecoveryRate value="1.000000" />
|
||||
<RecoilAccuracyToAllowHeadShotAI value="1000.000000" />
|
||||
<MinHeadShotDistanceAI value="1000.000000" />
|
||||
<MaxHeadShotDistanceAI value="1000.000000" />
|
||||
<HeadShotDamageModifierAI value="1000.000000" />
|
||||
<RecoilAccuracyToAllowHeadShotPlayer value="0.175000" />
|
||||
<MinHeadShotDistancePlayer value="5.000000" />
|
||||
<MaxHeadShotDistancePlayer value="40.000000" />
|
||||
<HeadShotDamageModifierPlayer value="18.000000" />
|
||||
<Damage value="0.000000" />
|
||||
<DamageTime value="0.000000" />
|
||||
<DamageTimeInVehicle value="0.000000" />
|
||||
<DamageTimeInVehicleHeadShot value="0.000000" />
|
||||
<HitLimbsDamageModifier value="0.500000" />
|
||||
<NetworkHitLimbsDamageModifier value="0.800000" />
|
||||
<LightlyArmouredDamageModifier value="0.750000" />
|
||||
<Force value="0.000000" />
|
||||
<ForceHitPed value="0.000000" />
|
||||
<ForceHitVehicle value="0.000000" />
|
||||
<ForceHitFlyingHeli value="0.000000" />
|
||||
<OverrideForces />
|
||||
<ForceMaxStrengthMult value="1.000000" />
|
||||
<ForceFalloffRangeStart value="0.000000" />
|
||||
<ForceFalloffRangeEnd value="50.000000" />
|
||||
<ForceFalloffMin value="1.000000" />
|
||||
<ProjectileForce value="0.000000" />
|
||||
<FragImpulse value="250.000000" />
|
||||
<Penetration value="0.010000" />
|
||||
<VerticalLaunchAdjustment value="0.000000" />
|
||||
<DropForwardVelocity value="0.000000" />
|
||||
<Speed value="2000.000000" />
|
||||
<BulletsInBatch value="1" />
|
||||
<BatchSpread value="0.000000" />
|
||||
<ReloadTimeMP value="-1.000000" />
|
||||
<ReloadTimeSP value="-1.000000" />
|
||||
<VehicleReloadTime value="-1.000000" />
|
||||
<AnimReloadRate value="1.000000" />
|
||||
<BulletsPerAnimLoop value="1" />
|
||||
<TimeBetweenShots value="0.000000" />
|
||||
<TimeLeftBetweenShotsWhereShouldFireIsCached value="-1.000000" />
|
||||
<SpinUpTime value="0.000000" />
|
||||
<SpinTime value="0.000000" />
|
||||
<SpinDownTime value="0.000000" />
|
||||
<AlternateWaitTime value="-1.000000" />
|
||||
<BulletBendingNearRadius value="0.000000" />
|
||||
<BulletBendingFarRadius value="0.750000" />
|
||||
<BulletBendingZoomedRadius value="0.375000" />
|
||||
<FirstPersonBulletBendingNearRadius value="0.000000" />
|
||||
<FirstPersonBulletBendingFarRadius value="0.750000" />
|
||||
<FirstPersonBulletBendingZoomedRadius value="0.375000" />
|
||||
<Fx>
|
||||
<EffectGroup>WEAPON_EFFECT_GROUP_PISTOL_SMALL</EffectGroup>
|
||||
<FlashFx>weap_extinguisher</FlashFx>
|
||||
<FlashFxAlt />
|
||||
<MuzzleSmokeFx />
|
||||
<MuzzleSmokeFxMinLevel value="0.000000" />
|
||||
<MuzzleSmokeFxIncPerShot value="0.000000" />
|
||||
<MuzzleSmokeFxDecPerSec value="0.000000" />
|
||||
<ShellFx />
|
||||
<TracerFx />
|
||||
<PedDamageHash>BulletSmall</PedDamageHash>
|
||||
<TracerFxChanceSP value="0.000000" />
|
||||
<TracerFxChanceMP value="0.000000" />
|
||||
<FlashFxChanceSP value="0.000000" />
|
||||
<FlashFxChanceMP value="0.000000" />
|
||||
<FlashFxAltChance value="0.000000" />
|
||||
<FlashFxScale value="1.000000" />
|
||||
<FlashFxLightEnabled value="false" />
|
||||
<FlashFxLightCastsShadows value="true" />
|
||||
<FlashFxLightOffsetDist value="0.000000" />
|
||||
<FlashFxLightRGBAMin x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FlashFxLightRGBAMax x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FlashFxLightIntensityMinMax x="0.000000" y="0.000000" />
|
||||
<FlashFxLightRangeMinMax x="0.000000" y="0.000000" />
|
||||
<FlashFxLightFalloffMinMax x="0.000000" y="0.000000" />
|
||||
<GroundDisturbFxEnabled value="false" />
|
||||
<GroundDisturbFxDist value="5.000000" />
|
||||
<GroundDisturbFxNameDefault />
|
||||
<GroundDisturbFxNameSand />
|
||||
<GroundDisturbFxNameDirt />
|
||||
<GroundDisturbFxNameWater />
|
||||
<GroundDisturbFxNameFoliage />
|
||||
</Fx>
|
||||
<InitialRumbleDuration value="0" />
|
||||
<InitialRumbleIntensity value="0.000000" />
|
||||
<InitialRumbleIntensityTrigger value="0.300000" />
|
||||
<RumbleDuration value="110" />
|
||||
<RumbleIntensity value="0.020000" />
|
||||
<RumbleIntensityTrigger value="0.100000" />
|
||||
<RumbleDamageIntensity value="1.000000" />
|
||||
<NetworkPlayerDamageModifier value="1.000000" />
|
||||
<NetworkPedDamageModifier value="1.000000" />
|
||||
<NetworkHeadShotPlayerDamageModifier value="1.000000" />
|
||||
<LockOnRange value="45.000000" />
|
||||
<WeaponRange value="50.000000" />
|
||||
<BulletDirectionOffsetInDegrees value="0.000000" />
|
||||
<AiSoundRange value="-1.000000" />
|
||||
<AiPotentialBlastEventRange value="-1.000000" />
|
||||
<DamageFallOffRangeMin value="50.000000" />
|
||||
<DamageFallOffRangeMax value="50.000000" />
|
||||
<DamageFallOffModifier value="0.300000" />
|
||||
<VehicleWeaponHash />
|
||||
<DefaultCameraHash>HIP_AIM_CAMERA</DefaultCameraHash>
|
||||
<CoverCameraHash>HIP_AIM_IN_COVER_CAMERA</CoverCameraHash>
|
||||
<CoverReadyToFireCameraHash />
|
||||
<RunAndGunCameraHash>HIP_RUN_AND_GUN_CAMERA</RunAndGunCameraHash>
|
||||
<CinematicShootingCameraHash />
|
||||
<AlternativeOrScopedCameraHash />
|
||||
<RunAndGunAlternativeOrScopedCameraHash />
|
||||
<CinematicShootingAlternativeOrScopedCameraHash />
|
||||
<CameraFov value="45.000000" />
|
||||
<ZoomFactorForAccurateMode value="1.000000" />
|
||||
<RecoilShakeHash />
|
||||
<RecoilShakeHashFirstPerson />
|
||||
<AccuracyOffsetShakeHash />
|
||||
<MinTimeBetweenRecoilShakes value="150" />
|
||||
<RecoilShakeAmplitude value="1.000000" />
|
||||
<ExplosionShakeAmplitude value="-1.000000" />
|
||||
<ReticuleHudPosition x="0.000000" y="0.000000" />
|
||||
<AimOffsetMin x="0.000000" y="0.000000" z="0.000000" />
|
||||
<AimProbeLengthMin value="0.000000" />
|
||||
<AimOffsetMax x="0.000000" y="0.000000" z="0.000000" />
|
||||
<AimProbeLengthMax value="0.000000" />
|
||||
<TorsoAimOffset x="0.150000" y="0.550000" />
|
||||
<TorsoCrouchedAimOffset x="0.200000" y="0.050000" />
|
||||
<LeftHandIkOffset x="0.025000" y="0.110000" z="0.075000" />
|
||||
<ReticuleMinSizeStanding value="0.650000" />
|
||||
<ReticuleMinSizeCrouched value="0.550000" />
|
||||
<ReticuleScale value="0.300000" />
|
||||
<ReticuleStyleHash>WEAPON_PISTOL</ReticuleStyleHash>
|
||||
<FirstPersonReticuleStyleHash />
|
||||
<PickupHash />
|
||||
<MPPickupHash />
|
||||
<HumanNameHash>WT_HOSE</HumanNameHash>
|
||||
<MovementModeConditionalIdle />
|
||||
<StatName>EXTINGUISHER</StatName>
|
||||
<KnockdownCount value="-1" />
|
||||
<KillshotImpulseScale value="1.000000" />
|
||||
<NmShotTuningSet>Normal</NmShotTuningSet>
|
||||
<AttachPoints />
|
||||
<GunFeedBone />
|
||||
<TargetSequenceGroup />
|
||||
<WeaponFlags>CarriedInHand Automatic CanFreeAim AnimCrouchFire UsableOnFoot UsableClimbing AllowEarlyExitFromFireAnimAfterBulletFired DoesRevivableDamage CanBeFiredLikeGun NonViolent SuppressGunshotEvent</WeaponFlags>
|
||||
<TintSpecValues ref="TINT_DEFAULT" />
|
||||
<FiringPatternAliases ref="NULL" />
|
||||
<ReloadUpperBodyFixupExpressionData ref="default" />
|
||||
<AmmoDiminishingRate value="0" />
|
||||
<AimingBreathingAdditiveWeight value="1.000000" />
|
||||
<FiringBreathingAdditiveWeight value="1.000000" />
|
||||
<StealthAimingBreathingAdditiveWeight value="0.000000" />
|
||||
<StealthFiringBreathingAdditiveWeight value="0.000000" />
|
||||
<AimingLeanAdditiveWeight value="1.000000" />
|
||||
<FiringLeanAdditiveWeight value="1.000000" />
|
||||
<StealthAimingLeanAdditiveWeight value="0.000000" />
|
||||
<StealthFiringLeanAdditiveWeight value="0.000000" />
|
||||
<ExpandPedCapsuleRadius value="0.000000" />
|
||||
<AudioCollisionHash />
|
||||
<HudDamage value="0" />
|
||||
<HudSpeed value="100" />
|
||||
<HudCapacity value="100" />
|
||||
<HudAccuracy value="10" />
|
||||
<HudRange value="35" />
|
||||
</Item>
|
||||
</Infos>
|
||||
</Item>
|
||||
</Infos>
|
||||
|
||||
<Name>Hose</Name>
|
||||
</CWeaponInfoBlob>
|
||||
@@ -0,0 +1,43 @@
|
||||
-- Please do not rename this resource folder
|
||||
|
||||
fx_version 'cerulean'
|
||||
|
||||
game 'gta5'
|
||||
lua54 'yes'
|
||||
|
||||
author 'London Studios'
|
||||
description 'Smart Hose'
|
||||
version 'Alpha'
|
||||
|
||||
shared_script 'config.lua'
|
||||
|
||||
client_scripts {
|
||||
'cl_smarthose.lua',
|
||||
'cl_utils.lua'
|
||||
}
|
||||
|
||||
files {
|
||||
'data/pedpersonality.meta',
|
||||
'data/weaponarchetypes.meta',
|
||||
'data/weapons.meta',
|
||||
'data/weaponanimations.meta',
|
||||
}
|
||||
|
||||
server_scripts {
|
||||
'sv_smarthose.lua',
|
||||
'sv_utils.lua'
|
||||
}
|
||||
|
||||
escrow_ignore {
|
||||
'config.lua',
|
||||
'data/*.meta',
|
||||
'sv_utils.lua',
|
||||
'stream/rope.ytd',
|
||||
'cl_utils.lua',
|
||||
}
|
||||
|
||||
data_file 'WEAPONINFO_FILE' 'data/weapons.meta'
|
||||
data_file 'WEAPON_METADATA_FILE' 'data/weaponarchetypes.meta'
|
||||
data_file 'WEAPON_ANIMATIONS_FILE' 'data/weaponanimations.meta'
|
||||
data_file 'PED_PERSONALITY_FILE' 'data/pedpersonality.meta'
|
||||
dependency '/assetpacks'
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,90 @@
|
||||
if ConfigHose.JobCheck.ESX.Enabled then
|
||||
ESX = exports["es_extended"]:getSharedObject()
|
||||
end
|
||||
|
||||
if ConfigHose.JobCheck.vRP.Enabled then
|
||||
local Tunnel = module("vrp", "lib/Tunnel")
|
||||
local Proxy = module("vrp", "lib/Proxy")
|
||||
vRP = Proxy.getInterface("vRP")
|
||||
vRPclient = Tunnel.getInterface("vRP","vRP")
|
||||
end
|
||||
|
||||
if ConfigHose.JobCheck.QBCore.Enabled then
|
||||
QBCore = exports['qb-core']:GetCoreObject()
|
||||
end
|
||||
|
||||
function UserHasPermission(source, location)
|
||||
|
||||
if not location.EnablePermissions then
|
||||
return true
|
||||
end
|
||||
|
||||
if location.AcePermissions.Enabled then
|
||||
if IsPlayerAceAllowed(source, location.AcePermissions.Permission) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
-- ESX Permissions
|
||||
if location.ESX.Enabled then
|
||||
local xPlayer = ESX.GetPlayerFromId(source)
|
||||
if location.ESX.CheckJob.Enabled then
|
||||
for k, v in pairs(location.ESX.CheckJob.Jobs) do
|
||||
if xPlayer.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- vRP Permission
|
||||
if location.vRP.Enabled then
|
||||
if location.vRP.CheckPermission.Enabled then
|
||||
for k, v in pairs(location.vRP.CheckPermission.Permissions) do
|
||||
if vRP.hasPermission({vRP.getUserId({source}),v}) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if location.vRP.CheckGroup.Enabled then
|
||||
for k, v in pairs(location.vRP.CheckGroup.Groups) do
|
||||
if vRP.hasGroup({vRP.getUserId({source}),v}) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- QBCore Permission
|
||||
if location.QBCore.Enabled then
|
||||
local player = QBCore.Functions.GetPlayer(source)
|
||||
if location.QBCore.CheckJob.Enabled then
|
||||
for k, v in pairs(location.QBCore.CheckJob.Jobs) do
|
||||
if player.PlayerData.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
if location.QBCore.CheckPermission.Enabled then
|
||||
for k, v in pairs(location.QBCore.CheckPermission.Permissions) do
|
||||
if QBCore.Functions.HasPermission(source, v) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if location.QBX.Enabled then
|
||||
local player = exports.qbx_core:GetPlayer(source)
|
||||
if location.QBX.CheckJob.Enabled then
|
||||
for k, v in pairs(location.QBX.CheckJob.Jobs) do
|
||||
if player.PlayerData.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
||||
Binary file not shown.
@@ -0,0 +1,5 @@
|
||||
[{000214A0-0000-0000-C000-000000000046}]
|
||||
Prop3=19,11
|
||||
[InternetShortcut]
|
||||
IDList=
|
||||
URL=https://docs.londonstudios.net/
|
||||
Binary file not shown.
@@ -0,0 +1,142 @@
|
||||
vRP = nil
|
||||
ESX = nil
|
||||
|
||||
if Config.Notifications.Enabled and Config.Notifications.Framework.vRP then
|
||||
local Tunnel = module("vrp", "lib/Tunnel")
|
||||
local Proxy = module("vrp", "lib/Proxy")
|
||||
vRP = Proxy.getInterface("vRP")
|
||||
end
|
||||
|
||||
if Config.Notifications.Enabled and Config.Notifications.Framework.ESX then
|
||||
ESX = exports["es_extended"]:getSharedObject()
|
||||
end
|
||||
|
||||
if Config.EnablePositioningCommand then
|
||||
TriggerEvent('chat:addSuggestion', '/'.."findhosepositioning", "Find positioning of the hose/supply line on your fire truck")
|
||||
|
||||
RegisterCommand("findhosepositioning", function(source, args)
|
||||
|
||||
local ped = PlayerPedId()
|
||||
local targetVehicle = GetVehiclePedIsIn(ped, false)
|
||||
|
||||
if targetVehicle == nil or targetVehicle == 0 then
|
||||
Notify("No vehicle found!")
|
||||
else
|
||||
local model = `p_ld_soc_ball_01`
|
||||
SetEntityAlpha(targetVehicle, 150, false)
|
||||
RequestModel(model)
|
||||
while not HasModelLoaded(model) do Wait(0) end
|
||||
local ballProp = CreateObject(model, coords, false, false, false)
|
||||
|
||||
while not DoesEntityExist(ballProp) do Wait(0) end
|
||||
|
||||
SetModelAsNoLongerNeeded(model)
|
||||
local offSet = {0.0, 0.0, 0.0}
|
||||
local rotation = {0.0, 0.0, 0.0}
|
||||
local offSetComplete = false
|
||||
while not offSetComplete do
|
||||
if targetVehicle ~= nil and targetVehicle ~= 0 then
|
||||
DetachEntity(ballProp, true, false)
|
||||
AttachEntityToEntity(ballProp, targetVehicle, -1, offSet[1], offSet[2], offSet[3], rotation[1], rotation[2], rotation[3], true, false, true, false, 1, true)
|
||||
if not IsControlReleased(0, 207) then --page down
|
||||
offSet = {offSet[1], offSet[2], offSet[3] - 0.01}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 208) then --page up
|
||||
offSet = {offSet[1], offSet[2], offSet[3] + 0.01}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 173) then --arrow down
|
||||
offSet = {offSet[1], offSet[2] - 0.01, offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 172) then --arrow up
|
||||
offSet = {offSet[1], offSet[2] + 0.01, offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 174) then --arrow left
|
||||
offSet = {offSet[1] - 0.01, offSet[2], offSet[3]}
|
||||
end
|
||||
|
||||
if not IsControlReleased(0, 175) then --arrow right
|
||||
offSet = {offSet[1] + 0.01, offSet[2], offSet[3]}
|
||||
end
|
||||
|
||||
if IsControlJustPressed(0, 191) then -- enter - finish
|
||||
offSetComplete = true
|
||||
end
|
||||
end
|
||||
|
||||
Wait(0)
|
||||
end
|
||||
|
||||
Notify("OffSet Values are now printed in your console")
|
||||
print("OffSet: {"..offSet[1]..", "..offSet[2]..", "..offSet[3].."}")
|
||||
DeleteEntity(ballProp)
|
||||
ResetEntityAlpha(targetVehicle)
|
||||
end
|
||||
|
||||
end, false)
|
||||
end
|
||||
|
||||
function Notify(text)
|
||||
|
||||
if not Config.Notifications.Enabled then
|
||||
return
|
||||
end
|
||||
|
||||
if Config.Notifications.Framework.ESX then
|
||||
if ESX ~= nil then
|
||||
ESX.ShowNotification(text)
|
||||
end
|
||||
elseif Config.Notifications.Framework.QBCore then
|
||||
TriggerEvent('QBCore:Notify', text, 'info')
|
||||
elseif Config.Notifications.Framework.QBX then
|
||||
exports.qbx_core:Notify(text, 'primary')
|
||||
elseif Config.Notifications.Framework.vRP then
|
||||
vRP.notify(source, {text})
|
||||
elseif Config.Notifications.Framework.okok then
|
||||
exports['okokNotify']:Alert("Supply Line", text, 2000, 'info', true)
|
||||
else
|
||||
showBaseNotification(text)
|
||||
end
|
||||
end
|
||||
|
||||
function showBaseNotification(message)
|
||||
-- Base game notifications
|
||||
SetNotificationTextEntry("STRING")
|
||||
AddTextComponentString(message)
|
||||
DrawNotification(0,1)
|
||||
end
|
||||
|
||||
function DisplayHelpText(text)
|
||||
SetTextComponentFormat("STRING")
|
||||
AddTextComponentString(text)
|
||||
DisplayHelpTextFromStringLabel(0, 0, ConfigHose.Notifications.HelpTextSound, -1)
|
||||
end
|
||||
|
||||
function drawInstructionalText(msg, coords)
|
||||
AddTextEntry('instructionalText', msg)
|
||||
SetFloatingHelpTextWorldPosition(1, coords.x, coords.y, coords.z)
|
||||
SetFloatingHelpTextStyle(1, 1, 2, -1, 3, 0)
|
||||
BeginTextCommandDisplayHelp('instructionalText')
|
||||
AddTextComponentSubstringPlayerName(msg)
|
||||
EndTextCommandDisplayHelp(2, false, false, -1)
|
||||
end
|
||||
|
||||
function DrawTextOnScreen(text, x, y, scale, r, g, b, a, center)
|
||||
SetTextFont(0)
|
||||
SetTextProportional(1)
|
||||
SetTextScale(scale, scale)
|
||||
SetTextColour(r, g, b, a)
|
||||
SetTextDropshadow(0, 0, 0, 0, 255)
|
||||
SetTextEdge(2, 0, 0, 0, 150)
|
||||
SetTextDropShadow()
|
||||
SetTextOutline()
|
||||
SetTextEntry("STRING")
|
||||
if center then
|
||||
SetTextCentre(1)
|
||||
end
|
||||
AddTextComponentString(text)
|
||||
DrawText(x, y)
|
||||
end
|
||||
@@ -0,0 +1,210 @@
|
||||
Config = {
|
||||
SupplyLineKeys = {
|
||||
ConnectHydrant = 20, -- Z
|
||||
StartStopFilling = 74, -- H
|
||||
},
|
||||
|
||||
-- if useBone = true, "offsets" field will be ignored; otherwise custom offsets are enabled.
|
||||
VehicleSettings = {
|
||||
[`britishladder`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = 0.8710, y = 0.1550, z = 0.0140 },
|
||||
},
|
||||
},
|
||||
[`britishladderels`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = 0.8710, y = 0.1550, z = 0.0140 },
|
||||
},
|
||||
},
|
||||
[`rearmount`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.07, y = 0.9, z = -0.1 },
|
||||
},
|
||||
},
|
||||
[`rearmountels`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = -1.07, y = 0.9, z = -0.1 },
|
||||
},
|
||||
},
|
||||
[`ldfoam`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = 1.03, y = 0.1, z = -0.02 },
|
||||
{ x = -0.93, y = 0.1, z = -0.52 },
|
||||
},
|
||||
},
|
||||
[`ldfoamels`] = {
|
||||
useBone = false,
|
||||
bones = {}, -- to add bones do "bone_name" you can have multiple by doing "bonename", "bonename_2"
|
||||
offsets = {
|
||||
{ x = 1.03, y = 0.1, z = -0.02 },
|
||||
{ x = -0.93, y = 0.1, z = -0.52 },
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
EnablePositioningCommand = false,
|
||||
-- This enables the /findhosepositioning command to help you find the right vehicle offsets for either
|
||||
-- the hose connection or the supply line connection point. See our documentation for more info.
|
||||
|
||||
HydrantOffsets = {
|
||||
{ model = `prop_fire_hydrant_4`, offsets = {x = 0.0, y = -0.27, z = 0.58} },
|
||||
{ model = `prop_fire_hydrant_2`, offsets = {x = 0.1, y = 0.0, z = 0.4} },
|
||||
{ model = `prop_fire_hydrant_1`, offsets = {x = 0.05, y = 0.0, z = 0.6} },
|
||||
},
|
||||
|
||||
Translations = {
|
||||
stopFilling = "Press Z to disconnect line\nPress H to stop filling",
|
||||
startFilling = "Press Z to disconnect line\nPress H to fill tank with water",
|
||||
thirdEyeConnect = "Connect line to vehicle",
|
||||
thirdEyeDisconnect ="Disconnect line from vehicle",
|
||||
thirdEyeStartFill = "Start filling up vehicle",
|
||||
thirdEyeStopFill = "Stop filling up vehicle",
|
||||
connectLine = "Press Z to connect line to truck",
|
||||
waterLevel = "Water Level:",
|
||||
noPermission = "You do not have access to use the supply line.",
|
||||
placeHydrantCommandHelp = "Place or remove a fire hydrant",
|
||||
placeHydrantCommandHelpArgument = "place/remove",
|
||||
placeHydrantCommandSuccess = "Hydrant placed successfully!",
|
||||
placeHydrantCommandCancel = "Placement cancelled!",
|
||||
removeHydrantCommandSuccess = "Hydrant removed!",
|
||||
noVehicleNearby = "No vehicle nearby found!",
|
||||
cantHoldWater = "This vehicle cannot hold water",
|
||||
},
|
||||
|
||||
PlaceHydrantCommand = {
|
||||
Enabled = true,
|
||||
CommandName = "hydrant",
|
||||
PlaceArgument = "place",
|
||||
RemoveArgument = "remove",
|
||||
Permissions = {
|
||||
EnablePermissions = false,
|
||||
AcePermissions = {
|
||||
Enabled = false,
|
||||
-- The permission name will be command.hydrant
|
||||
},
|
||||
|
||||
ESX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use ESX job check
|
||||
Jobs = {"fireman"} -- A user can have any of the following jobs, allowing you to add multiple
|
||||
}
|
||||
},
|
||||
-- We've added vRP integration. All you need to do is enable it below. Then, configure if you wish to check for groups or permissions, or even both
|
||||
vRP = {
|
||||
Enabled = false,
|
||||
CheckGroup = {
|
||||
Enabled = false, -- Enable this to use vRP group check
|
||||
Groups = {"fireman"}, -- A user can have any of the following groups, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use vRP permission check
|
||||
Permissions = {"fireman.usehose"} -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBCore integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBCore = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBCore job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use QBCore permission check
|
||||
permissions = {"fireman.usehose"}, -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBX integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBX job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Notifications = {
|
||||
Enabled = true,
|
||||
Framework = {
|
||||
QBCore = false,
|
||||
QBX = false,
|
||||
ESX = false,
|
||||
vRP = false,
|
||||
okok = false,
|
||||
}
|
||||
},
|
||||
|
||||
InteractType = {
|
||||
HydrantInteraction = {
|
||||
Drawtext = true,
|
||||
ScreenPrompt = false,
|
||||
WorldInteraction = false,
|
||||
|
||||
ThirdEye = {
|
||||
enabled = false,
|
||||
qbTarget = false,
|
||||
oxTarget = false,
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
JobCheck = {
|
||||
EnablePermissions = false, -- If set to false, all below job checks will be disabled, even if they are enabled in the config.lua
|
||||
AcePermissions = {
|
||||
Enabled = false,
|
||||
Permission = "usehose"
|
||||
},
|
||||
|
||||
ESX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use ESX job check
|
||||
Jobs = {"fireman"} -- A user can have any of the following jobs, allowing you to add multiple
|
||||
}
|
||||
},
|
||||
-- We've added vRP integration. All you need to do is enable it below. Then, configure if you wish to check for groups or permissions, or even both
|
||||
vRP = {
|
||||
Enabled = false,
|
||||
CheckGroup = {
|
||||
Enabled = false, -- Enable this to use vRP group check
|
||||
Groups = {"fireman"}, -- A user can have any of the following groups, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use vRP permission check
|
||||
Permissions = {"fireman.usehose"} -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBCore integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBCore = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBCore job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
},
|
||||
CheckPermission = {
|
||||
Enabled = false, -- Enable this to use QBCore permission check
|
||||
permissions = {"fireman.usehose"}, -- A user can have any of the following permissions, allowing you to add multiple
|
||||
},
|
||||
},
|
||||
-- We've added QBX integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
|
||||
QBX = {
|
||||
Enabled = false,
|
||||
CheckJob = {
|
||||
Enabled = false, -- Enable this to use QBX job check
|
||||
Jobs = {"fireman"}, -- A user can have any of the following jobs, meaning you can add different jobs
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
-- Please do not rename this resource folder
|
||||
|
||||
fx_version 'cerulean'
|
||||
game 'gta5'
|
||||
use_experimental_fxv2_oal 'yes'
|
||||
lua54 'yes'
|
||||
|
||||
author 'London Studios'
|
||||
description 'Supply-Line'
|
||||
version '1.0.0'
|
||||
|
||||
shared_script 'config.lua'
|
||||
|
||||
client_scripts {
|
||||
'cl_supplyline.lua',
|
||||
'cl_utils.lua',
|
||||
}
|
||||
|
||||
server_scripts {
|
||||
'sv_supplyline.lua',
|
||||
'sv_utils.lua'
|
||||
}
|
||||
|
||||
escrow_ignore {
|
||||
'config.lua',
|
||||
'sv_utils.lua',
|
||||
'cl_utils.lua',
|
||||
}
|
||||
dependency '/assetpacks'
|
||||
Binary file not shown.
@@ -0,0 +1,94 @@
|
||||
if Config.JobCheck.ESX.Enabled then
|
||||
ESX = exports["es_extended"]:getSharedObject()
|
||||
end
|
||||
|
||||
if Config.JobCheck.vRP.Enabled then
|
||||
local Tunnel = module("vrp", "lib/Tunnel")
|
||||
local Proxy = module("vrp", "lib/Proxy")
|
||||
vRP = Proxy.getInterface("vRP")
|
||||
vRPclient = Tunnel.getInterface("vRP","vRP")
|
||||
end
|
||||
|
||||
if Config.JobCheck.QBCore.Enabled then
|
||||
QBCore = exports['qb-core']:GetCoreObject()
|
||||
end
|
||||
|
||||
function UserHasPermission(source, location)
|
||||
|
||||
if not location.EnablePermissions then
|
||||
return true
|
||||
end
|
||||
|
||||
if location.AcePermissions.Enabled then
|
||||
if location.AcePermissions.Permission ~= nil then
|
||||
if IsPlayerAceAllowed(source, location.AcePermissions.Permission) then
|
||||
return true
|
||||
end
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
-- ESX Permissions
|
||||
if location.ESX.Enabled then
|
||||
local xPlayer = ESX.GetPlayerFromId(source)
|
||||
if location.ESX.CheckJob.Enabled then
|
||||
for k, v in pairs(location.ESX.CheckJob.Jobs) do
|
||||
if xPlayer.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- vRP Permission
|
||||
if location.vRP.Enabled then
|
||||
if location.vRP.CheckPermission.Enabled then
|
||||
for k, v in pairs(location.vRP.CheckPermission.Permissions) do
|
||||
if vRP.hasPermission({vRP.getUserId({source}),v}) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if location.vRP.CheckGroup.Enabled then
|
||||
for k, v in pairs(location.vRP.CheckGroup.Groups) do
|
||||
if vRP.hasGroup({vRP.getUserId({source}),v}) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- QBCore Permission
|
||||
if location.QBCore.Enabled then
|
||||
local player = QBCore.Functions.GetPlayer(source)
|
||||
if location.QBCore.CheckJob.Enabled then
|
||||
for k, v in pairs(location.QBCore.CheckJob.Jobs) do
|
||||
if player.PlayerData.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
if location.QBCore.CheckPermission.Enabled then
|
||||
for k, v in pairs(location.QBCore.CheckPermission.permissions) do
|
||||
if QBCore.Functions.HasPermission(source, v) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if location.QBX.Enabled then
|
||||
local player = exports.qbx_core:GetPlayer(source)
|
||||
if location.QBX.CheckJob.Enabled then
|
||||
for k, v in pairs(location.QBX.CheckJob.Jobs) do
|
||||
if player.PlayerData.job.name == v then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
||||
@@ -914,24 +914,6 @@ data_file 'VEHICLE_METADATA_FILE' 'data/33hellcat/vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'data/33hellcat/carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'data/33hellcat/carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'data/33hellcat/dlctext.meta'
|
||||
|
||||
-- ghoulchall24
|
||||
files {
|
||||
'data/ghoulchall24/vehicles.meta',
|
||||
'data/ghoulchall24/carvariations.meta',
|
||||
'data/ghoulchall24/carcols.meta',
|
||||
'data/ghoulchall24/handling.meta',
|
||||
'data/ghoulchall24/vehiclelayouts.meta',
|
||||
}
|
||||
|
||||
data_file 'HANDLING_FILE' 'data/ghoulchall24/handling.meta'
|
||||
data_file 'VEHICLE_METADATA_FILE' 'data/ghoulchall24/vehicles.meta'
|
||||
data_file 'CARCOLS_FILE' 'data/ghoulchall24/carcols.meta'
|
||||
data_file 'VEHICLE_VARIATION_FILE' 'data/ghoulchall24/carvariations.meta'
|
||||
data_file 'VEHICLE_LAYOUTS_FILE' 'data/ghoulchall24/dlctext.meta'
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,659 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfoVarGlobal>
|
||||
<Kits>
|
||||
<Item>
|
||||
<kitName>905_ghoulchall24_modkit</kitName>
|
||||
<id value="905" />
|
||||
<kitType>MKT_SPECIAL</kitType>
|
||||
<visibleMods>
|
||||
<Item>
|
||||
<modelName>ghoulchall24_badges</modelName>
|
||||
<modShopLabel>ghoulchall24_badges</modShopLabel>
|
||||
<linkedModels />
|
||||
<turnOffBones>
|
||||
<Item>misc_w</Item>
|
||||
</turnOffBones>
|
||||
<type>VMT_WING_L</type>
|
||||
<bone>chassis</bone>
|
||||
<collisionBone>chassis</collisionBone>
|
||||
<cameraPos>VMCP_DEFAULT</cameraPos>
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<turnOffExtra value="false" />
|
||||
<disableBonnetCamera value="false" />
|
||||
<allowBonnetSlide value="true" />
|
||||
</Item>
|
||||
<Item>
|
||||
<modelName>ghoulchall24_badgez</modelName>
|
||||
<modShopLabel>ghoulchall24_badgez</modShopLabel>
|
||||
<linkedModels />
|
||||
<turnOffBones>
|
||||
<Item>misc_w</Item>
|
||||
</turnOffBones>
|
||||
<type>VMT_WING_L</type>
|
||||
<bone>chassis</bone>
|
||||
<collisionBone>chassis</collisionBone>
|
||||
<cameraPos>VMCP_DEFAULT</cameraPos>
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<turnOffExtra value="false" />
|
||||
<disableBonnetCamera value="false" />
|
||||
<allowBonnetSlide value="true" />
|
||||
</Item>
|
||||
</visibleMods>
|
||||
<linkMods>
|
||||
</linkMods>
|
||||
<statMods>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="25" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<type>VMT_ENGINE</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="50" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<type>VMT_ENGINE</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="75" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<type>VMT_ENGINE</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="100" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<type>VMT_ENGINE</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="25" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_BRAKES</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="50" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_BRAKES</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="100" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_BRAKES</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="25" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_GEARBOX</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="50" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_GEARBOX</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="100" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="5" />
|
||||
<type>VMT_GEARBOX</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="20" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_ARMOUR</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="40" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="10" />
|
||||
<type>VMT_ARMOUR</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="60" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="20" />
|
||||
<type>VMT_ARMOUR</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="80" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="30" />
|
||||
<type>VMT_ARMOUR</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="100" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="40" />
|
||||
<type>VMT_ARMOUR</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="5" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_SUSPENSION</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="10" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_SUSPENSION</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="15" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_SUSPENSION</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="20" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_SUSPENSION</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier />
|
||||
<modifier value="25" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_SUSPENSION</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_TRUCK</identifier>
|
||||
<modifier value="1766676233" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_COP</identifier>
|
||||
<modifier value="2904189469" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_CLOWN</identifier>
|
||||
<modifier value="2543206147" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_MUSICAL_1</identifier>
|
||||
<modifier value="1732399718" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_MUSICAL_2</identifier>
|
||||
<modifier value="2046162893" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_MUSICAL_3</identifier>
|
||||
<modifier value="2194999691" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_MUSICAL_4</identifier>
|
||||
<modifier value="2508304100" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_MUSICAL_5</identifier>
|
||||
<modifier value="3707223535" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HORN_SAD_TROMBONE</identifier>
|
||||
<modifier value="632950117" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_1</identifier>
|
||||
<modifier value="3628534289" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_2</identifier>
|
||||
<modifier value="3892554122" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_3</identifier>
|
||||
<modifier value="4112892878" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_4</identifier>
|
||||
<modifier value="116877169" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_5</identifier>
|
||||
<modifier value="2684983719" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_6</identifier>
|
||||
<modifier value="2982690084" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>MUSICAL_HORN_BUSINESS_7</identifier>
|
||||
<modifier value="3203290992" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_C0</identifier>
|
||||
<modifier value="771284519" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_D0</identifier>
|
||||
<modifier value="2586621229" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_E0</identifier>
|
||||
<modifier value="283386134" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_F0</identifier>
|
||||
<modifier value="3884502400" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_G0</identifier>
|
||||
<modifier value="265723083" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_A0</identifier>
|
||||
<modifier value="1746883687" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_B0</identifier>
|
||||
<modifier value="1919870950" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>DLC_BUSI2_C_MAJOR_NOTES_C1</identifier>
|
||||
<modifier value="1085277077" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HIPSTER_HORN_1</identifier>
|
||||
<modifier value="444549672" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HIPSTER_HORN_2</identifier>
|
||||
<modifier value="1603064898" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HIPSTER_HORN_3</identifier>
|
||||
<modifier value="240366033" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>HIPSTER_HORN_4</identifier>
|
||||
<modifier value="960137118" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>INDEP_HORN_1</identifier>
|
||||
<modifier value="3572144790" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>INDEP_HORN_2</identifier>
|
||||
<modifier value="3801396714" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>INDEP_HORN_3</identifier>
|
||||
<modifier value="2843657151" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>INDEP_HORN_4</identifier>
|
||||
<modifier value="3341811489" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>LUXE_HORN_1</identifier>
|
||||
<modifier value="3199657341" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>LUXE_HORN_2</identifier>
|
||||
<modifier value="2900378064" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>LUXE_HORN_3</identifier>
|
||||
<modifier value="3956195248" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>LUXORY_HORN_1</identifier>
|
||||
<modifier value="676333254" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>LUXURY_HORN_2</identifier>
|
||||
<modifier value="2099578296" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>LUXURY_HORN_3</identifier>
|
||||
<modifier value="1373384483" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>ORGAN_HORN_LOOP_01</identifier>
|
||||
<modifier value="2916775806" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>ORGAN_HORN_LOOP_01_PREVIEW</identifier>
|
||||
<modifier value="3714706952" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>ORGAN_HORN_LOOP_02</identifier>
|
||||
<modifier value="2611860261" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>ORGAN_HORN_LOOP_02_PREVIEW</identifier>
|
||||
<modifier value="3206770359" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>LOWRIDER_HORN_1</identifier>
|
||||
<modifier value="310529291" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>LOWRIDER_HORN_1_PREVIEW</identifier>
|
||||
<modifier value="2965568987" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<Item>
|
||||
<identifier>LOWRIDER_HORN_2</identifier>
|
||||
<modifier value="55291550" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
<!-- PREVIEW HORN - FOR MOD SHOP USE ONLY -->
|
||||
<Item>
|
||||
<identifier>LOWRIDER_HORN_2_PREVIEW</identifier>
|
||||
<modifier value="965054819" />
|
||||
<audioApply value="1.000000" />
|
||||
<weight value="0" />
|
||||
<type>VMT_HORN</type>
|
||||
</Item>
|
||||
</statMods>
|
||||
<slotNames />
|
||||
<liveryNames>
|
||||
<Item>shaker_sign_1</Item>
|
||||
<Item>shaker_sign_2</Item>
|
||||
<Item>shaker_sign_3</Item>
|
||||
</liveryNames>
|
||||
</Item>
|
||||
</Kits>
|
||||
<Lights>
|
||||
<Item>
|
||||
<id value="903" />
|
||||
<indicator>
|
||||
<intensity value="0.375000" />
|
||||
<falloffMax value="2.500000" />
|
||||
<falloffExponent value="8.000000" />
|
||||
<innerConeAngle value="30.000000" />
|
||||
<outerConeAngle value="80.000000" />
|
||||
<emmissiveBoost value="false" />
|
||||
<color value="0xFFFF8000" />
|
||||
</indicator>
|
||||
<rearIndicatorCorona>
|
||||
<size value="0.000000" />
|
||||
<size_far value="0.000000" />
|
||||
<intensity value="0.000000" />
|
||||
<intensity_far value="0.000000" />
|
||||
<color value="0x00000000" />
|
||||
<numCoronas value="1" />
|
||||
<distBetweenCoronas value="128" />
|
||||
<distBetweenCoronas_far value="255" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="0.000000" />
|
||||
<zRotation value="0.000000" />
|
||||
<zBias value="0.250000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</rearIndicatorCorona>
|
||||
<frontIndicatorCorona>
|
||||
<size value="0.000000" />
|
||||
<size_far value="0.000000" />
|
||||
<intensity value="0.000000" />
|
||||
<intensity_far value="0.000000" />
|
||||
<color value="0x00000000" />
|
||||
<numCoronas value="1" />
|
||||
<distBetweenCoronas value="128" />
|
||||
<distBetweenCoronas_far value="255" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="0.000000" />
|
||||
<zRotation value="0.000000" />
|
||||
<zBias value="0.250000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</frontIndicatorCorona>
|
||||
<tailLight>
|
||||
<intensity value="0.250000" />
|
||||
<falloffMax value="4.000000" />
|
||||
<falloffExponent value="16.000000" />
|
||||
<innerConeAngle value="45.000000" />
|
||||
<outerConeAngle value="90.000000" />
|
||||
<emmissiveBoost value="false" />
|
||||
<color value="0xFFFF0000" />
|
||||
</tailLight>
|
||||
<tailLightCorona>
|
||||
<size value="0.000000" />
|
||||
<size_far value="0.000000" />
|
||||
<intensity value="0.000000" />
|
||||
<intensity_far value="0.000000" />
|
||||
<color value="0xFFFF1E05" />
|
||||
<numCoronas value="2" />
|
||||
<distBetweenCoronas value="40" />
|
||||
<distBetweenCoronas_far value="1" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="3.112000" />
|
||||
<zRotation value="0.333000" />
|
||||
<zBias value="0.232000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</tailLightCorona>
|
||||
<tailLightMiddleCorona>
|
||||
<size value="0.000000" />
|
||||
<size_far value="0.000000" />
|
||||
<intensity value="0.000000" />
|
||||
<intensity_far value="0.000000" />
|
||||
<color value="0x00000000" />
|
||||
<numCoronas value="1" />
|
||||
<distBetweenCoronas value="128" />
|
||||
<distBetweenCoronas_far value="255" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="0.000000" />
|
||||
<zRotation value="0.000000" />
|
||||
<zBias value="0.250000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</tailLightMiddleCorona>
|
||||
<headLight>
|
||||
<intensity value="1.000000" />
|
||||
<falloffMax value="35.000000" />
|
||||
<falloffExponent value="16.000000" />
|
||||
<innerConeAngle value="0.000000" />
|
||||
<outerConeAngle value="60.209999" />
|
||||
<emmissiveBoost value="false" />
|
||||
<color value="0xFFFFFFCC" />
|
||||
<textureName>VehicleLight_car_standardmodern</textureName>
|
||||
<mirrorTexture value="false" />
|
||||
</headLight>
|
||||
<headLightCorona>
|
||||
<size value="0.000000" />
|
||||
<size_far value="0.000000" />
|
||||
<intensity value="0.000000" />
|
||||
<intensity_far value="0.000000" />
|
||||
<color value="0xFFFFFFFF" />
|
||||
<numCoronas value="1" />
|
||||
<distBetweenCoronas value="128" />
|
||||
<distBetweenCoronas_far value="255" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="0.094000" />
|
||||
<zRotation value="0.478000" />
|
||||
<zBias value="0.250000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</headLightCorona>
|
||||
<reversingLight>
|
||||
<intensity value="0.500000" />
|
||||
<falloffMax value="4.000000" />
|
||||
<falloffExponent value="32.000000" />
|
||||
<innerConeAngle value="45.000000" />
|
||||
<outerConeAngle value="90.000000" />
|
||||
<emmissiveBoost value="false" />
|
||||
<color value="0xFFFFFFFF" />
|
||||
</reversingLight>
|
||||
<reversingLightCorona>
|
||||
<size value="0.800000" />
|
||||
<size_far value="2.000000" />
|
||||
<intensity value="1.500000" />
|
||||
<intensity_far value="1.000000" />
|
||||
<color value="0x00F7F7F7" />
|
||||
<numCoronas value="1" />
|
||||
<distBetweenCoronas value="128" />
|
||||
<distBetweenCoronas_far value="255" />
|
||||
<xRotation value="0.000000" />
|
||||
<yRotation value="0.000000" />
|
||||
<zRotation value="0.000000" />
|
||||
<zBias value="0.250000" />
|
||||
<pullCoronaIn value="false" />
|
||||
</reversingLightCorona>
|
||||
<name>ghoulchall24</name>
|
||||
</Item>
|
||||
</Lights>
|
||||
</CVehicleModelInfoVarGlobal>
|
||||
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CVehicleModelInfoVariation>
|
||||
<variationData>
|
||||
<Item>
|
||||
<modelName>ghoulchall24</modelName>
|
||||
<colors>
|
||||
<Item>
|
||||
<indices content="char_array">
|
||||
3
|
||||
12
|
||||
4
|
||||
0
|
||||
103
|
||||
0
|
||||
</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>
|
||||
</colors>
|
||||
<kits>
|
||||
<Item>905_ghoulchall24_modkit</Item>
|
||||
</kits>
|
||||
<windowsWithExposedEdges/>
|
||||
<plateProbabilities>
|
||||
<Probabilities>
|
||||
<Item>
|
||||
<Name>White Plate 2</Name>
|
||||
<Value value="80"/>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>Blue Plate</Name>
|
||||
<Value value="10"/>
|
||||
</Item>
|
||||
<Item>
|
||||
<Name>Yellow Plate</Name>
|
||||
<Value value="10"/>
|
||||
</Item>
|
||||
</Probabilities>
|
||||
</plateProbabilities>
|
||||
<lightSettings value="1270"/>
|
||||
<sirenSettings value="0"/>
|
||||
</Item>
|
||||
</variationData>
|
||||
</CVehicleModelInfoVariation>
|
||||
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CExtraTextMetaFile>
|
||||
<hasGlobalTextFile value="true"/>
|
||||
<hasAdditionalText value="false"/>
|
||||
<isTitleUpdate value="false"/>
|
||||
</CExtraTextMetaFile>
|
||||
@@ -1,67 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<CHandlingDataMgr>
|
||||
<HandlingData>
|
||||
<Item type="CHandlingData">
|
||||
<handlingName>ghoulchall24</handlingName>
|
||||
<fMass value="2100.000000" />
|
||||
<fInitialDragCoeff value="7.000000" />
|
||||
<fPercentSubmerged value="85.000000" />
|
||||
<vecCentreOfMassOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<vecInertiaMultiplier x="1.000000" y="1.000000" z="1.600000" />
|
||||
<fDriveBiasFront value="0.00000" />
|
||||
<nInitialDriveGears value="5" />
|
||||
<fInitialDriveForce value="1.550000" />
|
||||
<fDriveInertia value="0.700000" />
|
||||
<fClutchChangeRateScaleUpShift value="2.900000" />
|
||||
<fClutchChangeRateScaleDownShift value="3.900000" />
|
||||
<fInitialDriveMaxFlatVel value="220.000000" />
|
||||
<fBrakeForce value="3.500000" />
|
||||
<fBrakeBiasFront value="0.650000" />
|
||||
<fHandBrakeForce value="3.800000" />
|
||||
<fSteeringLock value="42.000000" />
|
||||
<fTractionCurveMax value="2.650000" />
|
||||
<fTractionCurveMin value="2.500000" />
|
||||
<fTractionCurveLateral value="22.500000" />
|
||||
<fTractionSpringDeltaMax value="0.150000" />
|
||||
<fLowSpeedTractionLossMult value="0.500000" />
|
||||
<fCamberStiffnesss value="0.000000" />
|
||||
<fTractionBiasFront value="0.500000" />
|
||||
<fTractionLossMult value="1.000000" />
|
||||
<fSuspensionForce value="2.400000" />
|
||||
<fSuspensionCompDamp value="1.400000" />
|
||||
<fSuspensionReboundDamp value="2.300000" />
|
||||
<fSuspensionUpperLimit value="0.18000" />
|
||||
<fSuspensionLowerLimit value="-0.140000" />
|
||||
<fSuspensionRaise value="0.000000" />
|
||||
<fSuspensionBiasFront value="0.490000" />
|
||||
<fAntiRollBarForce value="0.900000" />
|
||||
<fAntiRollBarBiasFront value="0.600000" />
|
||||
<fRollCentreHeightFront value="0.000000" />
|
||||
<fRollCentreHeightRear value="0.000000" />
|
||||
<fCollisionDamageMult value="0.700000" />
|
||||
<fWeaponDamageMult value="1.000000" />
|
||||
<fDeformationDamageMult value="0.700000" />
|
||||
<fEngineDamageMult value="1.500000" />
|
||||
<fPetrolTankVolume value="65.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>AVERAGE</AIHandling>
|
||||
<SubHandlingData>
|
||||
<Item type="CCarHandlingData">
|
||||
<fBackEndPopUpCarImpulseMult value="0.500000" />
|
||||
<fBackEndPopUpBuildingImpulseMult value="0.250000" />
|
||||
<fBackEndPopUpMaxDeltaSpeed value="1.750000" />
|
||||
</Item>
|
||||
<Item type="NULL" />
|
||||
<Item type="NULL" />
|
||||
</SubHandlingData>
|
||||
</Item><!--DEMONBOI HANDLING ENDS HERE-->
|
||||
</HandlingData>
|
||||
</CHandlingDataMgr>
|
||||
@@ -1,121 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CVehicleModelInfo__InitDataList>
|
||||
<residentTxd>vehshare</residentTxd>
|
||||
<residentAnims />
|
||||
<InitDatas>
|
||||
<Item>
|
||||
<modelName>ghoulchall24</modelName>
|
||||
<txdName>ghoulchall24</txdName>
|
||||
<handlingId>ghoulchall24</handlingId>
|
||||
<gameName>ghoulchall24</gameName>
|
||||
<vehicleMakeName>Dodge</vehicleMakeName>
|
||||
<expressionDictName>null</expressionDictName>
|
||||
<expressionName>null</expressionName>
|
||||
<animConvRoofDictName>va_ghoulchall24</animConvRoofDictName>
|
||||
<animConvRoofName>roof</animConvRoofName>
|
||||
<animConvRoofWindowsAffected>
|
||||
<Item>VEH_EXT_WINDOW_LF</Item>
|
||||
<Item>VEH_EXT_WINDOW_RF</Item>
|
||||
</animConvRoofWindowsAffected>
|
||||
<ptfxAssetName>null</ptfxAssetName>
|
||||
<audioNameHash>xa21</audioNameHash>
|
||||
<layout>LAYOUT_LOW_CHEETAH</layout>
|
||||
<coverBoundOffsets>GAUNTLET_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_MID</bonnetCameraName>
|
||||
<povCameraName>REDUCED_NEAR_CLIP_POV_CAMERA</povCameraName>
|
||||
<FirstPersonDriveByIKOffset x="0.000000" y="-0.055000" z="-0.020000" />
|
||||
<FirstPersonDriveByUnarmedIKOffset x="-0.050000" y="-0.080000" z="-0.020000" />
|
||||
<FirstPersonProjectileDriveByIKOffset x="0.000000" y="-0.100000" z="-0.010000" />
|
||||
<FirstPersonProjectileDriveByPassengerIKOffset x="0.000000" y="-0.100000" z="-0.010000" />
|
||||
<FirstPersonDriveByLeftPassengerIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerIKOffset x="0.000000" y="-0.055000" z="-0.020000" />
|
||||
<FirstPersonDriveByLeftPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" />
|
||||
<FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.050000" y="-0.110000" z="-0.020000" />
|
||||
<FirstPersonMobilePhoneOffset x="0.135000" y="0.173000" z="0.550000" />
|
||||
<FirstPersonPassengerMobilePhoneOffset x="0.136000" y="0.138000" z="0.445000" />
|
||||
<PovCameraOffset x="0.000000" y="-0.325000" z="0.655000" />
|
||||
<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.279700" />
|
||||
<wheelScaleRear value="0.279700" />
|
||||
<dirtLevelMin value="0.000000" />
|
||||
<dirtLevelMax value="2.990000" />
|
||||
<envEffScaleMin value="0.000000" />
|
||||
<envEffScaleMax value="1.000000" />
|
||||
<envEffScaleMin2 value="0.000000" />
|
||||
<envEffScaleMax2 value="1.000000" />
|
||||
<damageMapScale value="0.600000" />
|
||||
<damageOffsetScale value="0.800000" />
|
||||
<diffuseTint value="0x00FFFFFF" />
|
||||
<steerWheelMult value="1.000000" />
|
||||
<HDTextureDist value="5.000000" />
|
||||
<lodDistances content="float_array">
|
||||
35.000000
|
||||
65.000000
|
||||
90.000000
|
||||
120.000000
|
||||
300.000000
|
||||
500.000000
|
||||
</lodDistances>
|
||||
<minSeatHeight value="0.831" />
|
||||
<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="90" />
|
||||
<swankness>SWANKNESS_4</swankness>
|
||||
<maxNum value="4" />
|
||||
<flags>FLAG_HAS_LIVERY FLAG_SPORTS FLAG_SPAWN_ON_TRAILER FLAG_PARKING_SENSORS FLAG_RICH_CAR</flags>
|
||||
<type>VEHICLE_TYPE_CAR</type>
|
||||
<plateType>VPT_FRONT_AND_BACK_PLATES</plateType>
|
||||
<dashboardType>VDT_RACE</dashboardType>
|
||||
<vehicleClass>VC_MUSCLE</vehicleClass>
|
||||
<wheelType>VWT_MUSCLE</wheelType>
|
||||
<trailers />
|
||||
<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>LOW_RAPIDGT_FRONT_LEFT</Item>
|
||||
<Item>LOW_RAPIDGT_FRONT_RIGHT</Item>
|
||||
</firstPersonDrivebyData>
|
||||
</Item>
|
||||
</InitDatas>
|
||||
<txdRelationships>
|
||||
<Item>
|
||||
<parent>vehicles_race_generic</parent>
|
||||
<child>ghoulchall24</child>
|
||||
</Item>
|
||||
</txdRelationships>
|
||||
</CVehicleModelInfo__InitDataList>
|
||||
@@ -0,0 +1,3 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
-- Leaked By: Leaking Hub | J. Snow | leakinghub.com
|
||||
this_is_a_map 'yes'
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 696 KiB |
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.
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.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
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.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
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.
|
After Width: | Height: | Size: 481 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 54 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 181 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 831 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.7 MiB |
@@ -0,0 +1,26 @@
|
||||
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'
|
||||
|
||||
files {
|
||||
'vehicles.meta',
|
||||
'carvariations.meta',
|
||||
'carcols.meta',
|
||||
'handling.meta',
|
||||
'vehiclelayouts.meta',
|
||||
'peds.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'
|
||||
data_file 'PED_METADATA_FILE' 'peds.meta'
|
||||
|
||||
|
||||
client_script {
|
||||
'vehicle_names.lua'
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user