I'm making a galaxian-like shooter, and my enemy objects have a destination Vector which they travel towards, using this bit of code:

```
position.X -= (Motion.X / Magnitude) * Speed;
position.Y -= (Motion.Y / Magnitude) * Speed;

```

Motion is worked out by:

```
this.Motion = InitialPosition - Destination;

```

This makes them travel in a straight line towards the destination.

However, I want to make them a bit more interesting, and travel on a sin or cos wave, a bit like Galaxian did. 

How can I do this?