cocos2d-x 3.0開發筆記---用progressTimer製作血槽
阿新 • • 發佈:2019-01-04
血條經常會用到,沒必要重複編寫浪費時間,這裡用最新版的API寫個,方便以後呼叫。
以下程式碼使用的引擎版本是cocos2d-x 3.0rc0
1.RADIAL
Sprite *bgSprite = Sprite::create("red.png"); addChild(bgSprite, 1, 1); Sprite *hpSprite = Sprite::create("green.png"); progressTimer = ProgressTimer::create(hpSprite); progressTimer->setType(ProgressTimer::Type::RADIAL); progressTimer->setReverseProgress(true); progressTimer->setPercentage(30);//滿值 100% addChild(progressTimer, 0, 0);
2.BAR
Sprite *bgSprite = Sprite::create("box.png"); addChild(bgSprite, 1, 1); Sprite *hpSprite = Sprite::create("hp.png"); progressTimer = ProgressTimer::create(hpSprite); progressTimer->setType(ProgressTimer::Type::BAR); /////////////////////////////////////////////////////////////////////////////////////////////////////// //從左到右 progressTimer->setMidpoint(ccp(0, 0.5)); progressTimer->setBarChangeRate(ccp(1, 0)); //從右到左 // progressTimer->setMidpoint(ccp(1, 0.5)); // progressTimer->setBarChangeRate(ccp(1, 0)); //從上到下 // progressTimer->setMidpoint(ccp(0.5, 1)); // progressTimer->setBarChangeRate(ccp(0, 1)); //從下到上 // progressTimer->setMidpoint(ccp(0.5, 0)); // progressTimer->setBarChangeRate(ccp(0, 1)); /////////////////////////////////////////////////////////////////////////////////////////////////////////// progressTimer->setMidpoint(Point(0, 0.5)); progressTimer->setBarChangeRate(Point(1, 0)); progressTimer->setPercentage(30);//滿值 100% addChild(progressTimer, 0, 0);