OK - I have done it and it works perfectly.
I cloned the Group Discount Module as suggested and installed it, but instead of calling for discounts from the group_discount table, I set up some extra fields in the configuration table:
STOREPICKUP_DISCOUNT_STATUS (true or false)
STOREPICKUP_DISCOUNT_VALUE (numeric value to represent the percentage of discount)
Then I simply altered the code within my new module file to apply the discount only if the status is true and only when shipping is set to storepickup_storepickup
Simples, as the Meerkat says!
I've got to say that although I can find my way round php files and generally have a very rough idea of what the code is implementing, I am by no means an expert. However, the store I am currently working on is by far the most complicated I have had to build and customising the code is really quite easy when you apply logic. Everything is well structured and easy to find.
My hats off to the developers and their tutorials and the contributors to these forums - I don't think there is anything you cannot do with ZenCart.