This commit is contained in:
Fesiug 2024-02-29 22:26:31 -05:00
parent fb95b5ebb3
commit 85dfb7089e
91 changed files with 2640 additions and 0 deletions

View File

@ -0,0 +1,26 @@
att.PrintName = "Tactical Laser Position"
-- att.Icon = Material("entities/att/aksidemount.png", "smooth mips")
att.Description = "Give your AN/PEQ a reason to be thin."
att.Desc_Pros = {}
att.Desc_Cons = {}
att.Desc_Neutrals = {
"ua.m82.tl.1",
"ua.m82.tl.2"
}
att.Slot = "ua_m82_charm"
-- att.AdditionalSights = {
-- {
-- Pos = Vector(0, 20, -6),
-- Ang = Angle(0, 0, -25),
-- GlobalPos = false,
-- GlobalAng = true,
-- Magnification = 1,
-- ScrollFunc = ArcCW.SCROLL_NONE
-- }
-- }
att.SortOrder = 998
-- att.TacLaserPos = true
att.RequireFlags = {"tac"}
att.GivesFlags = {"ak_norail"}

View File

@ -0,0 +1,29 @@
att.PrintName = "M82 5-Round Flush Mag"
att.AbbrevName = "5-Round Flush Mag"
if !GetConVar("arccw_truenames"):GetBool() then
att.PrintName = "NEED FAKE NAME!!!!!!! 5-Round Flush Mag"
end
att.SortOrder = 5
-- att.Icon = Material("entities/att/ur_mp5/mag20.png", "smooth mips")
att.Description = "Low-capacity magazine. The lighter load helps alleviate the weapon's notorious weight."
att.Desc_Pros = {
}
att.Desc_Cons = {
}
att.Desc_Neutrals = {
}
att.Slot = "ua_m82_mag"
att.AutoStats = true
att.Mult_SightTime = 0.9
att.Mult_ReloadTime = 0.85
att.Override_ClipSize = 5
att.Mult_Sway = 0.75
att.Mult_SpeedMult = 1.075
att.Hook_SelectReloadAnimation = function(wep, anim)
return anim .. "_5"
end

View File

@ -0,0 +1,4 @@
L = {}
L["ua.m82.tl.1"] = "Mount tactical lasers on top of the weapon instead of the barrel or lower rail."
L["ua.m82.tl.2"] = "The sight is changed to a point shooting stance."

View File

