Swep not always playing view model primary attack animation

I’m having issues with my SWEP base. It’s not always playing the VM Primary Attack. Third person works perfectly. Bullets shoot perfectly.

[lua] self:ShootBullet( 15, 1, 0.03 )
self.Weapon:SendWeaponAnim( ACT_VM_PRIMARYATTACK )
– self.Weapon:SendWeaponAnim( self.Animations.vmprimaryattack )
self.Owner:SetAnimation( self.Animations.primaryattack ) – 3rd Person Animation [/lua]

I’m not calling SendWeaponAnim anywhere else. Is there a reason that the VM wouldn’t display the animation 100% of the time, while the third person/world model is displaying it exactly as desired?