Привет всем, я новичок в cocos2d и Objective-C, поэтому я прошу прощения, если есть простое решение.Я работаю над кодом для игры, которую разрабатываю.В этой игре у меня есть спрайт на экране, и я бы хотел, чтобы этот спрайт перемещался напротив места касания.
Пример: Пример изображения
Пока мой кодвыглядит следующим образом:
-(void) ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event {
//Determine location of the tap/touch
CGPoint touchLocation = [touch locationInView: [touch view]];
touchLocation = [[CCDirector sharedDirector] convertToGL: touchLocation];
touchLocation = [self convertToNodeSpace:touchLocation];
Я добавляю свой спрайт в сцену в методе init следующим образом:
CGSize screenSize = [[CCDirector sharedDirector] winSize];
Ball* ball = [Ball ball];
ball.position = CGPointMake(ball.contentSize.width / 2, screenSize.height / 2);
[self addChild:ball z:2];
Мне бы хотелось, чтобы при касании экранаспрайт переместится на 20 пикселей напротив этого места касания.Так что, если я коснусь слева от спрайта, спрайт переместится вправо, если я коснусь к вершине, спрайт переместится вниз ... и т. Д.
Спасибо за помощь!