@ -0,0 +1,612 @@
SWEP.Base = "arccw_base"
SWEP.Spawnable = true
SWEP.Category = "ArcCW - Urban Coalition"
SWEP.UC_CategoryPack = "4Urban Anarchy"
SWEP.AdminOnly = false
SWEP.UseHands = true
-- Muzzle and shell effects --
SWEP.MuzzleEffect = "muzzleflash_1"
SWEP.ShellModel = "models/weapons/arccw/uc_shells/556x45.mdl"
SWEP.ShellScale = 1
SWEP.ShellPitch = 100
SWEP.MuzzleEffectAttachment = 1
SWEP.CaseEffectAttachment = 2
SWEP.TracerNum = 0
SWEP.TracerCol = Color(25, 255, 25)
SWEP.TracerWidth = 2
-- Fake name --
SWEP.PrintName = "XM422"
-- True name --
SWEP.TrueName = "M249 SAW"
-- Trivia --
SWEP.Trivia_Class = "Machine Gun"
SWEP.Trivia_Desc = "Compact, fast-firing light machine gun, adopted by the US Army in search of a more soldier-friendly alternative to the M60. Its huge ammo box can carry an unprecedented quantity of rounds, which are dispensed downrange at a rate that will force the enemy's heads to stay down. In emergencies, it can also accept STANAG magazines."
SWEP.Trivia_Manufacturer = "Not FN Herstal"
SWEP.Trivia_Calibre = "5.56x45mm NATO"
SWEP.Trivia_Mechanism = "Gas-Operated Open Bolt"
SWEP.Trivia_Country = "Belgium"
SWEP.Trivia_Year = 1977
if GetConVar("arccw_truenames"):GetBool() then
SWEP.PrintName = SWEP.TrueName
end
-- Weapon slot --
SWEP.Slot = 2
-- Weapon's manufacturer real name --
if GetConVar("arccw_truenames"):GetBool() then
SWEP.PrintName = SWEP.TrueName
SWEP.Trivia_Manufacturer = "FN Herstal"
end
-- Viewmodel / Worldmodel / FOV --
SWEP.ViewModel = "models/weapons/arccw/c_lowpolym249.mdl"
SWEP.WorldModel = "models/weapons/w_rif_m4a1.mdl"
SWEP.ViewModelFOV = 85
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_AR2
-- Damage parameters --
SWEP.Damage = ArcCW.UC.StdDmg["556"].max
SWEP.DamageMin = ArcCW.UC.StdDmg["556"].min
SWEP.Range = 150
SWEP.Penetration = ArcCW.UC.StdDmg["556"].pen
SWEP.DamageType = DMG_BULLET
SWEP.ShootEntity = nil
SWEP.PhysBulletMuzzleVelocity = 915
-- Mag size --
SWEP.ChamberSize = 0
SWEP.Primary.ClipSize = 100
-- Recoil --
SWEP.Recoil = 0.1
SWEP.RecoilSide = 0.14
SWEP.RecoilRise = 0.3
SWEP.VisualRecoilMult = 0.4
SWEP.MaxRecoilBlowback = 0.4
SWEP.MaxRecoilPunch = 1
-- Firerate / Firemodes --
SWEP.TriggerDelay = true
SWEP.Delay = 60 / 800
SWEP.Num = 1
SWEP.Firemodes = {
{
Mode = 2,
},
{
Mode = 0
}
}
SWEP.ShootPitch = 100
SWEP.ShootVol = 114
SWEP.ProceduralRegularFire = false
SWEP.ProceduralIronFire = false
SWEP.ReloadInSights = true
-- NPC --
SWEP.NPCWeaponType = "weapon_ar2"
SWEP.NPCWeight = 60
-- Accuracy --
SWEP.AccuracyMOA = 5.6
SWEP.HipDispersion = 600
SWEP.MoveDispersion = 800
SWEP.Primary.Ammo = "smg1"
-- Speed multipliers --
SWEP.SpeedMult = 0.7
SWEP.SightedSpeedMult = 0.72
SWEP.SightTime = 0.6
-- Length --
SWEP.BarrelLength = 42
SWEP.ExtraSightDist = 7
-- Ironsights / Customization / Poses --
SWEP.HolsterPos = Vector(4.623, -2.211, 1.004)
SWEP.HolsterAng = Angle(-8.443, 28.843, 0)
SWEP.HoldtypeHolstered = "passive"
SWEP.HoldtypeActive = "ar2"
SWEP.HoldtypeSights = "rpg"
SWEP.IronSightStruct = {
Pos = Vector(-3.445, 0, 2),
Ang = Angle(0.1, 0, -2),
Magnification = 1,
SwitchToSound = "",
}
SWEP.ActivePos = Vector(0, 0, 0)
SWEP.ActiveAng = Angle(0, 0, 0)
SWEP.CustomizePos = Vector(0, 0, 0)
SWEP.CustomizeAng = Angle(0, 0, 0)
SWEP.CrouchPos = Vector(-2, -2, 0)
SWEP.CrouchAng = Angle(0, 0, -8)
SWEP.MirrorVMWM = true
SWEP.WorldModelOffset = {
pos = Vector(-12, 4.5, -5.5),
ang = Angle(-6, 0, 180),
bone = "ValveBiped.Bip01_R_Hand",
}
-- Weapon sounds --
local path = ")^weapons/arccw_ue/m249/"
local common = ")^/arccw_uc/common/"
SWEP.ShootSound = {
path .. "fire-01.ogg",
path .. "fire-02.ogg",
path .. "fire-03.ogg",
path .. "fire-04.ogg",
path .. "fire-05.ogg",
path .. "fire-06.ogg"
}
SWEP.ShootSoundSilenced = path .. "fire_supp.ogg"
SWEP.DistantShootSound = nil
SWEP.DistantShootSoundSilenced = common .. "sup_tail.ogg"
SWEP.ShootDrySound = path .. "dryfire.ogg"
local tail = ")^/arccw_uc/common/556x45/"
SWEP.DistantShootSoundOutdoors = {
tail .. "fire-dist-556x45-mg-ext-01.ogg",
tail .. "fire-dist-556x45-mg-ext-02.ogg",
tail .. "fire-dist-556x45-mg-ext-03.ogg",
tail .. "fire-dist-556x45-mg-ext-04.ogg",
tail .. "fire-dist-556x45-mg-ext-05.ogg",
tail .. "fire-dist-556x45-mg-ext-06.ogg"
}
SWEP.DistantShootSoundIndoors = {
tail .. "fire-dist-556x45-rif-int-01.ogg",
tail .. "fire-dist-556x45-rif-int-02.ogg",
tail .. "fire-dist-556x45-rif-int-03.ogg",
tail .. "fire-dist-556x45-rif-int-04.ogg",
tail .. "fire-dist-556x45-rif-int-05.ogg",
tail .. "fire-dist-556x45-rif-int-06.ogg"
}
SWEP.DistantShootSoundOutdoorsSilenced = {
common .. "sup-tail-01.ogg",
common .. "sup-tail-02.ogg",
common .. "sup-tail-03.ogg",
common .. "sup-tail-04.ogg",
common .. "sup-tail-05.ogg",
common .. "sup-tail-06.ogg",
common .. "sup-tail-07.ogg",
common .. "sup-tail-08.ogg",
common .. "sup-tail-09.ogg",
common .. "sup-tail-10.ogg"
}
SWEP.DistantShootSoundIndoorsSilenced = {
common .. "fire-dist-int-pistol-light-01.ogg",
common .. "fire-dist-int-pistol-light-02.ogg",
common .. "fire-dist-int-pistol-light-03.ogg",
common .. "fire-dist-int-pistol-light-04.ogg",
common .. "fire-dist-int-pistol-light-05.ogg",
common .. "fire-dist-int-pistol-light-06.ogg"
}
SWEP.DistantShootSoundOutdoorsVolume = 1
SWEP.DistantShootSoundIndoorsVolume = 1
SWEP.Hook_AddShootSound = ArcCW.UC.InnyOuty
-- Bodygroups --
SWEP.BulletBones = {
[1] = "Bullet1", [2] = "Bullet2", [3] = "Bullet3", [4] = "Bullet4", [5] = "Bullet5", [6] = "Bullet6",
[7] = "Bullet7", [8] = "Bullet8", [9] = "Bullet9", [10] = "Bullet10", [11] = "Bullet11", [12] = "Bullet12"
}
SWEP.DefaultBodygroups = "000000000"
SWEP.AttachmentElements = {
["nofh"] = {
VMBodygroups = {{ind = 1, bg = 4}},
},
["go_stock"] = {
VMBodygroups = {
{ind = 2, bg = 1}
},
VMElements = {
{
Model = "models/weapons/arccw/atts/buffer_lpstock.mdl",
Bone = "Body",
Offset = {
pos = Vector(0, -2, -12.1),
ang = Angle(90, 0, -90),
},
Scale = Vector(0.9,0.9,0.9),
}
},
},
["lpglobal_stock"] = {
VMBodygroups = {
{ind = 2, bg = 1}
},
VMElements = {
{
Model = "models/weapons/arccw/atts/buffer_lpstock.mdl",
Bone = "Body",
Offset = {
pos = Vector(0, -2, -12.1),
ang = Angle(90, 0, -90),
},
Scale = Vector(0.9,0.9,0.9),
}
},
},
["lphm_stock"] = {
VMBodygroups = {{ind = 2, bg = 1}},
},
-- Skins --
["skin_wireframe"] = {
VMSkin = 1,
},
}
-- Animations --
SWEP.Animations = {
["idle"] = {
Source = "idle",
Framerate = 60,
Time = 330 / 60,
},
["idle_empty"] = {
Source = "idle_empty",
Framerate = 60,
Time = 330 / 60,
},
["ready"] = {
Source = "idle",
Framerate = 60,
Time = 68 / 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.6,
SoundTable = {
--{ s = path .. "lowpolyfal_readydraw.ogg", t = 1 / 30, c = ca },
},
},
["draw"] = {
Source = "draw",
Framerate = 60,
},
["trigger"] = {
Source = "idle",
Time = 0.075,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON, v = 0.5},
},
},
["trigger_iron"] = {
Source = "idle",
Time = 0.075,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON},
},
},
["fire"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0, v = 0.2},
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
["fire_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0},
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
-- 100-R Reloads --
["reload"] = {
Source = "reload",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
MinProgress = 1,
Time = 298 / 60,
Framerate = 60,
LastClip1OutTime = 2.4,
LHIK = true,
LHIKIn = 0.2,
LHIKEaseIn = 0.2,
LHIKEaseOut = 0.2,
LHIKOut = 0.62,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 15 / 30, c = ca },
{ s = path .. "belt1.ogg", t = 25 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 30 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 45 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 50 / 30, c = ca },
{ s = path .. "boxstruggle.ogg", t = 70 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 76 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 85 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 90 / 30, c = ca },
{ s = path .. "beltadjust.ogg", t = 91 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 105 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 110 / 30, c = ca },
{ s = path .. "grab.ogg", t = 130 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 135 / 30, c = ca },
},
},
["reload_empty"] = {
Source = "reload_empty",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
Framerate = 60,
Time = 344 / 60,
LastClip1OutTime = 3,
LHIK = true,
LHIKIn = 2.2,
LHIKEaseIn = 0.1,
LHIKEaseOut = 0.15,
LHIKOut = 0.7,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "chback.ogg", t = 15 / 30, c = ca },
{ s = path .. "chforward.ogg", t = 20 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 25 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 40 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 40 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 65 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 80 / 30, c = ca },
{ s = path .. "boxstruggle.ogg", t = 94 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 100 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 110 / 30, c = ca },
{ s = path .. "beltadjust.ogg", t = 111 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 125 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 125 / 30, c = ca, v = 1 },
{ s = path .. "grab.ogg", t = 150 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 155 / 30, c = ca },
},
},
-- Inspecc --
["enter_inspect"] = {
Source = "enter_inspect",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.3,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect"] = {
Source = "idle_inspect",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect"] = {
Source = "exit_inspect",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
["enter_inspect_empty"] = {
Source = "enter_inspect_empty",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.1,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect_empty"] = {
Source = "idle_inspect_empty",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect_empty"] = {
Source = "exit_inspect_empty",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
}
-- ADS animation blending, thanks fesiug --
SWEP.Hook_Think = function(wep)
local vm = wep:GetOwner():GetViewModel()
vm:SetPoseParameter( "sights", Lerp(wep:GetSightDelta(), 1, 0) )
end
-- Attachments --
SWEP.CamAttachment = 3
SWEP.RejectAttachments = {
["lpak_polymer"] = true,
}
SWEP.Attachments = {
{
PrintName = "Optic",
Slot = {"optic_lp", "optic", "sniper_optic"},
DefaultAttName = "Iron Sights",
Bone = "topcover",
Offset = {
vpos = Vector(-0.24, -0.6, -5),
vang = Angle(90, 0, -90),
},
ExtraSightDist = 10,
InstalledEles = {"nors"},
CorrectivePos = Vector(0.13, 0, 0.33),
},
{
PrintName = "Handguard",
Slot = {"lpm249_hand"},
DefaultAttIcon = Material("entities/att/acwatt_lpfal_defhand.png"),
DefaultAttName = "21' Standard Issue Barrel",
Bone = "Body",
Offset = {
vpos = Vector(3.07, -3.8, -27),
vang = Angle(90, 0, -90),
},
},
{
PrintName = "Muzzle",
DefaultAttName = "Standard Muzzle",
Slot = {"muzzle"},
Bone = "Barrel",
Offset = {
vpos = Vector(0, 0, -4),
vang = Angle(90, 0, -90),
},
InstalledEles = {"nofh"},
},
{
PrintName = "Underbarrel",
Slot = {"foregrip","bipod","ubgl"},
Bone = "Body",
Offset = {
vpos = Vector(-0.05, 0.5, 1),
vang = Angle(90, 0, -90),
},
ExcludeFlags = {"fnchand"},
},
{
PrintName = "Tactical",
Slot = {"tac"},
Bone = "Body",
Offset = {
vpos = Vector(-0.8, -1, 1),
vang = Angle(90, 0, 180),
},
},
{
PrintName = "Mag Type",
Slot = {"lpm249_mag"},
DefaultAttIcon = Material("entities/att/acwatt_lpfal_defmag.png"),
DefaultAttName = "100-Round Standard Box",
},
{
PrintName = "Stock",
Slot = {"lpglobal_stock","go_stock","lphm_stock"},
DefaultAttIcon = Material("entities/att/acwatt_lpfal_defstock.png"),
DefaultAttName = "Standard Polymer Stock",
VMScale = Vector(0.9,0.9,0.9),
Bone = "Body",
Offset = {
vpos = Vector(0, -2, -12.1),
vang = Angle(90, 0, -90),
},
},
{
PrintName = "Ammo Type",
DefaultAttName = "\"FMJ\" Full Metal Jacket",
DefaultAttIcon = Material("entities/att/arccw_uc_ammo_generic.png", "mips smooth"),
Slot = "uc_ammo",
},
{
PrintName = "Powder Load",
Slot = "uc_powder",
DefaultAttName = "Standard Load"
},
{
PrintName = "Training Package",
Slot = "uc_tp",
DefaultAttName = "Basic Training"
},
{
PrintName = "Internals",
Slot = "uc_fg", -- Fire group
DefaultAttName = "Standard Internals"
},
{
PrintName = "Charm",
Slot = {"charm","fml_charm"},
FreeSlot = true,
Bone = "Body",
Offset = {
vpos = Vector(0.5, -0.1, -14),
vang = Angle(90, 0, -90),
},
},
}

View File

@ -0,0 +1,574 @@
SWEP.Base = "arccw_base"
SWEP.Spawnable = true -- this obviously has to be set to true
SWEP.Category = "ArcCW - Urban Coalition" -- edit this if you like
SWEP.UC_CategoryPack = "4Urban Anarchy"
SWEP.AdminOnly = false
SWEP.PrintName = "M60"
SWEP.Trivia_Class = "Machine Gun"
SWEP.Trivia_Desc = [[Classic machine gun with a beefy profile and a beefy cartridge. Despite glaring reliability issues, it is remembered fondly as an icon of the Vietnam War. Troops have affectionately nicknamed it "the Pig" for its bulkiness and demanding ammo consumption.
As one of the heaviest infantry weapons available, it handles the round's recoil quite well, especially when mounted.]]
SWEP.Trivia_Manufacturer = "U.S. Ordnance"
SWEP.Trivia_Calibre = "7.62x51mm NATO"
SWEP.Trivia_Mechanism = "Gas-Operated Open Bolt"
SWEP.Trivia_Country = "United States"
SWEP.Trivia_Year = 1957
SWEP.Slot = 2
SWEP.UseHands = true
SWEP.ViewModel = "models/weapons/arccw/c_lowpolym249.mdl"
SWEP.WorldModel = "models/weapons/w_rif_m4a1.mdl"
SWEP.ViewModelFOV = 85
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_AR2
SWEP.DefaultBodygroups = "0000000000"
SWEP.Damage = ArcCW.UC.StdDmg["762_51"].max
SWEP.DamageMin = ArcCW.UC.StdDmg["762_51"].min -- damage done at maximum range
SWEP.Range = 100 -- in METRES
SWEP.Penetration = ArcCW.UC.StdDmg["762_51"].pen
SWEP.DamageType = DMG_BULLET
SWEP.ShootEntity = nil -- entity to fire, if any
SWEP.ChamberSize = 0 -- how many rounds can be chambered.
SWEP.Primary.ClipSize = 100 -- DefaultClip is automatically set.
SWEP.PhysBulletMuzzleVelocity = 853
SWEP.Recoil = 0.245
SWEP.RecoilSide = 0.245
SWEP.RecoilRise = 0.1
SWEP.RecoilPunch = 5
SWEP.ShootPitchVariation = 0
SWEP.TriggerDelay = true
SWEP.Delay = 60 / 550
SWEP.Num = 1
SWEP.Firemodes = {
{
Mode = 2,
Mult_TriggerDelayTime = 1,
},
{
Mode = 0,
},
}
SWEP.NPCWeaponType = "weapon_ar2"
SWEP.NPCWeight = 20
SWEP.AccuracyMOA = 7 -- accuracy in Minutes of Angle. There are 60 MOA in a degree.
SWEP.HipDispersion = 450 -- inaccuracy added by hip firing.
SWEP.MoveDispersion = 250
SWEP.Primary.Ammo = "ar2" -- what ammo type the gun uses
SWEP.MagID = "m60" -- the magazine pool this gun draws from
SWEP.ShootVol = 110 -- volume of shoot sound
SWEP.ShootPitch = 100 -- pitch of shoot sound
local path = ")^/weapons/arccw_ue/m60/"
local common = ")^/arccw_uc/common/"
SWEP.ShootSound = {
path .. "fire-01.ogg",
path .. "fire-02.ogg",
path .. "fire-03.ogg",
path .. "fire-04.ogg",
path .. "fire-05.ogg",
path .. "fire-06.ogg"
}
SWEP.ShootSoundSilenced = path .. "fire_supp.ogg"
SWEP.DistantShootSound = nil
SWEP.DistantShootSoundSilenced = common .. "sup_tail.ogg"
SWEP.ShootDrySound = path .. "dryfire.ogg"
local tail = ")^/arccw_uc/common/308/"
SWEP.DistantShootSoundOutdoors = {
tail .. "fire-dist-308-mg-ext-01.ogg",
tail .. "fire-dist-308-mg-ext-02.ogg",
tail .. "fire-dist-308-mg-ext-03.ogg",
tail .. "fire-dist-308-mg-ext-04.ogg",
tail .. "fire-dist-308-mg-ext-05.ogg",
tail .. "fire-dist-308-mg-ext-06.ogg"
}
SWEP.DistantShootSoundIndoors = {
tail .. "fire-dist-308-rif-int-01.ogg",
tail .. "fire-dist-308-rif-int-02.ogg",
tail .. "fire-dist-308-rif-int-03.ogg",
tail .. "fire-dist-308-rif-int-04.ogg",
tail .. "fire-dist-308-rif-int-05.ogg",
tail .. "fire-dist-308-rif-int-06.ogg"
}
SWEP.DistantShootSoundOutdoorsSilenced = {
common .. "sup-tail-01.ogg",
common .. "sup-tail-02.ogg",
common .. "sup-tail-03.ogg",
common .. "sup-tail-04.ogg",
common .. "sup-tail-05.ogg",
common .. "sup-tail-06.ogg",
common .. "sup-tail-07.ogg",
common .. "sup-tail-08.ogg",
common .. "sup-tail-09.ogg",
common .. "sup-tail-10.ogg"
}
SWEP.DistantShootSoundIndoorsSilenced = {
common .. "fire-dist-int-pistol-light-01.ogg",
common .. "fire-dist-int-pistol-light-02.ogg",
common .. "fire-dist-int-pistol-light-03.ogg",
common .. "fire-dist-int-pistol-light-04.ogg",
common .. "fire-dist-int-pistol-light-05.ogg",
common .. "fire-dist-int-pistol-light-06.ogg"
}
SWEP.DistantShootSoundOutdoorsVolume = 1
SWEP.DistantShootSoundIndoorsVolume = 1
SWEP.Hook_AddShootSound = ArcCW.UC.InnyOuty
SWEP.MuzzleEffect = "muzzleflash_minimi"
SWEP.ShellModel = "models/weapons/arccw/uc_shells/556x45.mdl"
SWEP.ShellScale = 1.145
SWEP.ShellPitch = 90
SWEP.ShellRotateAngle = Angle(0, 180, 0)
SWEP.MuzzleEffectAttachment = 1 -- which attachment to put the muzzle on
SWEP.CaseEffectAttachment = 2 -- which attachment to put the case effect on
SWEP.SpeedMult = 0.85
SWEP.SightedSpeedMult = 0.5
SWEP.SightTime = 0.425
SWEP.ShootSpeedMult = 0.5
SWEP.IronSightStruct = {
Pos = Vector(-3.445, 0, 2),
Ang = Angle(0.1, 0, -2),
Magnification = 1,
SwitchToSound = "",
}
SWEP.HoldtypeHolstered = "passive"
SWEP.HoldtypeActive = "ar2"
SWEP.HoldtypeSights = "rpg"
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_AR2
SWEP.ActivePos = Vector(0, 0, 0)
SWEP.ActiveAng = Angle(0, 0, 0)
SWEP.CrouchPos = Vector(-4, 0, -1)
SWEP.CrouchAng = Angle(0, 0, -10)
SWEP.HolsterPos = Vector(3, 3, 0)
SWEP.HolsterAng = Angle(-7.036, 30.016, 0)
SWEP.BarrelOffsetSighted = Vector(0, 0, -1)
SWEP.BarrelOffsetHip = Vector(2, 0, -2)
SWEP.CustomizePos = Vector(8, 0, 1)
SWEP.CustomizeAng = Angle(5, 30, 30)
SWEP.BarrelLength = 24
SWEP.AttachmentElements = {
["rs_none"] = {
VMBodygroups = {{ind = 5, bg = 1}},
},
["foregrip"] = {
VMBodygroups = {{ind = 4, bg = 2}},
},
["tacms"] = {
VMBodygroups = {{ind = 7, bg = 1}},
},
["fh_none"] = {
VMBodygroups = {{ind = 2, bg = 3}},
},
["go_m249_bipod"] = {
VMBodygroups = {{ind = 4, bg = 1}},
},
["go_m249_barrel_short"] = {
VMBodygroups = {
{ind = 1, bg = 1},
{ind = 2, bg = 1}},
AttPosMods = {
[5] = {vpos = Vector(0, -4.4, 23.5)},
}
},
["go_m249_barrel_long"] = {
VMBodygroups = {
{ind = 1, bg = 2},
{ind = 2, bg = 2}},
AttPosMods = {
[5] = {vpos = Vector(0, -4.4, 34.5)},
}
},
["go_m249_mag_9_200"] = {
NameChange = "SMG-249/9",
VMBodygroups = {
{ind = 0, bg = 1},
{ind = 3, bg = 1},
{ind = 6, bg = 2}
},
},
["go_m249_mag_12g_45"] = {
NameChange = "Minimi-12",
VMBodygroups = {
{ind = 0, bg = 2},
{ind = 3, bg = 2},
{ind = 6, bg = 3}
},
},
["go_stock_none"] = {
VMBodygroups = {
{ind = 8, bg = 1}
},
},
["go_stock"] = {
VMBodygroups = {{ind = 8, bg = 1}},
VMElements = {
{
Model = "models/weapons/arccw_go/atts/stock_buftube_lp.mdl",
Bone = "v_weapon.m249_parent",
Offset = {
pos = Vector(0, -4, -3),
ang = Angle(90, 0, -90),
},
}
},
},
}
SWEP.GuaranteeLaser = true
SWEP.WorldModelOffset = {
pos = Vector(-19, 8, -5),
ang = Angle(-10, 0, 180)
}
SWEP.MirrorVMWM = true
SWEP.Attachments = {
{
PrintName = "Optic",
Slot = "optic",
Bone = "v_weapon.topHinge",
DefaultAttName = "Iron Sights",
Offset = {
vpos = Vector(-0.04, -0.4, -5),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
VMScale = Vector(1.1, 1.1, 1.1),
InstalledEles = {"rs_none"},
CorrectiveAng = Angle(1, 0, 0)
},
{
PrintName = "Underbarrel",
Slot = {"foregrip", "m249_bipod"},
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -1.15, 15),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
},
{
PrintName = "Tactical",
Slot = "tac",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(1.15, -4.3, 15.75),
vang = Angle(90, 0, 0),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
InstalledEles = {"tacms"},
},
{
PrintName = "Barrel",
Slot = "go_m249_barrel",
DefaultAttName = "460mm SAW Barrel"
},
{
PrintName = "Muzzle",
DefaultAttName = "Standard Muzzle",
Slot = "muzzle",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -4.4, 30),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
InstalledEles = {"fh_none"},
},
{
PrintName = "Magazine",
Slot = "go_m249_mag",
DefaultAttName = "150-Round 5.56mm Belt"
},
{
PrintName = "Stock",
Slot = {"go_stock_none", "go_stock"},
DefaultAttName = "Standard Stock",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -4, -3),
vang = Angle(90, 0, -90),
},
VMScale = Vector(1, 1, 1)
},
{
PrintName = "Ammo Type",
DefaultAttName = "\"FMJ\" Full Metal Jacket",
DefaultAttIcon = Material("entities/att/arccw_uc_ammo_generic.png", "mips smooth"),
Slot = "uc_ammo",
},
{
PrintName = "Powder Load",
Slot = "uc_powder",
DefaultAttName = "Standard Load"
},
{
PrintName = "Training Package",
Slot = "uc_tp",
DefaultAttName = "Basic Training"
},
{
PrintName = "Internals",
Slot = "uc_fg", -- Fire group
DefaultAttName = "Standard Internals"
},
{
PrintName = "Charm",
Slot = "charm",
FreeSlot = true,
Bone = "v_weapon.m249_Parent", -- relevant bone any attachments will be mostly referring to
Offset = {
vpos = Vector(0.6, -3.25, 4), -- offset that the attachment will be relative to the bone
vang = Angle(90, 0, -90),
wpos = Vector(6.099, 1.1, -3.301),
wang = Angle(171.817, 180-1.17, 0),
},
},
}
SWEP.Hook_Think = function(wep)
local vm = wep:GetOwner():GetViewModel()
vm:SetPoseParameter( "sights", Lerp(wep:GetSightDelta(), 1, 0) )
end
-- Attachments --
SWEP.CamAttachment = 3
SWEP.RejectAttachments = {
["lpak_polymer"] = true,
}
SWEP.Animations = {
["idle"] = {
Source = "idle",
Framerate = 60,
Time = 330 / 60,
},
["idle_empty"] = {
Source = "idle_empty",
Framerate = 60,
Time = 330 / 60,
},
["ready"] = {
Source = "idle",
Framerate = 60,
Time = 68 / 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.6,
SoundTable = {
--{ s = path .. "lowpolyfal_readydraw.ogg", t = 1 / 30, c = ca },
},
},
["draw"] = {
Source = "draw",
Framerate = 60,
},
["trigger"] = {
Source = "idle",
Time = 0.075,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON, v = 0.5},
},
},
["trigger_iron"] = {
Source = "idle",
Time = 0.075,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON},
},
},
["fire"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0, v = 0.2 },
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
["fire_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0, v = 0.2 },
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
-- 100-R Reloads --
["reload"] = {
Source = "reload",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
MinProgress = 1,
Time = 298 / 60,
Framerate = 60,
LastClip1OutTime = 2.4,
LHIK = true,
LHIKIn = 0.2,
LHIKEaseIn = 0.2,
LHIKEaseOut = 0.2,
LHIKOut = 0.62,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 10 / 30, c = ca },
{ s = path .. "belt1.ogg", t = 25 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 30 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 35 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 50 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 68 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 85 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 90 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 110 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 115 / 30, c = ca },
{ s = path .. "grab.ogg", t = 130 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 135 / 30, c = ca },
},
},
["reload_empty"] = {
Source = "reload_empty",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
Framerate = 60,
Time = 344 / 60,
LastClip1OutTime = 3,
LHIK = true,
LHIKIn = 2.2,
LHIKEaseIn = 0.1,
LHIKEaseOut = 0.15,
LHIKOut = 0.7,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "chback.ogg", t = 15 / 30, c = ca },
{ s = path .. "chforward.ogg", t = 25 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 26 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 39 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 40 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 55 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 80 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 90 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 111 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 125 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 140 / 30, c = ca, v = 1 },
{ s = path .. "grab.ogg", t = 150 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 155 / 30, c = ca },
},
},
-- Inspecc --
["enter_inspect"] = {
Source = "enter_inspect",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.3,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect"] = {
Source = "idle_inspect",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect"] = {
Source = "exit_inspect",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
["enter_inspect_empty"] = {
Source = "enter_inspect_empty",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.1,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect_empty"] = {
Source = "idle_inspect_empty",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect_empty"] = {
Source = "exit_inspect_empty",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
}

View File

@ -0,0 +1,506 @@
SWEP.Base = "arccw_base"
SWEP.Spawnable = true -- this obviously has to be set to true
SWEP.Category = "ArcCW - Urban Coalition" -- edit this if you like
SWEP.UC_CategoryPack = "4Urban Anarchy"
SWEP.AdminOnly = false
SWEP.PrintName = "Fuck-You-In-Particular-inator"
SWEP.TrueName = "M82A1"
SWEP.Trivia_Class = "Anti-materiel Rifle"
SWEP.Trivia_Desc = [[The state firearm of Tennessee. As the first shoulder-fired weapon of its caliber, this massive, barely man-portable weapon popularized the idea of modern anti-materiel rifles as a way to help individual marksmen counter heavy targets.
Chambered for a mounted machine gun cartridge designed to punch holes through cover and armored vehicles. To shoot a man with it might be overkill (or great fun, depending on your tastes).]]
SWEP.Trivia_Manufacturer = "Barrett Firearms Manufacturing"
SWEP.Trivia_Calibre = ".50 Browning Machine Gun"
SWEP.Trivia_Mechanism = "Recoil-Operated Rotating Bolt"
SWEP.Trivia_Country = "USA"
SWEP.Trivia_Year = 1980
if GetConVar("arccw_truenames"):GetBool() then
SWEP.PrintName = SWEP.TrueName
end
SWEP.Slot = 3
SWEP.UseHands = true
SWEP.ViewModel = "models/weapons/arccw/c_ua_m82.mdl"
SWEP.WorldModel = "models/weapons/arccw/c_ua_m82.mdl"
SWEP.ViewModelFOV = 57
SWEP.MirrorVMWM = true
SWEP.WorldModelOffset = {
pos = Vector(-6.5, 4, -7),
ang = Angle(-6, 0, 180),
bone = "ValveBiped.Bip01_R_Hand",
}
SWEP.DefaultBodygroups = "00000000000"
SWEP.Damage = ArcCW.UC.StdDmg["50bmg"].max
SWEP.DamageMin = ArcCW.UC.StdDmg["50bmg"].min -- damage done at maximum range
SWEP.Range = 1800 -- in METRES
SWEP.Penetration = ArcCW.UC.StdDmg["50bmg"].pen
SWEP.DamageType = DMG_AIRBOAT + DMG_BULLET + DMG_ALWAYSGIB
SWEP.ShootEntity = nil -- entity to fire, if any
SWEP.PhysBulletMuzzleVelocity = 853 -- projectile or phys bullet muzzle velocity
-- IN M/S
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 = 10 -- DefaultClip is automatically set.
SWEP.Recoil = 4
SWEP.RecoilSide = 2
SWEP.RecoilRise = 2
SWEP.SpeedMult = 0.7
SWEP.SightedSpeedMult = 0.35
SWEP.SightTime = 0.72
SWEP.Sway = 1.5
SWEP.Delay = 60 / 200 -- 60 / RPM.
SWEP.Num = 1 -- number of shots per trigger pull.
SWEP.Firemodes = {
{
Mode = 1,
},
{
Mode = 0
}
}
SWEP.NPCWeaponType = {
"weapon_crossbow",
}
SWEP.NPCWeight = 75
SWEP.AccuracyMOA = 0.2 -- accuracy in Minutes of Angle. There are 60 MOA in a degree.
SWEP.HipDispersion = 1750 -- inaccuracy added by hip firing.
SWEP.MoveDispersion = 250
SWEP.Primary.Ammo = "SniperPenetratedRound" -- what ammo type the gun uses
SWEP.MagID = "svd" -- the magazine pool this gun draws from
SWEP.ShootVol = 500 -- volume of shoot sound
SWEP.ShootPitch = 100 -- pitch of shoot sound
local path = ")^weapons/arccw_ue/m82/"
local common = ")^/arccw_uc/common/"
SWEP.ShootSound = {
path .. "fire-01.ogg",
path .. "fire-02.ogg",
path .. "fire-03.ogg",
path .. "fire-04.ogg",
path .. "fire-05.ogg",
path .. "fire-06.ogg"
}
SWEP.ShootSoundSilenced = path .. "fire-sup-06.ogg"
SWEP.DistantShootSound = nil
SWEP.DistantShootSoundSilenced = nil
SWEP.ShootDrySound = path .. "dryfire.ogg"
local tail = ")^/arccw_uc/common/50bmg/"
SWEP.DistantShootSoundOutdoors = {
tail .. "fire-dist-50bmg-rif-ext-01.ogg",
tail .. "fire-dist-50bmg-rif-ext-02.ogg",
tail .. "fire-dist-50bmg-rif-ext-03.ogg",
tail .. "fire-dist-50bmg-rif-ext-04.ogg",
tail .. "fire-dist-50bmg-rif-ext-05.ogg",
tail .. "fire-dist-50bmg-rif-ext-06.ogg"
}
SWEP.DistantShootSoundIndoors = {
tail .. "fire-dist-50bmg-rif-int-01.ogg",
tail .. "fire-dist-50bmg-rif-int-02.ogg",
tail .. "fire-dist-50bmg-rif-int-03.ogg",
tail .. "fire-dist-50bmg-rif-int-04.ogg",
tail .. "fire-dist-50bmg-rif-int-05.ogg",
tail .. "fire-dist-50bmg-rif-int-06.ogg"
}
SWEP.DistantShootSoundOutdoorsSilenced = {
common .. "sup-tail-01.ogg",
common .. "sup-tail-02.ogg",
common .. "sup-tail-03.ogg",
common .. "sup-tail-04.ogg",
common .. "sup-tail-05.ogg",
common .. "sup-tail-06.ogg",
common .. "sup-tail-07.ogg",
common .. "sup-tail-08.ogg",
common .. "sup-tail-09.ogg",
common .. "sup-tail-10.ogg"
}
SWEP.DistantShootSoundIndoorsSilenced = {
common .. "fire-dist-int-pistol-light-01.ogg",
common .. "fire-dist-int-pistol-light-02.ogg",
common .. "fire-dist-int-pistol-light-03.ogg",
common .. "fire-dist-int-pistol-light-04.ogg",
common .. "fire-dist-int-pistol-light-05.ogg",
common .. "fire-dist-int-pistol-light-06.ogg"
}
SWEP.DistantShootSoundOutdoorsVolume = 1
SWEP.DistantShootSoundIndoorsVolume = 1
SWEP.Hook_AddShootSound = ArcCW.UC.InnyOuty
SWEP.MuzzleEffect = "muzzleflash_1"
SWEP.ShellEffect = "arccw_uc_shelleffect"
SWEP.ShellModel = "models/weapons/arccw/uc_shells/556x45.mdl"
SWEP.ShellPitch = 65
SWEP.ShellScale = 1.4
SWEP.MuzzleEffectAttachment = 1 -- which attachment to put the muzzle on
SWEP.CaseEffectAttachment = 2 -- which attachment to put the case effect on
SWEP.ProceduralViewBobAttachment = 1
SWEP.CamAttachment = 4
SWEP.BulletBones = { -- the bone that represents bullets in gun/mag
-- [0] = "bulletchamber",
-- [1] = "bullet1"
}
SWEP.ProceduralRegularFire = false
SWEP.ProceduralIronFire = false
SWEP.CaseBones = {}
SWEP.IronSightStruct = {
Pos = Vector(-3.3, 4, 0.55),
Ang = Angle(0, 0, 0),
Magnification = 1.05,
}
SWEP.HoldtypeHolstered = "passive"
SWEP.HoldtypeActive = "ar2"
SWEP.HoldtypeSights = "rpg"
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_RPG
SWEP.ActivePos = Vector(1, 3, 1)
SWEP.ActiveAng = Angle(1, 1, -2)
SWEP.SprintPos = Vector(1, 0, 2)
SWEP.SprintAng = Angle(-5, 5, 0)
SWEP.HolsterPos = Vector(2, 0, 2)
SWEP.HolsterAng = Angle(-15, 30, 0)
SWEP.BarrelOffsetSighted = Vector(0, 0, -1)
SWEP.BarrelOffsetHip = Vector(2, 0, -2)
SWEP.CrouchPos = Vector(-1, 1, -1)
SWEP.CrouchAng = Angle(0, 0, -10)
SWEP.BarrelLength = 60
SWEP.ShellRotateAngle = Angle(0, 90, 0)
SWEP.AttachmentElements = {
["m82_lowersights"] = {
VMBodygroups = {
{ind = 2, bg = 1}
}
},
["ua_m82_mag_5"] = {
VMBodygroups = {
{ind = 1, bg = 1}
}
},
["ua_m82_charm_tlp"] = {
AttPosMods = {[5] = {
vpos = Vector(0, 13, 3.1),
vang = Angle(180, -90, 0),
}},
Override_IronSightStruct = {
Pos = Vector(-6, 10, -2),
Ang = Angle(0, 0, -30),
GlobalPos = false,
GlobalAng = true,
Magnification = 1,
ScrollFunc = ArcCW.SCROLL_NONE
},
},
}
SWEP.ExtraSightDist = 3
SWEP.RejectAttachments = {
}
SWEP.Attachments = {
{
PrintName = "Optic", -- print name
DefaultAttName = "Iron Sights",
Slot = {"optic", "optic_lp", "optic_sniper", "optic_fas1_m82"}, -- what kind of attachments can fit here, can be string or table
Bone = "b_wpn", -- relevant bone any attachments will be mostly referring to
Offset = {
vpos = Vector(0, -1, 3.3), -- offset that the attachment will be relative to the bone
vang = Angle(90, -90, -90),
wpos = Vector(9, 0.739, -6.801),
wang = Angle(-10, 0, 180)
},
SlideAmount = {
vmin = Vector(0,0,3.3),
vmax = Vector(0,-2,3.3),
},
CorrectiveAng = Angle(180, 0, 0),
InstalledEles = {"m82_lowersights"},
ExtraSightDist = 3,
},
{
PrintName = "Barrel",
DefaultAttName = "29\" Standard Barrel",
Slot = "mifl_fas2_m82_hg",
Bone = "b_wpn",
Offset = {
vpos = Vector(0.5, 6, -1),
vang = Angle(90, -90, -90),
},
},
{
PrintName = "Magazine",
Slot = {"ua_m82_mag"},
DefaultAttName = "10-Round Mag",
-- DefaultAttIcon = Material("entities/att/ur_ak/magazines/762_30.png", "mips smooth"),
},
{
PrintName = "Underbarrel",
Slot = {"foregrip", "ubgl"},
Bone = "b_wpn",
Offset = {
vpos = Vector(0, 10, 0.6),
vang = Angle(90, -90, -90),
},
},
{
PrintName = "Tactical",
Slot = "tac",
Bone = "b_wpn",
Offset = {
vpos = Vector(-0.9, 13, 2.2), -- offset that the attachment will be relative to the bone
vang = Angle(180, -90, 60),
},
ExtraSightDist = 22,
CorrectivePos = Vector(2, -2, 0),
GivesFlags = {"tac"},
},
{
PrintName = "Ammo Type",
DefaultAttName = "\"FMJ\" Full Metal Jacket",
DefaultAttIcon = Material("entities/att/arccw_uc_ammo_generic.png", "mips smooth"),
Slot = "uc_ammo",
},
{
PrintName = "Powder Load",
Slot = "uc_powder",
DefaultAttName = "Standard Load"
},
{
PrintName = "Training Package",
Slot = "uc_tp",
DefaultAttName = "Basic Training"
},
{
PrintName = "Internals",
Slot = "uc_fg", -- Fire group
DefaultAttName = "Standard Internals"
},
{
PrintName = "Charm",
DefaultAttName = "None",
Slot = {"charm","ua_m82_charm"},
Bone = "b_wpn",
Offset = {
vpos = Vector(0.9, -1.5, 0),
vang = Angle(90, -90, -90),
},
FreeSlot = true,
},
}
SWEP.Hook_ModifyBodygroups = function(wep, data)
local vm = data.vm
local papcamo = wep.Attachments[6].Installed == "ammo_papunch"
if papcamo then return vm:SetSkin(3) end
end
local rottle = {common .. "cloth_1.ogg", common .. "cloth_2.ogg", common .. "cloth_3.ogg", common .. "cloth_4.ogg", common .. "cloth_5.ogg", common .. "cloth_6.ogg", common .. "rattle.ogg"}
local mech = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}
local ratel = {common .. "rattle1.ogg", common .. "rattle2.ogg", common .. "rattle3.ogg"}
local rutle = {common .. "movement-sniper-01.ogg", common .. "movement-sniper-02.ogg", common .. "movement-sniper-03.ogg", common .. "movement-sniper-04.ogg"}
local magdrop = {common .. "rifle_magdrop_1.ogg", common .. "rifle_magdrop_2.ogg", common .. "rifle_magdrop_3.ogg", common .. "rifle_magdrop_4.ogg"}
SWEP.Animations = {
["draw"] = {
Source = "draw",
LHIK = true,
LHIKIn = 0,
LHIKOut = 0.25,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.05},
{s = rottle, t = 0.7},
{s = common .. "shoulder.ogg", t = 1.1, v = 0.5}
},
},
["ready"] = {
Source = "equip",
LHIK = true,
LHIKIn = 0,
LHIKOut = 0.25,
},
["idle"] = {
Source = "idle",
},
["idle_empty"] = {
Source = "idle_empty",
},
["holster"] = {
Source = "holster",
LHIK = true,
LHIKEaseOut = 0.2,
LHIKIn = 0.6,
LHIKOut = 0.3,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.05},
}
},
["fire"] = {
Source = "fire",
ShellEjectAt = 0,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron"] = {
Source = "fire",
ShellEjectAt = 0,
SoundTable = {
{s = common .. "common_mech_heavy.ogg", t = 0, v = 0.4},
{s = common .. "common_mech_light.ogg", t = 0},
{ s = mech, t = 0 }
},
},
["reload"] = {
Source = "reload",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
FrameRate = 30,
MinProgress = 3.8,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.1},
{s = path .. "magrel.ogg", t = 1.1},
{s = path .. "magtouch.ogg", t = 1.6},
{s = path .. "magout.ogg", t = 1.7},
{s = rottle, t = 1.65},
{s = rutle, t = 1.68},
{s = common .. "magpouch.ogg", t = 2.7, v = 0.2},
{s = path .. "struggle.ogg", t = 3.1},
{s = path .. "magin.ogg", t = 3.55},
{s = path .. "grab.ogg", t = 3.5},
{s = rottle, t = 3.7},
{s = rutle, t = 3.75},
{s = common .. "shoulder.ogg", t = 4.4, v = 0.6},
},
LHIK = true,
LHIKIn = 0.5,
LHIKOut = 0.5,
},
["reload_empty"] = {
Source = "reload_empty",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
FrameRate = 30,
MinProgress = 4.75,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.1},
{s = common .. "magpouch.ogg", t = 0.9, v = 0.2},
{s = path .. "magtouch.ogg", t = 1.5},
{s = path .. "magrel.ogg", t = 1.66},
{s = path .. "magout.ogg", t = 1.7},
{s = rottle, t = 1.65},
{s = rutle, t = 1.68},
{s = path .. "struggle.ogg", t = 2.3},
{s = magdrop, t = 2.45, p = 87.5, v = 0.35},
{s = path .. "magin.ogg", t = 2.85},
{s = path .. "grab.ogg", t = 2.8},
{s = rottle, t = 3.0},
{s = rutle, t = 3.05},
{s = path .. "chstart.ogg", t = 3.95},
{s = path .. "chback.ogg", t = 4.05},
{s = path .. "chamber.ogg", t = 4.6},
{s = rottle, t = 5.0},
{s = rutle, t = 5.05},
{s = common .. "shoulder.ogg", t = 5.4, v = 0.6},
},
LHIK = true,
LHIKIn = 0.5,
LHIKOut = 0.5,
},
["reload_5"] = {
Source = "reload_5",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
FrameRate = 30,
MinProgress = 3.8,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.1},
{s = path .. "magrel.ogg", t = 1.1},
{s = path .. "magtouch.ogg", t = 1.6},
{s = path .. "magout.ogg", t = 1.7},
{s = rottle, t = 1.65},
{s = rutle, t = 1.68},
{s = common .. "magpouch.ogg", t = 2.7, v = 0.2},
{s = path .. "struggle.ogg", t = 3.1},
{s = path .. "magin.ogg", t = 3.55},
{s = path .. "grab.ogg", t = 3.5},
{s = rottle, t = 3.7},
{s = rutle, t = 3.75},
{s = common .. "shoulder.ogg", t = 4.4, v = 0.6},
},
LHIK = true,
LHIKIn = 0.5,
LHIKOut = 0.5,
},
["reload_empty_5"] = {
Source = "reload_empty_5",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
FrameRate = 30,
MinProgress = 4.75,
SoundTable = {
{s = rottle, t = 0},
{s = rutle, t = 0.1},
{s = common .. "magpouch.ogg", t = 0.9, v = 0.2},
{s = path .. "magtouch.ogg", t = 1.5},
{s = path .. "magrel.ogg", t = 1.66},
{s = path .. "magout.ogg", t = 1.7},
{s = rottle, t = 1.65},
{s = rutle, t = 1.68},
{s = path .. "struggle.ogg", t = 2.3},
{s = magdrop, t = 2.45, p = 95},
{s = path .. "magin.ogg", t = 2.85},
{s = path .. "grab.ogg", t = 2.8},
{s = rottle, t = 3.0},
{s = rutle, t = 3.05},
{s = path .. "chstart.ogg", t = 3.95},
{s = path .. "chback.ogg", t = 4.05},
{s = path .. "chamber.ogg", t = 4.6},
{s = rottle, t = 5.0},
{s = rutle, t = 5.05},
{s = common .. "shoulder.ogg", t = 5.4, v = 0.6},
},
LHIK = true,
LHIKIn = 0.5,
LHIKOut = 0.5,
},
["fix"] = {
Source = "unjam",
LHIKIn = 0.5,
LHIKOut = 0.5,
}
}

