В cocos2d самый простой способ сделать это - переместить весь слой.Если вы делаете вещи обычным способом cocos2d, у вас есть класс, который подклассов CCLayer.
Внутри этого класса вы можете просто изменить его положение и получить желаемый эффект.
В вашем примере, поскольку вы хотите переместить «камеру» вправо, вы можете простопереместите слой влево.например:
-(void) centerOnBuilding {
CGPoint distanceToMove = ccp(-120, 0);
self.position = ccpAdd(distanceToMove, self.position);
}
Эта функция в CCLayer будет иметь эффект центрирования камеры на 120 пикселей вправо от того места, где она была раньше.Если вы хотите получить эффект прокрутки, сделайте то же самое, но запустите действие MoveTo или MoveBy в слое.