我是 Cocos2d-x 的新手。
我想为我的游戏创建简单的进度/更新栏。
当此进度条已满时,我们将进入下一个级别。
我怎样才能创建那个酒吧。
感谢您的所有帮助。
看这个 -如何在 cocos2d-x 和 C++ 中使用进度条
基本上,创建两个精灵,一个用于进度条的边框,一个用于加载栏本身。
CCPointer fuelBarBorder;
fuelBarBorder =
CCSprite::createWithSpriteFrameName ("bt_progressbarborder.png" );
fuelBarBorder->setPosition(ccp(100,100));
this->addChild(fuelBarBorder,1);
// CCProgresstimer object (smart pointer)
CCPointer fuelBar;
fuelBar = CCProgressTimer::create(
CCSprite::createWithSpriteFrameName ("bt_progressbar.png" ));
将加载条精灵的类型设置为CCProgressTimerType
.
// Set this progress bar object as kCCProgressTimerTypeBar (%)
fuelBar->setType(CCProgressTimerType::kCCProgressTimerTypeBar);
// Set anchor point in 0,0 and add it as a child to our border sprite
fuelBar->setAnchorPoint(ccp(0,0));
fuelBar->setBarChangeRate(ccp(1,0)); // To make width 100% always
fuelBar->setTag(1); // Tag our object for easy access
fuelBarBorder->addChild(fuelBar,50); // Add it inside the border sprite
在您的更新方法中,更改它percentage
以反映加载百分比。
fuelBar->setPercentage(80); // Value between 0-100
我写了原始帖子(上面的链接)。
感谢这篇文章,我发现 WordPress 在保存代码时玩了我......
有一些更正:
CCPointer <CCSprite> fuelBarBorder;
fuelBarBorder =
CCSprite::createWithSpriteFrameName ("bt_progressbarborder.png" );
fuelBarBorder->setPosition(ccp(100,100));
this->addChild(fuelBarBorder,1);
这是第一组,你可以看到唯一的变化是在第一行:
CCPointer <CCSprite> fuelBarBorder;
如果您没有这个 cocos2d-x 扩展,只需使用以下内容:
CCSprite * fuelBarBorder;
第二组代码也一样,正确的是:
CCPointer <CCProgressTimer> fuelBar;
fuelBar = CCProgressTimer::create(
CCSprite::createWithSpriteFrameName ("bt_progressbar.png" ));
// Set this progress bar object as kCCProgressTimerTypeBar (%)
fuelBar->setType(CCProgressTimerType::kCCProgressTimerTypeBar);
// Set anchor point in 0,0 and add it as a child to our border sprite
fuelBar->setAnchorPoint(ccp(0,0));
fuelBar->setBarChangeRate(ccp(1,0)); // To make width 100% always
fuelBar->setTag(1); // Tag our object for easy access
fuelBarBorder->addChild(fuelBar,50); // Add it inside the border sprite
同样的事情是使用 CCPointer(智能指针实现),如果您的项目中没有它,只需更改以下行:
CCPointer <CCProgressTimer> fuelBar;
通过这个:
CCProgressTimer fuelBar;
这应该使代码有效,我希望这会有所帮助!!!!