Store pick up with multiple locations is very difficult. You raise questions like: If someone orders online and does have it shipped... if multiple locations have it in stock, which inventory is subtracted from?
You would need a separate relational table for inventory at each location.
I've never done this or heard of a customer doing it, so there is no custom method.
It is definitely possible, but I'd say very tricky to pull off with lots of things that need to be accounted for differently than the current system does.