mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 21:53:46 +03:00
Upload
This commit is contained in:
140
lua/tfa/att/fas2tfa_mp5_pdw.lua
Normal file
140
lua/tfa/att/fas2tfa_mp5_pdw.lua
Normal file
@@ -0,0 +1,140 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
if not ATTACHMENT then
|
||||
ATTACHMENT = {}
|
||||
end
|
||||
|
||||
ATTACHMENT.Name = "MP5K Barrel"
|
||||
ATTACHMENT.Description = {
|
||||
TFA.AttachmentColors["+"], "Increases RPM to 975", "+5% movement speed",
|
||||
TFA.AttachmentColors["-"], "+20% recoil",
|
||||
}
|
||||
ATTACHMENT.Icon = "entities/tfafas2mp5k.png" --Revers to label, please give it an icon though! This should be the path to a png, like "entities/tfa_ammo_match.png"
|
||||
ATTACHMENT.ShortName = "PDW"
|
||||
|
||||
ATTACHMENT.WeaponTable = {
|
||||
["ViewModelBoneMods"] = {
|
||||
["A_Suppressor"] = { scale = Vector(.75, 1, .75), pos = Vector(10.25, .82, 0), angle = Angle(180, -90, 0) },
|
||||
["A_Muzzle"] = { scale = Vector(1, 1, 1), pos = Vector(-3.75, 0, 0), angle = Angle(0, 0, 0) },
|
||||
["A_MuzzleSupp"] = { scale = Vector(1, 1, 1), pos = Vector(-2, 0, 0), angle = Angle(0, 0, 0) },
|
||||
},
|
||||
["WorldModelBoneMods"] = {
|
||||
["ATTACH_Muzzle"] = { scale = Vector(1, 1, 1), pos = Vector(-4, 0, -.29), angle = Angle(0, 0, 0) },
|
||||
},
|
||||
|
||||
["Bodygroups_V"] = {[1] = 1, [3] = 1, [4] = 2},
|
||||
["Bodygroups_W"] = {[1] = 1},
|
||||
|
||||
["Animations"] = {
|
||||
["draw"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_deploy"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["holster"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_holster"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["idle"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_idle"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["idle_empty"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_idle"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["shoot1"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_shoot"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["reload"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_reload"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
["reload_empty"] = function(wep, _val)
|
||||
local val = table.Copy(_val)
|
||||
if val.type == TFA.Enum.ANIMATION_SEQ then
|
||||
val.value = val.value .. "mp5k_"
|
||||
else
|
||||
val.type = TFA.Enum.ANIMATION_SEQ --Sequence or act
|
||||
val.value = "mp5k_reload_empty"
|
||||
end
|
||||
return (wep:CheckVMSequence(val.value) and val or _val), true, true
|
||||
end,
|
||||
},
|
||||
|
||||
["Primary"] = {
|
||||
["KickUp"] = function( wep, stat ) return stat * 1.20 end,
|
||||
["Sound"] = function(wep,stat) return "FAS2TFA_MP5.2" or stat end,
|
||||
["SilencedSound"] = function(wep,stat) return "FAS2TFA_MP5.4" or stat end,
|
||||
["RPM"] = function( wep, stat ) return stat + 125 end,
|
||||
},
|
||||
["MoveSpeed"] = function( wep, stat ) return stat * 1.05 end,
|
||||
["IronSightsMoveSpeed"] = function( wep, stat ) return stat * 1.05 end,
|
||||
["IronSightsSensitivity"] = function( wep, stat ) return stat * 0.95 end,
|
||||
}
|
||||
|
||||
function ATTACHMENT:Attach( wep )
|
||||
if TFA.Enum.ReadyStatus[wep:GetStatus()] then
|
||||
wep:ChooseIdleAnim()
|
||||
if game.SinglePlayer() then
|
||||
wep:CallOnClient("ChooseIdleAnim","")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function ATTACHMENT:Detach( wep )
|
||||
if TFA.Enum.ReadyStatus[wep:GetStatus()] then
|
||||
wep:ChooseIdleAnim()
|
||||
if game.SinglePlayer() then
|
||||
wep:CallOnClient("ChooseIdleAnim","")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if not TFA_ATTACHMENT_ISUPDATING then
|
||||
TFAUpdateAttachments()
|
||||
end
|
||||
Reference in New Issue
Block a user