Try a **** load of wd40 and/ or contact cleaner directly into the ignition barrel, has sorted mine many times. If changing the door lock didn't solve it, then prob not that, but ive sprayed that too at times and it's helped. Not a fan of moisture (or old cabling) our p38s.
I keep a passive...