У меня проблема с перетаскиванием спрайта. У меня спрайт перемещается влево и вправо, сохраняя при этом позицию y, но я не могу заставить спрайт двигаться вверх или вниз, когда позиция x остается неизменной.
Также в cctouchended спрайт перемещается так, что он находится в фиксированном положении, когда все касания закончились
Я пытаюсь сделать игру, похожую на slidieo / skozzle. Может сделать с некоторой помощью
c1 - перемещаемый столбец, r1 - перемещаемая строка,
[pos objectAtIndex: 0] является позицией спрайта: red1 и проверяет, находится ли спрайт в c1, так как каждый раз, когда вы входите в игру, спрайт имеет новую случайную позицию, а t1 является объектом спрайта, так что вы должны нажать на дух, потому что если вы этого не сделаете, когда вы щелкнете над спрайтом и попытаетесь переместить спрайт, вы перейдете на сенсорную позицию.
вот мой код:
CGPoint touchLocation = [touch locationInView:[touch view]];
CGPoint prevLocation = [touch previousLocationInView:[touch view]];
touchLocation = [[CCDirector sharedDirector] convertToGL:touchLocation];
prevLocation = [[CCDirector sharedDirector] convertToGL:prevLocation];
if (CGRectContainsPoint(c1,touchLocation)) {
if (CGRectContainsPoint(c1,[[pos objectAtIndex:0]CGPointValue])) {
if (CGRectContainsPoint(t1,touchLocation)) {
if (touchLocation.y>0||touchLocation.y<0) {
touchLocation.x = red1.position.x;
[red1 setPosition:ccp(touchLocation.x,touchLocation.y)];
}
}
}
}
if (touchLocation.x>0||touchLocation.x<0) {
touchLocation.y=red1.position.y;
[red1 setPosition:ccp(touchLocation.x,touchLocation.y)];
}
}
спасибо