AddCSLuaFile() function SWEP:doSuppressorStats() self.Primary.Sound = Sound("weap_uzulu_sup_fire_plr") self.Reverb = { RoomScale = 50000, Sounds = { Outside = { Layer = Sound("Atmo_SMG_Sup.Outside"), Reflection = Sound("Reflection_ARSUP.Outside") }, Inside = { Layer = Sound("Atmo_Pistol_Sup.Inside"), Reflection = Sound("Reflection_ARSUP.Inside") } } } self.ParticleEffects.MuzzleFlash = "mw_fas2_muzzleflash_suppressed" end function SWEP:doCalConversionStats() local bSup1 = self:HasAttachment("attachment_vm_silencer_east01") local bSup2 = self:HasAttachment("attachment_vm_silencer02") local bSup3 = self:HasAttachment("attachment_vm_silencer03") local bSup4 = self:HasAttachment("attachment_vm_silencer04") local bSup5 = self:HasAttachment("attachment_vm_sm_uzulu_suppressor") if (!bSup1 && !bSup2 && !bSup3 && !bSup4 && !bSup5) then self.Primary.Sound = Sound("weap_uzulu_sub_fire_plr") end --[[self.Shell.Model = Model("models/viper/mw/shells/fx_pistol_shell_lod0.mdl") self.Shell.Scale = 0.5 self.Shell.Sound = Sound("MW_Casings.9mm")]] end SWEP.Customization = { {"att_perk", "attachment_vm_sm_uzulu_perk_soh", "att_perk_fmj", "att_perk_ricochet", "att_perk_rof"}, {"attachment_vm_sm_uzulu_stock", "attachment_vm_sm_uzulu_stockh", "attachment_vm_sm_uzulu_stock_folded", "att_vm_uzulu_stock_heavy01", "att_vm_uzulu_stock_heavy02", "att_vm_uzulu_stock_light01", "att_vm_uzulu_stock_medium01", "att_vm_uzulu_stock_no"}, {"attachment_vm_sm_uzulu_mag", "attachment_vm_sm_uzulu_xmags", "attachment_vm_sm_uzulu_xmag2", "attachment_vm_sm_uzulu_magcalcust", "attachment_vm_sm_uzulu_magcalcust9mm"}, {"attachment_vm_sm_uzulu_receiver"}, {"attachment_vm_sm_uzulu_barrel", "attachment_vm_sm_uzulu_barshort", "attachment_vm_sm_uzulu_barmid", "attachment_vm_sm_uzulu_barlong", "attachment_vm_sm_uzulu_barcust"}, {"att_muzzle", "att_vm_breacher01", "att_vm_breacher02", "att_vm_compensator01", "att_vm_compensator02", "att_vm_flashhider01", "att_vm_flashhider02", "att_vm_flashhider03", "att_vm_flashhider04", "att_vm_muzzlebrake01", "att_vm_muzzlebrake02", "att_vm_muzzlebrake03", "att_vm_silencer01", "att_vm_silencer02", "att_vm_silencer03", "att_vm_silencer04", "att_vm_silencer05", "att_vm_silencer06", "attachment_vm_sm_uzulu_suppressor"}, {"att_sight", "att_vm_2x_west02_holo", "att_vm_2x_west02", "att_vm_reflex_02", "att_vm_minireddot01_tall", "att_vm_minireddot02_tall", "att_vm_minireddot03_tall", "att_vm_holo_west01", "att_vm_holo_west02", "att_vm_holo_east01", "att_vm_reflex_east01", "att_vm_reflex_east02_tall", "att_vm_reflex_west02_tall", "att_vm_reflex_west03", "att_vm_hybrid_west01", "att_vm_hybrid_west03", "att_vm_4x_east01_tall", "att_vm_2x_west01", "att_vm_4x_west01_tall", "att_vm_4x_west02_tall", "att_vm_reflex_west04"}, {"att_laser", "attachment_vm_sm_uzulu_laser01", "attachment_vm_sm_uzulu_laser02", "attachment_vm_sm_uzulu_laser03"}, {"att_grip", "attachment_vm_sm_uzulu_bipodgrip", "attachment_vm_sm_uzulu_angledgrip01", "attachment_vm_sm_uzulu_angledgrip02", "attachment_vm_sm_uzulu_stubbygrip01", "attachment_vm_sm_uzulu_stubbygrip02", "attachment_vm_sm_uzulu_vertgrip01", "attachment_vm_sm_uzulu_vertgrip02", "attachment_vm_sm_uzulu_vertgrip03"}, } --NECESSARY: it loads custom attachments from other authors require("mw_utils") mw_utils.LoadInjectors(SWEP) -- SWEP.Customization = { -- ["Barrel"] = { -- Slot = 2, -- { -- Key = "attachment_vm_sm_uzulu_barrel", -- }, -- { -- Key = "attachment_vm_sm_uzulu_barcust", -- ExcludedAttachments = { -- ["Muzzle"] = {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18} -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_barlong", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_barmid", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_barshort", -- ExcludedAttachments = { -- ["Muzzle"] = {18} -- }, -- Stats = function(self) -- end -- } -- }, -- ["Laser"] = { -- Slot = 6, -- { -- Key = "no_laser" -- }, -- { -- Key = "attachment_vm_laser_cylinder01", -- Bodygroups = { -- ["tag_laser"] = 1 -- }, -- VElement = { -- Bone = "tag_laser_attach", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self.LaserAimAngles = Angle(-0.3, 0.2, -45) -- self.LaserAimPos = Vector(-2, 0, 0) -- end -- }, -- { -- Key = "attachment_vm_laser_cylinder02", -- Bodygroups = { -- ["tag_laser"] = 1 -- }, -- VElement = { -- Bone = "tag_laser_attach", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self.LaserAimAngles = Angle(-0.4, 0.265, -45) -- self.LaserAimPos = Vector(-2, 0, 0) -- end -- }, -- { -- Key = "attachment_vm_laser_cylinder03", -- Bodygroups = { -- ["tag_laser"] = 1 -- }, -- VElement = { -- Bone = "tag_laser_attach", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self.LaserAimAngles = Angle(-0.3, 0.2, -45) -- self.LaserAimPos = Vector(-2, 0, 0) -- end -- } -- }, -- ["Optic"] = { -- Slot = 4, -- { -- Key = "no_sight", -- }, -- { -- Key = "attachment_vm_minireddot_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.4) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.02, 0.02, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_minireddot02_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.35) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(0.01, 0.02, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_minireddot03_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.35) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(0.035, 0.02, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_holo_west02", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.5) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.034, 0.018, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_holo_east", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.015, 0, -1.423) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.034, 0.018, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_reflex_east02_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.7) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.01, 0.05, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_reflex_west03", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.6) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.015, 0.02, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_reflex_west04", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.55) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.02, 0.013, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_holo_west_lod0", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.015, 0, -1.63) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0, 0, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_reflex_east", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0, 0, -1.45) -- self.ViewModelOffsets.Aim.Angles = self.ViewModelOffsets.Aim.Angles + Angle(-0.1, 0.017, 0) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_4x_east_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0.11, 0, -1.75) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_4x_west_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.007, 0, -1.85) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_4x_west02_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.006, 0, -1.745) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_thermal_east_tall", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_reflex", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [2] = {Vector(0, 0, 0), Angle()}, -- [3] = {Vector(0, 0, 0), Angle()}, -- [4] = {Vector(0, 0, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.002, 1, -1.68) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_thermal_hybrid", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_reflex", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [2] = {Vector(0, 0, 0), Angle()}, -- [3] = {Vector(0, 0, 0), Angle()}, -- [4] = {Vector(0, 0, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.002, 1, -1.255) -- self.HybridAimAngles = Angle(-0.02, 0.02, -45) -- self.HybridAimPos = Vector(-1.75, 5, -0.75) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_thermal_west_01", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_reflex", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [2] = {Vector(0, 0, 0), Angle()}, -- [3] = {Vector(0, 0, 0), Angle()}, -- [4] = {Vector(0, 0, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.003, -1.5, -1.24) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "weapon_vm_scope_mike14_alt", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.008, 5, -1.635) -- self.Zoom.Blur.EyeFocusDistance = 3.5 -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_scope_vz", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.003, 5, -1.565) -- self.Zoom.Blur.EyeFocusDistance = 3.5 -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_hybrid_west", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_reflex", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [2] = {Vector(0, 0, 0), Angle()}, -- [3] = {Vector(0, 0, 0), Angle()}, -- [4] = {Vector(0, 0, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(0.005, 0, -1.393) -- self.HybridAimAngles = Angle(-0.02, 0.02, 0) -- self.HybridAimPos = Vector(0,2,-2.55) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- { -- Key = "attachment_vm_hybrid_west03", -- Bodygroups = { -- ["tag_optic_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_reflex", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [2] = {Vector(0, 0, 0), Angle()}, -- [3] = {Vector(0, 0, 0), Angle()}, -- [4] = {Vector(0, 0, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ViewModelOffsets.Aim.Pos = self.ViewModelOffsets.Aim.Pos + Vector(-0.0075, 1.5, -1.32) -- self.Zoom.Blur.EyeFocusDistance = 3.5 -- self.HybridAimAngles = Angle(0, 0.015, -45) -- self.HybridAimPos = Vector(-1.55, 5, -0.5) -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Scope -- self.Animations.Reload_Empty_Fast = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Equip_No_Stock = self.Animations.Equip_No_Stock_Scope -- end -- }, -- }, -- ["Muzzle"] = { -- Slot = 3, -- { -- Key = "no_muzzle" -- }, -- { -- Key = "attachment_vm_flashhider01", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ParticleEffects.MuzzleFlash = "mw_fas2_muzzleflash_suppressed" -- end -- }, -- { -- Key = "attachment_vm_flashhider02", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ParticleEffects.MuzzleFlash = "mw_fas2_muzzleflash_suppressed" -- end -- }, -- { -- Key = "attachment_vm_flashhider03", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ParticleEffects.MuzzleFlash = "mw_fas2_muzzleflash_suppressed" -- end -- }, -- { -- Key = "attachment_vm_flashhider05", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- self.ParticleEffects.MuzzleFlash = "mw_fas2_muzzleflash_suppressed" -- end -- }, -- { -- Key = "attachment_vm_muzzlebrake01", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_muzzlebrake02", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_muzzlebrake03", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_muzzlebrake04", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_compensator01", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_compensator02", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_muzzlemelee01", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_muzzlemelee02", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_silencer_east01", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- doSuppressorStats(self) -- end -- }, -- { -- Key = "attachment_vm_silencer02", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- doSuppressorStats(self) -- end -- }, -- { -- Key = "attachment_vm_silencer03", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- doSuppressorStats(self) -- end -- }, -- { -- Key = "attachment_vm_silencer04", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [3] = {Vector(0, 2.2, 0), Angle()}, -- [4] = {Vector(0, 1.7, 0), Angle()}, -- [5] = {Vector(0, -1.5, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- doSuppressorStats(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_suppressor", -- VElement = { -- Bone = "tag_silencer", -- Position = Vector(0, 0, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- [1] = {Vector(0, -1.8, 0), Angle()}, -- [2] = {Vector(0, 2.2, 0), Angle()}, -- [3] = {Vector(0, 0.4, 0), Angle()}, -- [4] = {Vector(0, -0.1, 0), Angle()}, -- [5] = {Vector(0, -2.35, 0), Angle()} -- } -- } -- }, -- Stats = function(self) -- doSuppressorStats(self) -- end -- } -- }, -- ["Perk"] = { -- Slot = 1, -- { -- Key = "no_perk", -- }, -- { -- Key = "perk_soh", -- Stats = function(self) -- self.Animations.Reload = self.Animations.Reload_Fast -- self.Animations.Reload_Empty = self.Animations.Reload_Empty_Fast -- self.Animations.Reload_Empty_Scope = self.Animations.Reload_Empty_Fast_Scope -- self.Animations.Reload_XmagLrg = self.Animations.Reload_XmagLrg_Fast -- self.Animations.Reload_Empty_XmagLrg = self.Animations.Reload_Empty_XmagLrg_Fast -- self.Animations.Reload_Xmag = self.Animations.Reload_Xmag_Fast -- self.Animations.Reload_Empty_Xmag = self.Animations.Reload_Empty_Xmag_Fast -- end -- }, -- { -- Key = "perk_fastmelee", -- Stats = function(self) -- end -- }, -- { -- Key = "perk_heavymelee", -- Stats = function(self) -- end -- }, -- { -- Key = "perk_fmj", -- Stats = function(self) -- end -- } -- }, -- ["Stock"] = { -- Slot = 7, -- { -- Key = "attachment_vm_sm_uzulu_stock", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_stock_folded", -- Stats = function(self) -- self.Animations.Equip = self.Animations.Equip_No_Stock -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_stockh", -- Stats = function(self) -- self.Animations.Equip = self.Animations.Equip_No_Stock -- end -- }, -- { -- Key = "attachment_vm_stock_light01", -- Bodygroups = { -- ["tag_stock_adapter"] = 1 -- }, -- Stats = function(self) -- self.Animations.Equip = self.Animations.Equip_No_Stock -- end -- }, -- { -- Key = "attachment_vm_stock_medium01", -- Bodygroups = { -- ["tag_stock_adapter"] = 1 -- }, -- Stats = function(self) -- self.Animations.Equip = self.Animations.Equip_No_Stock -- end -- }, -- }, -- ["Underbarrel"] = { -- Slot = 8, -- { -- Key = "no_underbarrel", -- }, -- { -- Key = "attachment_vm_angledgrip04", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -1, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_ang_offset") -- end -- }, -- { -- Key = "attachment_vm_vertgrip02_lod0", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -2.15, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_vert_offset") -- end -- }, -- { -- Key = "attachment_vm_vertgrip03", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -2.15, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_vert_offset") -- end -- }, -- { -- Key = "attachment_vm_vertgrip_stubby02", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -2.15, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_vert_offset") -- end -- }, -- { -- Key = "attachment_vm_vertgrip_stubby01", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -2.15, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_vert_offset") -- end -- }, -- { -- Key = "attachment_vm_vertgrip_stubby04", -- Bodygroups = { -- ["tag_ub_rail"] = 1 -- }, -- VElement = { -- Bone = "tag_grip_attach", -- Position = Vector(0, -2.15, 0), -- Angles = Angle(), -- Offsets = { -- ["Barrel"] = { -- } -- } -- }, -- Stats = function(self) -- self:SetGripPoseParameter("grip_vert_offset") -- end -- }, -- }, -- ["Magazine"] = { -- Slot = 5, -- { -- Key = "attachment_vm_sm_uzulu_mag", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_xmags", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_xmag2", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_magcalcust", -- Stats = function(self) -- end -- }, -- { -- Key = "attachment_vm_sm_uzulu_magcalcust9mm", -- Stats = function(self) -- doCalConversionStats(self) -- end -- } -- }, -- }