я новичок здесь :)
мой первый вопрос:
я пытаюсь сделать простое взаимодействие, - после нажатия на пункт меню, я запускаю анимацию спрайт-листа.
Похоже, я не могу прямо анимировать пункт меню с помощью спрайт-листа (но я думаю, что вы были бы правы)
также я не могу сделать -
menuItem.visible =false:
в функции, которая активируется этой кнопкой
также я не могу перезаписать пункт меню в z: -10
вот мой код:
.h:
CCSprite *p1S2;
CCAction *p1A2;
.m:
@interface FirstPage ()
@property (nonatomic, retain) CCAction *p1A2;
@property (nonatomic, retain) CCSprite *p1S2;
@end
@implementation FirstPage
@synthesize p1S2 = _p1S2;
@synthesize p1A2 = _p1A2;
- (id)init
{
if ((self = [super init]))
{
CGSize screenSize = [[CCDirector sharedDirector] winSize];
bg1 = [CCSprite spriteWithFile:@"st_01_bg1.png"];
bg1.position = ccp(screenSize.width/2, 512);
[self addChild:bg1];
bg2 = [CCSprite spriteWithFile:@"st_01_bg2.png"];
bg2.position = ccp(screenSize.width/2, 128);
[self addChild:bg2 ];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:
@"button.plist"];
CCSpriteBatchNode *spriteSheet2 = [CCSpriteBatchNode
batchNodeWithFile:@"button.png"];
[self addChild:spriteSheet2 z:6];
NSMutableArray *AnimFrames2 = [NSMutableArray array];
for(int i = 1; i <= 30; ++i) {
[AnimFrames2 addObject:
[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:
[NSString stringWithFormat:@"button%d.png", i]]];
}
CCAnimation *becomeAnim2 = [CCAnimation animationWithFrames:AnimFrames2 delay:0.04f];
self.p1S2 = [CCSprite spriteWithSpriteFrameName:@"rostok1.png"];
_p1S2.position = ccp(638,530);
self.p1A2=[CCSequence actions:[CCRepeat actionWithAction:[CCAnimate actionWithAnimation:becomeAnim2 restoreOriginalFrame:NO]times:200],nil];
[spriteSheet2 addChild:_p1S2 z:6];
[_p1S2 runAction:_p1A2];
_p1S2.visible=false;
CCMenuItem *menuItem1 = [CCMenuItemImage itemFromNormalImage:@"knopka_01_lisik.png"
selectedImage:@"knopka_02_lisik.png" target:self selector:@selector(button1Tapped:)];
CCMenu *Menu = [CCMenu menuWithItems:menuItem1, nil];
Menu.position = ccp(638,530);
[Menu alignItemsHorizontally];
[self addChild:Menu z:7];
}
return self;
}
- (void)button1Tapped:(id)sender {
_p1S2.visible = true;
}
}
@end
какие-нибудь советы, как это сделать правильно?