View File

@ -0,0 +1,585 @@
SWEP.Base = "arccw_base"
SWEP.Spawnable = true -- this obviously has to be set to true
SWEP.Category = "ArcCW - Urban Coalition" -- edit this if you like
SWEP.UC_CategoryPack = "4Urban Anarchy"
SWEP.AdminOnly = true
SWEP.PrintName = "GAUSS-17/A"
SWEP.TrueName = "M134 Minigun"
SWEP.Trivia_Class = "Machine Gun"
SWEP.Trivia_Desc = [["And the Lord said, 'I will blot out man whom I have created from the face of the land, from man to animals to creeping things and to birds of the sky; for I am sorry that I have made them.'" -Genesis 6:7]]
SWEP.Trivia_Manufacturer = "General Electric"
SWEP.Trivia_Calibre = "7.62x51mm NATO"
SWEP.Trivia_Mechanism = "Electric Rotary Breech"
SWEP.Trivia_Country = "United States"
SWEP.Trivia_Year = 1960
if GetConVar("arccw_truenames"):GetBool() then
SWEP.PrintName = SWEP.TrueName -- I now understand the reasoning for this statement
end
SWEP.Slot = 3
SWEP.UseHands = true
SWEP.ViewModel = "models/weapons/arccw/c_lowpolym249.mdl"
SWEP.WorldModel = "models/weapons/w_rif_m4a1.mdl"
SWEP.ViewModelFOV = 85
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_AR2
SWEP.DefaultBodygroups = "0000000000"
SWEP.Damage = ArcCW.UC.StdDmg["762_51"].max
SWEP.DamageMin = ArcCW.UC.StdDmg["762_51"].min -- damage done at maximum range
SWEP.Range = 100 -- in METRES
SWEP.Penetration = ArcCW.UC.StdDmg["762_51"].pen
SWEP.DamageType = DMG_BULLET
SWEP.ShootEntity = nil -- entity to fire, if any
SWEP.ChamberSize = 0 -- how many rounds can be chambered.
SWEP.Primary.ClipSize = 100 -- DefaultClip is automatically set.
SWEP.BottomlessClip = true
SWEP.PhysBulletMuzzleVelocity = 853
SWEP.Recoil = 0.5
SWEP.RecoilSide = 0.245
SWEP.RecoilRise = 0.1
SWEP.RecoilPunch = 5
SWEP.ShootPitchVariation = 0
SWEP.TriggerDelay = true
SWEP.Delay = 60 / 2200
SWEP.Num = 1
SWEP.Firemodes = {
{
Mode = 2,
Mult_TriggerDelayTime = 1,
},
}
SWEP.NPCWeaponType = nil
SWEP.AccuracyMOA = 32 -- accuracy in Minutes of Angle. There are 60 MOA in a degree.
SWEP.HipDispersion = 450 -- inaccuracy added by hip firing.
SWEP.MoveDispersion = 250
SWEP.Primary.Ammo = "ar2" -- what ammo type the gun uses
SWEP.MagID = "m60" -- the magazine pool this gun draws from
SWEP.ShootVol = 110 -- volume of shoot sound
SWEP.ShootPitch = 100 -- pitch of shoot sound
local path = ")^/weapons/arccw_ue/m60/"
local common = ")^/arccw_uc/common/"
SWEP.ShootSound = {
path .. "fire-01.ogg",
path .. "fire-02.ogg",
path .. "fire-03.ogg",
path .. "fire-04.ogg",
path .. "fire-05.ogg",
path .. "fire-06.ogg"
}
SWEP.ShootSoundSilenced = path .. "fire_supp.ogg"
SWEP.DistantShootSound = nil
SWEP.DistantShootSoundSilenced = common .. "sup_tail.ogg"
SWEP.ShootDrySound = path .. "dryfire.ogg"
local tail = ")^/arccw_uc/common/308/"
SWEP.DistantShootSoundOutdoors = {
tail .. "fire-dist-308-mg-ext-01.ogg",
tail .. "fire-dist-308-mg-ext-02.ogg",
tail .. "fire-dist-308-mg-ext-03.ogg",
tail .. "fire-dist-308-mg-ext-04.ogg",
tail .. "fire-dist-308-mg-ext-05.ogg",
tail .. "fire-dist-308-mg-ext-06.ogg"
}
SWEP.DistantShootSoundIndoors = {
common .. "fire-dist-int-rifle-01.ogg",
common .. "fire-dist-int-rifle-02.ogg",
common .. "fire-dist-int-rifle-03.ogg",
common .. "fire-dist-int-rifle-04.ogg",
common .. "fire-dist-int-rifle-05.ogg",
common .. "fire-dist-int-rifle-06.ogg"
}
SWEP.DistantShootSoundOutdoorsSilenced = {
common .. "sup-tail-01.ogg",
common .. "sup-tail-02.ogg",
common .. "sup-tail-03.ogg",
common .. "sup-tail-04.ogg",
common .. "sup-tail-05.ogg",
common .. "sup-tail-06.ogg",
common .. "sup-tail-07.ogg",
common .. "sup-tail-08.ogg",
common .. "sup-tail-09.ogg",
common .. "sup-tail-10.ogg"
}
SWEP.DistantShootSoundIndoorsSilenced = {
common .. "fire-dist-int-pistol-light-01.ogg",
common .. "fire-dist-int-pistol-light-02.ogg",
common .. "fire-dist-int-pistol-light-03.ogg",
common .. "fire-dist-int-pistol-light-04.ogg",
common .. "fire-dist-int-pistol-light-05.ogg",
common .. "fire-dist-int-pistol-light-06.ogg"
}
SWEP.DistantShootSoundOutdoorsVolume = 1
SWEP.DistantShootSoundIndoorsVolume = 1
SWEP.Hook_AddShootSound = ArcCW.UC.InnyOuty
SWEP.MuzzleEffect = "muzzleflash_minimi"
SWEP.ShellModel = "models/weapons/arccw/uc_shells/556x45.mdl"
SWEP.ShellScale = 1.145
SWEP.ShellPitch = 90
SWEP.ShellRotateAngle = Angle(0, 180, 0)
SWEP.MuzzleEffectAttachment = 1 -- which attachment to put the muzzle on
SWEP.CaseEffectAttachment = 2 -- which attachment to put the case effect on
SWEP.SpeedMult = 0.65
SWEP.SightedSpeedMult = 0.5
SWEP.SightTime = 0.5
SWEP.ShootSpeedMult = 1
SWEP.IronSightStruct = {
Pos = Vector(-3.445, 0, 2),
Ang = Angle(0.1, 0, -2),
Magnification = 1,
SwitchToSound = "",
}
SWEP.HoldtypeHolstered = "passive"
SWEP.HoldtypeActive = "ar2"
SWEP.HoldtypeSights = "rpg"
SWEP.AnimShoot = ACT_HL2MP_GESTURE_RANGE_ATTACK_AR2
SWEP.ActivePos = Vector(0, 0, 0)
SWEP.ActiveAng = Angle(0, 0, 0)
SWEP.CrouchPos = Vector(-4, 0, -1)
SWEP.CrouchAng = Angle(0, 0, -10)
SWEP.HolsterPos = Vector(3, 3, 0)
SWEP.HolsterAng = Angle(-7.036, 30.016, 0)
SWEP.BarrelOffsetSighted = Vector(0, 0, -1)
SWEP.BarrelOffsetHip = Vector(2, 0, -2)
SWEP.CustomizePos = Vector(8, 0, 1)
SWEP.CustomizeAng = Angle(5, 30, 30)
SWEP.BarrelLength = 24
SWEP.AttachmentElements = {
["rs_none"] = {
VMBodygroups = {{ind = 5, bg = 1}},
},
["foregrip"] = {
VMBodygroups = {{ind = 4, bg = 2}},
},
["tacms"] = {
VMBodygroups = {{ind = 7, bg = 1}},
},
["fh_none"] = {
VMBodygroups = {{ind = 2, bg = 3}},
},
["go_m249_bipod"] = {
VMBodygroups = {{ind = 4, bg = 1}},
},
["go_m249_barrel_short"] = {
VMBodygroups = {
{ind = 1, bg = 1},
{ind = 2, bg = 1}},
AttPosMods = {
[5] = {vpos = Vector(0, -4.4, 23.5)},
}
},
["go_m249_barrel_long"] = {
VMBodygroups = {
{ind = 1, bg = 2},
{ind = 2, bg = 2}},
AttPosMods = {
[5] = {vpos = Vector(0, -4.4, 34.5)},
}
},
["go_m249_mag_9_200"] = {
NameChange = "SMG-249/9",
VMBodygroups = {
{ind = 0, bg = 1},
{ind = 3, bg = 1},
{ind = 6, bg = 2}
},
},
["go_m249_mag_12g_45"] = {
NameChange = "Minimi-12",
VMBodygroups = {
{ind = 0, bg = 2},
{ind = 3, bg = 2},
{ind = 6, bg = 3}
},
},
["go_stock_none"] = {
VMBodygroups = {
{ind = 8, bg = 1}
},
},
["go_stock"] = {
VMBodygroups = {{ind = 8, bg = 1}},
VMElements = {
{
Model = "models/weapons/arccw_go/atts/stock_buftube_lp.mdl",
Bone = "v_weapon.m249_parent",
Offset = {
pos = Vector(0, -4, -3),
ang = Angle(90, 0, -90),
},
}
},
},
}
SWEP.GuaranteeLaser = true
SWEP.WorldModelOffset = {
pos = Vector(-19, 8, -5),
ang = Angle(-10, 0, 180)
}
SWEP.MirrorVMWM = true
SWEP.Attachments = {
{
PrintName = "Optic",
Slot = "optic",
Bone = "v_weapon.topHinge",
DefaultAttName = "Iron Sights",
Offset = {
vpos = Vector(-0.04, -0.4, -5),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
VMScale = Vector(1.1, 1.1, 1.1),
InstalledEles = {"rs_none"},
CorrectiveAng = Angle(1, 0, 0)
},
{
PrintName = "Underbarrel",
Slot = {"foregrip", "m249_bipod"},
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -1.15, 15),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
},
{
PrintName = "Tactical",
Slot = "tac",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(1.15, -4.3, 15.75),
vang = Angle(90, 0, 0),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
InstalledEles = {"tacms"},
},
{
PrintName = "Barrel",
Slot = "go_m249_barrel",
DefaultAttName = "460mm SAW Barrel"
},
{
PrintName = "Muzzle",
DefaultAttName = "Standard Muzzle",
Slot = "muzzle",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -4.4, 30),
vang = Angle(90, 0, -90),
wpos = Vector(22, 1, -7),
wang = Angle(-9.79, 0, 180)
},
InstalledEles = {"fh_none"},
},
{
PrintName = "Magazine",
Slot = "go_m249_mag",
DefaultAttName = "150-Round 5.56mm Belt"
},
{
PrintName = "Stock",
Slot = {"go_stock_none", "go_stock"},
DefaultAttName = "Standard Stock",
Bone = "v_weapon.m249_Parent",
Offset = {
vpos = Vector(0, -4, -3),
vang = Angle(90, 0, -90),
},
VMScale = Vector(1, 1, 1)
},
{
PrintName = "Ammo Type",
DefaultAttName = "\"FMJ\" Full Metal Jacket",
DefaultAttIcon = Material("entities/att/arccw_uc_ammo_generic.png", "mips smooth"),
Slot = "uc_ammo",
},
{
PrintName = "Powder Load",
Slot = "uc_powder",
DefaultAttName = "Standard Load"
},
{
PrintName = "Training Package",
Slot = "uc_tp",
DefaultAttName = "Basic Training"
},
{
PrintName = "Internals",
Slot = "uc_fg", -- Fire group
DefaultAttName = "Standard Internals"
},
{
PrintName = "Charm",
Slot = "charm",
FreeSlot = true,
Bone = "v_weapon.m249_Parent", -- relevant bone any attachments will be mostly referring to
Offset = {
vpos = Vector(0.6, -3.25, 4), -- offset that the attachment will be relative to the bone
vang = Angle(90, 0, -90),
wpos = Vector(6.099, 1.1, -3.301),
wang = Angle(171.817, 180-1.17, 0),
},
},
}
SWEP.Hook_Think = function(wep)
local vm = wep:GetOwner():GetViewModel()
vm:SetPoseParameter( "sights", Lerp(wep:GetSightDelta(), 1, 0) )
end
SWEP.Hook_PostFireBullets = function(wep)
local owner = wep:GetOwner()
if IsValid(owner) and owner:IsPlayer() then
owner:SetVelocity(owner:GetAimVector() * (owner:IsOnGround() and -25 or -5))
end
end
-- Attachments --
SWEP.CamAttachment = 3
SWEP.RejectAttachments = {
["lpak_polymer"] = true,
}
SWEP.Animations = {
["idle"] = {
Source = "idle",
Framerate = 60,
Time = 330 / 60,
},
["idle_empty"] = {
Source = "idle_empty",
Framerate = 60,
Time = 330 / 60,
},
["ready"] = {
Source = "idle",
Framerate = 60,
Time = 68 / 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.6,
SoundTable = {
--{ s = path .. "lowpolyfal_readydraw.ogg", t = 1 / 30, c = ca },
},
},
["draw"] = {
Source = "draw",
Framerate = 60,
},
["trigger"] = { -- Barrel spin-up
Source = "idle",
Time = 0.3,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON, v = 0.5},
},
},
["trigger_iron"] = {
Source = "idle",
Time = 0.075,
SoundTable = {
{s = path .. "prefire.ogg", t = 0, c = CHAN_WEAPON},
},
},
["fire"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0 },
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
["fire_iron"] = {
Source = "fire",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_light.ogg", t = 0 },
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
["fire_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0, v = 0.25 }},
},
["fire_iron_empty"] = {
Source = "fire_empty",
Framerate = 60,
Time = 43 / 60,
ShellEjectAt = 0.01,
SoundTable = {
{s = common .. "common_mech_heavy.ogg", t = 0, },
{s = common .. "common_mech_light.ogg", t = 0, v = 0.45 },
{ s = {path .. "mech-01.ogg", path .. "mech-02.ogg", path .. "mech-03.ogg", path .. "mech-04.ogg", path .. "mech-05.ogg", path .. "mech-06.ogg"}, t = 0 }
},
},
-- 100-R Reloads --
["reload"] = {
Source = "reload",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
MinProgress = 1,
Time = 298 / 60,
Framerate = 60,
LastClip1OutTime = 2.4,
LHIK = true,
LHIKIn = 0.2,
LHIKEaseIn = 0.2,
LHIKEaseOut = 0.2,
LHIKOut = 0.62,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 10 / 30, c = ca },
{ s = path .. "belt1.ogg", t = 25 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 30 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 35 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 50 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 68 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 85 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 90 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 110 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 115 / 30, c = ca },
{ s = path .. "grab.ogg", t = 130 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 135 / 30, c = ca },
},
},
["reload_empty"] = {
Source = "reload_empty",
TPAnim = ACT_HL2MP_GESTURE_RELOAD_AR2,
Framerate = 60,
Time = 344 / 60,
LastClip1OutTime = 3,
LHIK = true,
LHIKIn = 2.2,
LHIKEaseIn = 0.1,
LHIKEaseOut = 0.15,
LHIKOut = 0.7,
SoundTable = {
{ s = common .. "cloth_4.ogg", t = 4 / 30, c = ca },
{ s = path .. "chback.ogg", t = 15 / 30, c = ca },
{ s = path .. "chforward.ogg", t = 25 / 30, c = ca },
{ s = common .. "cloth_1.ogg", t = 26 / 30, c = ca },
{ s = path .. "lidopen.ogg", t = 39 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 40 / 30, c = ca },
{ s = path .. "boxremove.ogg", t = 55 / 30, c = ca },
{ s = common .. "cloth_3.ogg", t = 80 / 30, c = ca },
{ s = path .. "boxinsert.ogg", t = 90 / 30, c = ca },
{ s = path .. "belt2.ogg", t = 111 / 30, c = ca },
{ s = common .. "cloth_2.ogg", t = 125 / 30, c = ca },
{ s = path .. "lidclose.ogg", t = 140 / 30, c = ca, v = 1 },
{ s = path .. "grab.ogg", t = 150 / 30, c = ca, v = 0.25 },
{ s = common .. "shoulder.ogg", t = 155 / 30, c = ca },
},
},
-- Inspecc --
["enter_inspect"] = {
Source = "enter_inspect",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.3,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect"] = {
Source = "idle_inspect",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect"] = {
Source = "exit_inspect",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
["enter_inspect_empty"] = {
Source = "enter_inspect_empty",
time = 70 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0.1,
LHIKOut = 0,
SoundTable = {
{ s = path .. "lowpolyfal_cloth2.ogg", t = 0 / 30, c = ca },
},
},
["idle_inspect_empty"] = {
Source = "idle_inspect_empty",
time = 120 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKOut = 0,
},
["exit_inspect_empty"] = {
Source = "exit_inspect_empty",
time = 143 / 60,
Framerate = 60,
LHIK = true,
LHIKIn = 0,
LHIKEaseOut = 0.3,
LHIKOut = 0.84,
SoundTable = {
{ s = path .. "lowpolyfal_cloth1.ogg", t = 2 / 30, c = ca },
},
},
}

