У меня есть простое решение, работающее нормально.Следуйте документу cocos2d, начало работы, урок 2, Ваша первая игра .После реализации сенсорного события.Используйте следующий код, чтобы настроить seeker1 для следования cocosGuy:
- (void) nextFrame:(ccTime)dt {
float dx = cocosGuy.position.x - seeker1.position.x;
float dy = cocosGuy.position.y - seeker1.position.y;
float d = sqrt(dx*dx + dy*dy);
float v = 100;
if (d > 1) {
seeker1.position = ccp( seeker1.position.x + dx/d * v *dt,
seeker1.position.y + dy/d * v *dt);
} else {
seeker1.position = ccp(cocosGuy.position.x, cocosGuy.position.y);
}
}
Идея в том, чтобы на каждом шагу последователю просто нужно было двигаться к лидеру с определенной скоростью.Направление к лидеру можно рассчитать, как показано в коде.