2013-03-06 6 views
1

Utilisation CCMenu je créer deux boutons Haut et Bas Voici le codeCocos2d Déplacer Sprite à l'aide des boutons

CCSprite *normlUp = [CCSprite spriteWithFile:@"Up.png"]; 
    CCSprite *selectedUp = [CCSprite spriteWithFile:@"Up.png"]; 
    selectedUp.color = ccGREEN; 

    CCMenuItemSprite *up = [CCMenuItemSprite itemFromNormalSprite:normlUp selectedSprite:selectedUp target:self selector:@selector(upItemTouched)]; 
    up.position = CGPointMake(-220, -115); 

    CCSprite *normlDown = [CCSprite spriteWithFile:@"Down.jpeg"]; 
    CCSprite *selectedDown = [CCSprite spriteWithFile:@"Down.jpeg"]; 
    selectedDown.color = ccGREEN; 

    CCMenuItemSprite *down = [CCMenuItemSprite itemFromNormalSprite:normlDown selectedSprite:selectedDown target:self selector:@selector(downItemTouched)]; 
    down.position = CGPointMake(-220,-140); 

    CCMenu *upDown = [CCMenu menuWithItems:up,down,nil]; 
    [self addChild:upDown z:4]; 

Comment écrire upItemTouched et downItemTouched Méthodes
De plus, le sprite doit se déplacer en douceur sur l'écran
I Je suis nouveau sur cocos2d, donc veuillez accepter mes questions simples ........

+0

Pouvez-vous expliquer un peu plus sur ce que vous voulez exactement que l'on fasse quand l'un d'eux est touché? – giorashc

Répondre

0

Utilisez CCMenuItemSprite pour ajouter un sélecteur à l'image-objet, donc lorsque vous appuyez sur cette image, cette méthode de sélection sera appelée. Ainsi, lorsque vous appuyez sur "haut", définissez une valeur booléenne sur true et lorsque vous appuyez sur "bas", définissez un autre booléen sur true.

Maintenant, dans la méthode update/tick, vérifiez quelle valeur booléenne est true, puis déplacez l'image-objet.

Lorsque vous avez terminé, dans la méthode touchesEnded, définissez simplement boolean sur false.