good grief! You are absolute right! I got it working!

This is a first step. I am actually looking for a more complex setup, I will be trying to play with the codes before I ask for your kind help:

This is the pseudo code:

COD availbale if:
delivery is 'self collect' (all case)
else
availbale if order above $50 only for other delivery methods


---------------------------------------------
My settings"
-Shipping available: Local Van delivery($10), Post(pay stamp), Self collect(free), Free Shipping(free)
-PAyment: Credit card, COD, Check.MO, Bank Transfer
-Free delivery if total order > $30
-Free deliver if chosen leave the option with us to send down by post or van.

I want to limit COD option to orders above $50 because COD obviously means we have to send van down for delivery, so we want to discourange that for small orders ($30-50).

I have done this with your code!

But If people choose self collect, they should have the option to COD even if its $5 total order. Currently these group will not have COD option with this new code.

I am running this site in Singapore, which is a damn small place, so we have local delivery as a very big part of consideration, and COD too.