Сенсорный ход в Cocos2d - PullRequest
       4

Сенсорный ход в Cocos2d

0 голосов
/ 01 ноября 2011

У меня проблема с Touch Event.У меня есть 5 спрайтов, и я хочу переместить один спрайт и только выбранный спрайт.Но в этом случае, когда я перемещаю прикосновение, тогда перемещается только один Sprite. Как двигаться только, выберите Sprite ..

в .h файле

  CCSprite *puzzButton1,*puzzButton2,*puzzButton3;

в .m файле

   // create and initialize our seeker sprite, and add it to this layer
    puzzButton1 = [CCSprite spriteWithFile: @"ingame_button_idal.png"];
    puzzButton1.position = ccp( 480/2, 320/2 );
    [self addChild:puzzButton1];

    // create and initialize our seeker sprite, and add it to this layer
    puzzButton2 = [CCSprite spriteWithFile: @"ingame_button_idal.png"];
    puzzButton2.position = ccp( 100, 200 );
    [self addChild:puzzButton2];

    // create and initialize our seeker sprite, and add it to this layer
    puzzButton3 = [CCSprite spriteWithFile: @"ingame_button_idal.png"];
    puzzButton3.position = ccp( 100, 300 );
    [self addChild:puzzButton3];

и

 - (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event 
{    
return TRUE;    
}
 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event
 {

  CGPoint location = [self convertTouchToNodeSpace: touch];


[puzzButton1 stopAllActions];
[puzzButton1 runAction: [CCMoveTo actionWithDuration:0.1 position:location]];
 }

1 Ответ

0 голосов
/ 03 ноября 2011

Попробуйте:

- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *myTouch = [touches anyObject];
    CGPoint location = [myTouch locationInView:[myTouch view]];

    location = [[CCDirector sharedDirector] convertToGL:location];

    CGRect touchpoint = CGRectMake(160, 66, 564, 220); // your sprite position

    if(CGRectContainsPoint(touchpoint, location))
    {
        yoursprite.position = ccp(location.x,location.y);// write move code 
                                                          //here and check same 
                                                          //condition for all 
                                                            //your sprite.
    }
}

или присвойте теги своим спрайтам и проверьте их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...