--[[ | This file was obtained through the combined efforts | of Madbluntz & Plymouth Antiquarian Society. | | Credits: lifestorm, Gregory Wayne Rossel JR., | Maloy, DrPepper10 @ RIP, Atle! | | Visit for more: https://plymouth.thetwilightzone.ru/ --]] SWEP.Base = "arccw_base" SWEP.Spawnable = true -- this obviously has to be set to true SWEP.Category = "Willard - Oldie Weaponry" -- edit this if you like SWEP.AdminOnly = false SWEP.PrintName = "Regiment 9mm" SWEP.TrueName = "MP5" SWEP.Trivia_Class = "Submachine-Gun" SWEP.Trivia_Desc = "HK MP5 9x19 submachinegun with Navy 3 Round Burst firing mechanism version, which features three-round cutoff. Widely acclaimed model of a submachinegun, primarily known as weapon of GSG9 and similar forces of the world, and famous through frequent appearance in movies and video games." SWEP.Trivia_Manufacturer = "Heckler and Koch" SWEP.Trivia_Calibre = "9x19mm" SWEP.Trivia_Mechanism = "Gas-Operated" SWEP.Trivia_Country = "Germany" SWEP.Trivia_Year = 1966 SWEP.Slot = 2 if GetConVar("arccw_truenames"):GetBool() then SWEP.PrintName = SWEP.TrueName end SWEP.UseHands = true SWEP.ViewModel = "models/weapons/arc_eft_mp5/c_eft_mp5_std/models/c_eft_mp5_std.mdl" SWEP.WorldModel = "models/weapons/arc_eft_mp5/w_eft_mp5_std/models/w_eft_mp5_std.mdl" SWEP.ViewModelFOV = 54 SWEP.Damage = 10 SWEP.DamageMin = 10 -- damage done at maximum range SWEP.Range = 90 -- in METRES SWEP.Penetration = 1 SWEP.DamageType = DMG_BULLET SWEP.ShootEntity = nil -- entity to fire, if any SWEP.MuzzleVelocity = 400 -- projectile or phys bullet muzzle velocity -- IN M/S SWEP.CanFireUnderwater = false SWEP.TracerNum = 1 -- tracer every X SWEP.TracerCol = Color(255, 25, 25) SWEP.TracerWidth = 3 SWEP.ChamberSize = 1 -- how many rounds can be chambered. SWEP.Primary.ClipSize = 30 -- DefaultClip is automatically set. SWEP.ExtendedClipSize = 50 SWEP.ReducedClipSize = 20 SWEP.Recoil = .38 SWEP.RecoilSide = 0.125 SWEP.RecoilRise = 0.1 SWEP.RecoilPunch = 2.5 SWEP.Delay = 60 / 800 -- 60 / RPM. SWEP.Num = 1 -- number of shots per trigger pull. SWEP.Firemodes = { { Mode = 2, }, { Mode = -3, }, { Mode = 1, }, { Mode = 0 } } SWEP.NPCWeaponType = "weapon_smg1" SWEP.NPCWeight = 150 SWEP.AccuracyMOA = 18 -- accuracy in Minutes of Angle. There are 60 MOA in a degree. SWEP.HipDispersion = 300 -- inaccuracy added by hip firing. SWEP.MoveDispersion = 200 SWEP.Primary.Ammo = "pistol" -- what ammo type the gun uses SWEP.MagID = "eft_mp5" -- the magazine pool this gun draws from SWEP.ShootVol = 100 -- volume of shoot sound SWEP.ShootPitch = 110 -- pitch of shoot sound SWEP.FirstShootSound = "weapons/arccw_eft/mp5k/mp5k_fp.wav" SWEP.ShootSound = "weapons/arccw_eft/mp5k/mp5k_fp.wav" SWEP.ShootSoundSilenced = "weapons/arccw_eft/mp5k/mp5k_suppressed_fp.wav" SWEP.DistantShootSound = "weapons/arccw_eft/mp5k/mp5k_dist.wav" SWEP.MuzzleEffect = "muzzleflash_mp5" SWEP.ShellModel = "models/shells/shell_9mm.mdl" SWEP.ShellScale = 1.5 SWEP.MuzzleEffectAttachment = 1 -- which attachment to put the muzzle on SWEP.CaseEffectAttachment = 2 -- which attachment to put the case effect on SWEP.ShellScale = 1 SWEP.ShellRotateAngle = Angle(0, 180, 0) SWEP.SightTime = 0.275 SWEP.SpeedMult = 0.96 SWEP.SightedSpeedMult = 0.75 SWEP.BarrelLength = 20 SWEP.BulletBones = { -- the bone that represents bullets in gun/mag -- [0] = "bulletchamber", -- [1] = "bullet1" } SWEP.ProceduralRegularFire = true SWEP.ProceduralIronFire = true SWEP.CaseBones = {} SWEP.IronSightStruct = { Pos = Vector(-3.642, -2, 2.05), Ang = Angle(-0.0, 0.0, 0), Magnification = 1.1, SwitchToSound = "", -- sound that plays when switching to this sight } SWEP.HoldtypeHolstered = "passive" SWEP.HoldtypeActive = "smg" SWEP.HoldtypeSights = "ar2" SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_SMG SWEP.ActivePos = Vector(-1, 0, 2) SWEP.ActiveAng = Angle(0, 0, 0) SWEP.HolsterPos = Vector(4, -2, 1) SWEP.HolsterAng = Angle(0, 50, -15) SWEP.CustomizePos = Vector(-1.2 , 0, 1) SWEP.CustomizeAng = Angle(0, 0, 0) SWEP.BarrelOffsetSighted = Vector(0, 0, -1) SWEP.BarrelOffsetHip = Vector(2, 0, -2) SWEP.ExtraSightDist = 5 SWEP.AttachmentElements = { ["Mount_scopes"] = { VMBodygroups = {{ind = 2, bg = 1}}, WMBodygroups = {{ind = 2, bg = 1}}, }, ["Default_Stock"] = { VMBodygroups = {{ind = 4, bg = 1}}, WMBodygroups = {{ind = 3, bg = 1}}, }, ["Magazine_30"] = { VMBodygroups = {{ind = 5, bg = 1}}, WMBodygroups = {{ind = 4, bg = 1}}, }, ["Magazine_20"] = { VMBodygroups = {{ind = 5, bg = 3}}, WMBodygroups = {{ind = 4, bg = 3}}, }, ["extendedmag"] = { VMBodygroups = {{ind = 5, bg = 2}}, WMBodygroups = {{ind = 4, bg = 2}}, }, ["Default_Handguard"] = { VMBodygroups = {{ind = 6, bg = 1}}, WMBodygroups = {{ind = 5, bg = 1}}, }, ["Default_Muzzle"] = { VMBodygroups = {{ind = 7, bg = 1}}, WMBodygroups = {{ind = 6, bg = 1}}, }, } SWEP.Attachments = { { PrintName = "Optic", -- print name DefaultAttName = "Iron Sights", Slot = {"eft_optic_large", "eft_optic_medium", "eft_optic_small"}, -- what kind of attachments can fit here, can be string or table Bone = "mod_reciever", -- relevant bone any attachments will be mostly referring to Offset = { vang = Angle(90, -90, -90), wang = Angle(-5, 0, 180) }, CorrectivePos = Vector(0, 0, 0), CorrectiveAng = Angle(0, 180, 180), SlideAmount = { -- how far this attachment can slide in both directions. -- overrides Offset vmin = Vector(0, 0.5, 3.65), vmax = Vector(0, -1.6, 3.7), wmin = Vector(5.5, 0.5, -5.8), wmax = Vector(6.5, 0.5, -5.9), }, InstalledEles = {"Mount_scopes"}, }, { PrintName = "Muzzle Device", DefaultAttName = "3 Lug adapter", Slot = {"eft_muzzle_mp5", "eft_surpressor_9mm"}, DefaultAttIcon = Material("vgui/entities/eft_attachments/3lug_muzzleicon.png"), Bone = "mod_reciever", Offset = { vpos = Vector(0, 9.5, 2.25), vang = Angle(0, -90, 0), wpos = Vector(16.6, 0.5, -5.3), wang = Angle(-5, 0, 0), }, InstalledEles = {"Default_Muzzle"}, }, { PrintName = "Tactical", Slot = "eft_tactical", Bone = "mod_reciever", Offset = { vpos = Vector(-.9, 5.5, 2), -- offset that the attachment will be relative to the bone vang = Angle(0, -90, -90), wpos = Vector(13, -0.45, -4.95), wang = Angle(-5, 0, 90), }, RequireFlags = {"siderail"}, }, { PrintName = "Underbarrel", Slot = "eft_foregrip", Bone = "mod_reciever", DefaultAttName = "No Underbarrel", Offset = { vpos = Vector(0, 6, 1.25), vang = Angle(90, -90, -90), wpos = Vector(12, 0, -4), wang = Angle(-5, 0, 180) }, RequireFlags = {"lowerrail"}, }, { PrintName = "Stock", Slot = "eftmp5_stock", DefaultAttIcon = Material("vgui/entities/eft_attachments/A2_StockIcon.png"), Bone = "mod_stock", DefaultAttName = "A2 Stock", Offset = { vpos = Vector(0, 0, 0), -- offset that the attachment will be relative to the bone vang = Angle(0, -90, 0), wpos = Vector(2, 0.5, -3), wang = Angle(-5, 0, 180) }, InstalledEles = {"Default_Stock"}, }, { PrintName = "Handguard", Slot = "eftmp5_handguard", DefaultAttIcon = Material("vgui/entities/eft_attachments/Navy_HandguardIcon.png"), Bone = "mod_reciever", DefaultAttName = "Navy Handguard", Offset = { vpos = Vector(0, 5.25, 1.9), -- offset that the attachment will be relative to the bone vang = Angle(-90, -0, -90), wpos = Vector(12.25, 0.5, -4.75), wang = Angle(85, 0, 180) }, InstalledEles = {"Default_Handguard"}, }, { PrintName = "Magazine", DefaultAttName = "30-Round Mag", DefaultAttIcon = Material("vgui/entities/eft_attachments/MP5_30Mag_Icon.png"), InstalledEles = {"Magazine_30"}, Slot = "eftmp5_mag" }, { PrintName = "Caliber", DefaultAttName = "9x19 Pst Gzh", DefaultAttIcon = Material("vgui/entities/eft_attachments/9x19_Icon.png"), Slot = "ammo_eft_9x19" } } SWEP.Animations = { ["idle"] = { Source = false, LHIK = false, LHIKIn = 0, LHIKOut = 0, }, ["ready"] = { Source = "draw_first", Time = 1.5, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltback.wav", t = 0.3 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltrelease.wav", t = 0. } }, LHIK = true, LHIKIn = 0, LHIKOut = 0.25, }, ["draw_empty"] = { Source = "draw_empty", Time = 0.75, LHIK = true, LHIKIn = 0, LHIKOut = 2, }, ["draw"] = { Source = "draw", Time = 0.9, LHIK = true, LHIKIn = 0, LHIKOut = 1, }, ["fire"] = { Source = "shoot", Time = 0.5, ShellEjectAt = 0, }, ["fire_empty"] = { Source = "shoot_dry", Time = 1, }, ["fire_iron"] = { Source = "shoot", Time = 1, ShellEjectAt = 0, }, ["fire_iron_empty"] = { Source = "shoot_dry", Time = 1, }, ["reload"] = { Source = "reload", Time = 3, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_magrelease.wav", t = 0.35 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 0.4 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 1.8 } }, }, ["reload_long"] = { Source = "reload_extended", Time = 3, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_magrelease.wav", t = 0.35 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 0.4 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 1.8 } }, }, ["reload_short"] = { Source = "reload_decreased", Time = 3, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_magrelease.wav", t = 0.35 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 0.4 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 1.8 } }, }, ["reload_empty"] = { Source = "reload_empty", Time = 4, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltback.wav", t = 0.45 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltlock.wav", t = 0.55 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 1.1 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 2.5 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltrelease.wav", t = 3.5 } }, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, }, ["reload_long_empty"] = { Source = "reload_empty_extended", Time = 4, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltback.wav", t = 0.45 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltlock.wav", t = 0.55 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 1.1 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 2.5 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltrelease.wav", t = 3.5 } }, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, }, ["reload_short_empty"] = { Source = "reload_empty_decreased", Time = 4, TPAnim = ACT_HL2MP_GESTURE_RELOAD_SMG1, FrameRate = 24, SoundTable = { { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltback.wav", t = 0.45 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltlock.wav", t = 0.55 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magout.wav", t = 1.1 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_magin.wav", t = 2.5 }, { s = "weapons/arccw_eft/mp5k/handling/mp5k_boltrelease.wav", t = 3.5 } }, LHIK = true, LHIKIn = 0.5, LHIKOut = 0.3, }, ["enter_inspect"] = { Source = "customise_begin", LHIK = true, LHIKIn = 0.5, LHIKOut = 0, }, ["idle_inspect"] = { Source = "customise_idle", LHIK = true, LHIKIn = 0, LHIKOut = 0, }, ["exit_inspect"] = { Source = "customise_end", LHIK = true, LHIKIn = 0, LHIKOut = 0.3, }, }