local sp = game.SinglePlayer()

hook.Add("PlayerSwitchWeapon", "TFA_Bodygroups_PSW", function(ply, oldwep, wep)
	if not IsValid(wep) or not wep.IsTFAWeapon then return end

	timer.Simple(0, function()
		if not IsValid(ply) or ply:GetActiveWeapon() ~= wep then return end

		wep:ApplyViewModelModifications()

		if sp then
			wep:CallOnClient("ApplyViewModelModifications")
		end
	end)
end)
