title: how to make Sprite follow bezier curve
body: <p>Im fairly new to objective-c and sprite kit but i've done games development for a while. Im currently working on a 2d game and i have enemy ships moving from right to left on the screen. Ive been following tutorials for different parts of my game and then adding to it where necessary. I found a tutorial where the in game enemies follow a bezier path and i've managed to implement this in my game however as i'm new to bezier curves i do not fully understand them and the algorithm makes my sprites move from top to bottom but i need them to go left to right.</p>
  
  <p>I have included the code snippet that i have used to add the bezier curve to my sprites any suggestions on how i can have them move right to left instead of top to bottom.</p>
  
  <pre><code>CGMutablePathRef cgpath = CGPathCreateMutable();
  
          float xStart = [self getRandomNumberBetween:0+asteroid.size.width to:self.frame.size.width-asteroid.size.width];
          float xEnd = [self getRandomNumberBetween:0+asteroid.size.width to:self.frame.size.width-asteroid.size.width];
          float cp1X =[self getRandomNumberBetween:0+asteroid.size.width to:self.frame.size.width-asteroid.size.width];
          float cp1y = [self getRandomNumberBetween:0+asteroid.size.width to:self.frame.size.width-asteroid.size.height];
          float cp2x = [self getRandomNumberBetween:0+asteroid.size.width to:self.frame.size.width-asteroid.size.width];
          float cp2Y = [self getRandomNumberBetween:0 to:cp1y];
  
          CGPoint s = CGPointMake(xStart, 1024.0);
          CGPoint e = CGPointMake(xEnd, -100);
          CGPoint cp1 = CGPointMake(cp1X, cp1y);
          CGPoint cp2 = CGPointMake(cp2x, cp2Y);
          CGPathMoveToPoint(cgpath, NULL, s.x, s.y);
          CGPathAddCurveToPoint(cgpath, NULL, cp1.x, cp1.y, cp2.x, cp2.y, e.x, e.y);
  
          SKAction *enemyCurve = [SKAction followPath:cgpath asOffset:NO orientToPath:YES duration:5];
  
    CGPoint location = CGPointMake(-self.frame.size.width-asteroid.size.width, randY);
  
          SKAction *moveAction = [SKAction moveTo:location duration:randDuration];
          SKAction *doneAction = [SKAction runBlock:(dispatch_block_t)^(){
  
              asteroid.hidden = YES;
          }];
  
          SKAction *moveAsteroidActionWithDone = [SKAction sequence:@[enemyCurve,moveAction, doneAction]];
  </code></pre>
  
  <p>Thank you for any help and suggestions.</p>