Cats can be lovely, but they're also not so good for your car. They'll leave paw prints on your paint and scratches on your tarp, and if they're under the hood when you start it, they can cause serious damage. The best way to keep cats off your car is by keeping them away in the first place, but that's not always possible. If you've tried scaring them away with water or pepper and they still won't budge, there are some other ways to prevent them from sleeping on your car at night.
Many people find that a car cover works well. It's easy enough to put one on before you head out at night and it can protect your car from a number of things, not just felines. The downside is that you'll have to remember to take the cover off in the morning, but it is a very effective solution.
Some people recommend using an ultrasonic repellent, which is a device that emits high-pitched sounds that only animals can hear. It's harmless and it shouldn't harm the cat but it can definitely deter them from sleeping on your car. You can buy these devices online or at pet stores and they're fairly inexpensive.
Cayenne pepper is another cheap and natural way to deter cats from your car. You can just sprinkle it around your car and hope that the scent will be enough to keep them away, although this method could take a few days before it's fully effective.