BIN
materials/models/weapons/arccw/ua_m82/M82_B.vtf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
materials/models/weapons/arccw/ua_m82/M82_Bullet_B.vtf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
materials/models/weapons/arccw/ua_m82/M82_Bullet_E.vtf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
materials/models/weapons/arccw/ua_m82/M82_Bullet_N.vtf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
materials/models/weapons/arccw/ua_m82/M82_E.vtf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
materials/models/weapons/arccw/ua_m82/M82_N.vtf (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,29 @@
"VertexLitGeneric"
{
// maps
"$basetexture" "models\weapons\arccw\ua_m82\M82_Bullet_B" // string -- main texture
"$bumpmap" "models\weapons\arccw\ua_m82\M82_Bullet_N" // string -- normal map texture (bump map for brushes)
"$phongexponenttexture" "models\weapons\arccw\ua_m82\M82_Bullet_E" // string -- phong exponent texture (contains info for other shaders)
// map interp
"$color2" "[.4 .4 .4]" // vector -- rgb tinting of the basetexture
"$blendTintByBaseAlpha" "1" // bool -- uses base texture's alpha channel to mask color2's effect
// phong (convar: mat_phong "bool")
"$phong" "1" // bool -- phong enabler, have this on 1 if you have a central neural system
"$phongboost" "1" // float -- phong intensity coefficient on top of normal map's alpha (aka phong mask)
"$phongfresnelranges" "[.05 0.1 1]" // vector -- phong fresnel ranges, default are [0 0.5 1]
"$phongalbedotint" "1" // bool -- enables basetexture tinting of the phong's color but masks it with phongexponent's green channel
"$phongtint" "[0 0 0]"
// rimlight (convar: mat_rimlight "bool")
"$rimlight" "0" // bool -- rimlight enabler, doesn't have to be on, use if needed
"$rimmask" "0" // bool -- rimlight masking through exponent's alpha channel (use alpha vtf format)
"$rimlightboost" "0" // float -- rimlight intensity coefficient
"$rimlightexponent" "0" // float -- rimlight exponent
"$nocull" "1"
// envmap (convar: mat_specular "bool")
"$envmap" "env_cubemap" // string -- path to envmap or envmap entity name
"$envmaptint" "[.01 .01 .01]" // vector -- rgb tinting of the envmap: all dimentions should be equal, ideally
}

View File

@ -0,0 +1,29 @@
"VertexLitGeneric"
{
// maps
"$basetexture" "models\weapons\arccw\ua_m82\M82_B" // string -- main texture
"$bumpmap" "models\weapons\arccw\ua_m82\M82_N" // string -- normal map texture (bump map for brushes)
"$phongexponenttexture" "models\weapons\arccw\ua_m82\M82_E" // string -- phong exponent texture (contains info for other shaders)
// map interp
"$color2" "[.85 .85 .85]" // vector -- rgb tinting of the basetexture
"$blendTintByBaseAlpha" "1" // bool -- uses base texture's alpha channel to mask color2's effect
// phong (convar: mat_phong "bool")
"$phong" "1" // bool -- phong enabler, have this on 1 if you have a central neural system
"$phongboost" "1" // float -- phong intensity coefficient on top of normal map's alpha (aka phong mask)
"$phongfresnelranges" "[0.2 .6 .3]" // vector -- phong fresnel ranges, default are [0 0.5 1]
"$phongalbedotint" "1" // bool -- enables basetexture tinting of the phong's color but masks it with phongexponent's green channel
"$phongtint" "[.17 .17 .17]"
// rimlight (convar: mat_rimlight "bool")
"$rimlight" "0" // bool -- rimlight enabler, doesn't have to be on, use if needed
"$rimmask" "1" // bool -- rimlight masking through exponent's alpha channel (use alpha vtf format)
"$rimlightboost" "1" // float -- rimlight intensity coefficient
"$rimlightexponent" "1" // float -- rimlight exponent
"$nocull" "1"
// envmap (convar: mat_specular "bool")
"$envmap" "env_cubemap" // string -- path to envmap or envmap entity name
"$envmaptint" "[.001 .001 .001]" // vector -- rgb tinting of the envmap: all dimentions should be equal, ideally
}

BIN
models/weapons/arccw/c_ua_m82.dx90.vtx (Stored with Git LFS) Normal file

Binary file not shown.

BIN
models/weapons/arccw/c_ua_m82.mdl (Stored with Git LFS) Normal file

Binary file not shown.

BIN
models/weapons/arccw/c_ua_m82.phy (Stored with Git LFS) Normal file

Binary file not shown.

BIN
models/weapons/arccw/c_ua_m82.vvd (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/belt1.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/belt2.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/beltadjust.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/boxinsert.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/boxremove.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/boxstruggle.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/chback.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/chforward.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/dryfire.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/fire-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/grab.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/lidclose.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/lidopen.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/mech-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m249/prefire.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/belt1.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/belt2.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/bolt_forward.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/boxinsert.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/boxremove.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/chback.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/chforward.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/fire-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/grab.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/lidclose.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/lidopen.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/mech.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/prefire.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m60/ref.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/chamber.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/chback.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/chstart.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/fire-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/grab.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/magin.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/magout.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/magrel.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/magtap.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/magtouch.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-01.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-02.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-03.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-04.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-05.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/mech-06.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
sound/weapons/arccw_ue/m82/struggle.ogg (Stored with Git LFS) Normal file

Binary file not shown.