我将制作一个非常简单的游戏,例如从顶部掉下的精灵,我必须用另一个精灵抓住它,如果我不这样做,精灵会走出屏幕并移除,那部分没问题,我还添加了碰撞检测,主要问题是这种碰撞只发生在屏幕的上部而不是屏幕的底部,为什么会发生这种情况请帮忙,(我是新人:S),这是完整的代码
在我的.h`然后.m
{
CCSprite *right;
CCSprite *left;
NSMutableArray *_left;    
}
-(void)ringcreate:(ccTime)dt
{
CGSize winsize = [[CCDirector sharedDirector] winSize];
int minX = left.contentSize.width / 2;
int maxX = winsize.width - left.contentSize.width/2;
int rangeX = maxX - minX;
int actualX = (arc4random() % rangeX) + minX;
left = [CCSprite spriteWithFile:@"2.png"];
left.position = ccp(actualX,winsize.height);
[self addChild:left];
id move3 = [CCMoveTo actionWithDuration:5 position:ccp(winsize.width/2,0)];
[left runAction:move3];
}
-(id) init
{
// always call "super" init
// Apple recommends to re-assign "self" with the "super's" return value
if( (self=[super init]) ) {
    self.touchEnabled = YES;
    right = [CCSprite spriteWithFile:@"1.png"];
    right.position = ccp(0,0);
    [self addChild:right]; 
    [self schedule:@selector(ringcreate:)  interval:2];
    [self schedule:@selector(update:)];
}
return self;
  }
  -(void) ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
  {
 UITouch *touch =[touches anyObject];
 CGPoint location =[touch locationInView:[touch view]];
 location = [[CCDirector sharedDirector] convertToGL:location];
 id move = [CCMoveTo actionWithDuration:1 position:ccp(location.x,location.y)];
 [right runAction:move];
 }
 -(void) update:(ccTime)dt
 {
   if (CGRectIntersectsRect(right.boundingBox, left.boundingBox)) {
    CCLOG(@"collison hoyse");
    id move1 = [CCScaleTo actionWithDuration:0.4 scale:0.3];
    left.visible = NO;
    [left runAction:move1];
    }
  }