HPバーにCCProgressTimerを使用してゲームを書いています。
以下は、HPバーを追加する私のコードです:
_hpBar = [CCProgressTimer progressWithSprite:[CCSprite spriteWithFile:@"hp_bar.png"]];
_hpBar.type = kCCProgressTimerTypeBar;
_hpBar.barChangeRate = ccp(1, 0); // Y stays the same
_hpBar.midpoint = ccp(0, 0);
_hpBar.percentage = 100;
_hpBar.position = ccp(_hpBar.contentSize.width * scale / 2, self.contentSize.height + _hpBar.contentSize.height / 2 + 2);
[self addChild:_hpBar];
これはHPを増やすための私のコードです:
- (int)increaseHP:(int)amount {
_life = MIN(_life + amount, 100);
if (_life > 30) [_hpBar setSprite:[CCSprite spriteWithFile:@"hp_bar.png"]];
[_hpBar setPercentage:_life];
return _life;
}
ただし、HP がいっぱい、つまり _life=100 のときに、さらに HP を増やす、つまり [自己増加 HP:1] を呼び出すと、HP バーが消えます。
誰でも助けてもらえますか?