При скольжении спрайта, если спрайт исчезает со стороны, я хочу, чтобы он переворачивался на противоположную сторону, но я не знаю, как это сделать, когда спрайт одновременно отталкивается с одной стороны, я хочу, чтобы другой бит вы не можете видеть, как на противоположной стороне появляется петля, какая-то червоточина.
вот мой код, но он падает, и он транспортирует спрайт только после того, как весь спрайт исчезает с этой стороны. Цикл также должен работать как бесконечный цикл, пока кто-нибудь не закроет приложение.
for (int i =0; i<16; ++i) {
MyNode *currentSprite = [c1array objectAtIndex:i];
if (currentSprite.contentSize.height>=320 || currentSprite.position.y-currentSprite.contentSize.height/2<=0 ){
MyNode *Bsprite = currentSprite;
MyNode *Tsprite = currentSprite;
Bsprite.scale = 1.0;
Tsprite.scale = 1.0;
if(currentSprite.position.y >=253){
Bsprite.position = ccp(currentSprite.position.x,-35);
[self addChild:Bsprite];
Bsprite.visible = TRUE;
}
if (currentSprite.position.y <=0) {
Tsprite.position = ccp(currentSprite.position.x,324);
[self addChild:Tsprite];
Tsprite.visible = TRUE;
}
MyNode *isChanging;
if ((Tsprite.visible == TRUE && currentSprite.visible == TRUE) || (Bsprite.visible == TRUE && currentSprite.visible == TRUE)) {
isChanging = TRUE;
}
if (isChanging == FALSE) {
[self removeChild:Tsprite cleanup:YES];
[self removeChild:Bsprite cleanup:YES];
}
}
}