我正在製作一個實現健康欄的遊戲。健康欄是一個1px×1px的CCSprite,然後調整到我需要的尺寸,使用我發現的方法here。酒吧使用這種方法調整大小,但我希望改變酒吧的顏色取決於剩下多少健康。以下是我用來調整大小的方法。CCSprite寬度問題
-(void) takeDamage:(double)damage {
currentHP -= damage;
if(currentHP > 0) {
double percentage = (double)currentHP/ (double)maxHP;
double width = (self.contentSize.width * (3.0f/4.0f)) * percentage;
if (percentage <= 0.2f) {
CCTexture2D * tex = [[CCTextureCache sharedTextureCache] addImage:@"hp_red.png"];
[bar setTexture:tex];
} else if(percentage <= 0.45f) {
CCTexture2D * tex = [[CCTextureCache sharedTextureCache] addImage:@"hp_yellow.png"];
[bar setTexture:tex];
}
[self resizeSprite:bar toWidth:width toHeight:self.contentSize.height/15];
}
[nums setString:[NSString stringWithFormat:@"%i/%i", currentHP, maxHP]];
}
質地的改變,我做的是別的東西,我從SO得到它(由1px的映像,除非它是黃色或紅色,而不是綠色的另一個1px的)改變精靈的形象。問題是精靈只有一半是黃色的,另一半是黑色的,如下所示。
如果你看一下健康吧「Abraxol」你會看到我在談論怪異半黃半黑的效果。
我不知道sprite.color工作一個白色精靈這樣的。非常感謝! – CaldwellYSR 2012-08-06 00:52:09