dobrograd-13-06-2022/garrysmod/addons/feature-cars/lua/simfphys/attachments.lua
Jonny_Bro (Nikita) e4d5311906 first commit
2023-11-16 15:01:19 +05:00

543 lines
14 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

simfphys.attachments = {
siren1 = {
type = 'siren',
mdl = 'models/octocar/police_siren.mdl',
},
siren2 = {
type = 'siren',
mdl = 'models/octocar/police_siren2.mdl',
},
siren3 = {
type = 'siren',
mdl = 'models/jaanus/wiretool/wiretool_siren.mdl',
name = 'Проблесковый маячок', mass = 5, volume = 12,
desc = 'Используется',
col = Color(0,0,127),
noPaint = true,
},
spoiler1 = {
type = 'spoiler',
name = L.spoiler1, mass = 5, volume = 12,
desc = L.desc_spoiler1,
mdl = 'models/octocar/attachable/spoiler1.mdl',
},
spoiler2 = {
type = 'spoiler',
mdl = 'models/octocar/attachable/spoiler2.mdl',
name = L.spoiler2, mass = 5, volume = 12,
desc = L.desc_spoiler2,
},
spoiler3 = {
type = 'spoiler',
mdl = 'models/octocar/attachable/spoiler3.mdl',
name = L.spoiler3, mass = 5, volume = 12,
desc = L.desc_spoiler3,
},
spoiler4 = {
type = 'spoiler',
mdl = 'models/octocar/attachable/spoiler4.mdl',
name = L.spoiler4, mass = 5, volume = 12,
desc = L.desc_spoiler4,
},
spoiler5 = {
type = 'spoiler',
mdl = 'models/octocar/attachable/spoiler5.mdl',
name = L.spoiler5, mass = 5, volume = 12,
desc = L.desc_spoiler5,
},
ladder = {
type = 'ladder',
noPaint = true,
mdl = 'models/octocar/attachable/ladder.mdl',
name = L.ladder, mass = 3, volume = 8,
desc = L.desc_ladder,
},
supercharger = {
type = 'supercharger',
mdl = 'models/octocar/attachable/supercharger.mdl',
name = L.supercharger, mass = 10, volume = 10,
desc = L.desc_supercharger,
},
huladoll = {
type = 'dash',
noPaint = true,
mdl = 'models/props_lab/huladoll.mdl',
name = L.huladoll, mass = 0.5, volume = 1,
desc = L.desc_huladoll,
},
snowman = {
type = 'dash',
noPaint = true,
mdl = 'models/unconid/xmas/snowman_u.mdl',
name = 'Снеговичок на приборку', mass = 0.5, volume = 1,
desc = 'Принесет новогоднее настроение в твой автомобиль',
},
skull = {
type = 'other1',
noPaint = true,
mdl = 'models/gibs/hgibs.mdl',
name = L.statuette_ermak, mass = 1, volume = 2,
desc = L.desc_statuette_ermak,
},
pumpkin = {
type = 'other2',
noPaint = true,
mdl = 'models/halloween2015/pumbkin_n_f01.mdl',
skin = 1,
scale = 0.2,
name = L.lamp_pumpkin, mass = 1, volume = 3,
desc = L.desc_lamp_pumpkin,
},
metalhook = {
type = 'other3',
noPaint = true,
mdl = 'models/props_junk/meathook001a.mdl',
name = L.car_hook, mass = 1, volume = 3,
desc = L.desc_car_hook,
},
doll = {
type = 'other4',
noPaint = true,
mdl = 'models/props_c17/doll01.mdl',
name = L.scary_doll, mass = 1, volume = 3,
desc = L.desc_scary_doll,
},
jar = {
type = 'other5',
noPaint = true,
mdl = 'models/props/spookington/eyejar.mdl',
name = 'Банка с глазами', mass = 3, volume = 1,
desc = 'Масса взрослого человеческого глаза равна 7-8г',
},
spider = {
type = 'other6',
noPaint = true,
mdl = 'models/props/spookington/spider_toy.mdl',
name = 'Паучок', mass = 0.7, volume = 1,
desc = 'Внутри забит поролоном, хотя... кто знает...',
},
}
local attsByMdl = {}
for _, att in pairs(simfphys.attachments) do
attsByMdl[att.mdl] = att
end
function simfphys.getAttByModel(mdl)
return attsByMdl[mdl]
end
simfphys.rims = {
['models/diggercars/250gto/250gto_wheel.mdl'] = {
price = 150000,
name = L.discs_hint .. 'Ferrari 250 GTO',
ang = Angle(0, -90, 0),
},
['models/diggercars/356/porsche_550356_wheel.mdl'] = {
price = 155000,
name = L.discs_hint .. 'Porsche 356',
ang = Angle(0, -90, 0),
},
['models/diggercars/914_6/porsche_914_wheel.mdl'] = {
price = 80000,
name = L.discs_hint .. 'Porsche 914',
ang = Angle(0, -90, 0),
},
['models/diggercars/a_nsx97/wheel.mdl'] = {
price = 95000,
name = L.discs_hint .. 'Acura NSX 1997',
ang = Angle(0, 90, 0),
},
['models/diggercars/alfa_romeo_montreal/wheel.mdl'] = {
price = 168000,
name = L.discs_hint .. 'Alfa Romeo Montreal',
ang = Angle(0, -90, 0),
},
['models/diggercars/bmw_m5e28/wheel.mdl'] = {
price = 150000,
name = L.discs_hint .. 'BMW M5 E28',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_m5e39/wheel.mdl'] = {
price = 135000,
name = L.discs_hint .. 'BMW M5 E39',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_x5m/wheel.mdl'] = {
price = 120000,
name = L.discs_hint .. 'BMW X5 M',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmwm1/bmwm1_wheel.mdl'] = {
price = 160000,
name = L.discs_hint .. 'BMW M1',
ang = Angle(0, -90, 0),
},
['models/diggercars/boxster03/wheel.mdl'] = {
price = 100000,
name = L.discs_hint .. 'Porsche Boxster 2003',
ang = Angle(0, -90, 0),
},
['models/diggercars/civic94/wheel.mdl'] = {
price = 95000,
name = L.discs_hint .. 'Honda Civic 1994',
ang = Angle(0, 90, 0),
},
['models/diggercars/fulvia/wheel.mdl'] = {
price = 145000,
name = L.discs_hint .. 'Lancia Fulvia',
ang = Angle(0, -90, 0),
},
['models/diggercars/gt3 2004/wheel.mdl'] = {
price = 110000,
name = L.discs_hint .. 'Porsche GT3',
ang = Angle(0, -90, 0),
},
['models/diggercars/h_nsxrgt/wheel.mdl'] = {
price = 98000,
name = L.discs_hint .. 'Honda NSX-R GT',
ang = Angle(0, 90, 0),
},
['models/diggercars/legacy/wheel.mdl'] = {
price = 85000,
name = L.discs_hint .. 'Legacy',
ang = Angle(0, 90, 0),
},
['models/diggercars/packcard/wheel.mdl'] = {
price = 190000,
name = L.discs_hint .. 'Packard',
ang = Angle(0, -90, 0),
},
['models/diggercars/porsche_930/wheel.mdl'] = {
price = 175000,
name = L.discs_hint .. 'Porsche 930',
ang = Angle(0, 90, 0),
},
['models/diggercars/porsche_930/wheelr.mdl'] = {
price = 170000,
name = L.discs_hint .. 'Porsche 930-2',
ang = Angle(0, 90, 0),
},
['models/diggercars/991_carrera_s/wheel2.mdl'] = {
price = 125000,
name = L.discs_hint .. 'Porsche 991 Carrera S',
ang = Angle(0, -90, 0),
},
['models/diggercars/porsche_930targa/wheel.mdl'] = {
price = 140000,
name = L.discs_hint .. 'Porsche 930 Targa',
ang = Angle(0, -90, 0),
},
['models/diggercars/porsche_944/wheel.mdl'] = {
price = 110000,
name = L.discs_hint .. 'Porsche 944',
ang = Angle(0, 90, 0),
},
['models/diggercars/shelbydaytonacoupe/wheel.mdl'] = {
price = 165000,
name = L.discs_hint .. 'Shelby Daytona',
ang = Angle(0, 90, 0),
},
['models/diggercars/sportquattro/wheel.mdl'] = {
price = 115000,
name = L.discs_hint .. 'Audi Sport Quattro',
ang = Angle(0, 90, 0),
},
['models/diggercars/stratos/wheel.mdl'] = {
price = 165000,
name = L.discs_hint .. 'Lancia Stratos',
ang = Angle(0, 90, 0),
},
['models/diggercars/transam3/wheel.mdl'] = {
price = 195000,
name = L.discs_hint .. 'Firebird Transam3',
ang = Angle(0, -90, 0),
},
['models/diggercars/a_nsx97/wheel2.mdl'] = {
price = 148000,
name = L.discs_hint .. 'Acura NSX 1997-2',
ang = Angle(0, 90, 0),
},
['models/diggercars/a_nsx05/wheel.mdl'] = {
price = 125000,
name = L.discs_hint .. 'Acura NSX 2005',
ang = Angle(0, 90, 0),
},
['models/diggercars/acura_rsxs/wheel.mdl'] = {
price = 135000,
name = L.discs_hint .. 'Acura RSXS',
ang = Angle(0, -90, 0),
},
['models/diggercars/alfa/wheel.mdl'] = {
price = 110000,
name = L.discs_hint .. 'Alfa Romeo',
ang = Angle(0, -90, 0),
},
['models/diggercars/ariel_atom/wheel.mdl'] = {
price = 190000,
name = L.discs_hint .. 'Ariel Atom',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_m5e34/wheel.mdl'] = {
price = 120000,
name = L.discs_hint .. 'BMW M5 E34',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_m5e60/wheel.mdl'] = {
price = 110000,
name = L.discs_hint .. 'BMW M5 E60',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_x5_09/wheel.mdl'] = {
price = 140000,
name = L.discs_hint .. 'BMW X5 2009',
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_x5_09/wheel2.mdl'] = {
ang = Angle(0, 90, 0),
},
['models/diggercars/bmw_x6m/wheel.mdl'] = {
price = 140000,
name = L.discs_hint .. 'BMW X6 M',
ang = Angle(0, 90, 0),
},
['models/diggercars/fiat500/wheel.mdl'] = {
price = 90000,
name = L.discs_hint .. 'Fiat 500',
ang = Angle(0, 90, 0),
},
['models/diggercars/cortina/wheel.mdl'] = {
price = 85000,
name = L.discs_hint .. 'Ford Cortina',
ang = Angle(0, -90, 0),
},
['models/diggercars/civic91/wheel.mdl'] = {
price = 95000,
name = L.discs_hint .. 'Honda Civic 1991',
ang = Angle(0, -90, 0),
},
['models/diggercars/civic99/wheel.mdl'] = {
price = 135000,
name = L.discs_hint .. 'Honda Civic 1999',
ang = Angle(0, 90, 0),
},
['models/diggercars/h_integra2000/wheel.mdl'] = {
price = 115000,
name = L.discs_hint .. 'Honda Integra 2000',
ang = Angle(0, -90, 0),
},
['models/diggercars/h_integra/wheel.mdl'] = {
price = 125000,
name = L.discs_hint .. 'Honda Integra',
ang = Angle(0, 90, 0),
},
['models/diggercars/h_nsxr/wheel.mdl'] = {
price = 160000,
name = L.discs_hint .. 'Honda NSX-R',
ang = Angle(0, 90, 0),
},
['models/diggercars/aventador/wheel.mdl'] = {
price = 190000,
name = L.discs_hint .. 'Lamborghini Aventador',
ang = Angle(0, 90, 0),
},
['models/diggercars/jalpa/wh1.mdl'] = {
price = 175000,
name = L.discs_hint .. 'Lamborghini Jalpa',
ang = Angle(0, -90, 0),
},
['models/diggercars/300sl/wheel.mdl'] = {
price = 185000,
name = L.discs_hint .. 'Mercedes-Benz 300 SL',
ang = Angle(0, -90, 0),
},
['models/diggercars/clkgtr/wheel.mdl'] = {
price = 160000,
name = L.discs_hint .. 'Mercedes-Benz CLK GTR',
ang = Angle(0, 90, 0),
},
['models/diggercars/w123/mb_w123_wheel.mdl'] = {
price = 165000,
name = L.discs_hint .. 'Mercedes-Benz W123',
ang = Angle(0, -90, 0),
},
['models/diggercars/opelspeedster/wheel.mdl'] = {
price = 175000,
name = L.discs_hint .. 'Opel Speedster',
ang = Angle(0, 90, 0),
},
['models/diggercars/porsche_914/wheel.mdl'] = {
price = 150000,
name = L.discs_hint .. 'Porsche 914-2',
ang = Angle(0, 90, 0),
},
['models/diggercars/959/porsche_959_wheel.mdl'] = {
price = 165000,
name = L.discs_hint .. 'Porsche 959',
ang = Angle(0, -90, 0),
},
['models/diggercars/964speedster/porsche_964_wheel.mdl'] = {
price = 175000,
name = L.discs_hint .. 'Porsche 964',
ang = Angle(0, -90, 0),
},
['models/diggercars/997 turbo/wheel.mdl'] = {
price = 170000,
name = L.discs_hint .. 'Porsche 997',
ang = Angle(0, 90, 0),
},
['models/diggercars/carrera gt/wheel.mdl'] = {
price = 188000,
name = L.discs_hint .. 'Porsche Carrera GT',
ang = Angle(0, 90, 0),
},
['models/diggercars/gt1sv/porsche_gt1_wheel.mdl'] = {
price = 165000,
name = L.discs_hint .. 'Porsche GT1',
ang = Angle(0, -90, 0),
},
['models/diggercars/saab99turbo/wheel.mdl'] = {
price = 175000,
name = L.discs_hint .. 'Saab 99',
ang = Angle(0, 90, 0),
},
['models/diggercars/toyotagtone/wheel.mdl'] = {
price = 155000,
name = L.discs_hint .. 'Toyota GT-One',
ang = Angle(0, 90, 0),
},
['models/diggercars/vaz1111/oka_wheel.mdl'] = {
price = 50000,
name = L.discs_hint .. L.item_disc,
ang = Angle(0, -90, 0),
},
['models/hl2prewar/hatch/hatch_v2_wheel.mdl'] = {
price = 110000,
name = L.discs_hint .. L.item_disc2,
},
['models/hl2prewar/van/van_wheel.mdl'] = {
price = 22000,
name = L.discs_hint .. L.item_disc3,
},
['models/salza/trabant/trabant_wheel.mdl'] = {
price = 20000,
name = L.discs_hint .. L.item_disc4,
},
['models/salza/volga/volga_wheel.mdl'] = {
price = 15500,
name = L.discs_hint .. L.item_disc5,
},
['models/salza/zaz/zaz_wheel.mdl'] = {
price = 15000,
name = L.discs_hint .. L.item_disc6,
},
['models/salza/hatchback/hatchback_wheel.mdl'] = {
price = 12000,
name = L.discs_hint .. L.item_disc7,
ang = Angle(0, -90, 0),
},
['models/salza/avia/avia_wheel.mdl'] = {
price = 10000,
name = L.discs_hint .. L.item_disc8,
ang = Angle(0, 180, 0),
},
['models/salza/skoda_liaz/skoda_liaz_fwheel.mdl'] = {
price = 13500,
name = L.discs_hint .. L.item_disc9,
ang = Angle(0, 180, 0),
},
['models/props_phx/wheels/trucktire.mdl'] = {
price = 80000,
name = L.discs_hint .. L.item_disc10,
ang = Angle(90, 0, 0),
},
['models/props_phx/wheels/trucktire2.mdl'] = {
price = 175000,
name = L.discs_hint .. L.item_disc11,
ang = Angle(90, 0, 0),
},
['models/hl2prewar/car002/car_002_wheel.mdl'] = {
ang = Angle(0, 0, 0),
},
['models/hl2prewar/car005/car_005_wheel.mdl'] = {
ang = Angle(0, -90, 0),
},
['models/hl2prewar/hatch/hatch_v2_wheel.mdl'] = {
ang = Angle(0, 180, 0),
},
['models/hl2prewar/van/van_wheel.mdl'] = {
ang = Angle(0, 0, 0),
},
['models/salza/trabant/trabant_wheel.mdl'] = {
ang = Angle(0, 0, 0),
},
['models/salza/volga/volga_wheel.mdl'] = {
ang = Angle(0, -90, 0),
},
['models/salza/zaz/zaz_wheel.mdl'] = {
ang = Angle(0, -90, 0),
},
['models/props_vehicles/carparts_wheel01a.mdl'] = {
ang = Angle(0, -90, 0),
},
['models/salza/moskvich/moskvich_wheel.mdl'] = {
ang = Angle(0, 0, 0),
},
}
function simfphys.GetWheelAngle(model)
if not model then return end
model = string.lower(model)
local rim = simfphys.rims[model]
if rim then return rim.ang end
local v_list = list.Get("simfphys_vehicles")
for listname, _ in pairs(v_list) do
if v_list[listname].Members.CustomWheels then
local FrontWheel = v_list[listname].Members.CustomWheelModel
local RearWheel = v_list[listname].Members.CustomWheelModel_R
if FrontWheel then
FrontWheel = string.lower(FrontWheel)
end
if RearWheel then
RearWheel = string.lower(RearWheel)
end
if model == FrontWheel or model == RearWheel then
local Angleoffset = v_list[listname].Members.CustomWheelAngleOffset
if Angleoffset then
return Angleoffset
end
end
end
end
local list = list.Get("simfphys_Wheels")[model]
local output = list and list.Angle
return output or Angle()
end