在一个 cocos 2d 游戏中,我使用 3 个心形精灵来更新英雄的生命。如果英雄失去了一个生命..应该隐藏一颗心。
我使用下面的代码,但它不能正常工作。请帮助我。
- (void)updateLives {
int i = _lives;
[self livess:(int)i];
}
- (void)livess:(int)ii {
CGSize winSize = [CCDirector sharedDirector].winSize;
heart1=[CCSprite spriteWithFile:@"heart.png"];
heart2=[CCSprite spriteWithFile:@"heart.png"];
heart3=[CCSprite spriteWithFile:@"heart.png"];
[heart1 setPosition:ccp(winSize.width/2*1.3, winSize.height * 0.9)];
[self addChild:heart1 z:0];
[heart2 setPosition:ccp(winSize.width/2*1.1, winSize.height * 0.9)];
[self addChild:heart2 z:0];
[heart3 setPosition:ccp(winSize.width/2*0.9, winSize.height * 0.9)];
[self addChild:heart3 z:0];
if (ii==3) {
NSLog(@"%d",ii);
}
else if (ii==2)
{
NSLog(@"%d",ii);
[heart3 setVisible:NO];
} else if (ii==1)
{
NSLog(@"%d",ii);
[heart3 setVisible:NO];
[heart2 setVisible:NO];
}
else
{
}
}
注意:在上面的代码中..nslog 正在打印正确的值..例如 1,2