hook.add on a SWEP action?

I’m trying to add an action to a SWEP of choice. Would this work?



local wepn = LocalPlayer():GetActiveWeapon()
local function DrawStatTrak()
	bla bla bla code
end
hook.add( wepn:ViewModelDrawn() , "DrawStatTrak", DrawStatTrak )


No.

Is there any way to attach new functions onto SWEPS?



function SWEP:ViewModelDrawn()
-- bla bla bla
end